{"version":3,"file":"static/js/main.e2faadca.js","mappings":"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W,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,QAAQ,UAAU,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,SAAS,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,YAAY/d,EAAE,CAAC,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,SAAS,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,UAAU,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,SAAS,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,WAAW,WAAW,UAAU,WAAW,SAAS,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,WAAW,UAAU,UAAU,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,YAAYge,EAAE,CAAC,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,UAAU,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,SAAS,WAAW,SAAS,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,UAAU,SAAS,WAAW,WAAW,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,UAAU,UAAU,UAAU,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,QAAQ,UAAU,UAAU,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,YAAYxb,EAAE,CAAC,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,WAAW,UAAU,WAAW,WA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UA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,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AC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACV,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC1B,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,MAAUA,GAAQA,GAAQ,MAC3B,MAAUA,GACT,OAAUA,GAAQA,GAAQ,OAC3B,OAAUA,GACT,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC3B,OAAUA,GACT,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC3B,OAAUA,GACV,OAAUA,GACT,OAAUA,GAAQA,GAAQ,OAC3B,OAAUA,GACT,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC3B,OAAUA,GACV,OAAWA,GACX,OAAWA,GACX,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACX,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACX,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC3B,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACX,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,OAAWA,GACX,OAAWA,GACX,OAAWA,GACX,OAAWA,GACX,OAAWA,GACX,OAAWA,GACV,OAAWA,GAAQA,GAAQ,OAC5B,QAAWA,GACX,QAAWA,EAlyBG,EAyyBb,MAAUA,GAAQA,GAAQ,MAC1B,OAAUA,GAAQA,GAAQ,MAzyBvB,EA+yBH,MAAUA,GAAQA,GAAQ,MAC1B,OAAUA,GAAQA,GAAQ,MA/yBvB,EAszBH,MAAUA,GAAQA,GAAQ,MAC1B,OAAUA,GAAQA,GAAQ,MAtzBvB,EA4zBJ,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,MAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,MAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,GACV,OAAUA,EAzsCL,EA+sCJ,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B,OAAUA,GAAQA,GAAQ,OAC1B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AiBx2F,EAAeC,IACtDrF,EAAAA,GAAAA,GAAa,EAAGjD,WAChB,IAAI6I,GAAWpF,EAAAA,GAAAA,SAAO4E,GAClBS,GAAYrF,EAAAA,GAAAA,SAAO6E,GACnB5H,EAAOk+F,GAAgB/1F,EAAUC,GACjC8D,EAAahM,KAAKC,KAAIuH,EAAAA,GAAAA,SAAyBS,EAAUC,IAC7DD,EAAS7B,QAAQ6B,EAASrG,UAAY9B,EAAOkM,GAG7C,IAAIkyF,EAAmBr4F,OAAOm4F,GAAgB/1F,EAAUC,MAAgBpI,GACpEuP,EAASvP,GAAQkM,EAAakyF,GAElC,OAAkB,IAAX7uF,EAAe,EAAIA,CAC3B,qDClFY8uF,GAAaC,eAGbC,GAAe,CAAC,aAAc,eAAgB,YAAa,gBAS3DC,GAAuB,SAACC,GAAD,+CACAA,EADA,EAEvBC,GAAqB,SAACC,EAAe3oB,GAAhB,yBACpB2oB,EADoB,wBACC3oB,EADD,EAMrB4oB,GAAmB,aAiBnBC,GAAyB,SCrCzBC,GAAgB,CAC7B,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,YACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,WACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,SACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,OACA,MACA,OACA,QACA,YACA,YACA,QACA,SACA,SACA,OACA,cACA,UACA,WACA,OACA,QACA,UACA,UACA,UACA,OACA,SACA,OACA,SACA,SACA,SACA,iBACA,aACA,OACA,OACA,YACA,QACA,OACA,QACA,QACA,OACA,YACA,QACA,UACA,MACA,UACA,YACA,MACA,KACA,SACA,SACA,SACA,OACA,YACA,SACA,SACA,aACA,aACA,YACA,aACA,aACA,WACA,YACA,QACA,SACA,UACA,OACA,UACA,OACA,QACA,SACA,OACA,SACA,YACA,SACA,YACA,SACA,YACA,UACA,SACA,QACA,kBACA,YACA,OACA,SACA,QACA,WACA,OACA,UACA,SACA,UACA,OACA,UACA,OACA,UACA,UACA,QACA,WACA,SACA,WACA,QACA,YACA,WACA,OACA,OACA,OACA,SACA,OACA,QACA,YACA,UACA,yBACA,YACA,UACA,OACA,SACA,SACA,UACA,QACA,UACA,WACA,aACA,UACA,UACA,UACA,WACA,aACA,OACA,YACA,WACA,YACA,YACA,OACA,WACA,YACA,OACA,WACA,aACA,eACA,QACA,UACA,YACA,UACA,UACA,OACA,WACA,UACA,UACA,WACA,QACA,WACA,UACA,YACA,OACA,WACA,SACA,SACA,SACA,MACA,QACA,UACA,UACA,SACA,UACA,SACA,QACA,UACA,SACA,SACA,UACA,aACA,KACA,UACA,SACA,WACA,UACA,UACA,UACA,SACA,aACA,SACA,OACA,SACA,UACA,OACA,aACA,SACA,WACA,OACA,SACA,SACA,OACA,WACA,UACA,SACA,QACA,SACA,OACA,QACA,QACA,QACA,QACA,SACA,OACA,QACA,OACA,UACA,OACA,WACA,OACA,UACA,QACA,OACA,UACA,SACA,SACA,UACA,aACA,UACA,UACA,aACA,QACA,YACA,QACA,QACA,OACA,OACA,UACA,UACA,OACA,YACA,SACA,SACA,UACA,SACA,QACA,WACA,UACA,SACA,SACA,OACA,aACA,SACA,YACA,UACA,UACA,QACA,OACA,SACA,OACA,UACA,UACA,OACA,YACA,WACA,UACA,SACA,YACA,WACA,SACA,OACA,SACA,UACA,OACA,UACA,SACA,OACA,OACA,YACA,aACA,aACA,QACA,QACA,WACA,WACA,UACA,WACA,SACA,UACA,QACA,WACA,UACA,UACA,aACA,aACA,YACA,YACA,OACA,OACA,OACA,QACA,OACA,WACA,YACA,QACA,YACA,WACA,UACA,SACA,aACA,WACA,aACA,YACA,YACA,OACA,UACA,OACA,UACA,UACA,YACA,WACA,QACA,QACA,SACA,YACA,QACA,OACA,SACA,QACA,OACA,UACA,aACA,SACA,OACA,SACA,MACA,WACA,UACA,UACA,OACA,aACA,aACA,YACA,WACA,aACA,cACA,WACA,UACA,SACA,UACA,WACA,aACA,WACA,UACA,QACA,SACA,WACA,SACA,QACA,SACA,WACA,SACA,OACA,UACA,aACA,SACA,UACA,OACA,UACA,UACA,QACA,UACA,OACA,QACA,UACA,SACA,SACA,WACA,WACA,UACA,OACA,SACA,YACA,UACA,UACA,WACA,UACA,YACA,YACA,WACA,OACA,UACA,OACA,UACA,SACA,QACA,SACA,OACA,SACA,YACA,QACA,UACA,SACA,YACA,YACA,SACA,OACA,UACA,SACA,SACA,SACA,WACA,WACA,OACA,UACA,QACA,UACA,OACA,WACA,SACA,SACA,UACA,UACA,YACA,aACA,aACA,YACA,OACA,YACA,YACA,SACA,SACA,SACA,UACA,SACA,UACA,aACA,QACA,UACA,QACA,QACA,UACA,aACA,YACA,aACA,YACA,YACA,YACA,aACA,aACA,YACA,OACA,UACA,aACA,YACA,UACA,YACA,SACA,SACA,QACA,UACA,OACA,aACA,SACA,UACA,YACA,aACA,QACA,UACA,QACA,OACA,YACA,YACA,YACA,OACA,UACA,UACA,OACA,SACA,OACA,mBACA,YACA,YACA,OACA,OACA,OACA,aACA,UACA,QACA,WACA,QACA,SACA,QACA,YACA,UACA,YACA,QACA,SACA,OACA,SACA,YACA,YACA,YACA,OACA,QACA,SACA,SACA,SACA,aACA,SACA,UACA,SACA,OACA,OACA,QACA,SACA,WACA,QACA,OACA,WACA,QACA,WACA,UACA,UACA,aACA,QACA,SACA,UACA,QACA,WACA,SACA,QACA,QACA,UACA,QACA,WACA,OACA,SACA,OACA,MACA,OACA,QACA,QACA,SACA,WACA,OACA,OACA,UACA,SACA,SACA,QACA,OACA,aACA,UACA,UACA,WACA,WACA,UACA,SACA,aACA,aACA,SACA,YACA,4BACA,UACA,YACA,YACA,WACA,aACA,OACA,UACA,SACA,aACA,aACA,aACA,aACA,aACA,YACA,aACA,WACA,OACA,SACA,UACA,SACA,UACA,WACA,OACA,YACA,YACA,YACA,YACA,WACA,QACA,UACA,SACA,YACA,aACA,YACA,YACA,cACA,SACA,WACA,UACA,aACA,WACA,aACA,YACA,UACA,UACA,QACA,SACA,OACA,SACA,OACA,UACA,aACA,UACA,UACA,WACA,WACA,UACA,kBACA,SACA,OACA,YACA,SACA,QACA,QACA,SACA,SACA,YACA,SACA,aACA,OACA,UACA,aACA,SACA,aACA,UACA,SACA,WACA,aACA,OACA,OACA,SACA,OACA,UACA,QACA,UACA,UACA,OACA,UACA,UACA,SACA,aACA,aACA,OACA,WACA,UACA,UACA,UACA,SACA,OACA,QACA,SACA,SACA,OACA,QACA,OACA,OACA,aACA,aACA,KACA,QACA,QACA,OACA,QACA,UACA,KACA,SACA,OACA,QACA,UACA,OACA,OACA,YACA,UACA,QACA,WACA,OACA,aACA,WACA,YACA,WACA,WACA,WACA,WACA,SACA,UACA,OACA,WACA,SACA,UACA,UACA,UACA,OACA,UACA,UACA,SACA,UACA,UACA,SACA,QACA,QACA,aACA,QACA,WACA,aACA,aACA,aACA,aACA,OACA,SACA,UACA,QACA,OACA,SACA,OACA,UACA,WACA,UACA,OACA,UACA,SACA,YACA,UACA,UACA,UACA,UACA,YACA,aACA,UACA,UACA,OACA,YACA,aACA,OACA,aACA,SACA,WACA,YACA,QACA,OACA,UACA,OACA,SACA,SACA,UACA,YACA,OACA,SACA,YACA,SACA,UACA,WACA,UACA,aACA,YACA,aACA,SACA,UACA,SACA,WACA,YACA,WACA,YACA,OACA,OACA,WACA,YACA,OACA,WACA,UACA,SACA,SACA,QACA,OACA,UACA,UACA,aACA,aACA,YACA,YACA,aACA,YACA,aACA,UACA,cACA,aACA,cACA,aACA,aACA,WACA,UACA,aACA,SACA,YACA,YACA,aACA,cACA,aACA,UACA,WACA,WACA,YACA,WACA,aACA,SACA,UACA,SACA,SACA,aACA,UACA,UACA,WACA,UACA,UACA,aACA,aACA,aACA,SACA,SACA,WACA,UACA,OACA,UACA,UACA,WACA,aACA,UACA,WACA,aACA,WACA,YACA,WACA,UACA,WACA,WACA,aACA,YACA,SACA,YACA,YACA,aACA,aACA,UACA,WACA,YACA,0BACA,SACA,SACA,QACA,WACA,YACA,UACA,WACA,UACA,OACA,UACA,aACA,YACA,WACA,YACA,uBACA,YACA,SACA,WACA,UACA,SACA,YACA,OACA,WACA,OACA,WACA,YACA,YACA,SACA,YACA,SACA,UACA,UACA,UACA,OACA,OACA,WACA,aACA,YACA,YACA,aACA,aACA,SACA,YACA,QACA,YACA,aACA,aACA,QACA,aACA,aACA,aACA,aACA,KACA,OACA,SACA,OACA,QACA,SACA,aACA,OACA,OACA,OACA,QACA,OACA,WACA,YACA,OACA,OACA,OACA,WACA,UACA,UACA,QACA,aACA,WACA,OACA,aACA,aACA,YACA,OACA,UACA,SACA,SACA,WACA,YACA,SACA,SACA,SACA,UACA,QACA,UACA,aACA,6BACA,aACA,SACA,aACA,YACA,SACA,SACA,OACA,aACA,UACA,eACA,iBACA,gBACA,WACA,UACA,OACA,UACA,WACA,WACA,SACA,UACA,UACA,aACA,cACA,SACA,SACA,OACA,QACA,OACA,OACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,aACA,OACA,WACA,UACA,SACA,UACA,UACA,QACA,aACA,UACA,WACA,aACA,OACA,SACA,SACA,YACA,WACA,QACA,aACA,eACA,YACA,SACA,aACA,WACA,aACA,UACA,aACA,YACA,UACA,YACA,YACA,aACA,QACA,SACA,OACA,WACA,SACA,UACA,UACA,YACA,QACA,WACA,UACA,QACA,UACA,SACA,SACA,aACA,QACA,QACA,OACA,KACA,OACA,WACA,OACA,SACA,SACA,QACA,SACA,UACA,WACA,YACA,OACA,QACA,SACA,YACA,aACA,UACA,YACA,YACA,aACA,WACA,WACA,OACA,SACA,OACA,UACA,QACA,WACA,UACA,UACA,YACA,aACA,cACA,aACA,OACA,UACA,SACA,OACA,aACA,SACA,UACA,cACA,OACA,SACA,WACA,aACA,QACA,WACA,aACA,aACA,OACA,SACA,qBACA,SACA,UACA,SACA,SACA,UACA,QACA,OACA,SACA,QACA,UACA,WACA,OACA,WACA,WACA,UACA,YACA,MACA,SACA,UACA,QACA,QACA,OACA,UACA,YACA,aACA,WACA,UACA,SACA,OACA,WACA,UACA,WACA,OACA,aACA,SACA,OACA,WACA,UACA,UACA,SACA,aACA,WACA,aACA,OACA,WACA,OACA,OACA,WACA,QACA,UACA,OACA,OACA,OACA,YACA,WACA,YACA,OACA,OACA,YACA,QACA,OACA,UACA,WACA,QACA,OACA,OACA,WACA,OACA,YACA,YACA,YACA,UACA,UACA,SACA,UACA,SACA,WACA,QACA,WACA,cACA,cACA,UACA,OACA,SACA,SACA,WACA,SACA,UACA,SACA,UACA,SACA,UACA,SACA,SACA,SACA,QACA,OACA,OACA,SACA,aACA,aACA,QACA,MACA,SACA,SACA,UACA,YACA,aACA,UACA,cACA,YACA,YACA,YACA,SACA,SACA,UACA,WACA,cACA,OACA,YACA,YACA,YACA,UACA,YACA,OACA,YACA,UACA,WACA,UACA,WACA,YACA,UACA,YACA,WACA,UACA,SACA,WACA,SACA,QACA,SACA,QACA,OACA,QACA,OACA,UACA,OACA,SACA,SACA,aACA,OACA,UACA,SACA,OACA,SACA,OACA,OACA,UACA,QACA,UACA,YACA,SACA,UACA,aACA,SACA,UACA,YACA,QACA,aACA,WACA,SACA,OACA,QACA,OACA,OACA,aACA,UACA,SACA,YACA,WACA,WACA,WACA,QACA,SACA,SACA,OACA,aACA,QACA,UACA,YACA,QACA,WACA,OACA,OACA,aACA,WACA,SACA,UACA,UACA,QACA,UACA,OACA,YACA,UACA,OACA,SACA,SACA,WACA,QACA,UACA,UACA,UACA,UACA,YACA,SACA,OACA,WACA,QACA,SACA,UACA,SACA,UACA,OACA,YACA,OACA,QACA,SACA,SACA,WACA,OACA,OACA,UACA,OACA,YACA,YACA,YACA,aACA,aACA,WACA,OACA,aACA,WACA,aACA,OACA,WACA,WACA,YACA,SACA,YACA,WACA,YACA,UACA,WACA,OACA,QACA,aACA,OACA,QACA,UACA,OACA,WACA,UACA,SACA,OACA,WACA,QACA,QACA,aACA,OACA,OACA,QACA,UACA,OACA,WACA,YACA,QACA,YACA,WACA,WACA,WACA,YACA,WACA,WACA,OACA,OACA,WACA,UACA,UACA,YACA,OACA,UACA,SACA,OACA,SACA,MACA,SACA,QACA,UACA,aACA,YACA,QACA,aACA,UACA,UACA,SACA,OACA,WACA,OACA,OACA,QACA,WACA,WACA,OACA,6BACA,aACA,QACA,QACA,QACA,OACA,OACA,SACA,OACA,SACA,YACA,aACA,cACA,YACA,YACA,YACA,QACA,aACA,UACA,YACA,aACA,YACA,OACA,SACA,WACA,WACA,YACA,SACA,SACA,QACA,QACA,UACA,SACA,QACA,SACA,UACA,SACA,QACA,QACA,UACA,OACA,SACA,SACA,QACA,OACA,SACA,SACA,WACA,WACA,SACA,YACA,QACA,QACA,QACA,SACA,aACA,SACA,WACA,gBACA,UACA,QACA,WACA,UACA,SACA,WACA,YACA,UACA,WACA,OACA,UACA,UACA,SACA,MACA,WACA,YACA,OACA,SACA,WACA,OACA,YACA,QACA,UACA,UACA,OACA,OACA,UACA,MACA,KACA,UACA,UACA,WACA,cACA,aACA,aACA,OACA,UACA,aACA,OACA,QACA,SACA,eACA,qBACA,SACA,OACA,QACA,QACA,WACA,WACA,QACA,aACA,SACA,OACA,aACA,YACA,UACA,YACA,YACA,YACA,WACA,YACA,WACA,YACA,WACA,QACA,OACA,OACA,SACA,SACA,UACA,WACA,MACA,UACA,OACA,aACA,UACA,aACA,OACA,UACA,aACA,SACA,UACA,UACA,OACA,aACA,UACA,OACA,UACA,aACA,aACA,WACA,SACA,OACA,aACA,YACA,UACA,OACA,YACA,WACA,WACA,WACA,UACA,WACA,SACA,aACA,UACA,UACA,SACA,OACA,YACA,OACA,SACA,UACA,UACA,UACA,YACA,OACA,SACA,OACA,UACA,SACA,WACA,UACA,OACA,WACA,WACA,WACA,UACA,WACA,UACA,UACA,OACA,aACA,WACA,OACA,QACA,YACA,aACA,YACA,OACA,WACA,YACA,OACA,QACA,YACA,QACA,OACA,aACA,QACA,aACA,WACA,OACA,OACA,QACA,UACA,OACA,WACA,OACA,UACA,OACA,QACA,SACA,OACA,UACA,QACA,WACA,OACA,UACA,UACA,OACA,YACA,UACA,UACA,WACA,YACA,OACA,WACA,aACA,OACA,UACA,WACA,aACA,OACA,UACA,SACA,UACA,UACA,SACA,OACA,WACA,QACA,OACA,WACA,YACA,cACA,UACA,aACA,aACA,aACA,SACA,WACA,QACA,UACA,OACA,OACA,SACA,SACA,WACA,YACA,YACA,UACA,OACA,YACA,YACA,UACA,OACA,WACA,OACA,aACA,SACA,OACA,UACA,UACA,UACA,OACA,IACA,QACA,aACA,SACA,UACA,QACA,UACA,YACA,OACA,YACA,WACA,WACA,SACA,SACA,OACA,SACA,QACA,UACA,aACA,WACA,UACA,WACA,UACA,UACA,UACA,UACA,QACA,UACA,OACA,WACA,SACA,UACA,QACA,UACA,SACA,SACA,QACA,UACA,SACA,SACA,SACA,OACA,UACA,UACA,UACA,OACA,UACA,aACA,aACA,UACA,SACA,OACA,WACA,aACA,SACA,aACA,QACA,SACA,YACA,UACA,SACA,SACA,UACA,OACA,YACA,aACA,YACA,QACA,OACA,QACA,OACA,OACA,YACA,WACA,UACA,WACA,SACA,SACA,SACA,UACA,SACA,cACA,UACA,WACA,UACA,OACA,SACA,UACA,OACA,WACA,YACA,YACA,UACA,YACA,WACA,SACA,YACA,SACA,QACA,OACA,OACA,OACA,OACA,QACA,QACA,WACA,QACA,SACA,OACA,SACA,QACA,OACA,WACA,SACA,OACA,WACA,aACA,WACA,YACA,OACA,WACA,QACA,UACA,OACA,QACA,UACA,aACA,SACA,UACA,aACA,UACA,YACA,UACA,UACA,aACA,YACA,UACA,SACA,UACA,UACA,UACA,QACA,UACA,WACA,QACA,OACA,aACA,QACA,QACA,SACA,WACA,UACA,YACA,SACA,YACA,WACA,UACA,YACA,YACA,OACA,WACA,aACA,YACA,YACA,cACA,YACA,SACA,aACA,aACA,YACA,YACA,aACA,UACA,UACA,YACA,SACA,OACA,WACA,WACA,QACA,SACA,aACA,WACA,WACA,UACA,aACA,UACA,WACA,OACA,cACA,YACA,OACA,UACA,OACA,SACA,SACA,QACA,SACA,SACA,WACA,aACA,aACA,QACA,QACA,OACA,MACA,UACA,YACA,OACA,WACA,OACA,OACA,YACA,SACA,UACA,OACA,OACA,OACA,OACA,OACA,OACA,SACA,QACA,SACA,UACA,UACA,YACA,QACA,QACA,QACA,UACA,SACA,WACA,UACA,SACA,OACA,SACA,QACA,OACA,SACA,OACA,QACA,UACA,SACA,OACA,UACA,WACA,OACA,SACA,SACA,SACA,OACA,SACA,SACA,YACA,YACA,SACA,QACA,UACA,SACA,SACA,QACA,aACA,UACA,UACA,WACA,QACA,UACA,OACA,WACA,QACA,QACA,QACA,UACA,OACA,SACA,SACA,SACA,SACA,WACA,SACA,UACA,SACA,SACA,UACA,SACA,WACA,YACA,UACA,WACA,aACA,aACA,OACA,WACA,WACA,WACA,UACA,SACA,SACA,SACA,SACA,UACA,eACA,SACA,OACA,OACA,UACA,SACA,WACA,aACA,wBACA,SACA,SACA,WACA,OACA,YACA,SACA,UACA,WACA,UACA,WACA,UACA,YACA,UACA,SACA,UACA,SACA,SACA,WACA,WACA,SACA,SACA,SACA,QACA,OACA,YACA,WACA,YACA,YACA,WACA,WACA,OACA,SACA,SACA,UACA,QACA,SACA,SACA,OACA,WACA,YACA,YACA,UACA,OACA,UACA,SACA,cACA,cACA,aACA,cACA,WACA,SACA,UACA,QACA,SACA,QACA,SACA,UACA,UACA,OACA,WACA,SACA,QACA,YACA,OACA,UACA,UACA,QACA,WACA,QACA,WACA,SACA,aACA,OACA,WACA,YACA,YACA,OACA,SACA,WACA,UACA,OACA,SACA,SACA,YACA,YACA,QACA,UACA,UACA,WACA,SACA,SACA,OACA,SACA,UACA,UACA,UACA,UACA,SACA,OACA,QACA,OACA,aACA,UACA,SACA,SACA,UACA,WACA,MACA,KACA,UACA,UACA,QACA,UACA,WACA,UACA,OACA,SACA,UACA,OACA,aACA,WACA,WACA,WACA,SACA,QACA,OACA,aACA,QACA,UACA,SACA,OACA,WACA,SACA,QACA,WACA,YACA,YACA,YACA,UACA,WACA,OACA,SACA,OACA,SACA,QACA,YACA,SACA,YACA,SACA,aACA,SACA,MACA,QACA,aACA,YACA,OACA,QACA,QACA,UACA,SACA,OACA,SACA,OACA,YACA,SACA,UACA,UACA,YACA,aACA,UACA,SACA,WACA,QACA,SACA,OACA,OACA,UACA,WACA,YACA,OACA,YACA,aACA,aACA,WACA,SACA,WACA,OACA,SACA,WACA,YACA,SACA,aACA,OACA,WACA,QACA,OACA,QACA,cACA,WACA,WACA,WACA,QACA,SACA,UACA,SACA,cACA,WACA,OACA,OACA,YACA,UACA,OACA,SACA,OACA,OACA,WACA,UACA,SACA,SACA,UACA,OACA,UACA,QACA,UACA,OACA,YACA,WACA,WACA,aACA,SACA,UACA,SACA,YACA,SACA,OACA,WACA,YACA,QACA,UACA,OACA,SACA,UACA,SACA,QACA,SACA,MACA,SACA,OACA,WACA,UACA,UACA,QACA,SACA,SACA,UACA,WACA,YACA,UACA,OACA,OACA,OACA,UACA,QACA,OACA,OACA,UACA,QACA,OACA,aACA,mBACA,UACA,aACA,YACA,OACA,aACA,UACA,aACA,WACA,WACA,QACA,SACA,SACA,QACA,WACA,aACA,SACA,UACA,OACA,OACA,QACA,QACA,OACA,OACA,SACA,UACA,SACA,OACA,OACA,SACA,SACA,OACA,WACA,WACA,WACA,QACA,SACA,UACA,UACA,QACA,SACA,OACA,SACA,aACA,SACA,KACA,QACA,MACA,YACA,aACA,YACA,aACA,UACA,YACA,WACA,YACA,iBACA,WACA,MACA,UACA,QACA,QACA,MACA,UACA,cACA,WACA,cACA,iBACA,kBACA,eACA,aACA,aACA,aACA,gBACA,aACA,aACA,aACA,UACA,aACA,OACA,OACA,SACA,QACA,OACA,QACA,SACA,OACA,WACA,SACA,SACA,WACA,UACA,SACA,YACA,SACA,OACA,WACA,SACA,UACA,UACA,UACA,OACA,OACA,OACA,UACA,WACA,WACA,UACA,OACA,QACA,SACA,WACA,UACA,UACA,QACA,OACA,SACA,QACA,UACA,SACA,UACA,UACA,OACA,OACA,UACA,OACA,UACA,WACA,SACA,aACA,UACA,WACA,SACA,UACA,SACA,SACA,UACA,OACA,SACA,QACA,OACA,KACA,OACA,OACA,OACA,SACA,OACA,YACA,UACA,OACA,WACA,WACA,SACA,SACA,YACA,YACA,UACA,OACA,OACA,OACA,SACA,OACA,UACA,UACA,OACA,UACA,SACA,OACA,OACA,OACA,OACA,WACA,OACA,YACA,UACA,QACA,UACA,UACA,UACA,SACA,SACA,UACA,SACA,UACA,SACA,SACA,WACA,UACA,WACA,UACA,OACA,WACA,SACA,UACA,UACA,WACA,YACA,WACA,SACA,aACA,SACA,WACA,SACA,WACA,WACA,WACA,WACA,OACA,WACA,OACA,QACA,QACA,UACA,UACA,QACA,UACA,UACA,WACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,UACA,WACA,WACA,OACA,UACA,WACA,SACA,UACA,UACA,UACA,SACA,UACA,SACA,SACA,OACA,UACA,QACA,OACA,UACA,UACA,WACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,OACA,UACA,SACA,YACA,QACA,QACA,YACA,SACA,QACA,SACA,SACA,YACA,QACA,OACA,QACA,UACA,UACA,SACA,UACA,SACA,SACA,UACA,QACA,UACA,SACA,QACA,OACA,UACA,UACA,aACA,UACA,UACA,WACA,YACA,sBACA,SACA,YACA,OACA,SACA,SACA,OACA,WACA,YACA,SACA,YACA,WACA,UACA,UACA,YACA,QACA,SACA,QACA,SACA,UACA,YACA,WACA,OACA,YACA,SACA,SACA,UACA,UACA,WACA,SACA,UACA,UACA,SACA,WACA,UACA,OACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,UACA,SACA,UACA,UACA,SACA,SACA,OACA,OACA,WACA,UACA,UACA,OACA,WACA,QACA,UACA,UACA,QACA,UACA,UACA,UACA,WACA,YACA,SACA,SACA,OACA,UACA,UACA,UACA,WACA,SACA,UACA,QACA,SACA,MACA,SACA,UACA,WACA,aACA,QACA,OACA,WACA,aACA,UACA,YACA,YACA,UACA,UACA,UACA,SACA,SACA,WACA,SACA,UACA,QACA,UACA,UACA,OACA,WACA,cACA,SACA,UACA,UACA,UACA,UACA,eACA,UACA,SACA,UACA,SACA,WACA,QACA,UACA,aACA,UACA,OACA,SACA,UACA,OACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,YACA,WACA,UACA,WACA,UACA,WACA,YACA,OACA,QACA,UACA,WACA,UACA,UACA,UACA,QACA,UACA,YACA,WACA,QACA,QACA,UACA,SACA,YACA,UACA,UACA,UACA,aACA,UACA,WACA,WACA,QACA,YACA,aACA,QACA,SACA,UACA,UACA,UACA,QACA,UACA,UACA,SACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,QACA,SACA,WACA,UACA,UACA,QACA,UACA,OACA,WACA,WACA,OACA,UACA,UACA,UACA,SACA,SACA,SACA,QACA,OACA,UACA,QACA,UACA,OACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,WACA,WACA,YACA,SACA,UACA,UACA,kBACA,QACA,SACA,QACA,SACA,UACA,UACA,UACA,QACA,WACA,UACA,UACA,UACA,UACA,UACA,SACA,SACA,UACA,UACA,UACA,UACA,QACA,SACA,UACA,QACA,SACA,WACA,SACA,QACA,UACA,UACA,UACA,QACA,WACA,UACA,UACA,UACA,QACA,UACA,UACA,UACA,UACA,UACA,SACA,QACA,QACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,OACA,OACA,aACA,SACA,WACA,UACA,UACA,QACA,UACA,SACA,SACA,SACA,YACA,OACA,OACA,UACA,SACA,UACA,OACA,QACA,SACA,UACA,UACA,UACA,SACA,UACA,UACA,UACA,OACA,UACA,UACA,OACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,aACA,OACA,UACA,OACA,QACA,OACA,UACA,UACA,OACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,UACA,SACA,UACA,WACA,aACA,UACA,WACA,OACA,OACA,QACA,QACA,OACA,YACA,UACA,aACA,YACA,UACA,OACA,UACA,UACA,QACA,OACA,UACA,YACA,WACA,YACA,WACA,YACA,WACA,UACA,WACA,UACA,QACA,SACA,OACA,UACA,SACA,SACA,UACA,cACA,eACA,aACA,YACA,OACA,OACA,UACA,SACA,YACA,WACA,WACA,WACA,SACA,UACA,SACA,UACA,QACA,SACA,SACA,SACA,YACA,UACA,WACA,SACA,WACA,WACA,SACA,SACA,UACA,aACA,SACA,UACA,OACA,UACA,SACA,QACA,aACA,SACA,WACA,QACA,aACA,UACA,OACA,UACA,UACA,OACA,UACA,aACA,SACA,OACA,MACA,OACA,aACA,YACA,YACA,QACA,UACA,OACA,QACA,QACA,OACA,UACA,UACA,UACA,WACA,YACA,aACA,OACA,OACA,WACA,SACA,QACA,SACA,UACA,OACA,UACA,SACA,SACA,QACA,YACA,WACA,QACA,SACA,OACA,UACA,UACA,SACA,SACA,SACA,SACA,SACA,QACA,OACA,SACA,QACA,OACA,QACA,WACA,QACA,aACA,QACA,QACA,SACA,OACA,YACA,WACA,QACA,OACA,WACA,aACA,YACA,OACA,SACA,SACA,OACA,QACA,aACA,SACA,SACA,OACA,WACA,aACA,OACA,aACA,UACA,UACA,YACA,OACA,UACA,WACA,OACA,WACA,OACA,WACA,YACA,UACA,WACA,WACA,YACA,OACA,OACA,YACA,SACA,WACA,OACA,SACA,QACA,YACA,SACA,WACA,UACA,aACA,YACA,aACA,WACA,OACA,aACA,QACA,UACA,QACA,OACA,OACA,WACA,WACA,QACA,WACA,YACA,WACA,OACA,YACA,QACA,OACA,SACA,UACA,aACA,WACA,UACA,OACA,OACA,OACA,OACA,OACA,OACA,YACA,YACA,aACA,aACA,WACA,WACA,aACA,WACA,WACA,YACA,OACA,SACA,OACA,OACA,SACA,QACA,OACA,OACA,UACA,SACA,UACA,OACA,SACA,UACA,YACA,OACA,UACA,UACA,OACA,WACA,UACA,WACA,SACA,SACA,OACA,SACA,QACA,QACA,aACA,OACA,SACA,UACA,QACA,YACA,OACA,OACA,QACA,OACA,WACA,UACA,SACA,QACA,YACA,OACA,WACA,SACA,OACA,MACA,QACA,OACA,QACA,QACA,SACA,OACA,WACA,WACA,UACA,OACA,OACA,QACA,OACA,UACA,QACA,KACA,KACA,SACA,QACA,SACA,UACA,UACA,SACA,YACA,WACA,YACA,OACA,UACA,YACA,OACA,SACA,UACA,YACA,SACA,WACA,WACA,OACA,SACA,UACA,gBACA,SACA,SACA,WACA,QACA,WACA,WACA,UACA,WACA,SACA,WACA,QACA,OACA,WACA,OACA,0BACA,UACA,UACA,OACA,UACA,SACA,SACA,UACA,aACA,WACA,UACA,UACA,OACA,SACA,gBACA,UACA,SACA,SACA,YACA,aACA,UACA,UACA,UACA,SACA,OACA,UACA,SACA,YACA,WACA,SACA,OACA,aACA,YACA,YACA,MACA,UACA,YACA,SACA,WACA,SACA,WACA,SACA,YACA,SACA,SACA,WACA,qBACA,OACA,YACA,UACA,WACA,UACA,UACA,SACA,SACA,QACA,SACA,SACA,WACA,UACA,WACA,OACA,aACA,UACA,WACA,UACA,UACA,aACA,YACA,WACA,OACA,YACA,WACA,WACA,WACA,aACA,YACA,SACA,YACA,YACA,SACA,SACA,UACA,UACA,SACA,UACA,YACA,WACA,QACA,UACA,SACA,UACA,YACA,OACA,SACA,SACA,UACA,UACA,WACA,aACA,UACA,OACA,QACA,MACA,WACA,YACA,WACA,SACA,UACA,OACA,OACA,UACA,UACA,UACA,SACA,UACA,UACA,YACA,aACA,WACA,UACA,WACA,SACA,UACA,SACA,SACA,SACA,UACA,SACA,SACA,aACA,YACA,UACA,WACA,WACA,WACA,QACA,YACA,UACA,UACA,WACA,UACA,YACA,YACA,UACA,UACA,WACA,YACA,YACA,YACA,SACA,WACA,WACA,QACA,WACA,UACA,UACA,WACA,YACA,YACA,YACA,WACA,SACA,UACA,YACA,UACA,SACA,WACA,YACA,UACA,QACA,SACA,YACA,YACA,WACA,WACA,YACA,UACA,UACA,UACA,WACA,SACA,WACA,YACA,UACA,YACA,UACA,SACA,SACA,SACA,UACA,WACA,WACA,QACA,WACA,WACA,WACA,YACA,WACA,UACA,SACA,aACA,UACA,UACA,SACA,UACA,aACA,UACA,WACA,SACA,aACA,WACA,WACA,WACA,WACA,WACA,SACA,WACA,SACA,UACA,YACA,QACA,WACA,YACA,QACA,YACA,OACA,QACA,aACA,QACA,QACA,eACA,gBACA,QACA,OACA,QACA,UACA,UACA,YACA,SACA,SACA,WACA,UACA,UACA,SACA,QACA,UACA,YACA,YACA,UACA,UACA,QACA,UACA,SACA,aACA,WACA,UACA,SACA,aACA,UACA,WACA,UACA,YACA,UACA,SACA,OACA,YACA,YACA,UACA,OACA,YACA,UACA,WACA,SACA,QACA,QACA,SACA,UACA,OACA,WACA,UACA,OACA,YACA,WACA,aACA,aACA,aACA,WACA,YACA,WACA,UACA,UACA,OACA,SACA,OACA,SACA,WACA,OACA,SACA,SACA,SACA,OACA,OACA,WACA,aACA,WACA,YACA,WACA,WACA,QACA,OACA,SACA,OACA,OACA,QACA,OACA,UACA,OACA,OACA,OACA,UACA,UACA,OACA,OACA,WACA,aACA,SACA,OACA,SACA,SACA,SACA,OACA,OACA,YACA,UACA,UACA,WACA,SACA,UACA,OACA,WACA,YACA,OACA,OACA,UACA,UACA,SACA,OACA,WACA,UACA,WACA,UACA,UACA,aACA,YACA,aACA,UACA,SACA,QACA,QACA,YACA,YACA,YACA,aACA,WACA,aACA,aACA,WACA,WACA,YACA,aACA,OACA,UACA,OACA,QACA,SACA,SACA,SACA,SACA,SACA,SACA,OACA,UACA,OACA,YACA,WACA,YACA,WACA,UACA,QACA,aACA,aACA,UACA,QACA,WACA,WACA,QACA,SACA,SACA,SACA,OACA,aACA,YACA,QACA,OACA,YACA,SACA,UACA,WACA,eACA,eACA,YACA,cACA,YACA,UACA,SACA,UACA,QACA,SACA,QACA,OACA,KACA,MACA,OACA,UACA,UACA,OACA,WACA,UACA,OACA,YACA,aACA,SACA,WACA,SACA,UACA,QACA,QACA,YACA,gBACA,YACA,SACA,UACA,YACA,SACA,QACA,OACA,UACA,SACA,UACA,SACA,UACA,SACA,SACA,UACA,UACA,WACA,OACA,WACA,WACA,SACA,QACA,WACA,OACA,QACA,SACA,OACA,SACA,OACA,OACA,OACA,SACA,OACA,UACA,WACA,YACA,UACA,YACA,UACA,QACA,YACA,SACA,SACA,WACA,WACA,SACA,WACA,aACA,UACA,OACA,QACA,OACA,UACA,aACA,aACA,UACA,OACA,SACA,UACA,SACA,OACA,OACA,SACA,SACA,OACA,OACA,OACA,QACA,OACA,eACA,eACA,OACA,QACA,UACA,SACA,QACA,QACA,UACA,OACA,SACA,QACA,OACA,QACA,SACA,WACA,OACA,aACA,SACA,cACA,YACA,oBACA,OACA,WACA,WACA,UACA,UACA,UACA,QACA,cACA,WACA,WACA,UACA,SACA,UACA,OACA,YACA,WACA,OACA,WACA,WACA,UACA,YACA,WACA,SACA,aACA,UACA,OACA,QACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,WACA,WACA,aACA,YACA,YACA,SACA,KACA,QACA,UACA,aACA,OACA,QACA,QACA,QACA,SACA,WACA,OACA,YACA,SACA,WACA,UACA,YACA,UACA,UACA,WACA,SACA,aACA,aACA,WACA,YACA,YACA,YACA,eACA,YACA,WACA,aACA,YACA,YACA,YACA,YACA,YACA,aACA,UACA,OACA,QACA,OACA,SACA,WACA,SACA,UACA,WACA,SACA,WACA,OACA,OACA,WACA,QACA,YACA,WACA,OACA,YACA,UACA,WACA,OACA,QACA,YACA,UACA,QACA,SACA,QACA,WACA,OACA,QACA,YACA,UACA,SACA,QACA,OACA,SACA,OACA,QACA,WACA,SACA,UACA,SACA,SACA,OACA,QACA,QACA,QACA,SACA,QACA,OACA,WACA,OACA,SACA,WACA,QACA,QACA,UACA,0BACA,OACA,OACA,QACA,OACA,WACA,SACA,SACA,UACA,YACA,QACA,UACA,SACA,OACA,OACA,SACA,UACA,OACA,SACA,SACA,UACA,OACA,SACA,WACA,OACA,SACA,SACA,SACA,QACA,SACA,UACA,SACA,UACA,SACA,UACA,YACA,WACA,OACA,OACA,OACA,WACA,OACA,SACA,OACA,WACA,WACA,OACA,QACA,OACA,SACA,SACA,QACA,UACA,SACA,gBACA,QACA,SACA,QACA,UACA,OACA,UACA,WACA,SACA,YACA,UACA,OACA,OACA,OACA,WACA,QACA,SACA,QACA,OACA,UACA,YACA,UACA,YACA,YACA,WACA,SACA,WACA,UACA,UACA,aACA,QACA,OACA,UACA,OACA,UACA,WACA,aACA,YACA,WACA,WACA,WACA,YACA,UACA,aACA,UACA,SACA,WACA,QACA,OACA,SACA,WACA,UACA,OACA,UACA,UACA,WACA,aACA,QACA,QACA,OACA,YACA,WACA,SACA,OACA,QACA,QACA,WACA,SACA,UACA,OACA,SACA,OACA,QACA,SACA,OACA,QACA,OACA,YACA,WACA,UACA,WACA,UACA,WACA,SACA,aACA,OACA,YACA,OACA,SACA,QACA,QACA,OACA,SACA,QACA,WACA,OACA,UACA,YACA,QACA,SACA,OACA,aACA,UACA,UACA,UACA,cACA,WACA,OACA,QACA,QACA,QACA,SACA,aACA,YACA,OACA,UACA,UACA,YACA,UACA,YACA,OACA,WACA,QACA,UACA,YACA,UACA,SACA,SACA,SACA,SACA,SACA,OACA,WACA,UACA,WACA,UACA,SACA,SACA,eACA,OACA,UACA,UACA,aACA,aACA,SACA,OACA,UACA,UACA,aACA,QACA,OACA,cACA,WACA,OACA,OACA,OACA,YACA,YACA,YACA,YACA,YACA,YACA,OACA,WACA,UACA,UACA,OACA,SACA,UACA,OACA,SACA,SACA,UACA,OACA,UACA,QACA,SACA,UACA,YACA,YACA,YACA,aACA,WACA,OACA,UACA,QACA,aACA,OACA,QACA,QACA,SACA,WACA,OACA,WACA,OACA,SACA,UACA,SACA,QACA,SACA,OACA,OACA,UACA,OACA,OACA,gCACA,aACA,aACA,OACA,UACA,OACA,SACA,SACA,YACA,aACA,SACA,eACA,WACA,UACA,aACA,aACA,aACA,UACA,WACA,QACA,UACA,SACA,YACA,MACA,YACA,WACA,cACA,aACA,aACA,aACA,SACA,aACA,aACA,SACA,UACA,SACA,OACA,SACA,OACA,SACA,WACA,OACA,WACA,OACA,UACA,SACA,aACA,YACA,SACA,UACA,QACA,QACA,WACA,aACA,UACA,aACA,aACA,SACA,WACA,QACA,UACA,OACA,WACA,WACA,aACA,YACA,OACA,UACA,SACA,QACA,aACA,SACA,SACA,QACA,QACA,OACA,SACA,OACA,SACA,QACA,QACA,WACA,QACA,YACA,OACA,QACA,OACA,OACA,SACA,OACA,QACA,UACA,SACA,SACA,QACA,UACA,SACA,QACA,SACA,OACA,kBACA,UACA,SACA,SACA,UACA,QACA,WACA,YACA,QACA,UACA,SACA,UACA,aACA,WACA,WACA,QACA,UACA,UACA,OACA,aACA,OACA,aACA,UACA,UACA,UACA,UACA,SACA,SACA,UACA,UACA,UACA,WACA,UACA,SACA,OACA,OACA,OACA,aACA,aACA,UACA,OACA,SACA,QACA,QACA,OACA,OACA,SACA,SACA,SACA,SACA,YACA,aACA,SACA,SACA,SACA,OACA,cACA,YACA,aACA,YACA,OACA,SACA,OACA,UACA,UACA,SACA,cACA,aACA,QACA,cACA,SACA,OACA,YACA,eACA,SACA,aACA,aACA,cACA,WACA,WACA,QACA,OACA,QACA,OACA,OACA,WACA,aACA,WACA,OACA,UACA,UACA,aACA,SACA,aACA,YACA,aACA,YACA,WACA,YACA,YACA,UACA,UACA,QACA,SACA,QACA,SACA,UACA,SACA,QACA,UACA,OACA,SACA,OACA,WACA,QACA,UACA,YACA,WACA,UACA,SACA,UACA,OACA,UACA,SACA,OACA,YACA,YACA,YACA,aACA,YACA,WACA,qBACA,YACA,SACA,QACA,KACA,SACA,OACA,OACA,YACA,YACA,aACA,UACA,OACA,aACA,WACA,WACA,UACA,WACA,WACA,WACA,YACA,SACA,UACA,UACA,QACA,OACA,SACA,aACA,WACA,UACA,aACA,OACA,UACA,SACA,SACA,aACA,YACA,UACA,QACA,YACA,OACA,SACA,SACA,QACA,UACA,SACA,OACA,OACA,OACA,OACA,OACA,SACA,UACA,UACA,OACA,WACA,YACA,WACA,YACA,SACA,OACA,WACA,QACA,aACA,UACA,QACA,UACA,UACA,UACA,YACA,QACA,WACA,OACA,UACA,QACA,WACA,OACA,UACA,OACA,UACA,OACA,QACA,OACA,OACA,SACA,SACA,OACA,QACA,OACA,OACA,aACA,SACA,SACA,OACA,aACA,WACA,OACA,QACA,OACA,YACA,WACA,OACA,OACA,QACA,YACA,YACA,UACA,SACA,aACA,OACA,SACA,OACA,WACA,WACA,WACA,UACA,UACA,SACA,UACA,OACA,QACA,YACA,SACA,SACA,SACA,QACA,UACA,WACA,OACA,UACA,UACA,WACA,SACA,SACA,YACA,UACA,OACA,UACA,OACA,WACA,YACA,WACA,UACA,UACA,OACA,QACA,YACA,UACA,UACA,YACA,SACA,QACA,YACA,SACA,SACA,WACA,QACA,SACA,OACA,gBACA,OACA,QACA,SACA,SACA,OACA,SACA,UACA,UACA,OACA,WACA,WACA,WACA,WACA,YACA,UACA,WACA,UACA,WACA,SACA,WACA,aACA,UACA,WACA,SACA,UACA,UACA,YACA,WACA,aACA,YACA,aACA,YACA,SACA,WACA,aACA,SACA,aACA,SACA,WACA,WACA,aACA,aACA,YACA,UACA,SACA,UACA,YACA,aACA,SACA,YACA,WACA,UACA,SACA,WACA,UACA,OACA,aACA,WACA,UACA,UACA,WACA,UACA,WACA,YACA,UACA,WACA,WACA,WACA,WACA,SACA,WACA,OACA,WACA,SACA,UACA,SACA,UACA,UACA,0BACA,2BACA,UACA,QACA,SACA,WACA,QACA,OACA,SACA,OACA,SACA,OACA,WACA,SACA,UACA,QACA,QACA,UACA,UACA,UACA,OACA,QACA,SACA,WACA,cACA,SACA,QACA,aACA,OACA,QACA,YACA,aACA,YACA,SACA,SACA,SACA,SACA,UACA,WACA,OACA,UACA,YACA,SACA,SACA,aACA,WACA,QACA,UACA,SACA,UACA,WACA,aACA,UACA,UACA,UACA,OACA,OACA,WACA,UACA,aACA,WACA,WACA,YACA,YACA,YACA,YACA,WACA,UACA,WACA,SACA,WACA,SACA,WACA,UACA,YACA,aACA,QACA,YACA,WACA,OACA,WACA,WACA,WACA,UACA,aACA,QACA,OACA,aACA,SACA,aACA,YACA,YACA,WACA,WACA,YACA,SACA,WACA,SACA,UACA,QACA,SACA,WACA,UACA,aACA,SACA,OACA,SACA,SACA,UACA,OACA,UACA,SACA,SACA,SACA,UACA,SACA,UACA,QACA,OACA,UACA,OACA,UACA,cACA,aACA,YACA,aACA,UACA,UACA,SACA,WACA,SACA,sBACA,SACA,WACA,OACA,WACA,OACA,OACA,aACA,UACA,QACA,OACA,SACA,SACA,UACA,SACA,UACA,WACA,WACA,aACA,SACA,UACA,YACA,WACA,WACA,YACA,QACA,UACA,WACA,WACA,UACA,WACA,QACA,OACA,UACA,SACA,QACA,UACA,YACA,QACA,OACA,WACA,aACA,UACA,OACA,aACA,UACA,OACA,YACA,OACA,WACA,OACA,SACA,WACA,WACA,WACA,OACA,WACA,QACA,SACA,aACA,UACA,aACA,UACA,OACA,YACA,YACA,QACA,WACA,OACA,QACA,YACA,MACA,YACA,WACA,WACA,UACA,aACA,WACA,OACA,UACA,UACA,YACA,WACA,OACA,SACA,UACA,OACA,QACA,WACA,SACA,OACA,WACA,OACA,UACA,SACA,WACA,UACA,SACA,OACA,UACA,WACA,SACA,SACA,UACA,WACA,OACA,SACA,QACA,OACA,WACA,aACA,UACA,YACA,OACA,YACA,eACA,aACA,aACA,YACA,YACA,YACA,aACA,WACA,QACA,UACA,SACA,WACA,OACA,YACA,OACA,OACA,WACA,UACA,UACA,iBACA,SACA,OACA,UACA,WACA,WACA,UACA,QACA,QACA,SACA,kBACA,aACA,aACA,UACA,SACA,WACA,cACA,aACA,aACA,cACA,aACA,YACA,YACA,OACA,WACA,OACA,WACA,QACA,YACA,UACA,UACA,aACA,YACA,YACA,UACA,WACA,UACA,QACA,UACA,aACA,WACA,SACA,aACA,WACA,UACA,OACA,aACA,UACA,YACA,aACA,UACA,WACA,YACA,OACA,aACA,aACA,WACA,WACA,UACA,YACA,SACA,aACA,aACA,UACA,UACA,UACA,WACA,WACA,YACA,aACA,WACA,YACA,UACA,UACA,UACA,WACA,SACA,aACA,aACA,YACA,UACA,YACA,UACA,WACA,UACA,aACA,aACA,YACA,WACA,WACA,UACA,QACA,WACA,UACA,WACA,aACA,YACA,WACA,UACA,QACA,UACA,YACA,SACA,YACA,YACA,WACA,SACA,aACA,aACA,YACA,aACA,WACA,QACA,YACA,SACA,SACA,OACA,OACA,aACA,SACA,aACA,UACA,SACA,QACA,OACA,QACA,UACA,UACA,YACA,WACA,WACA,QACA,WACA,WACA,QACA,WACA,YACA,cACA,aACA,WACA,WACA,OACA,UACA,WACA,UACA,YACA,WACA,UACA,YACA,aACA,aACA,YACA,YACA,YACA,aACA,WACA,UACA,SACA,YACA,UACA,YACA,OACA,YACA,aACA,SACA,UACA,SACA,WACA,WACA,UACA,OACA,OACA,SACA,UACA,UACA,WACA,SACA,SACA,QACA,WACA,UACA,YACA,UACA,aACA,aACA,SACA,YACA,WACA,OACA,OACA,UACA,YACA,UACA,YACA,YACA,UACA,aACA,WACA,WACA,aACA,WACA,aACA,SACA,UACA,OACA,aACA,YACA,SACA,OACA,SACA,WACA,OACA,SACA,YACA,UACA,SACA,SACA,OACA,OACA,OACA,WACA,OACA,UACA,YACA,QACA,OACA,UACA,OACA,UACA,QACA,UACA,SACA,UACA,SACA,aACA,uBACA,aACA,OACA,aACA,YACA,SACA,OACA,OACA,OACA,QACA,QACA,UACA,SACA,UACA,YACA,OACA,SACA,OACA,UACA,UACA,SACA,UACA,UACA,QACA,QACA,WACA,OACA,WACA,UACA,aACA,UACA,WACA,OACA,SACA,UACA,QACA,QACA,QACA,UACA,SACA,YACA,QACA,SACA,aACA,YACA,QACA,UACA,UACA,UACA,WACA,QACA,cACA,UACA,UACA,SACA,QACA,OACA,UACA,UACA,SACA,OACA,QACA,QACA,QACA,aACA,QACA,SACA,aACA,aACA,WACA,UACA,OACA,YACA,WACA,YACA,UACA,UACA,SACA,YACA,aACA,aACA,WACA,UACA,WACA,UACA,WACA,OACA,SACA,SACA,SACA,aACA,SACA,OACA,aACA,UACA,SACA,cACA,aACA,aACA,aACA,aACA,aACA,aACA,WACA,WACA,WACA,UACA,UACA,UACA,SACA,OACA,QACA,YACA,SACA,OACA,SACA,aACA,YACA,WACA,WACA,SACA,OACA,UACA,OACA,UACA,QACA,UACA,WACA,OACA,OACA,UACA,OACA,WACA,UACA,QACA,QACA,OACA,SACA,SACA,SACA,OACA,WACA,SACA,OACA,UACA,OACA,QACA,WACA,WACA,UACA,WACA,SACA,SACA,OACA,UACA,OACA,YACA,OACA,SACA,SACA,WACA,UACA,SACA,SACA,SACA,QACA,WACA,SACA,OACA,QACA,aACA,WACA,SACA,WACA,UACA,OACA,WACA,QACA,aACA,OACA,WACA,SACA,YACA,aACA,WACA,QACA,aACA,WACA,UACA,OACA,QACA,SACA,YACA,UACA,UACA,SACA,QACA,QACA,WACA,aACA,YACA,aACA,WACA,YACA,UACA,SACA,WACA,OACA,WACA,UACA,UACA,WACA,QACA,QACA,UACA,OACA,SACA,OACA,QACA,UACA,YACA,UACA,WACA,OACA,UACA,QACA,QACA,OACA,WACA,QACA,OACA,UACA,WACA,SACA,aACA,aACA,SACA,SACA,SACA,SACA,UACA,aACA,aACA,aACA,aACA,YACA,YACA,OACA,QACA,WACA,UACA,OACA,YACA,UACA,QACA,OACA,cACA,YACA,OACA,aACA,QACA,QACA,KACA,SACA,OACA,SACA,WACA,QACA,OACA,YACA,OACA,UACA,aACA,YACA,UACA,cACA,SACA,aACA,aACA,aACA,SACA,WACA,SACA,OACA,SACA,WACA,OACA,UACA,UACA,UACA,SACA,SACA,OACA,UACA,SACA,aACA,WACA,SACA,UACA,SACA,OACA,OACA,aACA,aACA,OACA,YACA,YACA,UACA,OACA,OACA,UACA,MACA,UACA,aACA,OACA,aACA,QACA,QACA,SACA,SACA,aACA,OACA,QACA,cACA,MACA,SACA,SACA,SACA,SACA,SACA,UACA,OACA,UACA,YACA,aACA,UACA,YACA,YACA,YACA,YACA,OACA,UACA,YACA,SACA,YACA,UACA,YACA,aACA,YACA,SACA,aACA,YACA,WACA,aACA,YACA,QACA,SACA,UACA,YACA,OACA,UACA,WACA,aACA,UACA,UACA,UACA,UACA,SACA,SACA,YACA,WACA,QACA,UACA,YACA,aACA,YACA,OACA,SACA,UACA,UACA,WACA,aACA,UACA,WACA,SACA,UACA,OACA,OACA,SACA,OACA,UACA,UACA,aACA,OACA,WACA,aACA,YACA,YACA,OACA,aACA,YACA,aACA,YACA,aACA,YACA,aACA,aACA,WACA,UACA,OACA,WACA,UACA,WACA,SACA,WACA,QACA,SACA,WACA,OACA,UACA,OACA,UACA,UACA,WACA,KACA,UACA,aACA,YACA,OACA,SACA,SACA,SACA,WACA,aACA,YACA,SACA,SACA,SACA,aACA,UACA,SACA,SACA,YACA,SACA,QACA,UACA,SACA,OACA,UACA,YACA,SACA,SACA,aACA,YACA,aACA,SACA,QACA,YACA,aACA,UACA,SACA,SACA,YACA,QACA,WACA,aACA,OACA,UACA,WACA,WACA,YACA,WACA,YACA,WACA,YACA,WACA,WACA,WACA,cACA,SACA,WACA,WACA,WACA,YACA,WACA,YACA,WACA,YACA,UACA,WACA,SACA,SACA,UACA,UACA,cACA,aACA,SACA,UACA,UACA,aACA,WACA,YACA,aACA,WACA,WACA,YACA,WACA,aACA,aACA,YACA,WACA,UACA,YACA,YACA,WACA,WACA,YACA,aACA,OACA,UACA,SACA,QACA,UACA,YACA,SACA,OACA,YACA,UACA,aACA,SACA,YACA,WACA,QACA,SACA,SACA,WACA,OACA,QACA,UACA,YACA,UACA,UACA,UACA,aACA,WACA,SACA,aACA,QACA,SACA,aACA,UACA,QACA,UACA,QACA,UACA,aACA,OACA,aACA,SACA,SACA,UACA,UACA,WACA,OACA,eACA,UACA,UACA,OACA,UACA,UACA,aACA,WACA,UACA,SACA,QACA,SACA,SACA,WACA,OACA,OACA,WACA,UACA,SACA,UACA,QACA,QACA,UACA,UACA,OACA,QACA,aACA,UACA,WACA,YACA,YACA,aACA,OACA,UACA,YACA,WACA,WACA,YACA,YACA,YACA,WACA,SACA,WACA,WACA,WACA,WACA,WACA,YACA,WACA,UACA,WACA,SACA,OACA,OACA,UACA,UACA,OACA,OACA,aACA,QACA,QACA,SACA,QACA,QACA,QACA,OACA,SACA,UACA,WACA,YACA,MACA,SACA,QACA,SACA,WACA,UACA,SACA,OACA,OACA,UACA,SACA,UACA,SACA,UACA,WACA,aACA,OACA,UACA,UACA,UACA,SACA,WACA,WACA,OACA,SACA,QACA,SACA,QACA,QACA,OACA,OACA,WACA,aACA,OACA,QACA,UACA,SACA,SACA,SACA,UACA,YACA,QACA,OACA,OACA,UACA,UACA,SACA,YACA,SACA,SACA,UACA,UACA,OACA,SACA,QACA,UACA,SACA,UACA,UACA,UACA,cACA,YACA,WACA,QACA,WACA,WACA,SACA,QACA,YACA,YACA,UACA,MACA,SACA,SACA,WACA,WACA,WACA,SACA,SACA,MACA,UACA,cACA,YACA,YACA,QACA,YACA,QACA,SACA,YACA,MACA,UACA,SACA,QACA,IACA,UACA,eACA,YACA,aACA,SACA,cACA,MACA,QACA,OACA,OACA,WACA,UACA,SACA,WACA,aACA,gBACA,UACA,SACA,SACA,WACA,WACA,SACA,aACA,MACA,eACA,aACA,SACA,OACA,aACA,SACA,SACA,UACA,aACA,aACA,cACA,cACA,aACA,OACA,OACA,SACA,SACA,aACA,UACA,QACA,QACA,OACA,UACA,aACA,cACA,cACA,aACA,SACA,WACA,aACA,eACA,WACA,OACA,WACA,cACA,QACA,aACA,cACA,UACA,WACA,WACA,YACA,aACA,WACA,SACA,WACA,UACA,cACA,QACA,aACA,QACA,eACA,aACA,OACA,YACA,UACA,cACA,SACA,WACA,SACA,WACA,SACA,SACA,UACA,IACA,YACA,KACA,UACA,OACA,YACA,SACA,cACA,aACA,aACA,SACA,OACA,MACA,SACA,SACA,WACA,QACA,cACA,WACA,WACA,OACA,WACA,OACA,OACA,UACA,YACA,OACA,SACA,eACA,eACA,aACA,WACA,WACA,YACA,UACA,YACA,QACA,SACA,YACA,cACA,WACA,UACA,UACA,gBACA,UACA,gBACA,WACA,aACA,QACA,SACA,SACA,SACA,UACA,UACA,SACA,OACA,UACA,YACA,YACA,WACA,UACA,UACA,WACA,UACA,YACA,OACA,YACA,UACA,SACA,YACA,YACA,aACA,aACA,OACA,YACA,WACA,iBACA,WACA,UACA,SACA,MACA,YACA,cACA,UACA,UACA,2BACA,cACA,cACA,aACA,SACA,aACA,SACA,cACA,cACA,WACA,SACA,cACA,MACA,aACA,OACA,WACA,MACA,SACA,UACA,YACA,MACA,MACA,eACA,KACA,QACA,OACA,QACA,YACA,KACA,WACA,OACA,OACA,UACA,gBACA,WACA,SACA,SACA,QACA,SACA,MACA,YACA,aACA,UACA,SACA,aACA,SACA,MACA,aACA,OACA,SACA,SACA,WACA,WACA,QACA,SACA,YACA,UACA,gBACA,KACA,WACA,UACA,WACA,QACA,OACA,QACA,cACA,MACA,WACA,UACA,WACA,UACA,WACA,UACA,UACA,aACA,YACA,QACA,aACA,WACA,UACA,UACA,SACA,OACA,QACA,QACA,aACA,UACA,WACA,OACA,WACA,OACA,YACA,QACA,SACA,OACA,UACA,eACA,SACA,YACA,SACA,WACA,eACA,YACA,UACA,cACA,KACA,WACA,SACA,SACA,SACA,UACA,SACA,WACA,gBACA,YACA,aACA,eACA,WACA,YACA,WACA,cACA,YACA,OACA,cACA,WACA,aACA,WACA,aACA,YACA,UACA,gBACA,UACA,IACA,QACA,SACA,UACA,MACA,SACA,aACA,YACA,UACA,SACA,MACA,UACA,UACA,SACA,UACA,MACA,UACA,YACA,MACA,OACA,MACA,OACA,QACA,QACA,QACA,QACA,aACA,MACA,QACA,OACA,UACA,QACA,SACA,aACA,WACA,WACA,cACA,aACA,SACA,QACA,eACA,UACA,cACA,QACA,WACA,WACA,YACA,SACA,YACA,gBACA,YACA,YACA,WACA,cACA,QACA,cACA,YACA,MACA,UACA,QACA,WACA,YACA,OACA,QACA,cACA,UACA,UACA,IACA,UACA,SACA,OACA,QACA,UACA,cACA,MACA,cACA,UACA,YACA,SACA,YACA,YACA,gBACA,YACA,SACA,YACA,MACA,YACA,cACA,QACA,UACA,SACA,WACA,MACA,eACA,SACA,WACA,WACA,SACA,SACA,WACA,WACA,SACA,aACA,UACA,YACA,aACA,UACA,aACA,SACA,aACA,UACA,YACA,QACA,SACA,QACA,QACA,MACA,UACA,WACA,YACA,YACA,cACA,WACA,OACA,YACA,YACA,SACA,cACA,SACA,aACA,SACA,cACA,UACA,aACA,aACA,UACA,cACA,UACA,MACA,YACA,UACA,aACA,aACA,YACA,UACA,aACA,eACA,SACA,eACA,kBACA,SACA,OACA,UACA,MACA,cACA,aACA,MACA,OACA,YACA,YACA,eACA,SACA,QACA,aACA,MACA,YACA,YACA,WACA,WACA,WACA,YACA,aACA,UACA,MACA,OACA,YACA,SACA,WACA,WACA,YACA,IACA,QACA,QACA,SACA,UACA,MACA,YACA,WACA,QACA,YACA,UACA,WACA,WACA,IACA,WACA,UACA,WACA,aACA,OACA,SACA,SACA,aACA,OACA,WACA,eACA,aACA,YACA,YACA,aACA,YACA,QACA,QACA,YACA,SCjllMaC,GAAQ,CACnB,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,YACA,UACA,UACA,SACA,YACA,QACA,UACA,WACA,SACA,WACA,UACA,UACA,SACA,WACA,UACA,UACA,YACA,SACA,QACA,SACA,UACA,UACA,SACA,SACA,QACA,SACA,SACA,WACA,UACA,QACA,SACA,YACA,QACA,QACA,UACA,QACA,YACA,SACA,SACA,UACA,UACA,SACA,SACA,UACA,SACA,YACA,QACA,SACA,SACA,WACA,QACA,SACA,WACA,UACA,QACA,WACA,QACA,QACA,YACA,UACA,QACA,YACA,WACA,QACA,YACA,SACA,QACA,QACA,UACA,UACA,QACA,UACA,WACA,UACA,QACA,YACA,WACA,QACA,SACA,WACA,QACA,YACA,SACA,UACA,SACA,QACA,WACA,QACA,WACA,YACA,QACA,UACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SACA,QACA,UACA,QACA,YACA,SACA,SACA,UACA,UACA,SACA,SACA,UACA,SACA,YACA,QACA,SACA,SACA,WACA,QACA,SACA,WACA,UACA,QACA,WACA,QACA,QACA,YACA,UACA,QACA,YACA,WACA,QACA,YACA,SACA,QACA,QACA,UACA,UACA,QACA,UACA,WACA,UACA,QACA,YACA,WACA,QACA,SACA,WACA,QACA,YACA,SACA,UACA,SACA,QACA,WACA,QACA,WACA,YACA,QACA,UACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,QACA,SCxrLK,IAAMC,GAAW,kBCoBfl3F,EAAAA,GAAAA,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","sources":["../node_modules/@babel/runtime/helpers/arrayLikeToArray.js","../node_modules/@babel/runtime/helpers/arrayWithHoles.js","../node_modules/@babel/runtime/helpers/arrayWithoutHoles.js","../node_modules/@babel/runtime/helpers/createForOfIteratorHelper.js","../node_modules/@babel/runtime/helpers/defineProperty.js","../node_modules/@babel/runtime/helpers/iterableToArray.js","../node_modules/@babel/runtime/helpers/iterableToArrayLimit.js","../node_modules/@babel/runtime/helpers/nonIterableRest.js","../node_modules/@babel/runtime/helpers/nonIterableSpread.js","../node_modules/@babel/runtime/helpers/slicedToArray.js","../node_modules/@babel/runtime/helpers/toConsumableArray.js","../node_modules/@babel/runtime/helpers/unsupportedIterableToArray.js","../node_modules/classnames/index.js","../node_modules/date-fns/esm/_lib/addLeadingZeros/index.js","../node_modules/date-fns/esm/_lib/defaultLocale/index.js","../node_modules/date-fns/esm/_lib/defaultOptions/index.js","../node_modules/date-fns/esm/_lib/format/longFormatters/index.js","../node_modules/date-fns/esm/_lib/getTimezoneOffsetInMilliseconds/index.js","../node_modules/date-fns/esm/_lib/startOfUTCISOWeekYear/index.js","../node_modules/date-fns/esm/_lib/getUTCISOWeek/index.js","../node_modules/date-fns/esm/_lib/getUTCISOWeekYear/index.js","../node_modules/date-fns/esm/_lib/startOfUTCWeekYear/index.js","../node_modules/date-fns/esm/_lib/getUTCWeek/index.js","../node_modules/date-fns/esm/_lib/getUTCWeekYear/index.js","../node_modules/date-fns/esm/_lib/protectedTokens/index.js","../node_modules/date-fns/esm/_lib/requiredArgs/index.js","../node_modules/date-fns/esm/_lib/startOfUTCISOWeek/index.js","../node_modules/date-fns/esm/_lib/startOfUTCWeek/index.js","../node_modules/date-fns/esm/_lib/toInteger/index.js","../node_modules/date-fns/esm/addDays/index.js","../node_modules/date-fns/esm/addHours/index.js","../node_modules/date-fns/esm/addMilliseconds/index.js","../node_modules/date-fns/esm/addMinutes/index.js","../node_modules/date-fns/esm/addMonths/index.js","../node_modules/date-fns/esm/addWeeks/index.js","../node_modules/date-fns/esm/addYears/index.js","../node_modules/date-fns/esm/constants/index.js","../node_modules/date-fns/esm/differenceInCalendarDays/index.js","../node_modules/date-fns/esm/differenceInCalendarMonths/index.js","../node_modules/date-fns/esm/differenceInCalendarWeeks/index.js","../node_modules/date-fns/esm/differenceInCalendarYears/index.js","../node_modules/date-fns/esm/endOfDay/index.js","../node_modules/date-fns/esm/endOfMonth/index.js","../node_modules/date-fns/esm/endOfWeek/index.js","../node_modules/date-fns/esm/_lib/getUTCDayOfYear/index.js","../node_modules/date-fns/esm/_lib/format/lightFormatters/index.js","../node_modules/date-fns/esm/_lib/format/formatters/index.js","../node_modules/date-fns/esm/format/index.js","../node_modules/date-fns/esm/getDate/index.js","../node_modules/date-fns/esm/getDay/index.js","../node_modules/date-fns/esm/getHours/index.js","../node_modules/date-fns/esm/startOfISOWeek/index.js","../node_modules/date-fns/esm/getISOWeekYear/index.js","../node_modules/date-fns/esm/startOfISOWeekYear/index.js","../node_modules/date-fns/esm/getISOWeek/index.js","../node_modules/date-fns/esm/getMinutes/index.js","../node_modules/date-fns/esm/getMonth/index.js","../node_modules/date-fns/esm/getQuarter/index.js","../node_modules/date-fns/esm/getSeconds/index.js","../node_modules/date-fns/esm/getTime/index.js","../node_modules/date-fns/esm/getYear/index.js","../node_modules/date-fns/esm/isAfter/index.js","../node_modules/date-fns/esm/isBefore/index.js","../node_modules/date-fns/esm/isDate/index.js","../node_modules/date-fns/esm/isEqual/index.js","../node_modules/date-fns/esm/isSameDay/index.js","../node_modules/date-fns/esm/isSameMonth/index.js","../node_modules/date-fns/esm/isSameQuarter/index.js","../node_modules/date-fns/esm/isSameYear/index.js","../node_modules/date-fns/esm/isValid/index.js","../node_modules/date-fns/esm/isWithinInterval/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatDistance/index.js","../node_modules/date-fns/esm/locale/_lib/buildFormatLongFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatLong/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/formatRelative/index.js","../node_modules/date-fns/esm/locale/_lib/buildLocalizeFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/localize/index.js","../node_modules/date-fns/esm/locale/_lib/buildMatchFn/index.js","../node_modules/date-fns/esm/locale/en-US/_lib/match/index.js","../node_modules/date-fns/esm/locale/_lib/buildMatchPatternFn/index.js","../node_modules/date-fns/esm/locale/en-US/index.js","../node_modules/date-fns/esm/max/index.js","../node_modules/date-fns/esm/min/index.js","../node_modules/date-fns/esm/_lib/assign/index.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/inherits.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/typeof.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/createSuper.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/isNativeReflectConstruct.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/createClass.js","../node_modules/date-fns/esm/parse/_lib/Setter.js","../node_modules/date-fns/esm/parse/_lib/Parser.js","../node_modules/date-fns/esm/parse/_lib/parsers/EraParser.js","../node_modules/date-fns/esm/parse/_lib/constants.js","../node_modules/date-fns/esm/parse/_lib/utils.js","../node_modules/date-fns/esm/parse/_lib/parsers/YearParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/LocalWeekYearParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/ISOWeekYearParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/ExtendedYearParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/QuarterParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/StandAloneQuarterParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/MonthParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/StandAloneMonthParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/LocalWeekParser.js","../node_modules/date-fns/esm/_lib/setUTCWeek/index.js","../node_modules/date-fns/esm/parse/_lib/parsers/ISOWeekParser.js","../node_modules/date-fns/esm/_lib/setUTCISOWeek/index.js","../node_modules/date-fns/esm/parse/_lib/parsers/DateParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/DayOfYearParser.js","../node_modules/date-fns/esm/_lib/setUTCDay/index.js","../node_modules/date-fns/esm/parse/_lib/parsers/DayParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/LocalDayParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/StandAloneLocalDayParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/ISODayParser.js","../node_modules/date-fns/esm/_lib/setUTCISODay/index.js","../node_modules/date-fns/esm/parse/_lib/parsers/AMPMParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/AMPMMidnightParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/DayPeriodParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/Hour1to12Parser.js","../node_modules/date-fns/esm/parse/_lib/parsers/Hour0to23Parser.js","../node_modules/date-fns/esm/parse/_lib/parsers/Hour0To11Parser.js","../node_modules/date-fns/esm/parse/_lib/parsers/Hour1To24Parser.js","../node_modules/date-fns/esm/parse/_lib/parsers/MinuteParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/SecondParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/FractionOfSecondParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/ISOTimezoneWithZParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/ISOTimezoneParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/TimestampSecondsParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/TimestampMillisecondsParser.js","../node_modules/date-fns/esm/parse/_lib/parsers/index.js","../node_modules/date-fns/esm/parse/index.js","../node_modules/date-fns/esm/parseISO/index.js","../node_modules/date-fns/esm/setHours/index.js","../node_modules/date-fns/esm/setMinutes/index.js","../node_modules/date-fns/esm/getDaysInMonth/index.js","../node_modules/date-fns/esm/setMonth/index.js","../node_modules/date-fns/esm/setQuarter/index.js","../node_modules/date-fns/esm/setSeconds/index.js","../node_modules/date-fns/esm/setYear/index.js","../node_modules/date-fns/esm/startOfDay/index.js","../node_modules/date-fns/esm/startOfMonth/index.js","../node_modules/date-fns/esm/startOfQuarter/index.js","../node_modules/date-fns/esm/startOfWeek/index.js","../node_modules/date-fns/esm/startOfYear/index.js","../node_modules/date-fns/esm/subDays/index.js","../node_modules/date-fns/esm/subHours/index.js","../node_modules/date-fns/esm/subMilliseconds/index.js","../node_modules/date-fns/esm/subMinutes/index.js","../node_modules/date-fns/esm/subMonths/index.js","../node_modules/date-fns/esm/subWeeks/index.js","../node_modules/date-fns/esm/subYears/index.js","../node_modules/date-fns/esm/toDate/index.js","../node_modules/decode-uri-component/index.js","../node_modules/egoroof-blowfish/dist/blowfish.js","../node_modules/filter-obj/index.js","../node_modules/grapheme-splitter/index.js","../node_modules/object-assign/index.js","../node_modules/prop-types/factoryWithThrowingShims.js","../node_modules/prop-types/index.js","../node_modules/prop-types/lib/ReactPropTypesSecret.js","../node_modules/query-string/index.js","../node_modules/react-datepicker/dist/react-datepicker.min.js","../node_modules/react-dom/cjs/react-dom.production.min.js","../node_modules/react-dom/index.js","../node_modules/react-fast-compare/index.js","../node_modules/react-onclickoutside/dist/react-onclickoutside.es.js","../node_modules/react-popper/lib/esm/Manager.js","../node_modules/react-popper/lib/esm/utils.js","../node_modules/@popperjs/core/lib/dom-utils/getWindow.js","../node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","../node_modules/@popperjs/core/lib/utils/math.js","../node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","../node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","../node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","../node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","../node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","../node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","../node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","../node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","../node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","../node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","../node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","../node_modules/@popperjs/core/lib/enums.js","../node_modules/@popperjs/core/lib/utils/orderModifiers.js","../node_modules/@popperjs/core/lib/utils/debounce.js","../node_modules/@popperjs/core/lib/createPopper.js","../node_modules/@popperjs/core/lib/utils/mergeByName.js","../node_modules/@popperjs/core/lib/modifiers/eventListeners.js","../node_modules/@popperjs/core/lib/utils/getBasePlacement.js","../node_modules/@popperjs/core/lib/utils/getVariation.js","../node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","../node_modules/@popperjs/core/lib/utils/computeOffsets.js","../node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","../node_modules/@popperjs/core/lib/modifiers/computeStyles.js","../node_modules/@popperjs/core/lib/modifiers/offset.js","../node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","../node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","../node_modules/@popperjs/core/lib/dom-utils/contains.js","../node_modules/@popperjs/core/lib/utils/rectToClientRect.js","../node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","../node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","../node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","../node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","../node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","../node_modules/@popperjs/core/lib/utils/expandToHashMap.js","../node_modules/@popperjs/core/lib/utils/detectOverflow.js","../node_modules/@popperjs/core/lib/utils/within.js","../node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","../node_modules/@popperjs/core/lib/utils/getAltAxis.js","../node_modules/@popperjs/core/lib/modifiers/arrow.js","../node_modules/@popperjs/core/lib/modifiers/hide.js","../node_modules/@popperjs/core/lib/popper.js","../node_modules/@popperjs/core/lib/modifiers/applyStyles.js","../node_modules/@popperjs/core/lib/modifiers/flip.js","../node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","../node_modules/react-popper/lib/esm/usePopper.js","../node_modules/react-popper/lib/esm/Popper.js","../node_modules/react-popper/lib/esm/Reference.js","../node_modules/react/cjs/react-jsx-runtime.production.min.js","../node_modules/react/cjs/react.production.min.js","../node_modules/react/index.js","../node_modules/react/jsx-runtime.js","../node_modules/scheduler/cjs/scheduler.production.min.js","../node_modules/scheduler/index.js","../node_modules/split-on-first/index.js","../node_modules/strict-uri-encode/index.js","../node_modules/ua-parser-js/src/ua-parser.js","../node_modules/warning/warning.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/createForOfIteratorHelper.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","../webpack/bootstrap","../webpack/runtime/amd options","../webpack/runtime/compat get default export","../webpack/runtime/define property getters","../webpack/runtime/ensure chunk","../webpack/runtime/get javascript chunk filename","../webpack/runtime/get mini-css chunk filename","../webpack/runtime/hasOwnProperty shorthand","../webpack/runtime/load script","../webpack/runtime/make namespace object","../webpack/runtime/publicPath","../webpack/runtime/jsonp chunk loading","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","../node_modules/@heroicons/react/outline/esm/ClockIcon.js","../node_modules/react-div-100vh/dist/esm/index.js","constants/settings.ts","context/AlertContext.tsx","../node_modules/@headlessui/react/src/utils/render.ts","../node_modules/@headlessui/react/src/utils/match.ts","../node_modules/@headlessui/react/src/hooks/use-iso-morphic-effect.ts","../node_modules/@headlessui/react/src/hooks/use-server-handoff-complete.ts","../node_modules/@headlessui/react/src/hooks/use-id.ts","../node_modules/@headlessui/react/src/hooks/use-is-mounted.ts","../node_modules/@headlessui/react/src/internal/open-closed.tsx","../node_modules/@headlessui/react/src/components/transitions/utils/transition.ts","../node_modules/@headlessui/react/src/utils/disposables.ts","../node_modules/@headlessui/react/src/utils/once.ts","../node_modules/@headlessui/react/src/components/transitions/transition.tsx","../node_modules/@headlessui/react/src/hooks/use-is-initial-render.ts","components/alerts/Alert.tsx","components/alerts/AlertContainer.tsx","../node_modules/date-fns/esm/differenceInDays/index.js","constants/strings.ts","constants/validGuesses.ts","constants/wordlist.ts","lib/dateutils.ts","../node_modules/date-fns/esm/startOfToday/index.js","../node_modules/date-fns/esm/startOfYesterday/index.js","lib/words.ts","../node_modules/date-fns/esm/formatISO/index.js","lib/statuses.ts","lib/localStorage.ts","components/grid/Cell.tsx","components/grid/CompletedRow.tsx","components/grid/CurrentRow.tsx","components/grid/EmptyRow.tsx","components/grid/Grid.tsx","components/keyboard/Key.tsx","components/keyboard/Keyboard.tsx","../node_modules/@heroicons/react/outline/esm/ChevronLeftIcon.js","../node_modules/@heroicons/react/outline/esm/ChevronRightIcon.js","../node_modules/@headlessui/react/src/components/keyboard.ts","../node_modules/@headlessui/react/src/hooks/use-sync-refs.ts","../node_modules/@headlessui/react/src/utils/bugs.ts","../node_modules/@headlessui/react/src/hooks/use-window-event.ts","../node_modules/@headlessui/react/src/utils/focus-management.ts","../node_modules/@headlessui/react/src/hooks/use-focus-trap.ts","../node_modules/@headlessui/react/src/hooks/use-inert-others.ts","../node_modules/@headlessui/react/src/internal/portal-force-root.tsx","../node_modules/@headlessui/react/src/components/portal/portal.tsx","../node_modules/@headlessui/react/src/components/description/description.tsx","../node_modules/@headlessui/react/src/internal/stack-context.tsx","../node_modules/@headlessui/react/src/components/dialog/dialog.tsx","../node_modules/@heroicons/react/outline/esm/XCircleIcon.js","components/modals/BaseModal.tsx","components/modals/DatePickerModal.tsx","components/modals/InfoModal.tsx","../node_modules/@heroicons/react/outline/esm/DuplicateIcon.js","lib/clipboard.ts","lib/encryption.ts","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/defineProperty.js","../javascript/esm|/codebuild/output/src917634089/src/magnodle/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","lib/stats.ts","components/stats/EmigratePanel.tsx","../node_modules/@heroicons/react/outline/esm/SaveIcon.js","components/stats/ImmigratePanel.tsx","components/modals/MigrateStatsModal.tsx","components/modals/SettingsToggle.tsx","components/modals/SettingsModal.tsx","../node_modules/@heroicons/react/outline/esm/ShareIcon.js","../node_modules/react-countdown/dist/index.es.js","lib/share.ts","components/stats/Progress.tsx","components/stats/Histogram.tsx","../node_modules/@heroicons/react/outline/esm/LogoutIcon.js","components/stats/MigrationIntro.tsx","components/stats/StatBar.tsx","components/modals/StatsModal.tsx","../node_modules/@heroicons/react/outline/esm/InformationCircleIcon.js","../node_modules/@heroicons/react/outline/esm/CalendarIcon.js","../node_modules/@heroicons/react/outline/esm/ChartBarIcon.js","../node_modules/@heroicons/react/outline/esm/CogIcon.js","components/navbar/Navbar.tsx","lib/browser.ts","App.tsx","reportWebVitals.ts","index.tsx"],"sourcesContent":["function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}\n\nmodule.exports = _arrayLikeToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\n\nmodule.exports = _arrayWithHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}\n\nmodule.exports = _arrayWithoutHoles, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nfunction _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}\n\nmodule.exports = _createForOfIteratorHelper, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\n\nmodule.exports = _iterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}\n\nmodule.exports = _iterableToArrayLimit, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableRest, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nmodule.exports = _nonIterableSpread, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithHoles = require(\"./arrayWithHoles.js\");\n\nvar iterableToArrayLimit = require(\"./iterableToArrayLimit.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableRest = require(\"./nonIterableRest.js\");\n\nfunction _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}\n\nmodule.exports = _slicedToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayWithoutHoles = require(\"./arrayWithoutHoles.js\");\n\nvar iterableToArray = require(\"./iterableToArray.js\");\n\nvar unsupportedIterableToArray = require(\"./unsupportedIterableToArray.js\");\n\nvar nonIterableSpread = require(\"./nonIterableSpread.js\");\n\nfunction _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}\n\nmodule.exports = _toConsumableArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","var arrayLikeToArray = require(\"./arrayLikeToArray.js\");\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}\n\nmodule.exports = _unsupportedIterableToArray, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","/*!\n Copyright (c) 2018 Jed Watson.\n Licensed under the MIT License (MIT), see\n http://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString === Object.prototype.toString) {\n\t\t\t\t\tfor (var key in arg) {\n\t\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t} else {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","export default function addLeadingZeros(number, targetLength) {\n var sign = number < 0 ? '-' : '';\n var output = Math.abs(number).toString();\n\n while (output.length < targetLength) {\n output = '0' + output;\n }\n\n return sign + output;\n}","import defaultLocale from \"../../locale/en-US/index.js\";\nexport default defaultLocale;","var defaultOptions = {};\nexport function getDefaultOptions() {\n return defaultOptions;\n}\nexport function setDefaultOptions(newOptions) {\n defaultOptions = newOptions;\n}","var dateLongFormatter = function (pattern, formatLong) {\n switch (pattern) {\n case 'P':\n return formatLong.date({\n width: 'short'\n });\n\n case 'PP':\n return formatLong.date({\n width: 'medium'\n });\n\n case 'PPP':\n return formatLong.date({\n width: 'long'\n });\n\n case 'PPPP':\n default:\n return formatLong.date({\n width: 'full'\n });\n }\n};\n\nvar timeLongFormatter = function (pattern, formatLong) {\n switch (pattern) {\n case 'p':\n return formatLong.time({\n width: 'short'\n });\n\n case 'pp':\n return formatLong.time({\n width: 'medium'\n });\n\n case 'ppp':\n return formatLong.time({\n width: 'long'\n });\n\n case 'pppp':\n default:\n return formatLong.time({\n width: 'full'\n });\n }\n};\n\nvar dateTimeLongFormatter = function (pattern, formatLong) {\n var matchResult = pattern.match(/(P+)(p+)?/) || [];\n var datePattern = matchResult[1];\n var timePattern = matchResult[2];\n\n if (!timePattern) {\n return dateLongFormatter(pattern, formatLong);\n }\n\n var dateTimeFormat;\n\n switch (datePattern) {\n case 'P':\n dateTimeFormat = formatLong.dateTime({\n width: 'short'\n });\n break;\n\n case 'PP':\n dateTimeFormat = formatLong.dateTime({\n width: 'medium'\n });\n break;\n\n case 'PPP':\n dateTimeFormat = formatLong.dateTime({\n width: 'long'\n });\n break;\n\n case 'PPPP':\n default:\n dateTimeFormat = formatLong.dateTime({\n width: 'full'\n });\n break;\n }\n\n return dateTimeFormat.replace('{{date}}', dateLongFormatter(datePattern, formatLong)).replace('{{time}}', timeLongFormatter(timePattern, formatLong));\n};\n\nvar longFormatters = {\n p: timeLongFormatter,\n P: dateTimeLongFormatter\n};\nexport default longFormatters;","/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nexport default function getTimezoneOffsetInMilliseconds(date) {\n var utcDate = new Date(Date.UTC(date.getFullYear(), date.getMonth(), date.getDate(), date.getHours(), date.getMinutes(), date.getSeconds(), date.getMilliseconds()));\n utcDate.setUTCFullYear(date.getFullYear());\n return date.getTime() - utcDate.getTime();\n}","import getUTCISOWeekYear from \"../getUTCISOWeekYear/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function startOfUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var year = getUTCISOWeekYear(dirtyDate);\n var fourthOfJanuary = new Date(0);\n fourthOfJanuary.setUTCFullYear(year, 0, 4);\n fourthOfJanuary.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCISOWeek(fourthOfJanuary);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nimport startOfUTCISOWeekYear from \"../startOfUTCISOWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\nexport default function getUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCISOWeek(date).getTime() - startOfUTCISOWeekYear(date).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCISOWeek from \"../startOfUTCISOWeek/index.js\";\nexport default function getUTCISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getUTCFullYear();\n var fourthOfJanuaryOfNextYear = new Date(0);\n fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4);\n fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCISOWeek(fourthOfJanuaryOfNextYear);\n var fourthOfJanuaryOfThisYear = new Date(0);\n fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4);\n fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCISOWeek(fourthOfJanuaryOfThisYear);\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import getUTCWeekYear from \"../getUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function startOfUTCWeekYear(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1);\n var year = getUTCWeekYear(dirtyDate, options);\n var firstWeek = new Date(0);\n firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeek.setUTCHours(0, 0, 0, 0);\n var date = startOfUTCWeek(firstWeek, options);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport startOfUTCWeekYear from \"../startOfUTCWeekYear/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\nexport default function getUTCWeek(dirtyDate, options) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfUTCWeek(date, options).getTime() - startOfUTCWeekYear(date, options).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport startOfUTCWeek from \"../startOfUTCWeek/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function getUTCWeekYear(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$firstWeekCon, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getUTCFullYear();\n var defaultOptions = getDefaultOptions();\n var firstWeekContainsDate = toInteger((_ref = (_ref2 = (_ref3 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref !== void 0 ? _ref : 1); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var firstWeekOfNextYear = new Date(0);\n firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate);\n firstWeekOfNextYear.setUTCHours(0, 0, 0, 0);\n var startOfNextYear = startOfUTCWeek(firstWeekOfNextYear, options);\n var firstWeekOfThisYear = new Date(0);\n firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate);\n firstWeekOfThisYear.setUTCHours(0, 0, 0, 0);\n var startOfThisYear = startOfUTCWeek(firstWeekOfThisYear, options);\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","var protectedDayOfYearTokens = ['D', 'DD'];\nvar protectedWeekYearTokens = ['YY', 'YYYY'];\nexport function isProtectedDayOfYearToken(token) {\n return protectedDayOfYearTokens.indexOf(token) !== -1;\n}\nexport function isProtectedWeekYearToken(token) {\n return protectedWeekYearTokens.indexOf(token) !== -1;\n}\nexport function throwProtectedError(token, format, input) {\n if (token === 'YYYY') {\n throw new RangeError(\"Use `yyyy` instead of `YYYY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'YY') {\n throw new RangeError(\"Use `yy` instead of `YY` (in `\".concat(format, \"`) for formatting years to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'D') {\n throw new RangeError(\"Use `d` instead of `D` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n } else if (token === 'DD') {\n throw new RangeError(\"Use `dd` instead of `DD` (in `\".concat(format, \"`) for formatting days of the month to the input `\").concat(input, \"`; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\"));\n }\n}","export default function requiredArgs(required, args) {\n if (args.length < required) {\n throw new TypeError(required + ' argument' + (required > 1 ? 's' : '') + ' required, but only ' + args.length + ' present');\n }\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function startOfUTCISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var weekStartsOn = 1;\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function startOfUTCWeek(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getUTCDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setUTCDate(date.getUTCDate() - diff);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n}","export default function toInteger(dirtyNumber) {\n if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {\n return NaN;\n }\n\n var number = Number(dirtyNumber);\n\n if (isNaN(number)) {\n return number;\n }\n\n return number < 0 ? Math.ceil(number) : Math.floor(number);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addDays\n * @category Day Helpers\n * @summary Add the specified number of days to the given date.\n *\n * @description\n * Add the specified number of days to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} - the new date with the days added\n * @throws {TypeError} - 2 arguments required\n *\n * @example\n * // Add 10 days to 1 September 2014:\n * const result = addDays(new Date(2014, 8, 1), 10)\n * //=> Thu Sep 11 2014 00:00:00\n */\n\nexport default function addDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 days, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n date.setDate(date.getDate() + amount);\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_HOUR = 3600000;\n/**\n * @name addHours\n * @category Hour Helpers\n * @summary Add the specified number of hours to the given date.\n *\n * @description\n * Add the specified number of hours to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of hours to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the hours added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 2 hours to 10 July 2014 23:00:00:\n * const result = addHours(new Date(2014, 6, 10, 23, 0), 2)\n * //=> Fri Jul 11 2014 01:00:00\n */\n\nexport default function addHours(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, amount * MILLISECONDS_IN_HOUR);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMilliseconds\n * @category Millisecond Helpers\n * @summary Add the specified number of milliseconds to the given date.\n *\n * @description\n * Add the specified number of milliseconds to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 750 milliseconds to 10 July 2014 12:45:30.000:\n * const result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:30.750\n */\n\nexport default function addMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var timestamp = toDate(dirtyDate).getTime();\n var amount = toInteger(dirtyAmount);\n return new Date(timestamp + amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_MINUTE = 60000;\n/**\n * @name addMinutes\n * @category Minute Helpers\n * @summary Add the specified number of minutes to the given date.\n *\n * @description\n * Add the specified number of minutes to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of minutes to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the minutes added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 30 minutes to 10 July 2014 12:00:00:\n * const result = addMinutes(new Date(2014, 6, 10, 12, 0), 30)\n * //=> Thu Jul 10 2014 12:30:00\n */\n\nexport default function addMinutes(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, amount * MILLISECONDS_IN_MINUTE);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * const result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n */\n\nexport default function addMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var amount = toInteger(dirtyAmount);\n\n if (isNaN(amount)) {\n return new Date(NaN);\n }\n\n if (!amount) {\n // If 0 months, no-op to avoid changing times in the hour before end of DST\n return date;\n }\n\n var dayOfMonth = date.getDate(); // The JS Date object supports date math by accepting out-of-bounds values for\n // month, day, etc. For example, new Date(2020, 0, 0) returns 31 Dec 2019 and\n // new Date(2020, 13, 1) returns 1 Feb 2021. This is *almost* the behavior we\n // want except that dates will wrap around the end of a month, meaning that\n // new Date(2020, 13, 31) will return 3 Mar 2021 not 28 Feb 2021 as desired. So\n // we'll default to the end of the desired month by adding 1 to the desired\n // month and using a date of 0 to back up one day to the end of the desired\n // month.\n\n var endOfDesiredMonth = new Date(date.getTime());\n endOfDesiredMonth.setMonth(date.getMonth() + amount + 1, 0);\n var daysInMonth = endOfDesiredMonth.getDate();\n\n if (dayOfMonth >= daysInMonth) {\n // If we're already at the end of the month, then this is the correct date\n // and we're done.\n return endOfDesiredMonth;\n } else {\n // Otherwise, we now know that setting the original day-of-month value won't\n // cause an overflow, so set the desired day-of-month. Note that we can't\n // just set the date of `endOfDesiredMonth` because that object may have had\n // its time changed in the unusual case where where a DST transition was on\n // the last day of the month and its local time was in the hour skipped or\n // repeated next to a DST transition. So we use `date` instead which is\n // guaranteed to still have the original time.\n date.setFullYear(endOfDesiredMonth.getFullYear(), endOfDesiredMonth.getMonth(), dayOfMonth);\n return date;\n }\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addDays from \"../addDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addWeeks\n * @category Week Helpers\n * @summary Add the specified number of weeks to the given date.\n *\n * @description\n * Add the specified number of week to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of weeks to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the weeks added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 4 weeks to 1 September 2014:\n * const result = addWeeks(new Date(2014, 8, 1), 4)\n * //=> Mon Sep 29 2014 00:00:00\n */\n\nexport default function addWeeks(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n var days = amount * 7;\n return addDays(dirtyDate, days);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMonths from \"../addMonths/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name addYears\n * @category Year Helpers\n * @summary Add the specified number of years to the given date.\n *\n * @description\n * Add the specified number of years to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be added. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the years added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 years to 1 September 2014:\n * const result = addYears(new Date(2014, 8, 1), 5)\n * //=> Sun Sep 01 2019 00:00:00\n */\n\nexport default function addYears(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMonths(dirtyDate, amount * 12);\n}","/**\n * Days in 1 week.\n *\n * @name daysInWeek\n * @constant\n * @type {number}\n * @default\n */\nexport var daysInWeek = 7;\n/**\n * Days in 1 year\n * One years equals 365.2425 days according to the formula:\n *\n * > Leap year occures every 4 years, except for years that are divisable by 100 and not divisable by 400.\n * > 1 mean year = (365+1/4-1/100+1/400) days = 365.2425 days\n *\n * @name daysInYear\n * @constant\n * @type {number}\n * @default\n */\n\nexport var daysInYear = 365.2425;\n/**\n * Maximum allowed time.\n *\n * @name maxTime\n * @constant\n * @type {number}\n * @default\n */\n\nexport var maxTime = Math.pow(10, 8) * 24 * 60 * 60 * 1000;\n/**\n * Milliseconds in 1 minute\n *\n * @name millisecondsInMinute\n * @constant\n * @type {number}\n * @default\n */\n\nexport var millisecondsInMinute = 60000;\n/**\n * Milliseconds in 1 hour\n *\n * @name millisecondsInHour\n * @constant\n * @type {number}\n * @default\n */\n\nexport var millisecondsInHour = 3600000;\n/**\n * Milliseconds in 1 second\n *\n * @name millisecondsInSecond\n * @constant\n * @type {number}\n * @default\n */\n\nexport var millisecondsInSecond = 1000;\n/**\n * Minimum allowed time.\n *\n * @name minTime\n * @constant\n * @type {number}\n * @default\n */\n\nexport var minTime = -maxTime;\n/**\n * Minutes in 1 hour\n *\n * @name minutesInHour\n * @constant\n * @type {number}\n * @default\n */\n\nexport var minutesInHour = 60;\n/**\n * Months in 1 quarter\n *\n * @name monthsInQuarter\n * @constant\n * @type {number}\n * @default\n */\n\nexport var monthsInQuarter = 3;\n/**\n * Months in 1 year\n *\n * @name monthsInYear\n * @constant\n * @type {number}\n * @default\n */\n\nexport var monthsInYear = 12;\n/**\n * Quarters in 1 year\n *\n * @name quartersInYear\n * @constant\n * @type {number}\n * @default\n */\n\nexport var quartersInYear = 4;\n/**\n * Seconds in 1 hour\n *\n * @name secondsInHour\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInHour = 3600;\n/**\n * Seconds in 1 minute\n *\n * @name secondsInMinute\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInMinute = 60;\n/**\n * Seconds in 1 day\n *\n * @name secondsInDay\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInDay = secondsInHour * 24;\n/**\n * Seconds in 1 week\n *\n * @name secondsInWeek\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInWeek = secondsInDay * 7;\n/**\n * Seconds in 1 year\n *\n * @name secondsInYear\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInYear = secondsInDay * daysInYear;\n/**\n * Seconds in 1 month\n *\n * @name secondsInMonth\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInMonth = secondsInYear / 12;\n/**\n * Seconds in 1 quarter\n *\n * @name secondsInQuarter\n * @constant\n * @type {number}\n * @default\n */\n\nexport var secondsInQuarter = secondsInMonth * 3;","import getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000;\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar days\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * const result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * const result = differenceInCalendarDays(\n * new Date(2011, 6, 3, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\n\nexport default function differenceInCalendarDays(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var startOfDayLeft = startOfDay(dirtyDateLeft);\n var startOfDayRight = startOfDay(dirtyDateRight);\n var timestampLeft = startOfDayLeft.getTime() - getTimezoneOffsetInMilliseconds(startOfDayLeft);\n var timestampRight = startOfDayRight.getTime() - getTimezoneOffsetInMilliseconds(startOfDayRight); // Round the number of days to the nearest integer\n // because the number of milliseconds in a day is not constant\n // (e.g. it's different in the day of the daylight saving time clock shift)\n\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_DAY);\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * const result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\n\nexport default function differenceInCalendarMonths(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear();\n var monthDiff = dateLeft.getMonth() - dateRight.getMonth();\n return yearDiff * 12 + monthDiff;\n}","import startOfWeek from \"../startOfWeek/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\n/**\n * @name differenceInCalendarWeeks\n * @category Week Helpers\n * @summary Get the number of calendar weeks between the given dates.\n *\n * @description\n * Get the number of calendar weeks between the given dates.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Number} the number of calendar weeks\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // How many calendar weeks are between 5 July 2014 and 20 July 2014?\n * const result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5)\n * )\n * //=> 3\n *\n * @example\n * // If the week starts on Monday,\n * // how many calendar weeks are between 5 July 2014 and 20 July 2014?\n * const result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5),\n * { weekStartsOn: 1 }\n * )\n * //=> 2\n */\n\nexport default function differenceInCalendarWeeks(dirtyDateLeft, dirtyDateRight, options) {\n requiredArgs(2, arguments);\n var startOfWeekLeft = startOfWeek(dirtyDateLeft, options);\n var startOfWeekRight = startOfWeek(dirtyDateRight, options);\n var timestampLeft = startOfWeekLeft.getTime() - getTimezoneOffsetInMilliseconds(startOfWeekLeft);\n var timestampRight = startOfWeekRight.getTime() - getTimezoneOffsetInMilliseconds(startOfWeekRight); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_WEEK);\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name differenceInCalendarYears\n * @category Year Helpers\n * @summary Get the number of calendar years between the given dates.\n *\n * @description\n * Get the number of calendar years between the given dates.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar years are between 31 December 2013 and 11 February 2015?\n * const result = differenceInCalendarYears(\n * new Date(2015, 1, 11),\n * new Date(2013, 11, 31)\n * )\n * //=> 2\n */\n\nexport default function differenceInCalendarYears(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() - dateRight.getFullYear();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name endOfDay\n * @category Day Helpers\n * @summary Return the end of a day for the given date.\n *\n * @description\n * Return the end of a day for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a day for 2 September 2014 11:55:00:\n * const result = endOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 23:59:59.999\n */\n\nexport default function endOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name endOfMonth\n * @category Month Helpers\n * @summary Return the end of a month for the given date.\n *\n * @description\n * Return the end of a month for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a month for 2 September 2014 11:55:00:\n * const result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\n\nexport default function endOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var month = date.getMonth();\n date.setFullYear(date.getFullYear(), month + 1, 0);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import { getDefaultOptions } from \"../_lib/defaultOptions/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n\n/**\n * @name endOfWeek\n * @category Week Helpers\n * @summary Return the end of a week for the given date.\n *\n * @description\n * Return the end of a week for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Date} the end of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The end of a week for 2 September 2014 11:55:00:\n * const result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sat Sep 06 2014 23:59:59.999\n *\n * @example\n * // If the week starts on Monday, the end of the week for 2 September 2014 11:55:00:\n * const result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Sun Sep 07 2014 23:59:59.999\n */\nexport default function endOfWeek(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getDay();\n var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn);\n date.setDate(date.getDate() + diff);\n date.setHours(23, 59, 59, 999);\n return date;\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nvar MILLISECONDS_IN_DAY = 86400000;\nexport default function getUTCDayOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var timestamp = date.getTime();\n date.setUTCMonth(0, 1);\n date.setUTCHours(0, 0, 0, 0);\n var startOfYearTimestamp = date.getTime();\n var difference = timestamp - startOfYearTimestamp;\n return Math.floor(difference / MILLISECONDS_IN_DAY) + 1;\n}","import addLeadingZeros from \"../../addLeadingZeros/index.js\";\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | |\n * | d | Day of month | D | |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | m | Minute | M | Month |\n * | s | Second | S | Fraction of second |\n * | y | Year (abs) | Y | |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n */\n\nvar formatters = {\n // Year\n y: function (date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return addLeadingZeros(token === 'yy' ? year % 100 : year, token.length);\n },\n // Month\n M: function (date, token) {\n var month = date.getUTCMonth();\n return token === 'M' ? String(month + 1) : addLeadingZeros(month + 1, 2);\n },\n // Day of the month\n d: function (date, token) {\n return addLeadingZeros(date.getUTCDate(), token.length);\n },\n // AM or PM\n a: function (date, token) {\n var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return dayPeriodEnumValue.toUpperCase();\n\n case 'aaa':\n return dayPeriodEnumValue;\n\n case 'aaaaa':\n return dayPeriodEnumValue[0];\n\n case 'aaaa':\n default:\n return dayPeriodEnumValue === 'am' ? 'a.m.' : 'p.m.';\n }\n },\n // Hour [1-12]\n h: function (date, token) {\n return addLeadingZeros(date.getUTCHours() % 12 || 12, token.length);\n },\n // Hour [0-23]\n H: function (date, token) {\n return addLeadingZeros(date.getUTCHours(), token.length);\n },\n // Minute\n m: function (date, token) {\n return addLeadingZeros(date.getUTCMinutes(), token.length);\n },\n // Second\n s: function (date, token) {\n return addLeadingZeros(date.getUTCSeconds(), token.length);\n },\n // Fraction of second\n S: function (date, token) {\n var numberOfDigits = token.length;\n var milliseconds = date.getUTCMilliseconds();\n var fractionalSeconds = Math.floor(milliseconds * Math.pow(10, numberOfDigits - 3));\n return addLeadingZeros(fractionalSeconds, token.length);\n }\n};\nexport default formatters;","import getUTCDayOfYear from \"../../../_lib/getUTCDayOfYear/index.js\";\nimport getUTCISOWeek from \"../../../_lib/getUTCISOWeek/index.js\";\nimport getUTCISOWeekYear from \"../../../_lib/getUTCISOWeekYear/index.js\";\nimport getUTCWeek from \"../../../_lib/getUTCWeek/index.js\";\nimport getUTCWeekYear from \"../../../_lib/getUTCWeekYear/index.js\";\nimport addLeadingZeros from \"../../addLeadingZeros/index.js\";\nimport lightFormatters from \"../lightFormatters/index.js\";\nvar dayPeriodEnum = {\n am: 'am',\n pm: 'pm',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n};\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\nvar formatters = {\n // Era\n G: function (date, token, localize) {\n var era = date.getUTCFullYear() > 0 ? 1 : 0;\n\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return localize.era(era, {\n width: 'abbreviated'\n });\n // A, B\n\n case 'GGGGG':\n return localize.era(era, {\n width: 'narrow'\n });\n // Anno Domini, Before Christ\n\n case 'GGGG':\n default:\n return localize.era(era, {\n width: 'wide'\n });\n }\n },\n // Year\n y: function (date, token, localize) {\n // Ordinal number\n if (token === 'yo') {\n var signedYear = date.getUTCFullYear(); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var year = signedYear > 0 ? signedYear : 1 - signedYear;\n return localize.ordinalNumber(year, {\n unit: 'year'\n });\n }\n\n return lightFormatters.y(date, token);\n },\n // Local week-numbering year\n Y: function (date, token, localize, options) {\n var signedWeekYear = getUTCWeekYear(date, options); // Returns 1 for 1 BC (which is year 0 in JavaScript)\n\n var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear; // Two digit year\n\n if (token === 'YY') {\n var twoDigitYear = weekYear % 100;\n return addLeadingZeros(twoDigitYear, 2);\n } // Ordinal number\n\n\n if (token === 'Yo') {\n return localize.ordinalNumber(weekYear, {\n unit: 'year'\n });\n } // Padding\n\n\n return addLeadingZeros(weekYear, token.length);\n },\n // ISO week-numbering year\n R: function (date, token) {\n var isoWeekYear = getUTCISOWeekYear(date); // Padding\n\n return addLeadingZeros(isoWeekYear, token.length);\n },\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function (date, token) {\n var year = date.getUTCFullYear();\n return addLeadingZeros(year, token.length);\n },\n // Quarter\n Q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'QQ':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'Qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'QQQ':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'QQQQQ':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'QQQQ':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone quarter\n q: function (date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3);\n\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n return String(quarter);\n // 01, 02, 03, 04\n\n case 'qq':\n return addLeadingZeros(quarter, 2);\n // 1st, 2nd, 3rd, 4th\n\n case 'qo':\n return localize.ordinalNumber(quarter, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'qqq':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'qqqqq':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'qqqq':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Month\n M: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n case 'M':\n case 'MM':\n return lightFormatters.M(date, token);\n // 1st, 2nd, ..., 12th\n\n case 'Mo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'MMM':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // J, F, ..., D\n\n case 'MMMMM':\n return localize.month(month, {\n width: 'narrow',\n context: 'formatting'\n });\n // January, February, ..., December\n\n case 'MMMM':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone month\n L: function (date, token, localize) {\n var month = date.getUTCMonth();\n\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return String(month + 1);\n // 01, 02, ..., 12\n\n case 'LL':\n return addLeadingZeros(month + 1, 2);\n // 1st, 2nd, ..., 12th\n\n case 'Lo':\n return localize.ordinalNumber(month + 1, {\n unit: 'month'\n });\n // Jan, Feb, ..., Dec\n\n case 'LLL':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // J, F, ..., D\n\n case 'LLLLL':\n return localize.month(month, {\n width: 'narrow',\n context: 'standalone'\n });\n // January, February, ..., December\n\n case 'LLLL':\n default:\n return localize.month(month, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // Local week of year\n w: function (date, token, localize, options) {\n var week = getUTCWeek(date, options);\n\n if (token === 'wo') {\n return localize.ordinalNumber(week, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(week, token.length);\n },\n // ISO week of year\n I: function (date, token, localize) {\n var isoWeek = getUTCISOWeek(date);\n\n if (token === 'Io') {\n return localize.ordinalNumber(isoWeek, {\n unit: 'week'\n });\n }\n\n return addLeadingZeros(isoWeek, token.length);\n },\n // Day of the month\n d: function (date, token, localize) {\n if (token === 'do') {\n return localize.ordinalNumber(date.getUTCDate(), {\n unit: 'date'\n });\n }\n\n return lightFormatters.d(date, token);\n },\n // Day of year\n D: function (date, token, localize) {\n var dayOfYear = getUTCDayOfYear(date);\n\n if (token === 'Do') {\n return localize.ordinalNumber(dayOfYear, {\n unit: 'dayOfYear'\n });\n }\n\n return addLeadingZeros(dayOfYear, token.length);\n },\n // Day of week\n E: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'EEEEE':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'EEEEEE':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'EEEE':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Local day of week\n e: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case 'e':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'ee':\n return addLeadingZeros(localDayOfWeek, 2);\n // 1st, 2nd, ..., 7th\n\n case 'eo':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'eee':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'eeeee':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'eeeeee':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'eeee':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Stand-alone local day of week\n c: function (date, token, localize, options) {\n var dayOfWeek = date.getUTCDay();\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7;\n\n switch (token) {\n // Numerical value (same as in `e`)\n case 'c':\n return String(localDayOfWeek);\n // Padded numerical value\n\n case 'cc':\n return addLeadingZeros(localDayOfWeek, token.length);\n // 1st, 2nd, ..., 7th\n\n case 'co':\n return localize.ordinalNumber(localDayOfWeek, {\n unit: 'day'\n });\n\n case 'ccc':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'standalone'\n });\n // T\n\n case 'ccccc':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tu\n\n case 'cccccc':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'standalone'\n });\n // Tuesday\n\n case 'cccc':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'standalone'\n });\n }\n },\n // ISO day of week\n i: function (date, token, localize) {\n var dayOfWeek = date.getUTCDay();\n var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek;\n\n switch (token) {\n // 2\n case 'i':\n return String(isoDayOfWeek);\n // 02\n\n case 'ii':\n return addLeadingZeros(isoDayOfWeek, token.length);\n // 2nd\n\n case 'io':\n return localize.ordinalNumber(isoDayOfWeek, {\n unit: 'day'\n });\n // Tue\n\n case 'iii':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n });\n // T\n\n case 'iiiii':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'iiiiii':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n });\n // Tuesday\n\n case 'iiii':\n default:\n return localize.day(dayOfWeek, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM or PM\n a: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n\n switch (token) {\n case 'a':\n case 'aa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'aaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'aaaaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'aaaa':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // AM, PM, midnight, noon\n b: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon;\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight;\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am';\n }\n\n switch (token) {\n case 'b':\n case 'bb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'bbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n }).toLowerCase();\n\n case 'bbbbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'bbbb':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // in the morning, in the afternoon, in the evening, at night\n B: function (date, token, localize) {\n var hours = date.getUTCHours();\n var dayPeriodEnumValue;\n\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening;\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon;\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning;\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night;\n }\n\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n });\n\n case 'BBBBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'BBBB':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n });\n }\n },\n // Hour [1-12]\n h: function (date, token, localize) {\n if (token === 'ho') {\n var hours = date.getUTCHours() % 12;\n if (hours === 0) hours = 12;\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return lightFormatters.h(date, token);\n },\n // Hour [0-23]\n H: function (date, token, localize) {\n if (token === 'Ho') {\n return localize.ordinalNumber(date.getUTCHours(), {\n unit: 'hour'\n });\n }\n\n return lightFormatters.H(date, token);\n },\n // Hour [0-11]\n K: function (date, token, localize) {\n var hours = date.getUTCHours() % 12;\n\n if (token === 'Ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Hour [1-24]\n k: function (date, token, localize) {\n var hours = date.getUTCHours();\n if (hours === 0) hours = 24;\n\n if (token === 'ko') {\n return localize.ordinalNumber(hours, {\n unit: 'hour'\n });\n }\n\n return addLeadingZeros(hours, token.length);\n },\n // Minute\n m: function (date, token, localize) {\n if (token === 'mo') {\n return localize.ordinalNumber(date.getUTCMinutes(), {\n unit: 'minute'\n });\n }\n\n return lightFormatters.m(date, token);\n },\n // Second\n s: function (date, token, localize) {\n if (token === 'so') {\n return localize.ordinalNumber(date.getUTCSeconds(), {\n unit: 'second'\n });\n }\n\n return lightFormatters.s(date, token);\n },\n // Fraction of second\n S: function (date, token) {\n return lightFormatters.S(date, token);\n },\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n if (timezoneOffset === 0) {\n return 'Z';\n }\n\n switch (token) {\n // Hours and optional minutes\n case 'X':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n\n case 'XXXX':\n case 'XX':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n\n case 'XXXXX':\n case 'XXX': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Hours and optional minutes\n case 'x':\n return formatTimezoneWithOptionalMinutes(timezoneOffset);\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n\n case 'xxxx':\n case 'xx':\n // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset);\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n\n case 'xxxxx':\n case 'xxx': // Hours and minutes with `:` delimiter\n\n default:\n return formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (GMT)\n O: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'O':\n case 'OO':\n case 'OOO':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'OOOO':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Timezone (specific non-location)\n z: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timezoneOffset = originalDate.getTimezoneOffset();\n\n switch (token) {\n // Short\n case 'z':\n case 'zz':\n case 'zzz':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':');\n // Long\n\n case 'zzzz':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':');\n }\n },\n // Seconds timestamp\n t: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = Math.floor(originalDate.getTime() / 1000);\n return addLeadingZeros(timestamp, token.length);\n },\n // Milliseconds timestamp\n T: function (date, token, _localize, options) {\n var originalDate = options._originalDate || date;\n var timestamp = originalDate.getTime();\n return addLeadingZeros(timestamp, token.length);\n }\n};\n\nfunction formatTimezoneShort(offset, dirtyDelimiter) {\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = Math.floor(absOffset / 60);\n var minutes = absOffset % 60;\n\n if (minutes === 0) {\n return sign + String(hours);\n }\n\n var delimiter = dirtyDelimiter || '';\n return sign + String(hours) + delimiter + addLeadingZeros(minutes, 2);\n}\n\nfunction formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {\n if (offset % 60 === 0) {\n var sign = offset > 0 ? '-' : '+';\n return sign + addLeadingZeros(Math.abs(offset) / 60, 2);\n }\n\n return formatTimezone(offset, dirtyDelimiter);\n}\n\nfunction formatTimezone(offset, dirtyDelimiter) {\n var delimiter = dirtyDelimiter || '';\n var sign = offset > 0 ? '-' : '+';\n var absOffset = Math.abs(offset);\n var hours = addLeadingZeros(Math.floor(absOffset / 60), 2);\n var minutes = addLeadingZeros(absOffset % 60, 2);\n return sign + hours + delimiter + minutes;\n}\n\nexport default formatters;","import isValid from \"../isValid/index.js\";\nimport subMilliseconds from \"../subMilliseconds/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport formatters from \"../_lib/format/formatters/index.js\";\nimport longFormatters from \"../_lib/format/longFormatters/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport { isProtectedDayOfYearToken, isProtectedWeekYearToken, throwProtectedError } from \"../_lib/protectedTokens/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { getDefaultOptions } from \"../_lib/defaultOptions/index.js\";\nimport defaultLocale from \"../_lib/defaultLocale/index.js\"; // This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\n\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\n\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\nvar escapedStringRegExp = /^'([^]*?)'?$/;\nvar doubleQuoteRegExp = /''/g;\nvar unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n/**\n * @name format\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 9 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 9 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Sun | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | a..aa | AM, PM | |\n * | | aaa | am, pm | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bb | AM, PM, noon, midnight | |\n * | | bbb | am, pm, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 04/29/1453 | 7 |\n * | | PP | Apr 29, 1453 | 7 |\n * | | PPP | April 29th, 1453 | 7 |\n * | | PPPP | Friday, April 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 04/29/1453, 12:00 AM | 7 |\n * | | PPpp | Apr 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | April 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Friday, April 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear]{@link https://date-fns.org/docs/getISOWeekYear}\n * and [getWeekYear]{@link https://date-fns.org/docs/getWeekYear}).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 9. `D` and `DD` tokens represent days of the year but they are often confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Number} [options.firstWeekContainsDate=1] - the day of January, which is\n * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `date` must not be Invalid Date\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} format string contains an unescaped latin alphabet character\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * const result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * const result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * const result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\n\nexport default function format(dirtyDate, dirtyFormatStr, options) {\n var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4;\n\n requiredArgs(2, arguments);\n var formatStr = String(dirtyFormatStr);\n var defaultOptions = getDefaultOptions();\n var locale = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : defaultLocale;\n var firstWeekContainsDate = toInteger((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale2 = options.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var weekStartsOn = toInteger((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale3 = options.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property');\n }\n\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property');\n }\n\n var originalDate = toDate(dirtyDate);\n\n if (!isValid(originalDate)) {\n throw new RangeError('Invalid time value');\n } // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n\n\n var timezoneOffset = getTimezoneOffsetInMilliseconds(originalDate);\n var utcDate = subMilliseconds(originalDate, timezoneOffset);\n var formatterOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale,\n _originalDate: originalDate\n };\n var result = formatStr.match(longFormattingTokensRegExp).map(function (substring) {\n var firstCharacter = substring[0];\n\n if (firstCharacter === 'p' || firstCharacter === 'P') {\n var longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong);\n }\n\n return substring;\n }).join('').match(formattingTokensRegExp).map(function (substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\";\n }\n\n var firstCharacter = substring[0];\n\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring);\n }\n\n var formatter = formatters[firstCharacter];\n\n if (formatter) {\n if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));\n }\n\n if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(substring)) {\n throwProtectedError(substring, dirtyFormatStr, String(dirtyDate));\n }\n\n return formatter(utcDate, substring, locale.localize, formatterOptions);\n }\n\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');\n }\n\n return substring;\n }).join('');\n return result;\n}\n\nfunction cleanEscapedString(input) {\n var matched = input.match(escapedStringRegExp);\n\n if (!matched) {\n return input;\n }\n\n return matched[1].replace(doubleQuoteRegExp, \"'\");\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDate\n * @category Day Helpers\n * @summary Get the day of the month of the given date.\n *\n * @description\n * Get the day of the month of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the day of month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the month is 29 February 2012?\n * const result = getDate(new Date(2012, 1, 29))\n * //=> 29\n */\n\nexport default function getDate(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var dayOfMonth = date.getDate();\n return dayOfMonth;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDay\n * @category Weekday Helpers\n * @summary Get the day of the week of the given date.\n *\n * @description\n * Get the day of the week of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {0|1|2|3|4|5|6} the day of week, 0 represents Sunday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the week is 29 February 2012?\n * const result = getDay(new Date(2012, 1, 29))\n * //=> 3\n */\n\nexport default function getDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var day = date.getDay();\n return day;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getHours\n * @category Hour Helpers\n * @summary Get the hours of the given date.\n *\n * @description\n * Get the hours of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the hours\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the hours of 29 February 2012 11:45:00:\n * const result = getHours(new Date(2012, 1, 29, 11, 45))\n * //=> 11\n */\n\nexport default function getHours(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var hours = date.getHours();\n return hours;\n}","import startOfWeek from \"../startOfWeek/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfISOWeek\n * @category ISO Week Helpers\n * @summary Return the start of an ISO week for the given date.\n *\n * @description\n * Return the start of an ISO week for the given date.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of an ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of an ISO week for 2 September 2014 11:55:00:\n * const result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function startOfISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n return startOfWeek(dirtyDate, {\n weekStartsOn: 1\n });\n}","import toDate from \"../toDate/index.js\";\nimport startOfISOWeek from \"../startOfISOWeek/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the ISO week-numbering year of the given date.\n *\n * @description\n * Get the ISO week-numbering year of the given date,\n * which always starts 3 days before the year's first Thursday.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which ISO-week numbering year is 2 January 2005?\n * const result = getISOWeekYear(new Date(2005, 0, 2))\n * //=> 2004\n */\n\nexport default function getISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n var fourthOfJanuaryOfNextYear = new Date(0);\n fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4);\n fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0);\n var startOfNextYear = startOfISOWeek(fourthOfJanuaryOfNextYear);\n var fourthOfJanuaryOfThisYear = new Date(0);\n fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4);\n fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0);\n var startOfThisYear = startOfISOWeek(fourthOfJanuaryOfThisYear);\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1;\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year;\n } else {\n return year - 1;\n }\n}","import getISOWeekYear from \"../getISOWeekYear/index.js\";\nimport startOfISOWeek from \"../startOfISOWeek/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Return the start of an ISO week-numbering year for the given date.\n *\n * @description\n * Return the start of an ISO week-numbering year,\n * which always starts 3 days before the year's first Thursday.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of an ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of an ISO week-numbering year for 2 July 2005:\n * const result = startOfISOWeekYear(new Date(2005, 6, 2))\n * //=> Mon Jan 03 2005 00:00:00\n */\n\nexport default function startOfISOWeekYear(dirtyDate) {\n requiredArgs(1, arguments);\n var year = getISOWeekYear(dirtyDate);\n var fourthOfJanuary = new Date(0);\n fourthOfJanuary.setFullYear(year, 0, 4);\n fourthOfJanuary.setHours(0, 0, 0, 0);\n var date = startOfISOWeek(fourthOfJanuary);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport startOfISOWeek from \"../startOfISOWeek/index.js\";\nimport startOfISOWeekYear from \"../startOfISOWeekYear/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nvar MILLISECONDS_IN_WEEK = 604800000;\n/**\n * @name getISOWeek\n * @category ISO Week Helpers\n * @summary Get the ISO week of the given date.\n *\n * @description\n * Get the ISO week of the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which week of the ISO-week numbering year is 2 January 2005?\n * const result = getISOWeek(new Date(2005, 0, 2))\n * //=> 53\n */\n\nexport default function getISOWeek(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var diff = startOfISOWeek(date).getTime() - startOfISOWeekYear(date).getTime(); // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getMinutes\n * @category Minute Helpers\n * @summary Get the minutes of the given date.\n *\n * @description\n * Get the minutes of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the minutes\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the minutes of 29 February 2012 11:45:05:\n * const result = getMinutes(new Date(2012, 1, 29, 11, 45, 5))\n * //=> 45\n */\n\nexport default function getMinutes(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var minutes = date.getMinutes();\n return minutes;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getMonth\n * @category Month Helpers\n * @summary Get the month of the given date.\n *\n * @description\n * Get the month of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which month is 29 February 2012?\n * const result = getMonth(new Date(2012, 1, 29))\n * //=> 1\n */\n\nexport default function getMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var month = date.getMonth();\n return month;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getQuarter\n * @category Quarter Helpers\n * @summary Get the year quarter of the given date.\n *\n * @description\n * Get the year quarter of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the quarter\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which quarter is 2 July 2014?\n * const result = getQuarter(new Date(2014, 6, 2))\n * //=> 3\n */\n\nexport default function getQuarter(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var quarter = Math.floor(date.getMonth() / 3) + 1;\n return quarter;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getSeconds\n * @category Second Helpers\n * @summary Get the seconds of the given date.\n *\n * @description\n * Get the seconds of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the seconds\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the seconds of 29 February 2012 11:45:05.123:\n * const result = getSeconds(new Date(2012, 1, 29, 11, 45, 5, 123))\n * //=> 5\n */\n\nexport default function getSeconds(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var seconds = date.getSeconds();\n return seconds;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getTime\n * @category Timestamp Helpers\n * @summary Get the milliseconds timestamp of the given date.\n *\n * @description\n * Get the milliseconds timestamp of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the timestamp\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the timestamp of 29 February 2012 11:45:05.123:\n * const result = getTime(new Date(2012, 1, 29, 11, 45, 5, 123))\n * //=> 1330515905123\n */\n\nexport default function getTime(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var timestamp = date.getTime();\n return timestamp;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getYear\n * @category Year Helpers\n * @summary Get the year of the given date.\n *\n * @description\n * Get the year of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which year is 2 July 2014?\n * const result = getYear(new Date(2014, 6, 2))\n * //=> 2014\n */\n\nexport default function getYear(dirtyDate) {\n requiredArgs(1, arguments);\n return toDate(dirtyDate).getFullYear();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isAfter\n * @category Common Helpers\n * @summary Is the first date after the second one?\n *\n * @description\n * Is the first date after the second one?\n *\n * @param {Date|Number} date - the date that should be after the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is after the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 after 11 February 1987?\n * const result = isAfter(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> true\n */\n\nexport default function isAfter(dirtyDate, dirtyDateToCompare) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var dateToCompare = toDate(dirtyDateToCompare);\n return date.getTime() > dateToCompare.getTime();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isBefore\n * @category Common Helpers\n * @summary Is the first date before the second one?\n *\n * @description\n * Is the first date before the second one?\n *\n * @param {Date|Number} date - the date that should be before the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is before the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 before 11 February 1987?\n * const result = isBefore(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> false\n */\n\nexport default function isBefore(dirtyDate, dirtyDateToCompare) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var dateToCompare = toDate(dirtyDateToCompare);\n return date.getTime() < dateToCompare.getTime();\n}","import requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isDate\n * @category Common Helpers\n * @summary Is the given value a date?\n *\n * @description\n * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.\n *\n * @param {*} value - the value to check\n * @returns {boolean} true if the given value is a date\n * @throws {TypeError} 1 arguments required\n *\n * @example\n * // For a valid date:\n * const result = isDate(new Date())\n * //=> true\n *\n * @example\n * // For an invalid date:\n * const result = isDate(new Date(NaN))\n * //=> true\n *\n * @example\n * // For some value:\n * const result = isDate('2014-02-31')\n * //=> false\n *\n * @example\n * // For an object:\n * const result = isDate({})\n * //=> false\n */\n\nexport default function isDate(value) {\n requiredArgs(1, arguments);\n return value instanceof Date || typeof value === 'object' && Object.prototype.toString.call(value) === '[object Date]';\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isEqual\n * @category Common Helpers\n * @summary Are the given dates equal?\n *\n * @description\n * Are the given dates equal?\n *\n * @param {Date|Number} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Boolean} the dates are equal\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 July 2014 06:30:45.000 and 2 July 2014 06:30:45.500 equal?\n * const result = isEqual(\n * new Date(2014, 6, 2, 6, 30, 45, 0),\n * new Date(2014, 6, 2, 6, 30, 45, 500)\n * )\n * //=> false\n */\n\nexport default function isEqual(dirtyLeftDate, dirtyRightDate) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyLeftDate);\n var dateRight = toDate(dirtyRightDate);\n return dateLeft.getTime() === dateRight.getTime();\n}","import startOfDay from \"../startOfDay/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day (and year and month)?\n *\n * @description\n * Are the given dates in the same day (and year and month)?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day (and year and month)\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n *\n * @example\n * // Are 4 September and 4 October in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2014, 9, 4))\n * //=> false\n *\n * @example\n * // Are 4 September, 2014 and 4 September, 2015 in the same day?\n * const result = isSameDay(new Date(2014, 8, 4), new Date(2015, 8, 4))\n * //=> false\n */\n\nexport default function isSameDay(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfDay = startOfDay(dirtyDateLeft);\n var dateRightStartOfDay = startOfDay(dirtyDateRight);\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameMonth\n * @category Month Helpers\n * @summary Are the given dates in the same month (and year)?\n *\n * @description\n * Are the given dates in the same month (and year)?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same month (and year)\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same month?\n * const result = isSameMonth(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n *\n * @example\n * // Are 2 September 2014 and 25 September 2015 in the same month?\n * const result = isSameMonth(new Date(2014, 8, 2), new Date(2015, 8, 25))\n * //=> false\n */\n\nexport default function isSameMonth(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear() && dateLeft.getMonth() === dateRight.getMonth();\n}","import startOfQuarter from \"../startOfQuarter/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameQuarter\n * @category Quarter Helpers\n * @summary Are the given dates in the same quarter (and year)?\n *\n * @description\n * Are the given dates in the same quarter (and year)?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same quarter (and year)\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 1 January 2014 and 8 March 2014 in the same quarter?\n * const result = isSameQuarter(new Date(2014, 0, 1), new Date(2014, 2, 8))\n * //=> true\n *\n * @example\n * // Are 1 January 2014 and 1 January 2015 in the same quarter?\n * const result = isSameQuarter(new Date(2014, 0, 1), new Date(2015, 0, 1))\n * //=> false\n */\n\nexport default function isSameQuarter(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeftStartOfQuarter = startOfQuarter(dirtyDateLeft);\n var dateRightStartOfQuarter = startOfQuarter(dirtyDateRight);\n return dateLeftStartOfQuarter.getTime() === dateRightStartOfQuarter.getTime();\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isSameYear\n * @category Year Helpers\n * @summary Are the given dates in the same year?\n *\n * @description\n * Are the given dates in the same year?\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same year?\n * const result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\n\nexport default function isSameYear(dirtyDateLeft, dirtyDateRight) {\n requiredArgs(2, arguments);\n var dateLeft = toDate(dirtyDateLeft);\n var dateRight = toDate(dirtyDateRight);\n return dateLeft.getFullYear() === dateRight.getFullYear();\n}","import isDate from \"../isDate/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name isValid\n * @category Common Helpers\n * @summary Is the given date valid?\n *\n * @description\n * Returns false if argument is Invalid Date and true otherwise.\n * Argument is converted to Date using `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * Invalid Date is a Date, whose time value is NaN.\n *\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * @param {*} date - the date to check\n * @returns {Boolean} the date is valid\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // For the valid date:\n * const result = isValid(new Date(2014, 1, 31))\n * //=> true\n *\n * @example\n * // For the value, convertable into a date:\n * const result = isValid(1393804800000)\n * //=> true\n *\n * @example\n * // For the invalid date:\n * const result = isValid(new Date(''))\n * //=> false\n */\n\nexport default function isValid(dirtyDate) {\n requiredArgs(1, arguments);\n\n if (!isDate(dirtyDate) && typeof dirtyDate !== 'number') {\n return false;\n }\n\n var date = toDate(dirtyDate);\n return !isNaN(Number(date));\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n\n/**\n * @name isWithinInterval\n * @category Interval Helpers\n * @summary Is the given date within the interval?\n *\n * @description\n * Is the given date within the interval? (Including start and end.)\n *\n * @param {Date|Number} date - the date to check\n * @param {Interval} interval - the interval to check\n * @returns {Boolean} the date is within the interval\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // For the date within the interval:\n * isWithinInterval(new Date(2014, 0, 3), {\n * start: new Date(2014, 0, 1),\n * end: new Date(2014, 0, 7)\n * })\n * //=> true\n *\n * @example\n * // For the date outside of the interval:\n * isWithinInterval(new Date(2014, 0, 10), {\n * start: new Date(2014, 0, 1),\n * end: new Date(2014, 0, 7)\n * })\n * //=> false\n *\n * @example\n * // For date equal to interval start:\n * isWithinInterval(date, { start, end: date }) // => true\n *\n * @example\n * // For date equal to interval end:\n * isWithinInterval(date, { start: date, end }) // => true\n */\nexport default function isWithinInterval(dirtyDate, interval) {\n requiredArgs(2, arguments);\n var time = toDate(dirtyDate).getTime();\n var startTime = toDate(interval.start).getTime();\n var endTime = toDate(interval.end).getTime(); // Throw an exception if start date is after end date or if any date is `Invalid Date`\n\n if (!(startTime <= endTime)) {\n throw new RangeError('Invalid interval');\n }\n\n return time >= startTime && time <= endTime;\n}","var formatDistanceLocale = {\n lessThanXSeconds: {\n one: 'less than a second',\n other: 'less than {{count}} seconds'\n },\n xSeconds: {\n one: '1 second',\n other: '{{count}} seconds'\n },\n halfAMinute: 'half a minute',\n lessThanXMinutes: {\n one: 'less than a minute',\n other: 'less than {{count}} minutes'\n },\n xMinutes: {\n one: '1 minute',\n other: '{{count}} minutes'\n },\n aboutXHours: {\n one: 'about 1 hour',\n other: 'about {{count}} hours'\n },\n xHours: {\n one: '1 hour',\n other: '{{count}} hours'\n },\n xDays: {\n one: '1 day',\n other: '{{count}} days'\n },\n aboutXWeeks: {\n one: 'about 1 week',\n other: 'about {{count}} weeks'\n },\n xWeeks: {\n one: '1 week',\n other: '{{count}} weeks'\n },\n aboutXMonths: {\n one: 'about 1 month',\n other: 'about {{count}} months'\n },\n xMonths: {\n one: '1 month',\n other: '{{count}} months'\n },\n aboutXYears: {\n one: 'about 1 year',\n other: 'about {{count}} years'\n },\n xYears: {\n one: '1 year',\n other: '{{count}} years'\n },\n overXYears: {\n one: 'over 1 year',\n other: 'over {{count}} years'\n },\n almostXYears: {\n one: 'almost 1 year',\n other: 'almost {{count}} years'\n }\n};\n\nvar formatDistance = function (token, count, options) {\n var result;\n var tokenValue = formatDistanceLocale[token];\n\n if (typeof tokenValue === 'string') {\n result = tokenValue;\n } else if (count === 1) {\n result = tokenValue.one;\n } else {\n result = tokenValue.other.replace('{{count}}', count.toString());\n }\n\n if (options !== null && options !== void 0 && options.addSuffix) {\n if (options.comparison && options.comparison > 0) {\n return 'in ' + result;\n } else {\n return result + ' ago';\n }\n }\n\n return result;\n};\n\nexport default formatDistance;","export default function buildFormatLongFn(args) {\n return function () {\n var options = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n // TODO: Remove String()\n var width = options.width ? String(options.width) : args.defaultWidth;\n var format = args.formats[width] || args.formats[args.defaultWidth];\n return format;\n };\n}","import buildFormatLongFn from \"../../../_lib/buildFormatLongFn/index.js\";\nvar dateFormats = {\n full: 'EEEE, MMMM do, y',\n long: 'MMMM do, y',\n medium: 'MMM d, y',\n short: 'MM/dd/yyyy'\n};\nvar timeFormats = {\n full: 'h:mm:ss a zzzz',\n long: 'h:mm:ss a z',\n medium: 'h:mm:ss a',\n short: 'h:mm a'\n};\nvar dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: '{{date}}, {{time}}',\n short: '{{date}}, {{time}}'\n};\nvar formatLong = {\n date: buildFormatLongFn({\n formats: dateFormats,\n defaultWidth: 'full'\n }),\n time: buildFormatLongFn({\n formats: timeFormats,\n defaultWidth: 'full'\n }),\n dateTime: buildFormatLongFn({\n formats: dateTimeFormats,\n defaultWidth: 'full'\n })\n};\nexport default formatLong;","var formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: 'P'\n};\n\nvar formatRelative = function (token, _date, _baseDate, _options) {\n return formatRelativeLocale[token];\n};\n\nexport default formatRelative;","export default function buildLocalizeFn(args) {\n return function (dirtyIndex, options) {\n var context = options !== null && options !== void 0 && options.context ? String(options.context) : 'standalone';\n var valuesArray;\n\n if (context === 'formatting' && args.formattingValues) {\n var defaultWidth = args.defaultFormattingWidth || args.defaultWidth;\n var width = options !== null && options !== void 0 && options.width ? String(options.width) : defaultWidth;\n valuesArray = args.formattingValues[width] || args.formattingValues[defaultWidth];\n } else {\n var _defaultWidth = args.defaultWidth;\n\n var _width = options !== null && options !== void 0 && options.width ? String(options.width) : args.defaultWidth;\n\n valuesArray = args.values[_width] || args.values[_defaultWidth];\n }\n\n var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex; // @ts-ignore: For some reason TypeScript just don't want to match it, no matter how hard we try. I challenge you to try to remove it!\n\n return valuesArray[index];\n };\n}","import buildLocalizeFn from \"../../../_lib/buildLocalizeFn/index.js\";\nvar eraValues = {\n narrow: ['B', 'A'],\n abbreviated: ['BC', 'AD'],\n wide: ['Before Christ', 'Anno Domini']\n};\nvar quarterValues = {\n narrow: ['1', '2', '3', '4'],\n abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],\n wide: ['1st quarter', '2nd quarter', '3rd quarter', '4th quarter']\n}; // Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\n\nvar monthValues = {\n narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],\n abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n wide: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\n};\nvar dayValues = {\n narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n};\nvar dayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n }\n};\nvar formattingDayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n }\n};\n\nvar ordinalNumber = function (dirtyNumber, _options) {\n var number = Number(dirtyNumber); // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`.\n //\n // `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'.\n\n var rem100 = number % 100;\n\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + 'st';\n\n case 2:\n return number + 'nd';\n\n case 3:\n return number + 'rd';\n }\n }\n\n return number + 'th';\n};\n\nvar localize = {\n ordinalNumber: ordinalNumber,\n era: buildLocalizeFn({\n values: eraValues,\n defaultWidth: 'wide'\n }),\n quarter: buildLocalizeFn({\n values: quarterValues,\n defaultWidth: 'wide',\n argumentCallback: function (quarter) {\n return quarter - 1;\n }\n }),\n month: buildLocalizeFn({\n values: monthValues,\n defaultWidth: 'wide'\n }),\n day: buildLocalizeFn({\n values: dayValues,\n defaultWidth: 'wide'\n }),\n dayPeriod: buildLocalizeFn({\n values: dayPeriodValues,\n defaultWidth: 'wide',\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: 'wide'\n })\n};\nexport default localize;","export default function buildMatchFn(args) {\n return function (string) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var width = options.width;\n var matchPattern = width && args.matchPatterns[width] || args.matchPatterns[args.defaultMatchWidth];\n var matchResult = string.match(matchPattern);\n\n if (!matchResult) {\n return null;\n }\n\n var matchedString = matchResult[0];\n var parsePatterns = width && args.parsePatterns[width] || args.parsePatterns[args.defaultParseWidth];\n var key = Array.isArray(parsePatterns) ? findIndex(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n }) : findKey(parsePatterns, function (pattern) {\n return pattern.test(matchedString);\n });\n var value;\n value = args.valueCallback ? args.valueCallback(key) : key;\n value = options.valueCallback ? options.valueCallback(value) : value;\n var rest = string.slice(matchedString.length);\n return {\n value: value,\n rest: rest\n };\n };\n}\n\nfunction findKey(object, predicate) {\n for (var key in object) {\n if (object.hasOwnProperty(key) && predicate(object[key])) {\n return key;\n }\n }\n\n return undefined;\n}\n\nfunction findIndex(array, predicate) {\n for (var key = 0; key < array.length; key++) {\n if (predicate(array[key])) {\n return key;\n }\n }\n\n return undefined;\n}","import buildMatchFn from \"../../../_lib/buildMatchFn/index.js\";\nimport buildMatchPatternFn from \"../../../_lib/buildMatchPatternFn/index.js\";\nvar matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i;\nvar parseOrdinalNumberPattern = /\\d+/i;\nvar matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i\n};\nvar parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i]\n};\nvar matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i\n};\nvar parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i]\n};\nvar matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i\n};\nvar parseMonthPatterns = {\n narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],\n any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]\n};\nvar matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i\n};\nvar parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]\n};\nvar matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i\n};\nvar parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i\n }\n};\nvar match = {\n ordinalNumber: buildMatchPatternFn({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: function (value) {\n return parseInt(value, 10);\n }\n }),\n era: buildMatchFn({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseEraPatterns,\n defaultParseWidth: 'any'\n }),\n quarter: buildMatchFn({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: 'any',\n valueCallback: function (index) {\n return index + 1;\n }\n }),\n month: buildMatchFn({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: 'any'\n }),\n day: buildMatchFn({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseDayPatterns,\n defaultParseWidth: 'any'\n }),\n dayPeriod: buildMatchFn({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: 'any',\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: 'any'\n })\n};\nexport default match;","export default function buildMatchPatternFn(args) {\n return function (string) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var matchResult = string.match(args.matchPattern);\n if (!matchResult) return null;\n var matchedString = matchResult[0];\n var parseResult = string.match(args.parsePattern);\n if (!parseResult) return null;\n var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0];\n value = options.valueCallback ? options.valueCallback(value) : value;\n var rest = string.slice(matchedString.length);\n return {\n value: value,\n rest: rest\n };\n };\n}","import formatDistance from \"./_lib/formatDistance/index.js\";\nimport formatLong from \"./_lib/formatLong/index.js\";\nimport formatRelative from \"./_lib/formatRelative/index.js\";\nimport localize from \"./_lib/localize/index.js\";\nimport match from \"./_lib/match/index.js\";\n\n/**\n * @type {Locale}\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp]{@link https://github.com/kossnocorp}\n * @author Lesha Koss [@leshakoss]{@link https://github.com/leshakoss}\n */\nvar locale = {\n code: 'en-US',\n formatDistance: formatDistance,\n formatLong: formatLong,\n formatRelative: formatRelative,\n localize: localize,\n match: match,\n options: {\n weekStartsOn: 0\n /* Sunday */\n ,\n firstWeekContainsDate: 1\n }\n};\nexport default locale;","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name max\n * @category Common Helpers\n * @summary Return the latest of the given dates.\n *\n * @description\n * Return the latest of the given dates.\n *\n * @param {Date[]|Number[]} datesArray - the dates to compare\n * @returns {Date} the latest of the dates\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which of these dates is the latest?\n * const result = max([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Sun Jul 02 1995 00:00:00\n */\n\nexport default function max(dirtyDatesArray) {\n requiredArgs(1, arguments);\n var datesArray; // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n\n if (dirtyDatesArray && typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray; // If `dirtyDatesArray` is Array-like Object, convert to Array.\n } else if (typeof dirtyDatesArray === 'object' && dirtyDatesArray !== null) {\n datesArray = Array.prototype.slice.call(dirtyDatesArray);\n } else {\n // `dirtyDatesArray` is non-iterable, return Invalid Date\n return new Date(NaN);\n }\n\n var result;\n datesArray.forEach(function (dirtyDate) {\n var currentDate = toDate(dirtyDate);\n\n if (result === undefined || result < currentDate || isNaN(Number(currentDate))) {\n result = currentDate;\n }\n });\n return result || new Date(NaN);\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name min\n * @category Common Helpers\n * @summary Returns the earliest of the given dates.\n *\n * @description\n * Returns the earliest of the given dates.\n *\n * @param {Date[]|Number[]} datesArray - the dates to compare\n * @returns {Date} - the earliest of the dates\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which of these dates is the earliest?\n * const result = min([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Wed Feb 11 1987 00:00:00\n */\n\nexport default function min(dirtyDatesArray) {\n requiredArgs(1, arguments);\n var datesArray; // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n\n if (dirtyDatesArray && typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray; // If `dirtyDatesArray` is Array-like Object, convert to Array.\n } else if (typeof dirtyDatesArray === 'object' && dirtyDatesArray !== null) {\n datesArray = Array.prototype.slice.call(dirtyDatesArray);\n } else {\n // `dirtyDatesArray` is non-iterable, return Invalid Date\n return new Date(NaN);\n }\n\n var result;\n datesArray.forEach(function (dirtyDate) {\n var currentDate = toDate(dirtyDate);\n\n if (result === undefined || result > currentDate || isNaN(currentDate.getDate())) {\n result = currentDate;\n }\n });\n return result || new Date(NaN);\n}","export default function assign(target, object) {\n if (target == null) {\n throw new TypeError('assign requires that input parameter not be null or undefined');\n }\n\n for (var property in object) {\n if (Object.prototype.hasOwnProperty.call(object, property)) {\n ;\n target[property] = object[property];\n }\n }\n\n return target;\n}","export default function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}","export default function _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}","import setPrototypeOf from \"./setPrototypeOf.js\";\nexport default function _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) setPrototypeOf(subClass, superClass);\n}","export default function _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nimport assertThisInitialized from \"./assertThisInitialized.js\";\nexport default function _possibleConstructorReturn(self, call) {\n if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n\n return assertThisInitialized(self);\n}","import getPrototypeOf from \"./getPrototypeOf.js\";\nimport isNativeReflectConstruct from \"./isNativeReflectConstruct.js\";\nimport possibleConstructorReturn from \"./possibleConstructorReturn.js\";\nexport default function _createSuper(Derived) {\n var hasNativeReflectConstruct = isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return possibleConstructorReturn(this, result);\n };\n}","export default function _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}","export default function _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}","function _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nexport default function _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar TIMEZONE_UNIT_PRIORITY = 10;\nexport class Setter {\n constructor() {\n _defineProperty(this, \"priority\", void 0);\n\n _defineProperty(this, \"subPriority\", 0);\n }\n\n validate(_utcDate, _options) {\n return true;\n }\n\n}\nexport class ValueSetter extends Setter {\n constructor(value, validateValue, setValue, priority, subPriority) {\n super();\n this.value = value;\n this.validateValue = validateValue;\n this.setValue = setValue;\n this.priority = priority;\n\n if (subPriority) {\n this.subPriority = subPriority;\n }\n }\n\n validate(utcDate, options) {\n return this.validateValue(utcDate, this.value, options);\n }\n\n set(utcDate, flags, options) {\n return this.setValue(utcDate, flags, this.value, options);\n }\n\n}\nexport class DateToSystemTimezoneSetter extends Setter {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", TIMEZONE_UNIT_PRIORITY);\n\n _defineProperty(this, \"subPriority\", -1);\n }\n\n set(date, flags) {\n if (flags.timestampIsSet) {\n return date;\n }\n\n var convertedDate = new Date(0);\n convertedDate.setFullYear(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate());\n convertedDate.setHours(date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds(), date.getUTCMilliseconds());\n return convertedDate;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { ValueSetter } from \"./Setter.js\";\nexport class Parser {\n constructor() {\n _defineProperty(this, \"incompatibleTokens\", void 0);\n\n _defineProperty(this, \"priority\", void 0);\n\n _defineProperty(this, \"subPriority\", void 0);\n }\n\n run(dateString, token, match, options) {\n var result = this.parse(dateString, token, match, options);\n\n if (!result) {\n return null;\n }\n\n return {\n setter: new ValueSetter(result.value, this.validate, this.set, this.priority, this.subPriority),\n rest: result.rest\n };\n }\n\n validate(_utcDate, _value, _options) {\n return true;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nexport class EraParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 140);\n\n _defineProperty(this, \"incompatibleTokens\", ['R', 'u', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return match.era(dateString, {\n width: 'abbreviated'\n }) || match.era(dateString, {\n width: 'narrow'\n });\n // A, B\n\n case 'GGGGG':\n return match.era(dateString, {\n width: 'narrow'\n });\n // Anno Domini, Before Christ\n\n case 'GGGG':\n default:\n return match.era(dateString, {\n width: 'wide'\n }) || match.era(dateString, {\n width: 'abbreviated'\n }) || match.era(dateString, {\n width: 'narrow'\n });\n }\n }\n\n set(date, flags, value) {\n flags.era = value;\n date.setUTCFullYear(value, 0, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","export var numericPatterns = {\n month: /^(1[0-2]|0?\\d)/,\n // 0 to 12\n date: /^(3[0-1]|[0-2]?\\d)/,\n // 0 to 31\n dayOfYear: /^(36[0-6]|3[0-5]\\d|[0-2]?\\d?\\d)/,\n // 0 to 366\n week: /^(5[0-3]|[0-4]?\\d)/,\n // 0 to 53\n hour23h: /^(2[0-3]|[0-1]?\\d)/,\n // 0 to 23\n hour24h: /^(2[0-4]|[0-1]?\\d)/,\n // 0 to 24\n hour11h: /^(1[0-1]|0?\\d)/,\n // 0 to 11\n hour12h: /^(1[0-2]|0?\\d)/,\n // 0 to 12\n minute: /^[0-5]?\\d/,\n // 0 to 59\n second: /^[0-5]?\\d/,\n // 0 to 59\n singleDigit: /^\\d/,\n // 0 to 9\n twoDigits: /^\\d{1,2}/,\n // 0 to 99\n threeDigits: /^\\d{1,3}/,\n // 0 to 999\n fourDigits: /^\\d{1,4}/,\n // 0 to 9999\n anyDigitsSigned: /^-?\\d+/,\n singleDigitSigned: /^-?\\d/,\n // 0 to 9, -0 to -9\n twoDigitsSigned: /^-?\\d{1,2}/,\n // 0 to 99, -0 to -99\n threeDigitsSigned: /^-?\\d{1,3}/,\n // 0 to 999, -0 to -999\n fourDigitsSigned: /^-?\\d{1,4}/ // 0 to 9999, -0 to -9999\n\n};\nexport var timezonePatterns = {\n basicOptionalMinutes: /^([+-])(\\d{2})(\\d{2})?|Z/,\n basic: /^([+-])(\\d{2})(\\d{2})|Z/,\n basicOptionalSeconds: /^([+-])(\\d{2})(\\d{2})((\\d{2}))?|Z/,\n extended: /^([+-])(\\d{2}):(\\d{2})|Z/,\n extendedOptionalSeconds: /^([+-])(\\d{2}):(\\d{2})(:(\\d{2}))?|Z/\n};","import { millisecondsInHour, millisecondsInMinute, millisecondsInSecond } from \"../../constants/index.js\";\nimport { numericPatterns } from \"./constants.js\";\nexport function mapValue(parseFnResult, mapFn) {\n if (!parseFnResult) {\n return parseFnResult;\n }\n\n return {\n value: mapFn(parseFnResult.value),\n rest: parseFnResult.rest\n };\n}\nexport function parseNumericPattern(pattern, dateString) {\n var matchResult = dateString.match(pattern);\n\n if (!matchResult) {\n return null;\n }\n\n return {\n value: parseInt(matchResult[0], 10),\n rest: dateString.slice(matchResult[0].length)\n };\n}\nexport function parseTimezonePattern(pattern, dateString) {\n var matchResult = dateString.match(pattern);\n\n if (!matchResult) {\n return null;\n } // Input is 'Z'\n\n\n if (matchResult[0] === 'Z') {\n return {\n value: 0,\n rest: dateString.slice(1)\n };\n }\n\n var sign = matchResult[1] === '+' ? 1 : -1;\n var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0;\n var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0;\n var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0;\n return {\n value: sign * (hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * millisecondsInSecond),\n rest: dateString.slice(matchResult[0].length)\n };\n}\nexport function parseAnyDigitsSigned(dateString) {\n return parseNumericPattern(numericPatterns.anyDigitsSigned, dateString);\n}\nexport function parseNDigits(n, dateString) {\n switch (n) {\n case 1:\n return parseNumericPattern(numericPatterns.singleDigit, dateString);\n\n case 2:\n return parseNumericPattern(numericPatterns.twoDigits, dateString);\n\n case 3:\n return parseNumericPattern(numericPatterns.threeDigits, dateString);\n\n case 4:\n return parseNumericPattern(numericPatterns.fourDigits, dateString);\n\n default:\n return parseNumericPattern(new RegExp('^\\\\d{1,' + n + '}'), dateString);\n }\n}\nexport function parseNDigitsSigned(n, dateString) {\n switch (n) {\n case 1:\n return parseNumericPattern(numericPatterns.singleDigitSigned, dateString);\n\n case 2:\n return parseNumericPattern(numericPatterns.twoDigitsSigned, dateString);\n\n case 3:\n return parseNumericPattern(numericPatterns.threeDigitsSigned, dateString);\n\n case 4:\n return parseNumericPattern(numericPatterns.fourDigitsSigned, dateString);\n\n default:\n return parseNumericPattern(new RegExp('^-?\\\\d{1,' + n + '}'), dateString);\n }\n}\nexport function dayPeriodEnumToHours(dayPeriod) {\n switch (dayPeriod) {\n case 'morning':\n return 4;\n\n case 'evening':\n return 17;\n\n case 'pm':\n case 'noon':\n case 'afternoon':\n return 12;\n\n case 'am':\n case 'midnight':\n case 'night':\n default:\n return 0;\n }\n}\nexport function normalizeTwoDigitYear(twoDigitYear, currentYear) {\n var isCommonEra = currentYear > 0; // Absolute number of the current year:\n // 1 -> 1 AC\n // 0 -> 1 BC\n // -1 -> 2 BC\n\n var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear;\n var result;\n\n if (absCurrentYear <= 50) {\n result = twoDigitYear || 100;\n } else {\n var rangeEnd = absCurrentYear + 50;\n var rangeEndCentury = Math.floor(rangeEnd / 100) * 100;\n var isPreviousCentury = twoDigitYear >= rangeEnd % 100;\n result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0);\n }\n\n return isCommonEra ? result : 1 - result;\n}\nexport function isLeapYearIndex(year) {\n return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { mapValue, normalizeTwoDigitYear, parseNDigits } from \"../utils.js\";\n// From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns\n// | Year | y | yy | yyy | yyyy | yyyyy |\n// |----------|-------|----|-------|-------|-------|\n// | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n// | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n// | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n// | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n// | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\nexport class YearParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 130);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'u', 'w', 'I', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n var valueCallback = function (year) {\n return {\n year: year,\n isTwoDigitYear: token === 'yy'\n };\n };\n\n switch (token) {\n case 'y':\n return mapValue(parseNDigits(4, dateString), valueCallback);\n\n case 'yo':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'year'\n }), valueCallback);\n\n default:\n return mapValue(parseNDigits(token.length, dateString), valueCallback);\n }\n }\n\n validate(_date, value) {\n return value.isTwoDigitYear || value.year > 0;\n }\n\n set(date, flags, value) {\n var currentYear = date.getUTCFullYear();\n\n if (value.isTwoDigitYear) {\n var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);\n date.setUTCFullYear(normalizedTwoDigitYear, 0, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year;\n date.setUTCFullYear(year, 0, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseNDigits, normalizeTwoDigitYear, mapValue } from \"../utils.js\";\nimport getUTCWeekYear from \"../../../_lib/getUTCWeekYear/index.js\";\nimport startOfUTCWeek from \"../../../_lib/startOfUTCWeek/index.js\";\n// Local week-numbering year\nexport class LocalWeekYearParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 130);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'R', 'u', 'Q', 'q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n var valueCallback = function (year) {\n return {\n year: year,\n isTwoDigitYear: token === 'YY'\n };\n };\n\n switch (token) {\n case 'Y':\n return mapValue(parseNDigits(4, dateString), valueCallback);\n\n case 'Yo':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'year'\n }), valueCallback);\n\n default:\n return mapValue(parseNDigits(token.length, dateString), valueCallback);\n }\n }\n\n validate(_date, value) {\n return value.isTwoDigitYear || value.year > 0;\n }\n\n set(date, flags, value, options) {\n var currentYear = getUTCWeekYear(date, options);\n\n if (value.isTwoDigitYear) {\n var normalizedTwoDigitYear = normalizeTwoDigitYear(value.year, currentYear);\n date.setUTCFullYear(normalizedTwoDigitYear, 0, options.firstWeekContainsDate);\n date.setUTCHours(0, 0, 0, 0);\n return startOfUTCWeek(date, options);\n }\n\n var year = !('era' in flags) || flags.era === 1 ? value.year : 1 - value.year;\n date.setUTCFullYear(year, 0, options.firstWeekContainsDate);\n date.setUTCHours(0, 0, 0, 0);\n return startOfUTCWeek(date, options);\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseNDigitsSigned } from \"../utils.js\";\nimport startOfUTCISOWeek from \"../../../_lib/startOfUTCISOWeek/index.js\"; // ISO week-numbering year\n\nexport class ISOWeekYearParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 130);\n\n _defineProperty(this, \"incompatibleTokens\", ['G', 'y', 'Y', 'u', 'Q', 'q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token) {\n if (token === 'R') {\n return parseNDigitsSigned(4, dateString);\n }\n\n return parseNDigitsSigned(token.length, dateString);\n }\n\n set(_date, _flags, value) {\n var firstWeekOfYear = new Date(0);\n firstWeekOfYear.setUTCFullYear(value, 0, 4);\n firstWeekOfYear.setUTCHours(0, 0, 0, 0);\n return startOfUTCISOWeek(firstWeekOfYear);\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseNDigitsSigned } from \"../utils.js\";\nexport class ExtendedYearParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 130);\n\n _defineProperty(this, \"incompatibleTokens\", ['G', 'y', 'Y', 'R', 'w', 'I', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token) {\n if (token === 'u') {\n return parseNDigitsSigned(4, dateString);\n }\n\n return parseNDigitsSigned(token.length, dateString);\n }\n\n set(date, _flags, value) {\n date.setUTCFullYear(value, 0, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseNDigits } from \"../utils.js\";\nexport class QuarterParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 120);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n case 'QQ':\n // 01, 02, 03, 04\n return parseNDigits(token.length, dateString);\n // 1st, 2nd, 3rd, 4th\n\n case 'Qo':\n return match.ordinalNumber(dateString, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'QQQ':\n return match.quarter(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.quarter(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'QQQQQ':\n return match.quarter(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'QQQQ':\n default:\n return match.quarter(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.quarter(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.quarter(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 4;\n }\n\n set(date, _flags, value) {\n date.setUTCMonth((value - 1) * 3, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseNDigits } from \"../utils.js\";\nexport class StandAloneQuarterParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 120);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'Q', 'M', 'L', 'w', 'I', 'd', 'D', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n case 'qq':\n // 01, 02, 03, 04\n return parseNDigits(token.length, dateString);\n // 1st, 2nd, 3rd, 4th\n\n case 'qo':\n return match.ordinalNumber(dateString, {\n unit: 'quarter'\n });\n // Q1, Q2, Q3, Q4\n\n case 'qqq':\n return match.quarter(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.quarter(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n\n case 'qqqqq':\n return match.quarter(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // 1st quarter, 2nd quarter, ...\n\n case 'qqqq':\n default:\n return match.quarter(dateString, {\n width: 'wide',\n context: 'standalone'\n }) || match.quarter(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.quarter(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 4;\n }\n\n set(date, _flags, value) {\n date.setUTCMonth((value - 1) * 3, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { mapValue, parseNDigits, parseNumericPattern } from \"../utils.js\";\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nexport class MonthParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'q', 'Q', 'L', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']);\n\n _defineProperty(this, \"priority\", 110);\n }\n\n parse(dateString, token, match) {\n var valueCallback = function (value) {\n return value - 1;\n };\n\n switch (token) {\n // 1, 2, ..., 12\n case 'M':\n return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback);\n // 01, 02, ..., 12\n\n case 'MM':\n return mapValue(parseNDigits(2, dateString), valueCallback);\n // 1st, 2nd, ..., 12th\n\n case 'Mo':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'month'\n }), valueCallback);\n // Jan, Feb, ..., Dec\n\n case 'MMM':\n return match.month(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.month(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // J, F, ..., D\n\n case 'MMMMM':\n return match.month(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // January, February, ..., December\n\n case 'MMMM':\n default:\n return match.month(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.month(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.month(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 11;\n }\n\n set(date, _flags, value) {\n date.setUTCMonth(value, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits, mapValue } from \"../utils.js\";\nexport class StandAloneMonthParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 110);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'q', 'Q', 'M', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n var valueCallback = function (value) {\n return value - 1;\n };\n\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return mapValue(parseNumericPattern(numericPatterns.month, dateString), valueCallback);\n // 01, 02, ..., 12\n\n case 'LL':\n return mapValue(parseNDigits(2, dateString), valueCallback);\n // 1st, 2nd, ..., 12th\n\n case 'Lo':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'month'\n }), valueCallback);\n // Jan, Feb, ..., Dec\n\n case 'LLL':\n return match.month(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.month(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // J, F, ..., D\n\n case 'LLLLL':\n return match.month(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // January, February, ..., December\n\n case 'LLLL':\n default:\n return match.month(dateString, {\n width: 'wide',\n context: 'standalone'\n }) || match.month(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.month(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 11;\n }\n\n set(date, _flags, value) {\n date.setUTCMonth(value, 1);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nimport setUTCWeek from \"../../../_lib/setUTCWeek/index.js\";\nimport startOfUTCWeek from \"../../../_lib/startOfUTCWeek/index.js\"; // Local week of year\n\nexport class LocalWeekParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 100);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'i', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'w':\n return parseNumericPattern(numericPatterns.week, dateString);\n\n case 'wo':\n return match.ordinalNumber(dateString, {\n unit: 'week'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 53;\n }\n\n set(date, _flags, value, options) {\n return startOfUTCWeek(setUTCWeek(date, value, options), options);\n }\n\n}","import toInteger from \"../toInteger/index.js\";\nimport toDate from \"../../toDate/index.js\";\nimport getUTCWeek from \"../getUTCWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function setUTCWeek(dirtyDate, dirtyWeek, options) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var week = toInteger(dirtyWeek);\n var diff = getUTCWeek(date, options) - week;\n date.setUTCDate(date.getUTCDate() - diff * 7);\n return date;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nimport setUTCISOWeek from \"../../../_lib/setUTCISOWeek/index.js\";\nimport startOfUTCISOWeek from \"../../../_lib/startOfUTCISOWeek/index.js\"; // ISO week of year\n\nexport class ISOWeekParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 100);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'I':\n return parseNumericPattern(numericPatterns.week, dateString);\n\n case 'Io':\n return match.ordinalNumber(dateString, {\n unit: 'week'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 53;\n }\n\n set(date, _flags, value) {\n return startOfUTCISOWeek(setUTCISOWeek(date, value));\n }\n\n}","import toInteger from \"../toInteger/index.js\";\nimport toDate from \"../../toDate/index.js\";\nimport getUTCISOWeek from \"../getUTCISOWeek/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nexport default function setUTCISOWeek(dirtyDate, dirtyISOWeek) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var isoWeek = toInteger(dirtyISOWeek);\n var diff = getUTCISOWeek(date) - isoWeek;\n date.setUTCDate(date.getUTCDate() - diff * 7);\n return date;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { isLeapYearIndex, parseNDigits, parseNumericPattern } from \"../utils.js\";\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\nvar DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]; // Day of the month\n\nexport class DateParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"subPriority\", 1);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'q', 'Q', 'w', 'I', 'D', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'd':\n return parseNumericPattern(numericPatterns.date, dateString);\n\n case 'do':\n return match.ordinalNumber(dateString, {\n unit: 'date'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(date, value) {\n var year = date.getUTCFullYear();\n var isLeapYear = isLeapYearIndex(year);\n var month = date.getUTCMonth();\n\n if (isLeapYear) {\n return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month];\n } else {\n return value >= 1 && value <= DAYS_IN_MONTH[month];\n }\n }\n\n set(date, _flags, value) {\n date.setUTCDate(value);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits, isLeapYearIndex } from \"../utils.js\";\nexport class DayOfYearParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"subpriority\", 1);\n\n _defineProperty(this, \"incompatibleTokens\", ['Y', 'R', 'q', 'Q', 'M', 'L', 'w', 'I', 'd', 'E', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'D':\n case 'DD':\n return parseNumericPattern(numericPatterns.dayOfYear, dateString);\n\n case 'Do':\n return match.ordinalNumber(dateString, {\n unit: 'date'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(date, value) {\n var year = date.getUTCFullYear();\n var isLeapYear = isLeapYearIndex(year);\n\n if (isLeapYear) {\n return value >= 1 && value <= 366;\n } else {\n return value >= 1 && value <= 365;\n }\n }\n\n set(date, _flags, value) {\n date.setUTCMonth(0, value);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nimport { getDefaultOptions } from \"../defaultOptions/index.js\";\nexport default function setUTCDay(dirtyDate, dirtyDay, options) {\n var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(2, arguments);\n var defaultOptions = getDefaultOptions();\n var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = toInteger(dirtyDay);\n var currentDay = date.getUTCDay();\n var remainder = day % 7;\n var dayIndex = (remainder + 7) % 7;\n var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay;\n date.setUTCDate(date.getUTCDate() + diff);\n return date;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport setUTCDay from \"../../../_lib/setUTCDay/index.js\"; // Day of week\n\nexport class DayParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"incompatibleTokens\", ['D', 'i', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // T\n\n case 'EEEEE':\n return match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'EEEEEE':\n return match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tuesday\n\n case 'EEEE':\n default:\n return match.day(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 6;\n }\n\n set(date, _flags, value, options) {\n date = setUTCDay(date, value, options);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { mapValue, parseNDigits } from \"../utils.js\";\nimport setUTCDay from \"../../../_lib/setUTCDay/index.js\"; // Local day of week\n\nexport class LocalDayParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match, options) {\n var valueCallback = function (value) {\n var wholeWeekDays = Math.floor((value - 1) / 7) * 7;\n return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;\n };\n\n switch (token) {\n // 3\n case 'e':\n case 'ee':\n // 03\n return mapValue(parseNDigits(token.length, dateString), valueCallback);\n // 3rd\n\n case 'eo':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'day'\n }), valueCallback);\n // Tue\n\n case 'eee':\n return match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // T\n\n case 'eeeee':\n return match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tu\n\n case 'eeeeee':\n return match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n // Tuesday\n\n case 'eeee':\n default:\n return match.day(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 6;\n }\n\n set(date, _flags, value, options) {\n date = setUTCDay(date, value, options);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { mapValue, parseNDigits } from \"../utils.js\";\nimport setUTCDay from \"../../../_lib/setUTCDay/index.js\"; // Stand-alone local day of week\n\nexport class StandAloneLocalDayParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'R', 'u', 'q', 'Q', 'M', 'L', 'I', 'd', 'D', 'E', 'i', 'e', 't', 'T']);\n }\n\n parse(dateString, token, match, options) {\n var valueCallback = function (value) {\n var wholeWeekDays = Math.floor((value - 1) / 7) * 7;\n return (value + options.weekStartsOn + 6) % 7 + wholeWeekDays;\n };\n\n switch (token) {\n // 3\n case 'c':\n case 'cc':\n // 03\n return mapValue(parseNDigits(token.length, dateString), valueCallback);\n // 3rd\n\n case 'co':\n return mapValue(match.ordinalNumber(dateString, {\n unit: 'day'\n }), valueCallback);\n // Tue\n\n case 'ccc':\n return match.day(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'short',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // T\n\n case 'ccccc':\n return match.day(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tu\n\n case 'cccccc':\n return match.day(dateString, {\n width: 'short',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n // Tuesday\n\n case 'cccc':\n default:\n return match.day(dateString, {\n width: 'wide',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'abbreviated',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'short',\n context: 'standalone'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'standalone'\n });\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 6;\n }\n\n set(date, _flags, value, options) {\n date = setUTCDay(date, value, options);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { mapValue, parseNDigits } from \"../utils.js\";\nimport setUTCISODay from \"../../../_lib/setUTCISODay/index.js\"; // ISO day of week\n\nexport class ISODayParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 90);\n\n _defineProperty(this, \"incompatibleTokens\", ['y', 'Y', 'u', 'q', 'Q', 'M', 'L', 'w', 'd', 'D', 'E', 'e', 'c', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n var valueCallback = function (value) {\n if (value === 0) {\n return 7;\n }\n\n return value;\n };\n\n switch (token) {\n // 2\n case 'i':\n case 'ii':\n // 02\n return parseNDigits(token.length, dateString);\n // 2nd\n\n case 'io':\n return match.ordinalNumber(dateString, {\n unit: 'day'\n });\n // Tue\n\n case 'iii':\n return mapValue(match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n }), valueCallback);\n // T\n\n case 'iiiii':\n return mapValue(match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n }), valueCallback);\n // Tu\n\n case 'iiiiii':\n return mapValue(match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n }), valueCallback);\n // Tuesday\n\n case 'iiii':\n default:\n return mapValue(match.day(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'short',\n context: 'formatting'\n }) || match.day(dateString, {\n width: 'narrow',\n context: 'formatting'\n }), valueCallback);\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 7;\n }\n\n set(date, _flags, value) {\n date = setUTCISODay(date, value);\n date.setUTCHours(0, 0, 0, 0);\n return date;\n }\n\n}","import toDate from \"../../toDate/index.js\";\nimport requiredArgs from \"../requiredArgs/index.js\";\nimport toInteger from \"../toInteger/index.js\";\nexport default function setUTCISODay(dirtyDate, dirtyDay) {\n requiredArgs(2, arguments);\n var day = toInteger(dirtyDay);\n\n if (day % 7 === 0) {\n day = day - 7;\n }\n\n var weekStartsOn = 1;\n var date = toDate(dirtyDate);\n var currentDay = date.getUTCDay();\n var remainder = day % 7;\n var dayIndex = (remainder + 7) % 7;\n var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay;\n date.setUTCDate(date.getUTCDate() + diff);\n return date;\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { dayPeriodEnumToHours } from \"../utils.js\";\nexport class AMPMParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 80);\n\n _defineProperty(this, \"incompatibleTokens\", ['b', 'B', 'H', 'k', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'a':\n case 'aa':\n case 'aaa':\n return match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'aaaaa':\n return match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'aaaa':\n default:\n return match.dayPeriod(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n set(date, _flags, value) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { dayPeriodEnumToHours } from \"../utils.js\";\nexport class AMPMMidnightParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 80);\n\n _defineProperty(this, \"incompatibleTokens\", ['a', 'B', 'H', 'k', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'b':\n case 'bb':\n case 'bbb':\n return match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'bbbbb':\n return match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'bbbb':\n default:\n return match.dayPeriod(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n set(date, _flags, value) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { dayPeriodEnumToHours } from \"../utils.js\"; // in the morning, in the afternoon, in the evening, at night\n\nexport class DayPeriodParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 80);\n\n _defineProperty(this, \"incompatibleTokens\", ['a', 'b', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'BBBBB':\n return match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n\n case 'BBBB':\n default:\n return match.dayPeriod(dateString, {\n width: 'wide',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'abbreviated',\n context: 'formatting'\n }) || match.dayPeriod(dateString, {\n width: 'narrow',\n context: 'formatting'\n });\n }\n }\n\n set(date, _flags, value) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class Hour1to12Parser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 70);\n\n _defineProperty(this, \"incompatibleTokens\", ['H', 'K', 'k', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'h':\n return parseNumericPattern(numericPatterns.hour12h, dateString);\n\n case 'ho':\n return match.ordinalNumber(dateString, {\n unit: 'hour'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 12;\n }\n\n set(date, _flags, value) {\n var isPM = date.getUTCHours() >= 12;\n\n if (isPM && value < 12) {\n date.setUTCHours(value + 12, 0, 0, 0);\n } else if (!isPM && value === 12) {\n date.setUTCHours(0, 0, 0, 0);\n } else {\n date.setUTCHours(value, 0, 0, 0);\n }\n\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class Hour0to23Parser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 70);\n\n _defineProperty(this, \"incompatibleTokens\", ['a', 'b', 'h', 'K', 'k', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'H':\n return parseNumericPattern(numericPatterns.hour23h, dateString);\n\n case 'Ho':\n return match.ordinalNumber(dateString, {\n unit: 'hour'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 23;\n }\n\n set(date, _flags, value) {\n date.setUTCHours(value, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class Hour0To11Parser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 70);\n\n _defineProperty(this, \"incompatibleTokens\", ['h', 'H', 'k', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'K':\n return parseNumericPattern(numericPatterns.hour11h, dateString);\n\n case 'Ko':\n return match.ordinalNumber(dateString, {\n unit: 'hour'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 11;\n }\n\n set(date, _flags, value) {\n var isPM = date.getUTCHours() >= 12;\n\n if (isPM && value < 12) {\n date.setUTCHours(value + 12, 0, 0, 0);\n } else {\n date.setUTCHours(value, 0, 0, 0);\n }\n\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class Hour1To24Parser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 70);\n\n _defineProperty(this, \"incompatibleTokens\", ['a', 'b', 'h', 'H', 'K', 't', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'k':\n return parseNumericPattern(numericPatterns.hour24h, dateString);\n\n case 'ko':\n return match.ordinalNumber(dateString, {\n unit: 'hour'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 1 && value <= 24;\n }\n\n set(date, _flags, value) {\n var hours = value <= 24 ? value % 24 : value;\n date.setUTCHours(hours, 0, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class MinuteParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 60);\n\n _defineProperty(this, \"incompatibleTokens\", ['t', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 'm':\n return parseNumericPattern(numericPatterns.minute, dateString);\n\n case 'mo':\n return match.ordinalNumber(dateString, {\n unit: 'minute'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 59;\n }\n\n set(date, _flags, value) {\n date.setUTCMinutes(value, 0, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { numericPatterns } from \"../constants.js\";\nimport { parseNumericPattern, parseNDigits } from \"../utils.js\";\nexport class SecondParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 50);\n\n _defineProperty(this, \"incompatibleTokens\", ['t', 'T']);\n }\n\n parse(dateString, token, match) {\n switch (token) {\n case 's':\n return parseNumericPattern(numericPatterns.second, dateString);\n\n case 'so':\n return match.ordinalNumber(dateString, {\n unit: 'second'\n });\n\n default:\n return parseNDigits(token.length, dateString);\n }\n }\n\n validate(_date, value) {\n return value >= 0 && value <= 59;\n }\n\n set(date, _flags, value) {\n date.setUTCSeconds(value, 0);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { mapValue, parseNDigits } from \"../utils.js\";\nexport class FractionOfSecondParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 30);\n\n _defineProperty(this, \"incompatibleTokens\", ['t', 'T']);\n }\n\n parse(dateString, token) {\n var valueCallback = function (value) {\n return Math.floor(value * Math.pow(10, -token.length + 3));\n };\n\n return mapValue(parseNDigits(token.length, dateString), valueCallback);\n }\n\n set(date, _flags, value) {\n date.setUTCMilliseconds(value);\n return date;\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { timezonePatterns } from \"../constants.js\";\nimport { parseTimezonePattern } from \"../utils.js\"; // Timezone (ISO-8601. +00:00 is `'Z'`)\n\nexport class ISOTimezoneWithZParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 10);\n\n _defineProperty(this, \"incompatibleTokens\", ['t', 'T', 'x']);\n }\n\n parse(dateString, token) {\n switch (token) {\n case 'X':\n return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString);\n\n case 'XX':\n return parseTimezonePattern(timezonePatterns.basic, dateString);\n\n case 'XXXX':\n return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString);\n\n case 'XXXXX':\n return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString);\n\n case 'XXX':\n default:\n return parseTimezonePattern(timezonePatterns.extended, dateString);\n }\n }\n\n set(date, flags, value) {\n if (flags.timestampIsSet) {\n return date;\n }\n\n return new Date(date.getTime() - value);\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { timezonePatterns } from \"../constants.js\";\nimport { parseTimezonePattern } from \"../utils.js\"; // Timezone (ISO-8601)\n\nexport class ISOTimezoneParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 10);\n\n _defineProperty(this, \"incompatibleTokens\", ['t', 'T', 'X']);\n }\n\n parse(dateString, token) {\n switch (token) {\n case 'x':\n return parseTimezonePattern(timezonePatterns.basicOptionalMinutes, dateString);\n\n case 'xx':\n return parseTimezonePattern(timezonePatterns.basic, dateString);\n\n case 'xxxx':\n return parseTimezonePattern(timezonePatterns.basicOptionalSeconds, dateString);\n\n case 'xxxxx':\n return parseTimezonePattern(timezonePatterns.extendedOptionalSeconds, dateString);\n\n case 'xxx':\n default:\n return parseTimezonePattern(timezonePatterns.extended, dateString);\n }\n }\n\n set(date, flags, value) {\n if (flags.timestampIsSet) {\n return date;\n }\n\n return new Date(date.getTime() - value);\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseAnyDigitsSigned } from \"../utils.js\";\nexport class TimestampSecondsParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 40);\n\n _defineProperty(this, \"incompatibleTokens\", '*');\n }\n\n parse(dateString) {\n return parseAnyDigitsSigned(dateString);\n }\n\n set(_date, _flags, value) {\n return [new Date(value * 1000), {\n timestampIsSet: true\n }];\n }\n\n}","function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { Parser } from \"../Parser.js\";\nimport { parseAnyDigitsSigned } from \"../utils.js\";\nexport class TimestampMillisecondsParser extends Parser {\n constructor() {\n super(...arguments);\n\n _defineProperty(this, \"priority\", 20);\n\n _defineProperty(this, \"incompatibleTokens\", '*');\n }\n\n parse(dateString) {\n return parseAnyDigitsSigned(dateString);\n }\n\n set(_date, _flags, value) {\n return [new Date(value), {\n timestampIsSet: true\n }];\n }\n\n}","import { EraParser } from \"./EraParser.js\";\nimport { YearParser } from \"./YearParser.js\";\nimport { LocalWeekYearParser } from \"./LocalWeekYearParser.js\";\nimport { ISOWeekYearParser } from \"./ISOWeekYearParser.js\";\nimport { ExtendedYearParser } from \"./ExtendedYearParser.js\";\nimport { QuarterParser } from \"./QuarterParser.js\";\nimport { StandAloneQuarterParser } from \"./StandAloneQuarterParser.js\";\nimport { MonthParser } from \"./MonthParser.js\";\nimport { StandAloneMonthParser } from \"./StandAloneMonthParser.js\";\nimport { LocalWeekParser } from \"./LocalWeekParser.js\";\nimport { ISOWeekParser } from \"./ISOWeekParser.js\";\nimport { DateParser } from \"./DateParser.js\";\nimport { DayOfYearParser } from \"./DayOfYearParser.js\";\nimport { DayParser } from \"./DayParser.js\";\nimport { LocalDayParser } from \"./LocalDayParser.js\";\nimport { StandAloneLocalDayParser } from \"./StandAloneLocalDayParser.js\";\nimport { ISODayParser } from \"./ISODayParser.js\";\nimport { AMPMParser } from \"./AMPMParser.js\";\nimport { AMPMMidnightParser } from \"./AMPMMidnightParser.js\";\nimport { DayPeriodParser } from \"./DayPeriodParser.js\";\nimport { Hour1to12Parser } from \"./Hour1to12Parser.js\";\nimport { Hour0to23Parser } from \"./Hour0to23Parser.js\";\nimport { Hour0To11Parser } from \"./Hour0To11Parser.js\";\nimport { Hour1To24Parser } from \"./Hour1To24Parser.js\";\nimport { MinuteParser } from \"./MinuteParser.js\";\nimport { SecondParser } from \"./SecondParser.js\";\nimport { FractionOfSecondParser } from \"./FractionOfSecondParser.js\";\nimport { ISOTimezoneWithZParser } from \"./ISOTimezoneWithZParser.js\";\nimport { ISOTimezoneParser } from \"./ISOTimezoneParser.js\";\nimport { TimestampSecondsParser } from \"./TimestampSecondsParser.js\";\nimport { TimestampMillisecondsParser } from \"./TimestampMillisecondsParser.js\";\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O* | Timezone (GMT) |\n * | p | | P | |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z* | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `parse` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n */\n\nexport var parsers = {\n G: new EraParser(),\n y: new YearParser(),\n Y: new LocalWeekYearParser(),\n R: new ISOWeekYearParser(),\n u: new ExtendedYearParser(),\n Q: new QuarterParser(),\n q: new StandAloneQuarterParser(),\n M: new MonthParser(),\n L: new StandAloneMonthParser(),\n w: new LocalWeekParser(),\n I: new ISOWeekParser(),\n d: new DateParser(),\n D: new DayOfYearParser(),\n E: new DayParser(),\n e: new LocalDayParser(),\n c: new StandAloneLocalDayParser(),\n i: new ISODayParser(),\n a: new AMPMParser(),\n b: new AMPMMidnightParser(),\n B: new DayPeriodParser(),\n h: new Hour1to12Parser(),\n H: new Hour0to23Parser(),\n K: new Hour0To11Parser(),\n k: new Hour1To24Parser(),\n m: new MinuteParser(),\n s: new SecondParser(),\n S: new FractionOfSecondParser(),\n X: new ISOTimezoneWithZParser(),\n x: new ISOTimezoneParser(),\n t: new TimestampSecondsParser(),\n T: new TimestampMillisecondsParser()\n};","import defaultLocale from \"../_lib/defaultLocale/index.js\";\nimport subMilliseconds from \"../subMilliseconds/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport assign from \"../_lib/assign/index.js\";\nimport longFormatters from \"../_lib/format/longFormatters/index.js\";\nimport getTimezoneOffsetInMilliseconds from \"../_lib/getTimezoneOffsetInMilliseconds/index.js\";\nimport { isProtectedDayOfYearToken, isProtectedWeekYearToken, throwProtectedError } from \"../_lib/protectedTokens/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { DateToSystemTimezoneSetter } from \"./_lib/Setter.js\";\nimport { parsers } from \"./_lib/parsers/index.js\";\nimport { getDefaultOptions } from \"../_lib/defaultOptions/index.js\"; // This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\n\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g; // This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\n\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g;\nvar escapedStringRegExp = /^'([^]*?)'?$/;\nvar doubleQuoteRegExp = /''/g;\nvar notWhitespaceRegExp = /\\S/;\nvar unescapedLatinCharacterRegExp = /[a-zA-Z]/;\n/**\n * @name parse\n * @category Common Helpers\n * @summary Parse the date.\n *\n * @description\n * Return the date parsed from string using the given format string.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * The characters in the format string wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n *\n * Format of the format string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 5 below the table).\n *\n * Not all tokens are compatible. Combinations that don't make sense or could lead to bugs are prohibited\n * and will throw `RangeError`. For example usage of 24-hour format token with AM/PM token will throw an exception:\n *\n * ```javascript\n * parse('23 AM', 'HH a', new Date())\n * //=> RangeError: The format string mustn't contain `HH` and `a` at the same time\n * ```\n *\n * See the compatibility table: https://docs.google.com/spreadsheets/d/e/2PACX-1vQOPU3xUhplll6dyoMmVUXHKl_8CRDs6_ueLmex3SoqwhuolkuN3O05l4rqx5h1dKX8eb46Ul-CCSrq/pubhtml?gid=0&single=true\n *\n * Accepted format string patterns:\n * | Unit |Prior| Pattern | Result examples | Notes |\n * |---------------------------------|-----|---------|-----------------------------------|-------|\n * | Era | 140 | G..GGG | AD, BC | |\n * | | | GGGG | Anno Domini, Before Christ | 2 |\n * | | | GGGGG | A, B | |\n * | Calendar year | 130 | y | 44, 1, 1900, 2017, 9999 | 4 |\n * | | | yo | 44th, 1st, 1900th, 9999999th | 4,5 |\n * | | | yy | 44, 01, 00, 17 | 4 |\n * | | | yyy | 044, 001, 123, 999 | 4 |\n * | | | yyyy | 0044, 0001, 1900, 2017 | 4 |\n * | | | yyyyy | ... | 2,4 |\n * | Local week-numbering year | 130 | Y | 44, 1, 1900, 2017, 9000 | 4 |\n * | | | Yo | 44th, 1st, 1900th, 9999999th | 4,5 |\n * | | | YY | 44, 01, 00, 17 | 4,6 |\n * | | | YYY | 044, 001, 123, 999 | 4 |\n * | | | YYYY | 0044, 0001, 1900, 2017 | 4,6 |\n * | | | YYYYY | ... | 2,4 |\n * | ISO week-numbering year | 130 | R | -43, 1, 1900, 2017, 9999, -9999 | 4,5 |\n * | | | RR | -43, 01, 00, 17 | 4,5 |\n * | | | RRR | -043, 001, 123, 999, -999 | 4,5 |\n * | | | RRRR | -0043, 0001, 2017, 9999, -9999 | 4,5 |\n * | | | RRRRR | ... | 2,4,5 |\n * | Extended year | 130 | u | -43, 1, 1900, 2017, 9999, -999 | 4 |\n * | | | uu | -43, 01, 99, -99 | 4 |\n * | | | uuu | -043, 001, 123, 999, -999 | 4 |\n * | | | uuuu | -0043, 0001, 2017, 9999, -9999 | 4 |\n * | | | uuuuu | ... | 2,4 |\n * | Quarter (formatting) | 120 | Q | 1, 2, 3, 4 | |\n * | | | Qo | 1st, 2nd, 3rd, 4th | 5 |\n * | | | QQ | 01, 02, 03, 04 | |\n * | | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | 120 | q | 1, 2, 3, 4 | |\n * | | | qo | 1st, 2nd, 3rd, 4th | 5 |\n * | | | qq | 01, 02, 03, 04 | |\n * | | | qqq | Q1, Q2, Q3, Q4 | |\n * | | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | | qqqqq | 1, 2, 3, 4 | 3 |\n * | Month (formatting) | 110 | M | 1, 2, ..., 12 | |\n * | | | Mo | 1st, 2nd, ..., 12th | 5 |\n * | | | MM | 01, 02, ..., 12 | |\n * | | | MMM | Jan, Feb, ..., Dec | |\n * | | | MMMM | January, February, ..., December | 2 |\n * | | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | 110 | L | 1, 2, ..., 12 | |\n * | | | Lo | 1st, 2nd, ..., 12th | 5 |\n * | | | LL | 01, 02, ..., 12 | |\n * | | | LLL | Jan, Feb, ..., Dec | |\n * | | | LLLL | January, February, ..., December | 2 |\n * | | | LLLLL | J, F, ..., D | |\n * | Local week of year | 100 | w | 1, 2, ..., 53 | |\n * | | | wo | 1st, 2nd, ..., 53th | 5 |\n * | | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | 100 | I | 1, 2, ..., 53 | 5 |\n * | | | Io | 1st, 2nd, ..., 53th | 5 |\n * | | | II | 01, 02, ..., 53 | 5 |\n * | Day of month | 90 | d | 1, 2, ..., 31 | |\n * | | | do | 1st, 2nd, ..., 31st | 5 |\n * | | | dd | 01, 02, ..., 31 | |\n * | Day of year | 90 | D | 1, 2, ..., 365, 366 | 7 |\n * | | | Do | 1st, 2nd, ..., 365th, 366th | 5 |\n * | | | DD | 01, 02, ..., 365, 366 | 7 |\n * | | | DDD | 001, 002, ..., 365, 366 | |\n * | | | DDDD | ... | 2 |\n * | Day of week (formatting) | 90 | E..EEE | Mon, Tue, Wed, ..., Sun | |\n * | | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | | EEEEE | M, T, W, T, F, S, S | |\n * | | | EEEEEE | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | ISO day of week (formatting) | 90 | i | 1, 2, 3, ..., 7 | 5 |\n * | | | io | 1st, 2nd, ..., 7th | 5 |\n * | | | ii | 01, 02, ..., 07 | 5 |\n * | | | iii | Mon, Tue, Wed, ..., Sun | 5 |\n * | | | iiii | Monday, Tuesday, ..., Sunday | 2,5 |\n * | | | iiiii | M, T, W, T, F, S, S | 5 |\n * | | | iiiiii | Mo, Tu, We, Th, Fr, Sa, Su | 5 |\n * | Local day of week (formatting) | 90 | e | 2, 3, 4, ..., 1 | |\n * | | | eo | 2nd, 3rd, ..., 1st | 5 |\n * | | | ee | 02, 03, ..., 01 | |\n * | | | eee | Mon, Tue, Wed, ..., Sun | |\n * | | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | | eeeee | M, T, W, T, F, S, S | |\n * | | | eeeeee | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | Local day of week (stand-alone) | 90 | c | 2, 3, 4, ..., 1 | |\n * | | | co | 2nd, 3rd, ..., 1st | 5 |\n * | | | cc | 02, 03, ..., 01 | |\n * | | | ccc | Mon, Tue, Wed, ..., Sun | |\n * | | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | | ccccc | M, T, W, T, F, S, S | |\n * | | | cccccc | Mo, Tu, We, Th, Fr, Sa, Su | |\n * | AM, PM | 80 | a..aaa | AM, PM | |\n * | | | aaaa | a.m., p.m. | 2 |\n * | | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | 80 | b..bbb | AM, PM, noon, midnight | |\n * | | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | | bbbbb | a, p, n, mi | |\n * | Flexible day period | 80 | B..BBB | at night, in the morning, ... | |\n * | | | BBBB | at night, in the morning, ... | 2 |\n * | | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | 70 | h | 1, 2, ..., 11, 12 | |\n * | | | ho | 1st, 2nd, ..., 11th, 12th | 5 |\n * | | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | 70 | H | 0, 1, 2, ..., 23 | |\n * | | | Ho | 0th, 1st, 2nd, ..., 23rd | 5 |\n * | | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | 70 | K | 1, 2, ..., 11, 0 | |\n * | | | Ko | 1st, 2nd, ..., 11th, 0th | 5 |\n * | | | KK | 01, 02, ..., 11, 00 | |\n * | Hour [1-24] | 70 | k | 24, 1, 2, ..., 23 | |\n * | | | ko | 24th, 1st, 2nd, ..., 23rd | 5 |\n * | | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | 60 | m | 0, 1, ..., 59 | |\n * | | | mo | 0th, 1st, ..., 59th | 5 |\n * | | | mm | 00, 01, ..., 59 | |\n * | Second | 50 | s | 0, 1, ..., 59 | |\n * | | | so | 0th, 1st, ..., 59th | 5 |\n * | | | ss | 00, 01, ..., 59 | |\n * | Seconds timestamp | 40 | t | 512969520 | |\n * | | | tt | ... | 2 |\n * | Fraction of second | 30 | S | 0, 1, ..., 9 | |\n * | | | SS | 00, 01, ..., 99 | |\n * | | | SSS | 000, 001, ..., 999 | |\n * | | | SSSS | ... | 2 |\n * | Milliseconds timestamp | 20 | T | 512969520900 | |\n * | | | TT | ... | 2 |\n * | Timezone (ISO-8601 w/ Z) | 10 | X | -08, +0530, Z | |\n * | | | XX | -0800, +0530, Z | |\n * | | | XXX | -08:00, +05:30, Z | |\n * | | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | 10 | x | -08, +0530, +00 | |\n * | | | xx | -0800, +0530, +0000 | |\n * | | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Long localized date | NA | P | 05/29/1453 | 5,8 |\n * | | | PP | May 29, 1453 | |\n * | | | PPP | May 29th, 1453 | |\n * | | | PPPP | Sunday, May 29th, 1453 | 2,5,8 |\n * | Long localized time | NA | p | 12:00 AM | 5,8 |\n * | | | pp | 12:00:00 AM | |\n * | Combination of date and time | NA | Pp | 05/29/1453, 12:00 AM | |\n * | | | PPpp | May 29, 1453, 12:00:00 AM | |\n * | | | PPPpp | May 29th, 1453 at ... | |\n * | | | PPPPpp | Sunday, May 29th, 1453 at ... | 2,5,8 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular.\n * In `format` function, they will produce different result:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * `parse` will try to match both formatting and stand-alone units interchangably.\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table:\n * - for numerical units (`yyyyyyyy`) `parse` will try to match a number\n * as wide as the sequence\n * - for text units (`MMMMMMMM`) `parse` will try to match the widest variation of the unit.\n * These variations are marked with \"2\" in the last column of the table.\n *\n * 3. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 4. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` will try to guess the century of two digit year by proximity with `referenceDate`:\n *\n * `parse('50', 'yy', new Date(2018, 0, 1)) //=> Sat Jan 01 2050 00:00:00`\n *\n * `parse('75', 'yy', new Date(2018, 0, 1)) //=> Wed Jan 01 1975 00:00:00`\n *\n * while `uu` will just assign the year as is:\n *\n * `parse('50', 'uu', new Date(2018, 0, 1)) //=> Sat Jan 01 0050 00:00:00`\n *\n * `parse('75', 'uu', new Date(2018, 0, 1)) //=> Tue Jan 01 0075 00:00:00`\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [setISOWeekYear]{@link https://date-fns.org/docs/setISOWeekYear}\n * and [setWeekYear]{@link https://date-fns.org/docs/setWeekYear}).\n *\n * 5. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 6. `YY` and `YYYY` tokens represent week-numbering years but they are often confused with years.\n * You should enable `options.useAdditionalWeekYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 7. `D` and `DD` tokens represent days of the year but they are ofthen confused with days of the month.\n * You should enable `options.useAdditionalDayOfYearTokens` to use them. See: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n *\n * 8. `P+` tokens do not have a defined priority since they are merely aliases to other tokens based\n * on the given locale.\n *\n * using `en-US` locale: `P` => `MM/dd/yyyy`\n * using `en-US` locale: `p` => `hh:mm a`\n * using `pt-BR` locale: `P` => `dd/MM/yyyy`\n * using `pt-BR` locale: `p` => `HH:mm`\n *\n * Values will be assigned to the date in the descending order of its unit's priority.\n * Units of an equal priority overwrite each other in the order of appearance.\n *\n * If no values of higher priority are parsed (e.g. when parsing string 'January 1st' without a year),\n * the values will be taken from 3rd argument `referenceDate` which works as a context of parsing.\n *\n * `referenceDate` must be passed for correct work of the function.\n * If you're not sure which `referenceDate` to supply, create a new instance of Date:\n * `parse('02/11/2014', 'MM/dd/yyyy', new Date())`\n * In this case parsing will be done in the context of the current date.\n * If `referenceDate` is `Invalid Date` or a value not convertible to valid `Date`,\n * then `Invalid Date` will be returned.\n *\n * The result may vary by locale.\n *\n * If `formatString` matches with `dateString` but does not provides tokens, `referenceDate` will be returned.\n *\n * If parsing failed, `Invalid Date` will be returned.\n * Invalid Date is a Date, whose time value is NaN.\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * @param {String} dateString - the string to parse\n * @param {String} formatString - the string of tokens\n * @param {Date|Number} referenceDate - defines values missing from the parsed dateString\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @param {Boolean} [options.useAdditionalWeekYearTokens=false] - if true, allows usage of the week-numbering year tokens `YY` and `YYYY`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @param {Boolean} [options.useAdditionalDayOfYearTokens=false] - if true, allows usage of the day of year tokens `D` and `DD`;\n * see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @returns {Date} the parsed date\n * @throws {TypeError} 3 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} `options.locale` must contain `match` property\n * @throws {RangeError} use `yyyy` instead of `YYYY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `yy` instead of `YY` for formatting years using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `d` instead of `D` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} use `dd` instead of `DD` for formatting days of the month using [format provided] to the input [input provided]; see: https://github.com/date-fns/date-fns/blob/master/docs/unicodeTokens.md\n * @throws {RangeError} format string contains an unescaped latin alphabet character\n *\n * @example\n * // Parse 11 February 2014 from middle-endian format:\n * var result = parse('02/11/2014', 'MM/dd/yyyy', new Date())\n * //=> Tue Feb 11 2014 00:00:00\n *\n * @example\n * // Parse 28th of February in Esperanto locale in the context of 2010 year:\n * import eo from 'date-fns/locale/eo'\n * var result = parse('28-a de februaro', \"do 'de' MMMM\", new Date(2010, 0, 1), {\n * locale: eo\n * })\n * //=> Sun Feb 28 2010 00:00:00\n */\n\nexport default function parse(dirtyDateString, dirtyFormatString, dirtyReferenceDate, options) {\n var _ref, _options$locale, _ref2, _ref3, _ref4, _options$firstWeekCon, _options$locale2, _options$locale2$opti, _defaultOptions$local, _defaultOptions$local2, _ref5, _ref6, _ref7, _options$weekStartsOn, _options$locale3, _options$locale3$opti, _defaultOptions$local3, _defaultOptions$local4;\n\n requiredArgs(3, arguments);\n var dateString = String(dirtyDateString);\n var formatString = String(dirtyFormatString);\n var defaultOptions = getDefaultOptions();\n var locale = (_ref = (_options$locale = options === null || options === void 0 ? void 0 : options.locale) !== null && _options$locale !== void 0 ? _options$locale : defaultOptions.locale) !== null && _ref !== void 0 ? _ref : defaultLocale;\n\n if (!locale.match) {\n throw new RangeError('locale must contain match property');\n }\n\n var firstWeekContainsDate = toInteger((_ref2 = (_ref3 = (_ref4 = (_options$firstWeekCon = options === null || options === void 0 ? void 0 : options.firstWeekContainsDate) !== null && _options$firstWeekCon !== void 0 ? _options$firstWeekCon : options === null || options === void 0 ? void 0 : (_options$locale2 = options.locale) === null || _options$locale2 === void 0 ? void 0 : (_options$locale2$opti = _options$locale2.options) === null || _options$locale2$opti === void 0 ? void 0 : _options$locale2$opti.firstWeekContainsDate) !== null && _ref4 !== void 0 ? _ref4 : defaultOptions.firstWeekContainsDate) !== null && _ref3 !== void 0 ? _ref3 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.firstWeekContainsDate) !== null && _ref2 !== void 0 ? _ref2 : 1); // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively');\n }\n\n var weekStartsOn = toInteger((_ref5 = (_ref6 = (_ref7 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale3 = options.locale) === null || _options$locale3 === void 0 ? void 0 : (_options$locale3$opti = _options$locale3.options) === null || _options$locale3$opti === void 0 ? void 0 : _options$locale3$opti.weekStartsOn) !== null && _ref7 !== void 0 ? _ref7 : defaultOptions.weekStartsOn) !== null && _ref6 !== void 0 ? _ref6 : (_defaultOptions$local3 = defaultOptions.locale) === null || _defaultOptions$local3 === void 0 ? void 0 : (_defaultOptions$local4 = _defaultOptions$local3.options) === null || _defaultOptions$local4 === void 0 ? void 0 : _defaultOptions$local4.weekStartsOn) !== null && _ref5 !== void 0 ? _ref5 : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n if (formatString === '') {\n if (dateString === '') {\n return toDate(dirtyReferenceDate);\n } else {\n return new Date(NaN);\n }\n }\n\n var subFnOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale\n }; // If timezone isn't specified, it will be set to the system timezone\n\n var setters = [new DateToSystemTimezoneSetter()];\n var tokens = formatString.match(longFormattingTokensRegExp).map(function (substring) {\n var firstCharacter = substring[0];\n\n if (firstCharacter in longFormatters) {\n var longFormatter = longFormatters[firstCharacter];\n return longFormatter(substring, locale.formatLong);\n }\n\n return substring;\n }).join('').match(formattingTokensRegExp);\n var usedTokens = [];\n\n var _loop = function (_token) {\n if (!(options !== null && options !== void 0 && options.useAdditionalWeekYearTokens) && isProtectedWeekYearToken(_token)) {\n throwProtectedError(_token, formatString, dirtyDateString);\n }\n\n if (!(options !== null && options !== void 0 && options.useAdditionalDayOfYearTokens) && isProtectedDayOfYearToken(_token)) {\n throwProtectedError(_token, formatString, dirtyDateString);\n }\n\n var firstCharacter = _token[0];\n var parser = parsers[firstCharacter];\n\n if (parser) {\n var incompatibleTokens = parser.incompatibleTokens;\n\n if (Array.isArray(incompatibleTokens)) {\n var incompatibleToken = usedTokens.find(function (usedToken) {\n return incompatibleTokens.includes(usedToken.token) || usedToken.token === firstCharacter;\n });\n\n if (incompatibleToken) {\n throw new RangeError(\"The format string mustn't contain `\".concat(incompatibleToken.fullToken, \"` and `\").concat(_token, \"` at the same time\"));\n }\n } else if (parser.incompatibleTokens === '*' && usedTokens.length > 0) {\n throw new RangeError(\"The format string mustn't contain `\".concat(_token, \"` and any other token at the same time\"));\n }\n\n usedTokens.push({\n token: firstCharacter,\n fullToken: _token\n });\n var parseResult = parser.run(dateString, _token, locale.match, subFnOptions);\n\n if (!parseResult) {\n token = _token;\n return {\n v: new Date(NaN)\n };\n }\n\n setters.push(parseResult.setter);\n dateString = parseResult.rest;\n } else {\n if (firstCharacter.match(unescapedLatinCharacterRegExp)) {\n throw new RangeError('Format string contains an unescaped latin alphabet character `' + firstCharacter + '`');\n } // Replace two single quote characters with one single quote character\n\n\n if (_token === \"''\") {\n _token = \"'\";\n } else if (firstCharacter === \"'\") {\n _token = cleanEscapedString(_token);\n } // Cut token from string, or, if string doesn't match the token, return Invalid Date\n\n\n if (dateString.indexOf(_token) === 0) {\n dateString = dateString.slice(_token.length);\n } else {\n token = _token;\n return {\n v: new Date(NaN)\n };\n }\n }\n\n token = _token;\n };\n\n for (var token of tokens) {\n var _ret = _loop(token);\n\n if (typeof _ret === \"object\") return _ret.v;\n } // Check if the remaining input contains something other than whitespace\n\n\n if (dateString.length > 0 && notWhitespaceRegExp.test(dateString)) {\n return new Date(NaN);\n }\n\n var uniquePrioritySetters = setters.map(function (setter) {\n return setter.priority;\n }).sort(function (a, b) {\n return b - a;\n }).filter(function (priority, index, array) {\n return array.indexOf(priority) === index;\n }).map(function (priority) {\n return setters.filter(function (setter) {\n return setter.priority === priority;\n }).sort(function (a, b) {\n return b.subPriority - a.subPriority;\n });\n }).map(function (setterArray) {\n return setterArray[0];\n });\n var date = toDate(dirtyReferenceDate);\n\n if (isNaN(date.getTime())) {\n return new Date(NaN);\n } // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n\n\n var utcDate = subMilliseconds(date, getTimezoneOffsetInMilliseconds(date));\n var flags = {};\n\n for (var setter of uniquePrioritySetters) {\n if (!setter.validate(utcDate, subFnOptions)) {\n return new Date(NaN);\n }\n\n var result = setter.set(utcDate, flags, subFnOptions); // Result is tuple (date, flags)\n\n if (Array.isArray(result)) {\n utcDate = result[0];\n assign(flags, result[1]); // Result is date\n } else {\n utcDate = result;\n }\n }\n\n return utcDate;\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\");\n}","import { millisecondsInHour, millisecondsInMinute } from \"../constants/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name parseISO\n * @category Common Helpers\n * @summary Parse ISO string\n *\n * @description\n * Parse the given string in ISO 8601 format and return an instance of Date.\n *\n * Function accepts complete ISO 8601 formats as well as partial implementations.\n * ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n *\n * If the argument isn't a string, the function cannot parse the string or\n * the values are invalid, it returns Invalid Date.\n *\n * @param {String} argument - the value to convert\n * @param {Object} [options] - an object with options.\n * @param {0|1|2} [options.additionalDigits=2] - the additional number of digits in the extended year format\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // Convert string '2014-02-11T11:30:30' to date:\n * const result = parseISO('2014-02-11T11:30:30')\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert string '+02014101' to date,\n * // if the additional number of digits in the extended year format is 1:\n * const result = parseISO('+02014101', { additionalDigits: 1 })\n * //=> Fri Apr 11 2014 00:00:00\n */\n\nexport default function parseISO(argument, options) {\n var _options$additionalDi;\n\n requiredArgs(1, arguments);\n var additionalDigits = toInteger((_options$additionalDi = options === null || options === void 0 ? void 0 : options.additionalDigits) !== null && _options$additionalDi !== void 0 ? _options$additionalDi : 2);\n\n if (additionalDigits !== 2 && additionalDigits !== 1 && additionalDigits !== 0) {\n throw new RangeError('additionalDigits must be 0, 1 or 2');\n }\n\n if (!(typeof argument === 'string' || Object.prototype.toString.call(argument) === '[object String]')) {\n return new Date(NaN);\n }\n\n var dateStrings = splitDateString(argument);\n var date;\n\n if (dateStrings.date) {\n var parseYearResult = parseYear(dateStrings.date, additionalDigits);\n date = parseDate(parseYearResult.restDateString, parseYearResult.year);\n }\n\n if (!date || isNaN(date.getTime())) {\n return new Date(NaN);\n }\n\n var timestamp = date.getTime();\n var time = 0;\n var offset;\n\n if (dateStrings.time) {\n time = parseTime(dateStrings.time);\n\n if (isNaN(time)) {\n return new Date(NaN);\n }\n }\n\n if (dateStrings.timezone) {\n offset = parseTimezone(dateStrings.timezone);\n\n if (isNaN(offset)) {\n return new Date(NaN);\n }\n } else {\n var dirtyDate = new Date(timestamp + time); // js parsed string assuming it's in UTC timezone\n // but we need it to be parsed in our timezone\n // so we use utc values to build date in our timezone.\n // Year values from 0 to 99 map to the years 1900 to 1999\n // so set year explicitly with setFullYear.\n\n var result = new Date(0);\n result.setFullYear(dirtyDate.getUTCFullYear(), dirtyDate.getUTCMonth(), dirtyDate.getUTCDate());\n result.setHours(dirtyDate.getUTCHours(), dirtyDate.getUTCMinutes(), dirtyDate.getUTCSeconds(), dirtyDate.getUTCMilliseconds());\n return result;\n }\n\n return new Date(timestamp + time + offset);\n}\nvar patterns = {\n dateTimeDelimiter: /[T ]/,\n timeZoneDelimiter: /[Z ]/i,\n timezone: /([Z+-].*)$/\n};\nvar dateRegex = /^-?(?:(\\d{3})|(\\d{2})(?:-?(\\d{2}))?|W(\\d{2})(?:-?(\\d{1}))?|)$/;\nvar timeRegex = /^(\\d{2}(?:[.,]\\d*)?)(?::?(\\d{2}(?:[.,]\\d*)?))?(?::?(\\d{2}(?:[.,]\\d*)?))?$/;\nvar timezoneRegex = /^([+-])(\\d{2})(?::?(\\d{2}))?$/;\n\nfunction splitDateString(dateString) {\n var dateStrings = {};\n var array = dateString.split(patterns.dateTimeDelimiter);\n var timeString; // The regex match should only return at maximum two array elements.\n // [date], [time], or [date, time].\n\n if (array.length > 2) {\n return dateStrings;\n }\n\n if (/:/.test(array[0])) {\n timeString = array[0];\n } else {\n dateStrings.date = array[0];\n timeString = array[1];\n\n if (patterns.timeZoneDelimiter.test(dateStrings.date)) {\n dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0];\n timeString = dateString.substr(dateStrings.date.length, dateString.length);\n }\n }\n\n if (timeString) {\n var token = patterns.timezone.exec(timeString);\n\n if (token) {\n dateStrings.time = timeString.replace(token[1], '');\n dateStrings.timezone = token[1];\n } else {\n dateStrings.time = timeString;\n }\n }\n\n return dateStrings;\n}\n\nfunction parseYear(dateString, additionalDigits) {\n var regex = new RegExp('^(?:(\\\\d{4}|[+-]\\\\d{' + (4 + additionalDigits) + '})|(\\\\d{2}|[+-]\\\\d{' + (2 + additionalDigits) + '})$)');\n var captures = dateString.match(regex); // Invalid ISO-formatted year\n\n if (!captures) return {\n year: NaN,\n restDateString: ''\n };\n var year = captures[1] ? parseInt(captures[1]) : null;\n var century = captures[2] ? parseInt(captures[2]) : null; // either year or century is null, not both\n\n return {\n year: century === null ? year : century * 100,\n restDateString: dateString.slice((captures[1] || captures[2]).length)\n };\n}\n\nfunction parseDate(dateString, year) {\n // Invalid ISO-formatted year\n if (year === null) return new Date(NaN);\n var captures = dateString.match(dateRegex); // Invalid ISO-formatted string\n\n if (!captures) return new Date(NaN);\n var isWeekDate = !!captures[4];\n var dayOfYear = parseDateUnit(captures[1]);\n var month = parseDateUnit(captures[2]) - 1;\n var day = parseDateUnit(captures[3]);\n var week = parseDateUnit(captures[4]);\n var dayOfWeek = parseDateUnit(captures[5]) - 1;\n\n if (isWeekDate) {\n if (!validateWeekDate(year, week, dayOfWeek)) {\n return new Date(NaN);\n }\n\n return dayOfISOWeekYear(year, week, dayOfWeek);\n } else {\n var date = new Date(0);\n\n if (!validateDate(year, month, day) || !validateDayOfYearDate(year, dayOfYear)) {\n return new Date(NaN);\n }\n\n date.setUTCFullYear(year, month, Math.max(dayOfYear, day));\n return date;\n }\n}\n\nfunction parseDateUnit(value) {\n return value ? parseInt(value) : 1;\n}\n\nfunction parseTime(timeString) {\n var captures = timeString.match(timeRegex);\n if (!captures) return NaN; // Invalid ISO-formatted time\n\n var hours = parseTimeUnit(captures[1]);\n var minutes = parseTimeUnit(captures[2]);\n var seconds = parseTimeUnit(captures[3]);\n\n if (!validateTime(hours, minutes, seconds)) {\n return NaN;\n }\n\n return hours * millisecondsInHour + minutes * millisecondsInMinute + seconds * 1000;\n}\n\nfunction parseTimeUnit(value) {\n return value && parseFloat(value.replace(',', '.')) || 0;\n}\n\nfunction parseTimezone(timezoneString) {\n if (timezoneString === 'Z') return 0;\n var captures = timezoneString.match(timezoneRegex);\n if (!captures) return 0;\n var sign = captures[1] === '+' ? -1 : 1;\n var hours = parseInt(captures[2]);\n var minutes = captures[3] && parseInt(captures[3]) || 0;\n\n if (!validateTimezone(hours, minutes)) {\n return NaN;\n }\n\n return sign * (hours * millisecondsInHour + minutes * millisecondsInMinute);\n}\n\nfunction dayOfISOWeekYear(isoWeekYear, week, day) {\n var date = new Date(0);\n date.setUTCFullYear(isoWeekYear, 0, 4);\n var fourthOfJanuaryDay = date.getUTCDay() || 7;\n var diff = (week - 1) * 7 + day + 1 - fourthOfJanuaryDay;\n date.setUTCDate(date.getUTCDate() + diff);\n return date;\n} // Validation functions\n// February is null to handle the leap year (using ||)\n\n\nvar daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || year % 4 === 0 && year % 100 !== 0;\n}\n\nfunction validateDate(year, month, date) {\n return month >= 0 && month <= 11 && date >= 1 && date <= (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28));\n}\n\nfunction validateDayOfYearDate(year, dayOfYear) {\n return dayOfYear >= 1 && dayOfYear <= (isLeapYearIndex(year) ? 366 : 365);\n}\n\nfunction validateWeekDate(_year, week, day) {\n return week >= 1 && week <= 53 && day >= 0 && day <= 6;\n}\n\nfunction validateTime(hours, minutes, seconds) {\n if (hours === 24) {\n return minutes === 0 && seconds === 0;\n }\n\n return seconds >= 0 && seconds < 60 && minutes >= 0 && minutes < 60 && hours >= 0 && hours < 25;\n}\n\nfunction validateTimezone(_hours, minutes) {\n return minutes >= 0 && minutes <= 59;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setHours\n * @category Hour Helpers\n * @summary Set the hours to the given date.\n *\n * @description\n * Set the hours to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} hours - the hours of the new date\n * @returns {Date} the new date with the hours set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 4 hours to 1 September 2014 11:30:00:\n * const result = setHours(new Date(2014, 8, 1, 11, 30), 4)\n * //=> Mon Sep 01 2014 04:30:00\n */\n\nexport default function setHours(dirtyDate, dirtyHours) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var hours = toInteger(dirtyHours);\n date.setHours(hours);\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setMinutes\n * @category Minute Helpers\n * @summary Set the minutes to the given date.\n *\n * @description\n * Set the minutes to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} minutes - the minutes of the new date\n * @returns {Date} the new date with the minutes set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 45 minutes to 1 September 2014 11:30:40:\n * const result = setMinutes(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:45:40\n */\n\nexport default function setMinutes(dirtyDate, dirtyMinutes) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var minutes = toInteger(dirtyMinutes);\n date.setMinutes(minutes);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in February 2000?\n * const result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\n\nexport default function getDaysInMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var year = date.getFullYear();\n var monthIndex = date.getMonth();\n var lastDayOfMonth = new Date(0);\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0);\n lastDayOfMonth.setHours(0, 0, 0, 0);\n return lastDayOfMonth.getDate();\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport getDaysInMonth from \"../getDaysInMonth/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setMonth\n * @category Month Helpers\n * @summary Set the month to the given date.\n *\n * @description\n * Set the month to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} month - the month of the new date\n * @returns {Date} the new date with the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set February to 1 September 2014:\n * const result = setMonth(new Date(2014, 8, 1), 1)\n * //=> Sat Feb 01 2014 00:00:00\n */\n\nexport default function setMonth(dirtyDate, dirtyMonth) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var month = toInteger(dirtyMonth);\n var year = date.getFullYear();\n var day = date.getDate();\n var dateWithDesiredMonth = new Date(0);\n dateWithDesiredMonth.setFullYear(year, month, 15);\n dateWithDesiredMonth.setHours(0, 0, 0, 0);\n var daysInMonth = getDaysInMonth(dateWithDesiredMonth); // Set the last day of the new month\n // if the original date was the last day of the longer month\n\n date.setMonth(month, Math.min(day, daysInMonth));\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport setMonth from \"../setMonth/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setQuarter\n * @category Quarter Helpers\n * @summary Set the year quarter to the given date.\n *\n * @description\n * Set the year quarter to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} quarter - the quarter of the new date\n * @returns {Date} the new date with the quarter set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 2nd quarter to 2 July 2014:\n * const result = setQuarter(new Date(2014, 6, 2), 2)\n * //=> Wed Apr 02 2014 00:00:00\n */\n\nexport default function setQuarter(dirtyDate, dirtyQuarter) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var quarter = toInteger(dirtyQuarter);\n var oldQuarter = Math.floor(date.getMonth() / 3) + 1;\n var diff = quarter - oldQuarter;\n return setMonth(date, date.getMonth() + diff * 3);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setSeconds\n * @category Second Helpers\n * @summary Set the seconds to the given date.\n *\n * @description\n * Set the seconds to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} seconds - the seconds of the new date\n * @returns {Date} the new date with the seconds set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 45 seconds to 1 September 2014 11:30:40:\n * const result = setSeconds(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:30:45\n */\n\nexport default function setSeconds(dirtyDate, dirtySeconds) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var seconds = toInteger(dirtySeconds);\n date.setSeconds(seconds);\n return date;\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name setYear\n * @category Year Helpers\n * @summary Set the year to the given date.\n *\n * @description\n * Set the year to the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} year - the year of the new date\n * @returns {Date} the new date with the year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set year 2013 to 1 September 2014:\n * const result = setYear(new Date(2014, 8, 1), 2013)\n * //=> Sun Sep 01 2013 00:00:00\n */\n\nexport default function setYear(dirtyDate, dirtyYear) {\n requiredArgs(2, arguments);\n var date = toDate(dirtyDate);\n var year = toInteger(dirtyYear); // Check if date is Invalid Date because Date.prototype.setFullYear ignores the value of Invalid Date\n\n if (isNaN(date.getTime())) {\n return new Date(NaN);\n }\n\n date.setFullYear(year);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * const result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\n\nexport default function startOfDay(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfMonth\n * @category Month Helpers\n * @summary Return the start of a month for the given date.\n *\n * @description\n * Return the start of a month for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a month for 2 September 2014 11:55:00:\n * const result = startOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function startOfMonth(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n date.setDate(1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfQuarter\n * @category Quarter Helpers\n * @summary Return the start of a year quarter for the given date.\n *\n * @description\n * Return the start of a year quarter for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a quarter\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a quarter for 2 September 2014 11:55:00:\n * const result = startOfQuarter(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Jul 01 2014 00:00:00\n */\n\nexport default function startOfQuarter(dirtyDate) {\n requiredArgs(1, arguments);\n var date = toDate(dirtyDate);\n var currentMonth = date.getMonth();\n var month = currentMonth - currentMonth % 3;\n date.setMonth(month, 1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport { getDefaultOptions } from \"../_lib/defaultOptions/index.js\";\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Date} the start of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * const result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function startOfWeek(dirtyDate, options) {\n var _ref, _ref2, _ref3, _options$weekStartsOn, _options$locale, _options$locale$optio, _defaultOptions$local, _defaultOptions$local2;\n\n requiredArgs(1, arguments);\n var defaultOptions = getDefaultOptions();\n var weekStartsOn = toInteger((_ref = (_ref2 = (_ref3 = (_options$weekStartsOn = options === null || options === void 0 ? void 0 : options.weekStartsOn) !== null && _options$weekStartsOn !== void 0 ? _options$weekStartsOn : options === null || options === void 0 ? void 0 : (_options$locale = options.locale) === null || _options$locale === void 0 ? void 0 : (_options$locale$optio = _options$locale.options) === null || _options$locale$optio === void 0 ? void 0 : _options$locale$optio.weekStartsOn) !== null && _ref3 !== void 0 ? _ref3 : defaultOptions.weekStartsOn) !== null && _ref2 !== void 0 ? _ref2 : (_defaultOptions$local = defaultOptions.locale) === null || _defaultOptions$local === void 0 ? void 0 : (_defaultOptions$local2 = _defaultOptions$local.options) === null || _defaultOptions$local2 === void 0 ? void 0 : _defaultOptions$local2.weekStartsOn) !== null && _ref !== void 0 ? _ref : 0); // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively');\n }\n\n var date = toDate(dirtyDate);\n var day = date.getDay();\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn;\n date.setDate(date.getDate() - diff);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import toDate from \"../toDate/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name startOfYear\n * @category Year Helpers\n * @summary Return the start of a year for the given date.\n *\n * @description\n * Return the start of a year for the given date.\n * The result will be in the local timezone.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a year for 2 September 2014 11:55:00:\n * const result = startOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Jan 01 2014 00:00:00\n */\n\nexport default function startOfYear(dirtyDate) {\n requiredArgs(1, arguments);\n var cleanDate = toDate(dirtyDate);\n var date = new Date(0);\n date.setFullYear(cleanDate.getFullYear(), 0, 1);\n date.setHours(0, 0, 0, 0);\n return date;\n}","import addDays from \"../addDays/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subDays\n * @category Day Helpers\n * @summary Subtract the specified number of days from the given date.\n *\n * @description\n * Subtract the specified number of days from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the days subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 10 days from 1 September 2014:\n * const result = subDays(new Date(2014, 8, 1), 10)\n * //=> Fri Aug 22 2014 00:00:00\n */\n\nexport default function subDays(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addDays(dirtyDate, -amount);\n}","import addHours from \"../addHours/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subHours\n * @category Hour Helpers\n * @summary Subtract the specified number of hours from the given date.\n *\n * @description\n * Subtract the specified number of hours from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of hours to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the hours subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 2 hours from 11 July 2014 01:00:00:\n * const result = subHours(new Date(2014, 6, 11, 1, 0), 2)\n * //=> Thu Jul 10 2014 23:00:00\n */\n\nexport default function subHours(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addHours(dirtyDate, -amount);\n}","import addMilliseconds from \"../addMilliseconds/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subMilliseconds\n * @category Millisecond Helpers\n * @summary Subtract the specified number of milliseconds from the given date.\n *\n * @description\n * Subtract the specified number of milliseconds from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the milliseconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:\n * const result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:29.250\n */\n\nexport default function subMilliseconds(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMilliseconds(dirtyDate, -amount);\n}","import addMinutes from \"../addMinutes/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\nimport toInteger from \"../_lib/toInteger/index.js\";\n/**\n * @name subMinutes\n * @category Minute Helpers\n * @summary Subtract the specified number of minutes from the given date.\n *\n * @description\n * Subtract the specified number of minutes from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of minutes to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the minutes subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 30 minutes from 10 July 2014 12:00:00:\n * const result = subMinutes(new Date(2014, 6, 10, 12, 0), 30)\n * //=> Thu Jul 10 2014 11:30:00\n */\n\nexport default function subMinutes(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMinutes(dirtyDate, -amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addMonths from \"../addMonths/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name subMonths\n * @category Month Helpers\n * @summary Subtract the specified number of months from the given date.\n *\n * @description\n * Subtract the specified number of months from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the months subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 months from 1 February 2015:\n * const result = subMonths(new Date(2015, 1, 1), 5)\n * //=> Mon Sep 01 2014 00:00:00\n */\n\nexport default function subMonths(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addMonths(dirtyDate, -amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addWeeks from \"../addWeeks/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name subWeeks\n * @category Week Helpers\n * @summary Subtract the specified number of weeks from the given date.\n *\n * @description\n * Subtract the specified number of weeks from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of weeks to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the weeks subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 4 weeks from 1 September 2014:\n * const result = subWeeks(new Date(2014, 8, 1), 4)\n * //=> Mon Aug 04 2014 00:00:00\n */\n\nexport default function subWeeks(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addWeeks(dirtyDate, -amount);\n}","import toInteger from \"../_lib/toInteger/index.js\";\nimport addYears from \"../addYears/index.js\";\nimport requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name subYears\n * @category Year Helpers\n * @summary Subtract the specified number of years from the given date.\n *\n * @description\n * Subtract the specified number of years from the given date.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be subtracted. Positive decimals will be rounded using `Math.floor`, decimals less than zero will be rounded using `Math.ceil`.\n * @returns {Date} the new date with the years subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 years from 1 September 2014:\n * const result = subYears(new Date(2014, 8, 1), 5)\n * //=> Tue Sep 01 2009 00:00:00\n */\n\nexport default function subYears(dirtyDate, dirtyAmount) {\n requiredArgs(2, arguments);\n var amount = toInteger(dirtyAmount);\n return addYears(dirtyDate, -amount);\n}","import requiredArgs from \"../_lib/requiredArgs/index.js\";\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * const result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * const result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\n\nexport default function toDate(argument) {\n requiredArgs(1, arguments);\n var argStr = Object.prototype.toString.call(argument); // Clone the date\n\n if (argument instanceof Date || typeof argument === 'object' && argStr === '[object Date]') {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime());\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument);\n } else {\n if ((typeof argument === 'string' || argStr === '[object String]') && typeof console !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn(\"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as date arguments. Please use `parseISO` to parse strings. See: https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#string-arguments\"); // eslint-disable-next-line no-console\n\n console.warn(new Error().stack);\n }\n\n return new Date(NaN);\n }\n}","'use strict';\nvar token = '%[a-f0-9]{2}';\nvar singleMatcher = new RegExp(token, 'gi');\nvar multiMatcher = new RegExp('(' + token + ')+', 'gi');\n\nfunction decodeComponents(components, split) {\n\ttry {\n\t\t// Try to decode the entire string first\n\t\treturn decodeURIComponent(components.join(''));\n\t} catch (err) {\n\t\t// Do nothing\n\t}\n\n\tif (components.length === 1) {\n\t\treturn components;\n\t}\n\n\tsplit = split || 1;\n\n\t// Split the array in 2 parts\n\tvar left = components.slice(0, split);\n\tvar right = components.slice(split);\n\n\treturn Array.prototype.concat.call([], decodeComponents(left), decodeComponents(right));\n}\n\nfunction decode(input) {\n\ttry {\n\t\treturn decodeURIComponent(input);\n\t} catch (err) {\n\t\tvar tokens = input.match(singleMatcher);\n\n\t\tfor (var i = 1; i < tokens.length; i++) {\n\t\t\tinput = decodeComponents(tokens, i).join('');\n\n\t\t\ttokens = input.match(singleMatcher);\n\t\t}\n\n\t\treturn input;\n\t}\n}\n\nfunction customDecodeURIComponent(input) {\n\t// Keep track of all the replacements and prefill the map with the `BOM`\n\tvar replaceMap = {\n\t\t'%FE%FF': '\\uFFFD\\uFFFD',\n\t\t'%FF%FE': '\\uFFFD\\uFFFD'\n\t};\n\n\tvar match = multiMatcher.exec(input);\n\twhile (match) {\n\t\ttry {\n\t\t\t// Decode as big chunks as possible\n\t\t\treplaceMap[match[0]] = decodeURIComponent(match[0]);\n\t\t} catch (err) {\n\t\t\tvar result = decode(match[0]);\n\n\t\t\tif (result !== match[0]) {\n\t\t\t\treplaceMap[match[0]] = result;\n\t\t\t}\n\t\t}\n\n\t\tmatch = multiMatcher.exec(input);\n\t}\n\n\t// Add `%C2` at the end of the map to make sure it does not replace the combinator before everything else\n\treplaceMap['%C2'] = '\\uFFFD';\n\n\tvar entries = Object.keys(replaceMap);\n\n\tfor (var i = 0; i < entries.length; i++) {\n\t\t// Replace all decoded components\n\t\tvar key = entries[i];\n\t\tinput = input.replace(new RegExp(key, 'g'), replaceMap[key]);\n\t}\n\n\treturn input;\n}\n\nmodule.exports = function (encodedURI) {\n\tif (typeof encodedURI !== 'string') {\n\t\tthrow new TypeError('Expected `encodedURI` to be of type `string`, got `' + typeof encodedURI + '`');\n\t}\n\n\ttry {\n\t\tencodedURI = encodedURI.replace(/\\+/g, ' ');\n\n\t\t// Try the built in decoder first\n\t\treturn decodeURIComponent(encodedURI);\n\t} catch (err) {\n\t\t// Fallback to a more advanced decoder\n\t\treturn customDecodeURIComponent(encodedURI);\n\t}\n};\n","!function(r,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?module.exports=e():\"function\"==typeof define&&define.amd?define(e):(r=r||self).Blowfish=e()}(this,function(){\"use strict\";function o(r,e){for(var t=0;t>>0}function E(r,e){return i(r^e)}function a(r,e){return i(r+e|0)}function B(r,e,t,n){return i(r<<24|e<<16|t<<8|n)}function c(r){return[r>>>24&255,r>>>16&255,r>>>8&255,255&r]}function e(r){return\"string\"==typeof r}function t(r){return\"object\"==typeof r&&\"byteLength\"in r}function b(r){return e(r)||t(r)}function _(e,t){var n=!1;return Object.keys(e).forEach(function(r){e[r]===t&&(n=!0)}),n}function A(r){if(e(r))return function(r){for(var e=new Uint8Array(4*r.length),t=0,n=0;n!==r.length;n++){var i=r.charCodeAt(n);if(i<128)e[t++]=i;else{if(i<2048)e[t++]=i>>6|192;else{if(55295=r.length)return console.error(\"Incomplete surrogate pair\"),e.subarray(0,t);var o=r.charCodeAt(n);if(o<56320||57343>18|240,e[t++]=i>>12&63|128}else e[t++]=i>>12|224;e[t++]=i>>6&63|128}e[t++]=63&i|128}}return e.subarray(0,t)}(r);if(t(r))return new Uint8Array(r);throw new Error(\"Unsupported type\")}return function(){var r,e,t;function n(r,e,t){if(void 0===e&&(e=d.ECB),void 0===t&&(t=v.PKCS5),!b(r))throw new Error(\"Key should be a string or an ArrayBuffer / Buffer\");if(!_(d,e))throw new Error(\"Unsupported mode\");if(!_(v,t))throw new Error(\"Unsupported padding\");this.mode=e,this.padding=t,this.iv=null,this.p=p.slice(),this.s=[g.slice(),y.slice(),C.slice(),w.slice()],r=function(r){if(72<=r.length)return r;for(var e=[];e.length<72;)for(var t=0;t=r.length)return console.error(\"Incomplete 2-byte sequence\"),t;n=(31&n)<<6|63&r[e++]}else if(223=r.length)return console.error(\"Incomplete 3-byte sequence\"),t;n=(15&n)<<12|(63&r[e++])<<6|63&r[e++]}else{if(!(239=r.length)return console.error(\"Incomplete 4-byte sequence\"),t;n=(7&n)<<18|(63&r[e++])<<12|(63&r[e++])<<6|63&r[e++]}if(n<=65535)t+=String.fromCharCode(n);else{if(!(n<=1114111))return console.error(\"Code point 0x\"+n.toString(16)+\" exceeds UTF-16 reach\"),t;n-=65536,t+=String.fromCharCode(n>>10|55296),t+=String.fromCharCode(1023&n|56320)}}return t}(r);default:throw new Error(\"Unsupported return type\")}},i._encryptBlock=function(r,e){for(var t=0;t<16;t++){r=E(r,this.p[t]);var n=[e=E(e,this._f(r)),r];r=n[0],e=n[1]}var i=[e,r];return r=i[0],e=E(e=i[1],this.p[16]),[r=E(r,this.p[17]),e]},i._decryptBlock=function(r,e){for(var t=17;1>>24&255,t=r>>>16&255,n=r>>>8&255,i=255&r,o=a(this.s[0][e],this.s[1][t]);return a(o=E(o,this.s[2][n]),this.s[3][i])},i._encodeECB=function(r){for(var e=new Uint8Array(r.length),t=0;t= 1){\r\n\t\t\tvar hi = str.charCodeAt(idx - 1);\r\n\t\t\tvar low = code;\r\n\t\t\tif (0xD800 <= hi && hi <= 0xDBFF){\r\n\t\t\t\treturn ((hi - 0xD800) * 0x400) + (low - 0xDC00) + 0x10000;\r\n\t\t\t}\r\n\t\t\treturn low;\r\n\t\t}\r\n\t\t\r\n\t\t//just return the char if an unmatched surrogate half or a \r\n\t\t//single-char codepoint\r\n\t\treturn code;\r\n\t}\r\n\t\r\n\t// Private function, returns whether a break is allowed between the \r\n\t// two given grapheme breaking classes\r\n\tfunction shouldBreak(start, mid, end){\r\n\t\tvar all = [start].concat(mid).concat([end]);\r\n\t\tvar previous = all[all.length - 2]\r\n\t\tvar next = end\r\n\t\t\r\n\t\t// Lookahead termintor for:\r\n\t\t// GB10. (E_Base | EBG) Extend* ?\tE_Modifier\r\n\t\tvar eModifierIndex = all.lastIndexOf(E_Modifier)\r\n\t\tif(eModifierIndex > 1 &&\r\n\t\t\tall.slice(1, eModifierIndex).every(function(c){return c == Extend}) &&\r\n\t\t\t[Extend, E_Base, E_Base_GAZ].indexOf(start) == -1){\r\n\t\t\treturn Break\r\n\t\t}\r\n\r\n\t\t// Lookahead termintor for:\r\n\t\t// GB12. ^ (RI RI)* RI\t?\tRI\r\n\t\t// GB13. [^RI] (RI RI)* RI\t?\tRI\r\n\t\tvar rIIndex = all.lastIndexOf(Regional_Indicator)\r\n\t\tif(rIIndex > 0 &&\r\n\t\t\tall.slice(1, rIIndex).every(function(c){return c == Regional_Indicator}) &&\r\n\t\t\t[Prepend, Regional_Indicator].indexOf(previous) == -1) { \r\n\t\t\tif(all.filter(function(c){return c == Regional_Indicator}).length % 2 == 1) {\r\n\t\t\t\treturn BreakLastRegional\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\treturn BreakPenultimateRegional\r\n\t\t\t}\r\n\t\t}\r\n\t\t\r\n\t\t// GB3. CR X LF\r\n\t\tif(previous == CR && next == LF){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB4. (Control|CR|LF) ÷\r\n\t\telse if(previous == Control || previous == CR || previous == LF){\r\n\t\t\tif(next == E_Modifier && mid.every(function(c){return c == Extend})){\r\n\t\t\t\treturn Break\r\n\t\t\t}\r\n\t\t\telse {\r\n\t\t\t\treturn BreakStart\r\n\t\t\t}\r\n\t\t}\r\n\t\t// GB5. ÷ (Control|CR|LF)\r\n\t\telse if(next == Control || next == CR || next == LF){\r\n\t\t\treturn BreakStart;\r\n\t\t}\r\n\t\t// GB6. L X (L|V|LV|LVT)\r\n\t\telse if(previous == L && \r\n\t\t\t(next == L || next == V || next == LV || next == LVT)){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB7. (LV|V) X (V|T)\r\n\t\telse if((previous == LV || previous == V) && \r\n\t\t\t(next == V || next == T)){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB8. (LVT|T) X (T)\r\n\t\telse if((previous == LVT || previous == T) && \r\n\t\t\tnext == T){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB9. X (Extend|ZWJ)\r\n\t\telse if (next == Extend || next == ZWJ){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB9a. X SpacingMark\r\n\t\telse if(next == SpacingMark){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t// GB9b. Prepend X\r\n\t\telse if (previous == Prepend){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t\r\n\t\t// GB10. (E_Base | EBG) Extend* ?\tE_Modifier\r\n\t\tvar previousNonExtendIndex = all.indexOf(Extend) != -1 ? all.lastIndexOf(Extend) - 1 : all.length - 2;\r\n\t\tif([E_Base, E_Base_GAZ].indexOf(all[previousNonExtendIndex]) != -1 &&\r\n\t\t\tall.slice(previousNonExtendIndex + 1, -1).every(function(c){return c == Extend}) &&\r\n\t\t\tnext == E_Modifier){\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\t\t\r\n\t\t// GB11. ZWJ ? (Glue_After_Zwj | EBG)\r\n\t\tif(previous == ZWJ && [Glue_After_Zwj, E_Base_GAZ].indexOf(next) != -1) {\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\r\n\t\t// GB12. ^ (RI RI)* RI ? RI\r\n\t\t// GB13. [^RI] (RI RI)* RI ? RI\r\n\t\tif(mid.indexOf(Regional_Indicator) != -1) { \r\n\t\t\treturn Break;\r\n\t\t}\r\n\t\tif(previous == Regional_Indicator && next == Regional_Indicator) {\r\n\t\t\treturn NotBreak;\r\n\t\t}\r\n\r\n\t\t// GB999. Any ? Any\r\n\t\treturn BreakStart;\r\n\t}\r\n\t\r\n\t// Returns the next grapheme break in the string after the given index\r\n\tthis.nextBreak = function(string, index){\r\n\t\tif(index === undefined){\r\n\t\t\tindex = 0;\r\n\t\t}\r\n\t\tif(index < 0){\r\n\t\t\treturn 0;\r\n\t\t}\r\n\t\tif(index >= string.length - 1){\r\n\t\t\treturn string.length;\r\n\t\t}\r\n\t\tvar prev = getGraphemeBreakProperty(codePointAt(string, index));\r\n\t\tvar mid = []\r\n\t\tfor (var i = index + 1; i < string.length; i++) {\r\n\t\t\t// check for already processed low surrogates\r\n\t\t\tif(isSurrogate(string, i - 1)){\r\n\t\t\t\tcontinue;\r\n\t\t\t}\r\n\t\t\r\n\t\t\tvar next = getGraphemeBreakProperty(codePointAt(string, i));\r\n\t\t\tif(shouldBreak(prev, mid, next)){\r\n\t\t\t\treturn i;\r\n\t\t\t}\r\n\t\t\t\r\n\t\t\tmid.push(next);\r\n\t\t}\r\n\t\treturn string.length;\r\n\t};\r\n\t\r\n\t// Breaks the given string into an array of grapheme cluster strings\r\n\tthis.splitGraphemes = function(str){\r\n\t\tvar res = [];\r\n\t\tvar index = 0;\r\n\t\tvar brk;\r\n\t\twhile((brk = this.nextBreak(str, index)) < str.length){\r\n\t\t\tres.push(str.slice(index, brk));\r\n\t\t\tindex = brk;\r\n\t\t}\r\n\t\tif(index < str.length){\r\n\t\t\tres.push(str.slice(index));\r\n\t\t}\r\n\t\treturn res;\r\n\t};\r\n\r\n\t// Returns the iterator of grapheme clusters there are in the given string\r\n\tthis.iterateGraphemes = function(str) {\r\n\t\tvar index = 0;\r\n\t\tvar res = {\r\n\t\t\tnext: (function() {\r\n\t\t\t\tvar value;\r\n\t\t\t\tvar brk;\r\n\t\t\t\tif ((brk = this.nextBreak(str, index)) < str.length) {\r\n\t\t\t\t\tvalue = str.slice(index, brk);\r\n\t\t\t\t\tindex = brk;\r\n\t\t\t\t\treturn { value: value, done: false };\r\n\t\t\t\t}\r\n\t\t\t\tif (index < str.length) {\r\n\t\t\t\t\tvalue = str.slice(index);\r\n\t\t\t\t\tindex = str.length;\r\n\t\t\t\t\treturn { value: value, done: false };\r\n\t\t\t\t}\r\n\t\t\t\treturn { value: undefined, done: true };\r\n\t\t\t}).bind(this)\r\n\t\t};\r\n\t\t// ES2015 @@iterator method (iterable) for spread syntax and for...of statement\r\n\t\tif (typeof Symbol !== 'undefined' && Symbol.iterator) {\r\n\t\t\tres[Symbol.iterator] = function() {return res};\r\n\t\t}\r\n\t\treturn res;\r\n\t};\r\n\r\n\t// Returns the number of grapheme clusters there are in the given string\r\n\tthis.countGraphemes = function(str){\r\n\t\tvar count = 0;\r\n\t\tvar index = 0;\r\n\t\tvar brk;\r\n\t\twhile((brk = this.nextBreak(str, index)) < str.length){\r\n\t\t\tindex = brk;\r\n\t\t\tcount++;\r\n\t\t}\r\n\t\tif(index < str.length){\r\n\t\t\tcount++;\r\n\t\t}\r\n\t\treturn count;\r\n\t};\r\n\t\r\n\t//given a Unicode code point, determines this symbol's grapheme break property\r\n\tfunction getGraphemeBreakProperty(code){\r\n\t\t\r\n\t\t//grapheme break property for Unicode 10.0.0, \r\n\t\t//taken from http://www.unicode.org/Public/10.0.0/ucd/auxiliary/GraphemeBreakProperty.txt\r\n\t\t//and adapted to JavaScript rules\r\n\t\t\r\n\t\tif(\t\t\r\n\t\t(0x0600 <= code && code <= 0x0605) || // Cf [6] ARABIC NUMBER SIGN..ARABIC NUMBER MARK ABOVE\r\n\t\t0x06DD == code || // Cf ARABIC END OF AYAH\r\n\t\t0x070F == code || // Cf SYRIAC ABBREVIATION MARK\r\n\t\t0x08E2 == code || // Cf ARABIC DISPUTED END OF AYAH\r\n\t\t0x0D4E == code || // Lo MALAYALAM LETTER DOT REPH\r\n\t\t0x110BD == code || // Cf KAITHI NUMBER SIGN\r\n\t\t(0x111C2 <= code && code <= 0x111C3) || // Lo [2] SHARADA SIGN JIHVAMULIYA..SHARADA SIGN UPADHMANIYA\r\n\t\t0x11A3A == code || // Lo ZANABAZAR SQUARE CLUSTER-INITIAL LETTER RA\r\n\t\t(0x11A86 <= code && code <= 0x11A89) || // Lo [4] SOYOMBO CLUSTER-INITIAL LETTER RA..SOYOMBO CLUSTER-INITIAL LETTER SA\r\n\t\t0x11D46 == code // Lo MASARAM GONDI REPHA\r\n\t\t){\r\n\t\t\treturn Prepend;\r\n\t\t}\r\n\t\tif(\r\n\t\t0x000D == code // Cc \r\n\t\t){\r\n\t\t\treturn CR;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t0x000A == code // Cc \r\n\t\t){\r\n\t\t\treturn LF;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\tif(\r\n\t\t(0x0000 <= code && code <= 0x0009) || // Cc [10] ..\r\n\t\t(0x000B <= code && code <= 0x000C) || // Cc [2] ..\r\n\t\t(0x000E <= code && code <= 0x001F) || // Cc [18] ..\r\n\t\t(0x007F <= code && code <= 0x009F) || // Cc [33] ..\r\n\t\t0x00AD == code || // Cf SOFT HYPHEN\r\n\t\t0x061C == code || // Cf ARABIC LETTER MARK\r\n\t\r\n\t\t0x180E == code || // Cf MONGOLIAN VOWEL SEPARATOR\r\n\t\t0x200B == code || // Cf ZERO WIDTH SPACE\r\n\t\t(0x200E <= code && code <= 0x200F) || // Cf [2] LEFT-TO-RIGHT MARK..RIGHT-TO-LEFT MARK\r\n\t\t0x2028 == code || // Zl LINE SEPARATOR\r\n\t\t0x2029 == code || // Zp PARAGRAPH SEPARATOR\r\n\t\t(0x202A <= code && code <= 0x202E) || // Cf [5] LEFT-TO-RIGHT EMBEDDING..RIGHT-TO-LEFT OVERRIDE\r\n\t\t(0x2060 <= code && code <= 0x2064) || // Cf [5] WORD JOINER..INVISIBLE PLUS\r\n\t\t0x2065 == code || // Cn \r\n\t\t(0x2066 <= code && code <= 0x206F) || // Cf [10] LEFT-TO-RIGHT ISOLATE..NOMINAL DIGIT SHAPES\r\n\t\t(0xD800 <= code && code <= 0xDFFF) || // Cs [2048] ..\r\n\t\t0xFEFF == code || // Cf ZERO WIDTH NO-BREAK SPACE\r\n\t\t(0xFFF0 <= code && code <= 0xFFF8) || // Cn [9] ..\r\n\t\t(0xFFF9 <= code && code <= 0xFFFB) || // Cf [3] INTERLINEAR ANNOTATION ANCHOR..INTERLINEAR ANNOTATION TERMINATOR\r\n\t\t(0x1BCA0 <= code && code <= 0x1BCA3) || // Cf [4] SHORTHAND FORMAT LETTER OVERLAP..SHORTHAND FORMAT UP STEP\r\n\t\t(0x1D173 <= code && code <= 0x1D17A) || // Cf [8] MUSICAL SYMBOL BEGIN BEAM..MUSICAL SYMBOL END PHRASE\r\n\t\t0xE0000 == code || // Cn \r\n\t\t0xE0001 == code || // Cf LANGUAGE TAG\r\n\t\t(0xE0002 <= code && code <= 0xE001F) || // Cn [30] ..\r\n\t\t(0xE0080 <= code && code <= 0xE00FF) || // Cn [128] ..\r\n\t\t(0xE01F0 <= code && code <= 0xE0FFF) // Cn [3600] ..\r\n\t\t){\r\n\t\t\treturn Control;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\tif(\r\n\t\t(0x0300 <= code && code <= 0x036F) || // Mn [112] COMBINING GRAVE ACCENT..COMBINING LATIN SMALL LETTER X\r\n\t\t(0x0483 <= code && code <= 0x0487) || // Mn [5] COMBINING CYRILLIC TITLO..COMBINING CYRILLIC POKRYTIE\r\n\t\t(0x0488 <= code && code <= 0x0489) || // Me [2] COMBINING CYRILLIC HUNDRED THOUSANDS SIGN..COMBINING CYRILLIC MILLIONS SIGN\r\n\t\t(0x0591 <= code && code <= 0x05BD) || // Mn [45] HEBREW ACCENT ETNAHTA..HEBREW POINT METEG\r\n\t\t0x05BF == code || // Mn HEBREW POINT RAFE\r\n\t\t(0x05C1 <= code && code <= 0x05C2) || // Mn [2] HEBREW POINT SHIN DOT..HEBREW POINT SIN DOT\r\n\t\t(0x05C4 <= code && code <= 0x05C5) || // Mn [2] HEBREW MARK UPPER DOT..HEBREW MARK LOWER DOT\r\n\t\t0x05C7 == code || // Mn HEBREW POINT QAMATS QATAN\r\n\t\t(0x0610 <= code && code <= 0x061A) || // Mn [11] ARABIC SIGN SALLALLAHOU ALAYHE WASSALLAM..ARABIC SMALL KASRA\r\n\t\t(0x064B <= code && code <= 0x065F) || // Mn [21] ARABIC FATHATAN..ARABIC WAVY HAMZA BELOW\r\n\t\t0x0670 == code || // Mn ARABIC LETTER SUPERSCRIPT ALEF\r\n\t\t(0x06D6 <= code && code <= 0x06DC) || // Mn [7] ARABIC SMALL HIGH LIGATURE SAD WITH LAM WITH ALEF MAKSURA..ARABIC SMALL HIGH SEEN\r\n\t\t(0x06DF <= code && code <= 0x06E4) || // Mn [6] ARABIC SMALL HIGH ROUNDED ZERO..ARABIC SMALL HIGH MADDA\r\n\t\t(0x06E7 <= code && code <= 0x06E8) || // Mn [2] ARABIC SMALL HIGH YEH..ARABIC SMALL HIGH NOON\r\n\t\t(0x06EA <= code && code <= 0x06ED) || // Mn [4] ARABIC EMPTY CENTRE LOW STOP..ARABIC SMALL LOW MEEM\r\n\t\t0x0711 == code || // Mn SYRIAC LETTER SUPERSCRIPT ALAPH\r\n\t\t(0x0730 <= code && code <= 0x074A) || // Mn [27] SYRIAC PTHAHA ABOVE..SYRIAC BARREKH\r\n\t\t(0x07A6 <= code && code <= 0x07B0) || // Mn [11] THAANA ABAFILI..THAANA SUKUN\r\n\t\t(0x07EB <= code && code <= 0x07F3) || // Mn [9] NKO COMBINING SHORT HIGH TONE..NKO COMBINING DOUBLE DOT ABOVE\r\n\t\t(0x0816 <= code && code <= 0x0819) || // Mn [4] SAMARITAN MARK IN..SAMARITAN MARK DAGESH\r\n\t\t(0x081B <= code && code <= 0x0823) || // Mn [9] SAMARITAN MARK EPENTHETIC YUT..SAMARITAN VOWEL SIGN A\r\n\t\t(0x0825 <= code && code <= 0x0827) || // Mn [3] SAMARITAN VOWEL SIGN SHORT A..SAMARITAN VOWEL SIGN U\r\n\t\t(0x0829 <= code && code <= 0x082D) || // Mn [5] SAMARITAN VOWEL SIGN LONG I..SAMARITAN MARK NEQUDAA\r\n\t\t(0x0859 <= code && code <= 0x085B) || // Mn [3] MANDAIC AFFRICATION MARK..MANDAIC GEMINATION MARK\r\n\t\t(0x08D4 <= code && code <= 0x08E1) || // Mn [14] ARABIC SMALL HIGH WORD AR-RUB..ARABIC SMALL HIGH SIGN SAFHA\r\n\t\t(0x08E3 <= code && code <= 0x0902) || // Mn [32] ARABIC TURNED DAMMA BELOW..DEVANAGARI SIGN ANUSVARA\r\n\t\t0x093A == code || // Mn DEVANAGARI VOWEL SIGN OE\r\n\t\t0x093C == code || // Mn DEVANAGARI SIGN NUKTA\r\n\t\t(0x0941 <= code && code <= 0x0948) || // Mn [8] DEVANAGARI VOWEL SIGN U..DEVANAGARI VOWEL SIGN AI\r\n\t\t0x094D == code || // Mn DEVANAGARI SIGN VIRAMA\r\n\t\t(0x0951 <= code && code <= 0x0957) || // Mn [7] DEVANAGARI STRESS SIGN UDATTA..DEVANAGARI VOWEL SIGN UUE\r\n\t\t(0x0962 <= code && code <= 0x0963) || // Mn [2] DEVANAGARI VOWEL SIGN VOCALIC L..DEVANAGARI VOWEL SIGN VOCALIC LL\r\n\t\t0x0981 == code || // Mn BENGALI SIGN CANDRABINDU\r\n\t\t0x09BC == code || // Mn BENGALI SIGN NUKTA\r\n\t\t0x09BE == code || // Mc BENGALI VOWEL SIGN AA\r\n\t\t(0x09C1 <= code && code <= 0x09C4) || // Mn [4] BENGALI VOWEL SIGN U..BENGALI VOWEL SIGN VOCALIC RR\r\n\t\t0x09CD == code || // Mn BENGALI SIGN VIRAMA\r\n\t\t0x09D7 == code || // Mc BENGALI AU LENGTH MARK\r\n\t\t(0x09E2 <= code && code <= 0x09E3) || // Mn [2] BENGALI VOWEL SIGN VOCALIC L..BENGALI VOWEL SIGN VOCALIC LL\r\n\t\t(0x0A01 <= code && code <= 0x0A02) || // Mn [2] GURMUKHI SIGN ADAK BINDI..GURMUKHI SIGN BINDI\r\n\t\t0x0A3C == code || // Mn GURMUKHI SIGN NUKTA\r\n\t\t(0x0A41 <= code && code <= 0x0A42) || // Mn [2] GURMUKHI VOWEL SIGN U..GURMUKHI VOWEL SIGN UU\r\n\t\t(0x0A47 <= code && code <= 0x0A48) || // Mn [2] GURMUKHI VOWEL SIGN EE..GURMUKHI VOWEL SIGN AI\r\n\t\t(0x0A4B <= code && code <= 0x0A4D) || // Mn [3] GURMUKHI VOWEL SIGN OO..GURMUKHI SIGN VIRAMA\r\n\t\t0x0A51 == code || // Mn GURMUKHI SIGN UDAAT\r\n\t\t(0x0A70 <= code && code <= 0x0A71) || // Mn [2] GURMUKHI TIPPI..GURMUKHI ADDAK\r\n\t\t0x0A75 == code || // Mn GURMUKHI SIGN YAKASH\r\n\t\t(0x0A81 <= code && code <= 0x0A82) || // Mn [2] GUJARATI SIGN CANDRABINDU..GUJARATI SIGN ANUSVARA\r\n\t\t0x0ABC == code || // Mn GUJARATI SIGN NUKTA\r\n\t\t(0x0AC1 <= code && code <= 0x0AC5) || // Mn [5] GUJARATI VOWEL SIGN U..GUJARATI VOWEL SIGN CANDRA E\r\n\t\t(0x0AC7 <= code && code <= 0x0AC8) || // Mn [2] GUJARATI VOWEL SIGN E..GUJARATI VOWEL SIGN AI\r\n\t\t0x0ACD == code || // Mn GUJARATI SIGN VIRAMA\r\n\t\t(0x0AE2 <= code && code <= 0x0AE3) || // Mn [2] GUJARATI VOWEL SIGN VOCALIC L..GUJARATI VOWEL SIGN VOCALIC LL\r\n\t\t(0x0AFA <= code && code <= 0x0AFF) || // Mn [6] GUJARATI SIGN SUKUN..GUJARATI SIGN TWO-CIRCLE NUKTA ABOVE\r\n\t\t0x0B01 == code || // Mn ORIYA SIGN CANDRABINDU\r\n\t\t0x0B3C == code || // Mn ORIYA SIGN NUKTA\r\n\t\t0x0B3E == code || // Mc ORIYA VOWEL SIGN AA\r\n\t\t0x0B3F == code || // Mn ORIYA VOWEL SIGN I\r\n\t\t(0x0B41 <= code && code <= 0x0B44) || // Mn [4] ORIYA VOWEL SIGN U..ORIYA VOWEL SIGN VOCALIC RR\r\n\t\t0x0B4D == code || // Mn ORIYA SIGN VIRAMA\r\n\t\t0x0B56 == code || // Mn ORIYA AI LENGTH MARK\r\n\t\t0x0B57 == code || // Mc ORIYA AU LENGTH MARK\r\n\t\t(0x0B62 <= code && code <= 0x0B63) || // Mn [2] ORIYA VOWEL SIGN VOCALIC L..ORIYA VOWEL SIGN VOCALIC LL\r\n\t\t0x0B82 == code || // Mn TAMIL SIGN ANUSVARA\r\n\t\t0x0BBE == code || // Mc TAMIL VOWEL SIGN AA\r\n\t\t0x0BC0 == code || // Mn TAMIL VOWEL SIGN II\r\n\t\t0x0BCD == code || // Mn TAMIL SIGN VIRAMA\r\n\t\t0x0BD7 == code || // Mc TAMIL AU LENGTH MARK\r\n\t\t0x0C00 == code || // Mn TELUGU SIGN COMBINING CANDRABINDU ABOVE\r\n\t\t(0x0C3E <= code && code <= 0x0C40) || // Mn [3] TELUGU VOWEL SIGN AA..TELUGU VOWEL SIGN II\r\n\t\t(0x0C46 <= code && code <= 0x0C48) || // Mn [3] TELUGU VOWEL SIGN E..TELUGU VOWEL SIGN AI\r\n\t\t(0x0C4A <= code && code <= 0x0C4D) || // Mn [4] TELUGU VOWEL SIGN O..TELUGU SIGN VIRAMA\r\n\t\t(0x0C55 <= code && code <= 0x0C56) || // Mn [2] TELUGU LENGTH MARK..TELUGU AI LENGTH MARK\r\n\t\t(0x0C62 <= code && code <= 0x0C63) || // Mn [2] TELUGU VOWEL SIGN VOCALIC L..TELUGU VOWEL SIGN VOCALIC LL\r\n\t\t0x0C81 == code || // Mn KANNADA SIGN CANDRABINDU\r\n\t\t0x0CBC == code || // Mn KANNADA SIGN NUKTA\r\n\t\t0x0CBF == code || // Mn KANNADA VOWEL SIGN I\r\n\t\t0x0CC2 == code || // Mc KANNADA VOWEL SIGN UU\r\n\t\t0x0CC6 == code || // Mn KANNADA VOWEL SIGN E\r\n\t\t(0x0CCC <= code && code <= 0x0CCD) || // Mn [2] KANNADA VOWEL SIGN AU..KANNADA SIGN VIRAMA\r\n\t\t(0x0CD5 <= code && code <= 0x0CD6) || // Mc [2] KANNADA LENGTH MARK..KANNADA AI LENGTH MARK\r\n\t\t(0x0CE2 <= code && code <= 0x0CE3) || // Mn [2] KANNADA VOWEL SIGN VOCALIC L..KANNADA VOWEL SIGN VOCALIC LL\r\n\t\t(0x0D00 <= code && code <= 0x0D01) || // Mn [2] MALAYALAM SIGN COMBINING ANUSVARA ABOVE..MALAYALAM SIGN CANDRABINDU\r\n\t\t(0x0D3B <= code && code <= 0x0D3C) || // Mn [2] MALAYALAM SIGN VERTICAL BAR VIRAMA..MALAYALAM SIGN CIRCULAR VIRAMA\r\n\t\t0x0D3E == code || // Mc MALAYALAM VOWEL SIGN AA\r\n\t\t(0x0D41 <= code && code <= 0x0D44) || // Mn [4] MALAYALAM VOWEL SIGN U..MALAYALAM VOWEL SIGN VOCALIC RR\r\n\t\t0x0D4D == code || // Mn MALAYALAM SIGN VIRAMA\r\n\t\t0x0D57 == code || // Mc MALAYALAM AU LENGTH MARK\r\n\t\t(0x0D62 <= code && code <= 0x0D63) || // Mn [2] MALAYALAM VOWEL SIGN VOCALIC L..MALAYALAM VOWEL SIGN VOCALIC LL\r\n\t\t0x0DCA == code || // Mn SINHALA SIGN AL-LAKUNA\r\n\t\t0x0DCF == code || // Mc SINHALA VOWEL SIGN AELA-PILLA\r\n\t\t(0x0DD2 <= code && code <= 0x0DD4) || // Mn [3] SINHALA VOWEL SIGN KETTI IS-PILLA..SINHALA VOWEL SIGN KETTI PAA-PILLA\r\n\t\t0x0DD6 == code || // Mn SINHALA VOWEL SIGN DIGA PAA-PILLA\r\n\t\t0x0DDF == code || // Mc SINHALA VOWEL SIGN GAYANUKITTA\r\n\t\t0x0E31 == code || // Mn THAI CHARACTER MAI HAN-AKAT\r\n\t\t(0x0E34 <= code && code <= 0x0E3A) || // Mn [7] THAI CHARACTER SARA I..THAI CHARACTER PHINTHU\r\n\t\t(0x0E47 <= code && code <= 0x0E4E) || // Mn [8] THAI CHARACTER MAITAIKHU..THAI CHARACTER YAMAKKAN\r\n\t\t0x0EB1 == code || // Mn LAO VOWEL SIGN MAI KAN\r\n\t\t(0x0EB4 <= code && code <= 0x0EB9) || // Mn [6] LAO VOWEL SIGN I..LAO VOWEL SIGN UU\r\n\t\t(0x0EBB <= code && code <= 0x0EBC) || // Mn [2] LAO VOWEL SIGN MAI KON..LAO SEMIVOWEL SIGN LO\r\n\t\t(0x0EC8 <= code && code <= 0x0ECD) || // Mn [6] LAO TONE MAI EK..LAO NIGGAHITA\r\n\t\t(0x0F18 <= code && code <= 0x0F19) || // Mn [2] TIBETAN ASTROLOGICAL SIGN -KHYUD PA..TIBETAN ASTROLOGICAL SIGN SDONG TSHUGS\r\n\t\t0x0F35 == code || // Mn TIBETAN MARK NGAS BZUNG NYI ZLA\r\n\t\t0x0F37 == code || // Mn TIBETAN MARK NGAS BZUNG SGOR RTAGS\r\n\t\t0x0F39 == code || // Mn TIBETAN MARK TSA -PHRU\r\n\t\t(0x0F71 <= code && code <= 0x0F7E) || // Mn [14] TIBETAN VOWEL SIGN AA..TIBETAN SIGN RJES SU NGA RO\r\n\t\t(0x0F80 <= code && code <= 0x0F84) || // Mn [5] TIBETAN VOWEL SIGN REVERSED I..TIBETAN MARK HALANTA\r\n\t\t(0x0F86 <= code && code <= 0x0F87) || // Mn [2] TIBETAN SIGN LCI RTAGS..TIBETAN SIGN YANG RTAGS\r\n\t\t(0x0F8D <= code && code <= 0x0F97) || // Mn [11] TIBETAN SUBJOINED SIGN LCE TSA CAN..TIBETAN SUBJOINED LETTER JA\r\n\t\t(0x0F99 <= code && code <= 0x0FBC) || // Mn [36] TIBETAN SUBJOINED LETTER NYA..TIBETAN SUBJOINED LETTER FIXED-FORM RA\r\n\t\t0x0FC6 == code || // Mn TIBETAN SYMBOL PADMA GDAN\r\n\t\t(0x102D <= code && code <= 0x1030) || // Mn [4] MYANMAR VOWEL SIGN I..MYANMAR VOWEL SIGN UU\r\n\t\t(0x1032 <= code && code <= 0x1037) || // Mn [6] MYANMAR VOWEL SIGN AI..MYANMAR SIGN DOT BELOW\r\n\t\t(0x1039 <= code && code <= 0x103A) || // Mn [2] MYANMAR SIGN VIRAMA..MYANMAR SIGN ASAT\r\n\t\t(0x103D <= code && code <= 0x103E) || // Mn [2] MYANMAR CONSONANT SIGN MEDIAL WA..MYANMAR CONSONANT SIGN MEDIAL HA\r\n\t\t(0x1058 <= code && code <= 0x1059) || // Mn [2] MYANMAR VOWEL SIGN VOCALIC L..MYANMAR VOWEL SIGN VOCALIC LL\r\n\t\t(0x105E <= code && code <= 0x1060) || // Mn [3] MYANMAR CONSONANT SIGN MON MEDIAL NA..MYANMAR CONSONANT SIGN MON MEDIAL LA\r\n\t\t(0x1071 <= code && code <= 0x1074) || // Mn [4] MYANMAR VOWEL SIGN GEBA KAREN I..MYANMAR VOWEL SIGN KAYAH EE\r\n\t\t0x1082 == code || // Mn MYANMAR CONSONANT SIGN SHAN MEDIAL WA\r\n\t\t(0x1085 <= code && code <= 0x1086) || // Mn [2] MYANMAR VOWEL SIGN SHAN E ABOVE..MYANMAR VOWEL SIGN SHAN FINAL Y\r\n\t\t0x108D == code || // Mn MYANMAR SIGN SHAN COUNCIL EMPHATIC TONE\r\n\t\t0x109D == code || // Mn MYANMAR VOWEL SIGN AITON AI\r\n\t\t(0x135D <= code && code <= 0x135F) || // Mn [3] ETHIOPIC COMBINING GEMINATION AND VOWEL LENGTH MARK..ETHIOPIC COMBINING GEMINATION MARK\r\n\t\t(0x1712 <= code && code <= 0x1714) || // Mn [3] TAGALOG VOWEL SIGN I..TAGALOG SIGN VIRAMA\r\n\t\t(0x1732 <= code && code <= 0x1734) || // Mn [3] HANUNOO VOWEL SIGN I..HANUNOO SIGN PAMUDPOD\r\n\t\t(0x1752 <= code && code <= 0x1753) || // Mn [2] BUHID VOWEL SIGN I..BUHID VOWEL SIGN U\r\n\t\t(0x1772 <= code && code <= 0x1773) || // Mn [2] TAGBANWA VOWEL SIGN I..TAGBANWA VOWEL SIGN U\r\n\t\t(0x17B4 <= code && code <= 0x17B5) || // Mn [2] KHMER VOWEL INHERENT AQ..KHMER VOWEL INHERENT AA\r\n\t\t(0x17B7 <= code && code <= 0x17BD) || // Mn [7] KHMER VOWEL SIGN I..KHMER VOWEL SIGN UA\r\n\t\t0x17C6 == code || // Mn KHMER SIGN NIKAHIT\r\n\t\t(0x17C9 <= code && code <= 0x17D3) || // Mn [11] KHMER SIGN MUUSIKATOAN..KHMER SIGN BATHAMASAT\r\n\t\t0x17DD == code || // Mn KHMER SIGN ATTHACAN\r\n\t\t(0x180B <= code && code <= 0x180D) || // Mn [3] MONGOLIAN FREE VARIATION SELECTOR ONE..MONGOLIAN FREE VARIATION SELECTOR THREE\r\n\t\t(0x1885 <= code && code <= 0x1886) || // Mn [2] MONGOLIAN LETTER ALI GALI BALUDA..MONGOLIAN LETTER ALI GALI THREE BALUDA\r\n\t\t0x18A9 == code || // Mn MONGOLIAN LETTER ALI GALI DAGALGA\r\n\t\t(0x1920 <= code && code <= 0x1922) || // Mn [3] LIMBU VOWEL SIGN A..LIMBU VOWEL SIGN U\r\n\t\t(0x1927 <= code && code <= 0x1928) || // Mn [2] LIMBU VOWEL SIGN E..LIMBU VOWEL SIGN O\r\n\t\t0x1932 == code || // Mn LIMBU SMALL LETTER ANUSVARA\r\n\t\t(0x1939 <= code && code <= 0x193B) || // Mn [3] LIMBU SIGN MUKPHRENG..LIMBU SIGN SA-I\r\n\t\t(0x1A17 <= code && code <= 0x1A18) || // Mn [2] BUGINESE VOWEL SIGN I..BUGINESE VOWEL SIGN U\r\n\t\t0x1A1B == code || // Mn BUGINESE VOWEL SIGN AE\r\n\t\t0x1A56 == code || // Mn TAI THAM CONSONANT SIGN MEDIAL LA\r\n\t\t(0x1A58 <= code && code <= 0x1A5E) || // Mn [7] TAI THAM SIGN MAI KANG LAI..TAI THAM CONSONANT SIGN SA\r\n\t\t0x1A60 == code || // Mn TAI THAM SIGN SAKOT\r\n\t\t0x1A62 == code || // Mn TAI THAM VOWEL SIGN MAI SAT\r\n\t\t(0x1A65 <= code && code <= 0x1A6C) || // Mn [8] TAI THAM VOWEL SIGN I..TAI THAM VOWEL SIGN OA BELOW\r\n\t\t(0x1A73 <= code && code <= 0x1A7C) || // Mn [10] TAI THAM VOWEL SIGN OA ABOVE..TAI THAM SIGN KHUEN-LUE KARAN\r\n\t\t0x1A7F == code || // Mn TAI THAM COMBINING CRYPTOGRAMMIC DOT\r\n\t\t(0x1AB0 <= code && code <= 0x1ABD) || // Mn [14] COMBINING DOUBLED CIRCUMFLEX ACCENT..COMBINING PARENTHESES BELOW\r\n\t\t0x1ABE == code || // Me COMBINING PARENTHESES OVERLAY\r\n\t\t(0x1B00 <= code && code <= 0x1B03) || // Mn [4] BALINESE SIGN ULU RICEM..BALINESE SIGN SURANG\r\n\t\t0x1B34 == code || // Mn BALINESE SIGN REREKAN\r\n\t\t(0x1B36 <= code && code <= 0x1B3A) || // Mn [5] BALINESE VOWEL SIGN ULU..BALINESE VOWEL SIGN RA REPA\r\n\t\t0x1B3C == code || // Mn BALINESE VOWEL SIGN LA LENGA\r\n\t\t0x1B42 == code || // Mn BALINESE VOWEL SIGN PEPET\r\n\t\t(0x1B6B <= code && code <= 0x1B73) || // Mn [9] BALINESE MUSICAL SYMBOL COMBINING TEGEH..BALINESE MUSICAL SYMBOL COMBINING GONG\r\n\t\t(0x1B80 <= code && code <= 0x1B81) || // Mn [2] SUNDANESE SIGN PANYECEK..SUNDANESE SIGN PANGLAYAR\r\n\t\t(0x1BA2 <= code && code <= 0x1BA5) || // Mn [4] SUNDANESE CONSONANT SIGN PANYAKRA..SUNDANESE VOWEL SIGN PANYUKU\r\n\t\t(0x1BA8 <= code && code <= 0x1BA9) || // Mn [2] SUNDANESE VOWEL SIGN PAMEPET..SUNDANESE VOWEL SIGN PANEULEUNG\r\n\t\t(0x1BAB <= code && code <= 0x1BAD) || // Mn [3] SUNDANESE SIGN VIRAMA..SUNDANESE CONSONANT SIGN PASANGAN WA\r\n\t\t0x1BE6 == code || // Mn BATAK SIGN TOMPI\r\n\t\t(0x1BE8 <= code && code <= 0x1BE9) || // Mn [2] BATAK VOWEL SIGN PAKPAK E..BATAK VOWEL SIGN EE\r\n\t\t0x1BED == code || // Mn BATAK VOWEL SIGN KARO O\r\n\t\t(0x1BEF <= code && code <= 0x1BF1) || // Mn [3] BATAK VOWEL SIGN U FOR SIMALUNGUN SA..BATAK CONSONANT SIGN H\r\n\t\t(0x1C2C <= code && code <= 0x1C33) || // Mn [8] LEPCHA VOWEL SIGN E..LEPCHA CONSONANT SIGN T\r\n\t\t(0x1C36 <= code && code <= 0x1C37) || // Mn [2] LEPCHA SIGN RAN..LEPCHA SIGN NUKTA\r\n\t\t(0x1CD0 <= code && code <= 0x1CD2) || // Mn [3] VEDIC TONE KARSHANA..VEDIC TONE PRENKHA\r\n\t\t(0x1CD4 <= code && code <= 0x1CE0) || // Mn [13] VEDIC SIGN YAJURVEDIC MIDLINE SVARITA..VEDIC TONE RIGVEDIC KASHMIRI INDEPENDENT SVARITA\r\n\t\t(0x1CE2 <= code && code <= 0x1CE8) || // Mn [7] VEDIC SIGN VISARGA SVARITA..VEDIC SIGN VISARGA ANUDATTA WITH TAIL\r\n\t\t0x1CED == code || // Mn VEDIC SIGN TIRYAK\r\n\t\t0x1CF4 == code || // Mn VEDIC TONE CANDRA ABOVE\r\n\t\t(0x1CF8 <= code && code <= 0x1CF9) || // Mn [2] VEDIC TONE RING ABOVE..VEDIC TONE DOUBLE RING ABOVE\r\n\t\t(0x1DC0 <= code && code <= 0x1DF9) || // Mn [58] COMBINING DOTTED GRAVE ACCENT..COMBINING WIDE INVERTED BRIDGE BELOW\r\n\t\t(0x1DFB <= code && code <= 0x1DFF) || // Mn [5] COMBINING DELETION MARK..COMBINING RIGHT ARROWHEAD AND DOWN ARROWHEAD BELOW\r\n\t\t0x200C == code || // Cf ZERO WIDTH NON-JOINER\r\n\t\t(0x20D0 <= code && code <= 0x20DC) || // Mn [13] COMBINING LEFT HARPOON ABOVE..COMBINING FOUR DOTS ABOVE\r\n\t\t(0x20DD <= code && code <= 0x20E0) || // Me [4] COMBINING ENCLOSING CIRCLE..COMBINING ENCLOSING CIRCLE BACKSLASH\r\n\t\t0x20E1 == code || // Mn COMBINING LEFT RIGHT ARROW ABOVE\r\n\t\t(0x20E2 <= code && code <= 0x20E4) || // Me [3] COMBINING ENCLOSING SCREEN..COMBINING ENCLOSING UPWARD POINTING TRIANGLE\r\n\t\t(0x20E5 <= code && code <= 0x20F0) || // Mn [12] COMBINING REVERSE SOLIDUS OVERLAY..COMBINING ASTERISK ABOVE\r\n\t\t(0x2CEF <= code && code <= 0x2CF1) || // Mn [3] COPTIC COMBINING NI ABOVE..COPTIC COMBINING SPIRITUS LENIS\r\n\t\t0x2D7F == code || // Mn TIFINAGH CONSONANT JOINER\r\n\t\t(0x2DE0 <= code && code <= 0x2DFF) || // Mn [32] COMBINING CYRILLIC LETTER BE..COMBINING CYRILLIC LETTER IOTIFIED BIG YUS\r\n\t\t(0x302A <= code && code <= 0x302D) || // Mn [4] IDEOGRAPHIC LEVEL TONE MARK..IDEOGRAPHIC ENTERING TONE MARK\r\n\t\t(0x302E <= code && code <= 0x302F) || // Mc [2] HANGUL SINGLE DOT TONE MARK..HANGUL DOUBLE DOT TONE MARK\r\n\t\t(0x3099 <= code && code <= 0x309A) || // Mn [2] COMBINING KATAKANA-HIRAGANA VOICED SOUND MARK..COMBINING KATAKANA-HIRAGANA SEMI-VOICED SOUND MARK\r\n\t\t0xA66F == code || // Mn COMBINING CYRILLIC VZMET\r\n\t\t(0xA670 <= code && code <= 0xA672) || // Me [3] COMBINING CYRILLIC TEN MILLIONS SIGN..COMBINING CYRILLIC THOUSAND MILLIONS SIGN\r\n\t\t(0xA674 <= code && code <= 0xA67D) || // Mn [10] COMBINING CYRILLIC LETTER UKRAINIAN IE..COMBINING CYRILLIC PAYEROK\r\n\t\t(0xA69E <= code && code <= 0xA69F) || // Mn [2] COMBINING CYRILLIC LETTER EF..COMBINING CYRILLIC LETTER IOTIFIED E\r\n\t\t(0xA6F0 <= code && code <= 0xA6F1) || // Mn [2] BAMUM COMBINING MARK KOQNDON..BAMUM COMBINING MARK TUKWENTIS\r\n\t\t0xA802 == code || // Mn SYLOTI NAGRI SIGN DVISVARA\r\n\t\t0xA806 == code || // Mn SYLOTI NAGRI SIGN HASANTA\r\n\t\t0xA80B == code || // Mn SYLOTI NAGRI SIGN ANUSVARA\r\n\t\t(0xA825 <= code && code <= 0xA826) || // Mn [2] SYLOTI NAGRI VOWEL SIGN U..SYLOTI NAGRI VOWEL SIGN E\r\n\t\t(0xA8C4 <= code && code <= 0xA8C5) || // Mn [2] SAURASHTRA SIGN VIRAMA..SAURASHTRA SIGN CANDRABINDU\r\n\t\t(0xA8E0 <= code && code <= 0xA8F1) || // Mn [18] COMBINING DEVANAGARI DIGIT ZERO..COMBINING DEVANAGARI SIGN AVAGRAHA\r\n\t\t(0xA926 <= code && code <= 0xA92D) || // Mn [8] KAYAH LI VOWEL UE..KAYAH LI TONE CALYA PLOPHU\r\n\t\t(0xA947 <= code && code <= 0xA951) || // Mn [11] REJANG VOWEL SIGN I..REJANG CONSONANT SIGN R\r\n\t\t(0xA980 <= code && code <= 0xA982) || // Mn [3] JAVANESE SIGN PANYANGGA..JAVANESE SIGN LAYAR\r\n\t\t0xA9B3 == code || // Mn JAVANESE SIGN CECAK TELU\r\n\t\t(0xA9B6 <= code && code <= 0xA9B9) || // Mn [4] JAVANESE VOWEL SIGN WULU..JAVANESE VOWEL SIGN SUKU MENDUT\r\n\t\t0xA9BC == code || // Mn JAVANESE VOWEL SIGN PEPET\r\n\t\t0xA9E5 == code || // Mn MYANMAR SIGN SHAN SAW\r\n\t\t(0xAA29 <= code && code <= 0xAA2E) || // Mn [6] CHAM VOWEL SIGN AA..CHAM VOWEL SIGN OE\r\n\t\t(0xAA31 <= code && code <= 0xAA32) || // Mn [2] CHAM VOWEL SIGN AU..CHAM VOWEL SIGN UE\r\n\t\t(0xAA35 <= code && code <= 0xAA36) || // Mn [2] CHAM CONSONANT SIGN LA..CHAM CONSONANT SIGN WA\r\n\t\t0xAA43 == code || // Mn CHAM CONSONANT SIGN FINAL NG\r\n\t\t0xAA4C == code || // Mn CHAM CONSONANT SIGN FINAL M\r\n\t\t0xAA7C == code || // Mn MYANMAR SIGN TAI LAING TONE-2\r\n\t\t0xAAB0 == code || // Mn TAI VIET MAI KANG\r\n\t\t(0xAAB2 <= code && code <= 0xAAB4) || // Mn [3] TAI VIET VOWEL I..TAI VIET VOWEL U\r\n\t\t(0xAAB7 <= code && code <= 0xAAB8) || // Mn [2] TAI VIET MAI KHIT..TAI VIET VOWEL IA\r\n\t\t(0xAABE <= code && code <= 0xAABF) || // Mn [2] TAI VIET VOWEL AM..TAI VIET TONE MAI EK\r\n\t\t0xAAC1 == code || // Mn TAI VIET TONE MAI THO\r\n\t\t(0xAAEC <= code && code <= 0xAAED) || // Mn [2] MEETEI MAYEK VOWEL SIGN UU..MEETEI MAYEK VOWEL SIGN AAI\r\n\t\t0xAAF6 == code || // Mn MEETEI MAYEK VIRAMA\r\n\t\t0xABE5 == code || // Mn MEETEI MAYEK VOWEL SIGN ANAP\r\n\t\t0xABE8 == code || // Mn MEETEI MAYEK VOWEL SIGN UNAP\r\n\t\t0xABED == code || // Mn MEETEI MAYEK APUN IYEK\r\n\t\t0xFB1E == code || // Mn HEBREW POINT JUDEO-SPANISH VARIKA\r\n\t\t(0xFE00 <= code && code <= 0xFE0F) || // Mn [16] VARIATION SELECTOR-1..VARIATION SELECTOR-16\r\n\t\t(0xFE20 <= code && code <= 0xFE2F) || // Mn [16] COMBINING LIGATURE LEFT HALF..COMBINING CYRILLIC TITLO RIGHT HALF\r\n\t\t(0xFF9E <= code && code <= 0xFF9F) || // Lm [2] HALFWIDTH KATAKANA VOICED SOUND MARK..HALFWIDTH KATAKANA SEMI-VOICED SOUND MARK\r\n\t\t0x101FD == code || // Mn PHAISTOS DISC SIGN COMBINING OBLIQUE STROKE\r\n\t\t0x102E0 == code || // Mn COPTIC EPACT THOUSANDS MARK\r\n\t\t(0x10376 <= code && code <= 0x1037A) || // Mn [5] COMBINING OLD PERMIC LETTER AN..COMBINING OLD PERMIC LETTER SII\r\n\t\t(0x10A01 <= code && code <= 0x10A03) || // Mn [3] KHAROSHTHI VOWEL SIGN I..KHAROSHTHI VOWEL SIGN VOCALIC R\r\n\t\t(0x10A05 <= code && code <= 0x10A06) || // Mn [2] KHAROSHTHI VOWEL SIGN E..KHAROSHTHI VOWEL SIGN O\r\n\t\t(0x10A0C <= code && code <= 0x10A0F) || // Mn [4] KHAROSHTHI VOWEL LENGTH MARK..KHAROSHTHI SIGN VISARGA\r\n\t\t(0x10A38 <= code && code <= 0x10A3A) || // Mn [3] KHAROSHTHI SIGN BAR ABOVE..KHAROSHTHI SIGN DOT BELOW\r\n\t\t0x10A3F == code || // Mn KHAROSHTHI VIRAMA\r\n\t\t(0x10AE5 <= code && code <= 0x10AE6) || // Mn [2] MANICHAEAN ABBREVIATION MARK ABOVE..MANICHAEAN ABBREVIATION MARK BELOW\r\n\t\t0x11001 == code || // Mn BRAHMI SIGN ANUSVARA\r\n\t\t(0x11038 <= code && code <= 0x11046) || // Mn [15] BRAHMI VOWEL SIGN AA..BRAHMI VIRAMA\r\n\t\t(0x1107F <= code && code <= 0x11081) || // Mn [3] BRAHMI NUMBER JOINER..KAITHI SIGN ANUSVARA\r\n\t\t(0x110B3 <= code && code <= 0x110B6) || // Mn [4] KAITHI VOWEL SIGN U..KAITHI VOWEL SIGN AI\r\n\t\t(0x110B9 <= code && code <= 0x110BA) || // Mn [2] KAITHI SIGN VIRAMA..KAITHI SIGN NUKTA\r\n\t\t(0x11100 <= code && code <= 0x11102) || // Mn [3] CHAKMA SIGN CANDRABINDU..CHAKMA SIGN VISARGA\r\n\t\t(0x11127 <= code && code <= 0x1112B) || // Mn [5] CHAKMA VOWEL SIGN A..CHAKMA VOWEL SIGN UU\r\n\t\t(0x1112D <= code && code <= 0x11134) || // Mn [8] CHAKMA VOWEL SIGN AI..CHAKMA MAAYYAA\r\n\t\t0x11173 == code || // Mn MAHAJANI SIGN NUKTA\r\n\t\t(0x11180 <= code && code <= 0x11181) || // Mn [2] SHARADA SIGN CANDRABINDU..SHARADA SIGN ANUSVARA\r\n\t\t(0x111B6 <= code && code <= 0x111BE) || // Mn [9] SHARADA VOWEL SIGN U..SHARADA VOWEL SIGN O\r\n\t\t(0x111CA <= code && code <= 0x111CC) || // Mn [3] SHARADA SIGN NUKTA..SHARADA EXTRA SHORT VOWEL MARK\r\n\t\t(0x1122F <= code && code <= 0x11231) || // Mn [3] KHOJKI VOWEL SIGN U..KHOJKI VOWEL SIGN AI\r\n\t\t0x11234 == code || // Mn KHOJKI SIGN ANUSVARA\r\n\t\t(0x11236 <= code && code <= 0x11237) || // Mn [2] KHOJKI SIGN NUKTA..KHOJKI SIGN SHADDA\r\n\t\t0x1123E == code || // Mn KHOJKI SIGN SUKUN\r\n\t\t0x112DF == code || // Mn KHUDAWADI SIGN ANUSVARA\r\n\t\t(0x112E3 <= code && code <= 0x112EA) || // Mn [8] KHUDAWADI VOWEL SIGN U..KHUDAWADI SIGN VIRAMA\r\n\t\t(0x11300 <= code && code <= 0x11301) || // Mn [2] GRANTHA SIGN COMBINING ANUSVARA ABOVE..GRANTHA SIGN CANDRABINDU\r\n\t\t0x1133C == code || // Mn GRANTHA SIGN NUKTA\r\n\t\t0x1133E == code || // Mc GRANTHA VOWEL SIGN AA\r\n\t\t0x11340 == code || // Mn GRANTHA VOWEL SIGN II\r\n\t\t0x11357 == code || // Mc GRANTHA AU LENGTH MARK\r\n\t\t(0x11366 <= code && code <= 0x1136C) || // Mn [7] COMBINING GRANTHA DIGIT ZERO..COMBINING GRANTHA DIGIT SIX\r\n\t\t(0x11370 <= code && code <= 0x11374) || // Mn [5] COMBINING GRANTHA LETTER A..COMBINING GRANTHA LETTER PA\r\n\t\t(0x11438 <= code && code <= 0x1143F) || // Mn [8] NEWA VOWEL SIGN U..NEWA VOWEL SIGN AI\r\n\t\t(0x11442 <= code && code <= 0x11444) || // Mn [3] NEWA SIGN VIRAMA..NEWA SIGN ANUSVARA\r\n\t\t0x11446 == code || // Mn NEWA SIGN NUKTA\r\n\t\t0x114B0 == code || // Mc TIRHUTA VOWEL SIGN AA\r\n\t\t(0x114B3 <= code && code <= 0x114B8) || // Mn [6] TIRHUTA VOWEL SIGN U..TIRHUTA VOWEL SIGN VOCALIC LL\r\n\t\t0x114BA == code || // Mn TIRHUTA VOWEL SIGN SHORT E\r\n\t\t0x114BD == code || // Mc TIRHUTA VOWEL SIGN SHORT O\r\n\t\t(0x114BF <= code && code <= 0x114C0) || // Mn [2] TIRHUTA SIGN CANDRABINDU..TIRHUTA SIGN ANUSVARA\r\n\t\t(0x114C2 <= code && code <= 0x114C3) || // Mn [2] TIRHUTA SIGN VIRAMA..TIRHUTA SIGN NUKTA\r\n\t\t0x115AF == code || // Mc SIDDHAM VOWEL SIGN AA\r\n\t\t(0x115B2 <= code && code <= 0x115B5) || // Mn [4] SIDDHAM VOWEL SIGN U..SIDDHAM VOWEL SIGN VOCALIC RR\r\n\t\t(0x115BC <= code && code <= 0x115BD) || // Mn [2] SIDDHAM SIGN CANDRABINDU..SIDDHAM SIGN ANUSVARA\r\n\t\t(0x115BF <= code && code <= 0x115C0) || // Mn [2] SIDDHAM SIGN VIRAMA..SIDDHAM SIGN NUKTA\r\n\t\t(0x115DC <= code && code <= 0x115DD) || // Mn [2] SIDDHAM VOWEL SIGN ALTERNATE U..SIDDHAM VOWEL SIGN ALTERNATE UU\r\n\t\t(0x11633 <= code && code <= 0x1163A) || // Mn [8] MODI VOWEL SIGN U..MODI VOWEL SIGN AI\r\n\t\t0x1163D == code || // Mn MODI SIGN ANUSVARA\r\n\t\t(0x1163F <= code && code <= 0x11640) || // Mn [2] MODI SIGN VIRAMA..MODI SIGN ARDHACANDRA\r\n\t\t0x116AB == code || // Mn TAKRI SIGN ANUSVARA\r\n\t\t0x116AD == code || // Mn TAKRI VOWEL SIGN AA\r\n\t\t(0x116B0 <= code && code <= 0x116B5) || // Mn [6] TAKRI VOWEL SIGN U..TAKRI VOWEL SIGN AU\r\n\t\t0x116B7 == code || // Mn TAKRI SIGN NUKTA\r\n\t\t(0x1171D <= code && code <= 0x1171F) || // Mn [3] AHOM CONSONANT SIGN MEDIAL LA..AHOM CONSONANT SIGN MEDIAL LIGATING RA\r\n\t\t(0x11722 <= code && code <= 0x11725) || // Mn [4] AHOM VOWEL SIGN I..AHOM VOWEL SIGN UU\r\n\t\t(0x11727 <= code && code <= 0x1172B) || // Mn [5] AHOM VOWEL SIGN AW..AHOM SIGN KILLER\r\n\t\t(0x11A01 <= code && code <= 0x11A06) || // Mn [6] ZANABAZAR SQUARE VOWEL SIGN I..ZANABAZAR SQUARE VOWEL SIGN O\r\n\t\t(0x11A09 <= code && code <= 0x11A0A) || // Mn [2] ZANABAZAR SQUARE VOWEL SIGN REVERSED I..ZANABAZAR SQUARE VOWEL LENGTH MARK\r\n\t\t(0x11A33 <= code && code <= 0x11A38) || // Mn [6] ZANABAZAR SQUARE FINAL CONSONANT MARK..ZANABAZAR SQUARE SIGN ANUSVARA\r\n\t\t(0x11A3B <= code && code <= 0x11A3E) || // Mn [4] ZANABAZAR SQUARE CLUSTER-FINAL LETTER YA..ZANABAZAR SQUARE CLUSTER-FINAL LETTER VA\r\n\t\t0x11A47 == code || // Mn ZANABAZAR SQUARE SUBJOINER\r\n\t\t(0x11A51 <= code && code <= 0x11A56) || // Mn [6] SOYOMBO VOWEL SIGN I..SOYOMBO VOWEL SIGN OE\r\n\t\t(0x11A59 <= code && code <= 0x11A5B) || // Mn [3] SOYOMBO VOWEL SIGN VOCALIC R..SOYOMBO VOWEL LENGTH MARK\r\n\t\t(0x11A8A <= code && code <= 0x11A96) || // Mn [13] SOYOMBO FINAL CONSONANT SIGN G..SOYOMBO SIGN ANUSVARA\r\n\t\t(0x11A98 <= code && code <= 0x11A99) || // Mn [2] SOYOMBO GEMINATION MARK..SOYOMBO SUBJOINER\r\n\t\t(0x11C30 <= code && code <= 0x11C36) || // Mn [7] BHAIKSUKI VOWEL SIGN I..BHAIKSUKI VOWEL SIGN VOCALIC L\r\n\t\t(0x11C38 <= code && code <= 0x11C3D) || // Mn [6] BHAIKSUKI VOWEL SIGN E..BHAIKSUKI SIGN ANUSVARA\r\n\t\t0x11C3F == code || // Mn BHAIKSUKI SIGN VIRAMA\r\n\t\t(0x11C92 <= code && code <= 0x11CA7) || // Mn [22] MARCHEN SUBJOINED LETTER KA..MARCHEN SUBJOINED LETTER ZA\r\n\t\t(0x11CAA <= code && code <= 0x11CB0) || // Mn [7] MARCHEN SUBJOINED LETTER RA..MARCHEN VOWEL SIGN AA\r\n\t\t(0x11CB2 <= code && code <= 0x11CB3) || // Mn [2] MARCHEN VOWEL SIGN U..MARCHEN VOWEL SIGN E\r\n\t\t(0x11CB5 <= code && code <= 0x11CB6) || // Mn [2] MARCHEN SIGN ANUSVARA..MARCHEN SIGN CANDRABINDU\r\n\t\t(0x11D31 <= code && code <= 0x11D36) || // Mn [6] MASARAM GONDI VOWEL SIGN AA..MASARAM GONDI VOWEL SIGN VOCALIC R\r\n\t\t0x11D3A == code || // Mn MASARAM GONDI VOWEL SIGN E\r\n\t\t(0x11D3C <= code && code <= 0x11D3D) || // Mn [2] MASARAM GONDI VOWEL SIGN AI..MASARAM GONDI VOWEL SIGN O\r\n\t\t(0x11D3F <= code && code <= 0x11D45) || // Mn [7] MASARAM GONDI VOWEL SIGN AU..MASARAM GONDI VIRAMA\r\n\t\t0x11D47 == code || // Mn MASARAM GONDI RA-KARA\r\n\t\t(0x16AF0 <= code && code <= 0x16AF4) || // Mn [5] BASSA VAH COMBINING HIGH TONE..BASSA VAH COMBINING HIGH-LOW TONE\r\n\t\t(0x16B30 <= code && code <= 0x16B36) || // Mn [7] PAHAWH HMONG MARK CIM TUB..PAHAWH HMONG MARK CIM TAUM\r\n\t\t(0x16F8F <= code && code <= 0x16F92) || // Mn [4] MIAO TONE RIGHT..MIAO TONE BELOW\r\n\t\t(0x1BC9D <= code && code <= 0x1BC9E) || // Mn [2] DUPLOYAN THICK LETTER SELECTOR..DUPLOYAN DOUBLE MARK\r\n\t\t0x1D165 == code || // Mc MUSICAL SYMBOL COMBINING STEM\r\n\t\t(0x1D167 <= code && code <= 0x1D169) || // Mn [3] MUSICAL SYMBOL COMBINING TREMOLO-1..MUSICAL SYMBOL COMBINING TREMOLO-3\r\n\t\t(0x1D16E <= code && code <= 0x1D172) || // Mc [5] MUSICAL SYMBOL COMBINING FLAG-1..MUSICAL SYMBOL COMBINING FLAG-5\r\n\t\t(0x1D17B <= code && code <= 0x1D182) || // Mn [8] MUSICAL SYMBOL COMBINING ACCENT..MUSICAL SYMBOL COMBINING LOURE\r\n\t\t(0x1D185 <= code && code <= 0x1D18B) || // Mn [7] MUSICAL SYMBOL COMBINING DOIT..MUSICAL SYMBOL COMBINING TRIPLE TONGUE\r\n\t\t(0x1D1AA <= code && code <= 0x1D1AD) || // Mn [4] MUSICAL SYMBOL COMBINING DOWN BOW..MUSICAL SYMBOL COMBINING SNAP PIZZICATO\r\n\t\t(0x1D242 <= code && code <= 0x1D244) || // Mn [3] COMBINING GREEK MUSICAL TRISEME..COMBINING GREEK MUSICAL PENTASEME\r\n\t\t(0x1DA00 <= code && code <= 0x1DA36) || // Mn [55] SIGNWRITING HEAD RIM..SIGNWRITING AIR SUCKING IN\r\n\t\t(0x1DA3B <= code && code <= 0x1DA6C) || // Mn [50] SIGNWRITING MOUTH CLOSED NEUTRAL..SIGNWRITING EXCITEMENT\r\n\t\t0x1DA75 == code || // Mn SIGNWRITING UPPER BODY TILTING FROM HIP JOINTS\r\n\t\t0x1DA84 == code || // Mn SIGNWRITING LOCATION HEAD NECK\r\n\t\t(0x1DA9B <= code && code <= 0x1DA9F) || // Mn [5] SIGNWRITING FILL MODIFIER-2..SIGNWRITING FILL MODIFIER-6\r\n\t\t(0x1DAA1 <= code && code <= 0x1DAAF) || // Mn [15] SIGNWRITING ROTATION MODIFIER-2..SIGNWRITING ROTATION MODIFIER-16\r\n\t\t(0x1E000 <= code && code <= 0x1E006) || // Mn [7] COMBINING GLAGOLITIC LETTER AZU..COMBINING GLAGOLITIC LETTER ZHIVETE\r\n\t\t(0x1E008 <= code && code <= 0x1E018) || // Mn [17] COMBINING GLAGOLITIC LETTER ZEMLJA..COMBINING GLAGOLITIC LETTER HERU\r\n\t\t(0x1E01B <= code && code <= 0x1E021) || // Mn [7] COMBINING GLAGOLITIC LETTER SHTA..COMBINING GLAGOLITIC LETTER YATI\r\n\t\t(0x1E023 <= code && code <= 0x1E024) || // Mn [2] COMBINING GLAGOLITIC LETTER YU..COMBINING GLAGOLITIC LETTER SMALL YUS\r\n\t\t(0x1E026 <= code && code <= 0x1E02A) || // Mn [5] COMBINING GLAGOLITIC LETTER YO..COMBINING GLAGOLITIC LETTER FITA\r\n\t\t(0x1E8D0 <= code && code <= 0x1E8D6) || // Mn [7] MENDE KIKAKUI COMBINING NUMBER TEENS..MENDE KIKAKUI COMBINING NUMBER MILLIONS\r\n\t\t(0x1E944 <= code && code <= 0x1E94A) || // Mn [7] ADLAM ALIF LENGTHENER..ADLAM NUKTA\r\n\t\t(0xE0020 <= code && code <= 0xE007F) || // Cf [96] TAG SPACE..CANCEL TAG\r\n\t\t(0xE0100 <= code && code <= 0xE01EF) // Mn [240] VARIATION SELECTOR-17..VARIATION SELECTOR-256\r\n\t\t){\r\n\t\t\treturn Extend;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\tif(\r\n\t\t(0x1F1E6 <= code && code <= 0x1F1FF) // So [26] REGIONAL INDICATOR SYMBOL LETTER A..REGIONAL INDICATOR SYMBOL LETTER Z\r\n\t\t){\r\n\t\t\treturn Regional_Indicator;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t0x0903 == code || // Mc DEVANAGARI SIGN VISARGA\r\n\t\t0x093B == code || // Mc DEVANAGARI VOWEL SIGN OOE\r\n\t\t(0x093E <= code && code <= 0x0940) || // Mc [3] DEVANAGARI VOWEL SIGN AA..DEVANAGARI VOWEL SIGN II\r\n\t\t(0x0949 <= code && code <= 0x094C) || // Mc [4] DEVANAGARI VOWEL SIGN CANDRA O..DEVANAGARI VOWEL SIGN AU\r\n\t\t(0x094E <= code && code <= 0x094F) || // Mc [2] DEVANAGARI VOWEL SIGN PRISHTHAMATRA E..DEVANAGARI VOWEL SIGN AW\r\n\t\t(0x0982 <= code && code <= 0x0983) || // Mc [2] BENGALI SIGN ANUSVARA..BENGALI SIGN VISARGA\r\n\t\t(0x09BF <= code && code <= 0x09C0) || // Mc [2] BENGALI VOWEL SIGN I..BENGALI VOWEL SIGN II\r\n\t\t(0x09C7 <= code && code <= 0x09C8) || // Mc [2] BENGALI VOWEL SIGN E..BENGALI VOWEL SIGN AI\r\n\t\t(0x09CB <= code && code <= 0x09CC) || // Mc [2] BENGALI VOWEL SIGN O..BENGALI VOWEL SIGN AU\r\n\t\t0x0A03 == code || // Mc GURMUKHI SIGN VISARGA\r\n\t\t(0x0A3E <= code && code <= 0x0A40) || // Mc [3] GURMUKHI VOWEL SIGN AA..GURMUKHI VOWEL SIGN II\r\n\t\t0x0A83 == code || // Mc GUJARATI SIGN VISARGA\r\n\t\t(0x0ABE <= code && code <= 0x0AC0) || // Mc [3] GUJARATI VOWEL SIGN AA..GUJARATI VOWEL SIGN II\r\n\t\t0x0AC9 == code || // Mc GUJARATI VOWEL SIGN CANDRA O\r\n\t\t(0x0ACB <= code && code <= 0x0ACC) || // Mc [2] GUJARATI VOWEL SIGN O..GUJARATI VOWEL SIGN AU\r\n\t\t(0x0B02 <= code && code <= 0x0B03) || // Mc [2] ORIYA SIGN ANUSVARA..ORIYA SIGN VISARGA\r\n\t\t0x0B40 == code || // Mc ORIYA VOWEL SIGN II\r\n\t\t(0x0B47 <= code && code <= 0x0B48) || // Mc [2] ORIYA VOWEL SIGN E..ORIYA VOWEL SIGN AI\r\n\t\t(0x0B4B <= code && code <= 0x0B4C) || // Mc [2] ORIYA VOWEL SIGN O..ORIYA VOWEL SIGN AU\r\n\t\t0x0BBF == code || // Mc TAMIL VOWEL SIGN I\r\n\t\t(0x0BC1 <= code && code <= 0x0BC2) || // Mc [2] TAMIL VOWEL SIGN U..TAMIL VOWEL SIGN UU\r\n\t\t(0x0BC6 <= code && code <= 0x0BC8) || // Mc [3] TAMIL VOWEL SIGN E..TAMIL VOWEL SIGN AI\r\n\t\t(0x0BCA <= code && code <= 0x0BCC) || // Mc [3] TAMIL VOWEL SIGN O..TAMIL VOWEL SIGN AU\r\n\t\t(0x0C01 <= code && code <= 0x0C03) || // Mc [3] TELUGU SIGN CANDRABINDU..TELUGU SIGN VISARGA\r\n\t\t(0x0C41 <= code && code <= 0x0C44) || // Mc [4] TELUGU VOWEL SIGN U..TELUGU VOWEL SIGN VOCALIC RR\r\n\t\t(0x0C82 <= code && code <= 0x0C83) || // Mc [2] KANNADA SIGN ANUSVARA..KANNADA SIGN VISARGA\r\n\t\t0x0CBE == code || // Mc KANNADA VOWEL SIGN AA\r\n\t\t(0x0CC0 <= code && code <= 0x0CC1) || // Mc [2] KANNADA VOWEL SIGN II..KANNADA VOWEL SIGN U\r\n\t\t(0x0CC3 <= code && code <= 0x0CC4) || // Mc [2] KANNADA VOWEL SIGN VOCALIC R..KANNADA VOWEL SIGN VOCALIC RR\r\n\t\t(0x0CC7 <= code && code <= 0x0CC8) || // Mc [2] KANNADA VOWEL SIGN EE..KANNADA VOWEL SIGN AI\r\n\t\t(0x0CCA <= code && code <= 0x0CCB) || // Mc [2] KANNADA VOWEL SIGN O..KANNADA VOWEL SIGN OO\r\n\t\t(0x0D02 <= code && code <= 0x0D03) || // Mc [2] MALAYALAM SIGN ANUSVARA..MALAYALAM SIGN VISARGA\r\n\t\t(0x0D3F <= code && code <= 0x0D40) || // Mc [2] MALAYALAM VOWEL SIGN I..MALAYALAM VOWEL SIGN II\r\n\t\t(0x0D46 <= code && code <= 0x0D48) || // Mc [3] MALAYALAM VOWEL SIGN E..MALAYALAM VOWEL SIGN AI\r\n\t\t(0x0D4A <= code && code <= 0x0D4C) || // Mc [3] MALAYALAM VOWEL SIGN O..MALAYALAM VOWEL SIGN AU\r\n\t\t(0x0D82 <= code && code <= 0x0D83) || // Mc [2] SINHALA SIGN ANUSVARAYA..SINHALA SIGN VISARGAYA\r\n\t\t(0x0DD0 <= code && code <= 0x0DD1) || // Mc [2] SINHALA VOWEL SIGN KETTI AEDA-PILLA..SINHALA VOWEL SIGN DIGA AEDA-PILLA\r\n\t\t(0x0DD8 <= code && code <= 0x0DDE) || // Mc [7] SINHALA VOWEL SIGN GAETTA-PILLA..SINHALA VOWEL SIGN KOMBUVA HAA GAYANUKITTA\r\n\t\t(0x0DF2 <= code && code <= 0x0DF3) || // Mc [2] SINHALA VOWEL SIGN DIGA GAETTA-PILLA..SINHALA VOWEL SIGN DIGA GAYANUKITTA\r\n\t\t0x0E33 == code || // Lo THAI CHARACTER SARA AM\r\n\t\t0x0EB3 == code || // Lo LAO VOWEL SIGN AM\r\n\t\t(0x0F3E <= code && code <= 0x0F3F) || // Mc [2] TIBETAN SIGN YAR TSHES..TIBETAN SIGN MAR TSHES\r\n\t\t0x0F7F == code || // Mc TIBETAN SIGN RNAM BCAD\r\n\t\t0x1031 == code || // Mc MYANMAR VOWEL SIGN E\r\n\t\t(0x103B <= code && code <= 0x103C) || // Mc [2] MYANMAR CONSONANT SIGN MEDIAL YA..MYANMAR CONSONANT SIGN MEDIAL RA\r\n\t\t(0x1056 <= code && code <= 0x1057) || // Mc [2] MYANMAR VOWEL SIGN VOCALIC R..MYANMAR VOWEL SIGN VOCALIC RR\r\n\t\t0x1084 == code || // Mc MYANMAR VOWEL SIGN SHAN E\r\n\t\t0x17B6 == code || // Mc KHMER VOWEL SIGN AA\r\n\t\t(0x17BE <= code && code <= 0x17C5) || // Mc [8] KHMER VOWEL SIGN OE..KHMER VOWEL SIGN AU\r\n\t\t(0x17C7 <= code && code <= 0x17C8) || // Mc [2] KHMER SIGN REAHMUK..KHMER SIGN YUUKALEAPINTU\r\n\t\t(0x1923 <= code && code <= 0x1926) || // Mc [4] LIMBU VOWEL SIGN EE..LIMBU VOWEL SIGN AU\r\n\t\t(0x1929 <= code && code <= 0x192B) || // Mc [3] LIMBU SUBJOINED LETTER YA..LIMBU SUBJOINED LETTER WA\r\n\t\t(0x1930 <= code && code <= 0x1931) || // Mc [2] LIMBU SMALL LETTER KA..LIMBU SMALL LETTER NGA\r\n\t\t(0x1933 <= code && code <= 0x1938) || // Mc [6] LIMBU SMALL LETTER TA..LIMBU SMALL LETTER LA\r\n\t\t(0x1A19 <= code && code <= 0x1A1A) || // Mc [2] BUGINESE VOWEL SIGN E..BUGINESE VOWEL SIGN O\r\n\t\t0x1A55 == code || // Mc TAI THAM CONSONANT SIGN MEDIAL RA\r\n\t\t0x1A57 == code || // Mc TAI THAM CONSONANT SIGN LA TANG LAI\r\n\t\t(0x1A6D <= code && code <= 0x1A72) || // Mc [6] TAI THAM VOWEL SIGN OY..TAI THAM VOWEL SIGN THAM AI\r\n\t\t0x1B04 == code || // Mc BALINESE SIGN BISAH\r\n\t\t0x1B35 == code || // Mc BALINESE VOWEL SIGN TEDUNG\r\n\t\t0x1B3B == code || // Mc BALINESE VOWEL SIGN RA REPA TEDUNG\r\n\t\t(0x1B3D <= code && code <= 0x1B41) || // Mc [5] BALINESE VOWEL SIGN LA LENGA TEDUNG..BALINESE VOWEL SIGN TALING REPA TEDUNG\r\n\t\t(0x1B43 <= code && code <= 0x1B44) || // Mc [2] BALINESE VOWEL SIGN PEPET TEDUNG..BALINESE ADEG ADEG\r\n\t\t0x1B82 == code || // Mc SUNDANESE SIGN PANGWISAD\r\n\t\t0x1BA1 == code || // Mc SUNDANESE CONSONANT SIGN PAMINGKAL\r\n\t\t(0x1BA6 <= code && code <= 0x1BA7) || // Mc [2] SUNDANESE VOWEL SIGN PANAELAENG..SUNDANESE VOWEL SIGN PANOLONG\r\n\t\t0x1BAA == code || // Mc SUNDANESE SIGN PAMAAEH\r\n\t\t0x1BE7 == code || // Mc BATAK VOWEL SIGN E\r\n\t\t(0x1BEA <= code && code <= 0x1BEC) || // Mc [3] BATAK VOWEL SIGN I..BATAK VOWEL SIGN O\r\n\t\t0x1BEE == code || // Mc BATAK VOWEL SIGN U\r\n\t\t(0x1BF2 <= code && code <= 0x1BF3) || // Mc [2] BATAK PANGOLAT..BATAK PANONGONAN\r\n\t\t(0x1C24 <= code && code <= 0x1C2B) || // Mc [8] LEPCHA SUBJOINED LETTER YA..LEPCHA VOWEL SIGN UU\r\n\t\t(0x1C34 <= code && code <= 0x1C35) || // Mc [2] LEPCHA CONSONANT SIGN NYIN-DO..LEPCHA CONSONANT SIGN KANG\r\n\t\t0x1CE1 == code || // Mc VEDIC TONE ATHARVAVEDIC INDEPENDENT SVARITA\r\n\t\t(0x1CF2 <= code && code <= 0x1CF3) || // Mc [2] VEDIC SIGN ARDHAVISARGA..VEDIC SIGN ROTATED ARDHAVISARGA\r\n\t\t0x1CF7 == code || // Mc VEDIC SIGN ATIKRAMA\r\n\t\t(0xA823 <= code && code <= 0xA824) || // Mc [2] SYLOTI NAGRI VOWEL SIGN A..SYLOTI NAGRI VOWEL SIGN I\r\n\t\t0xA827 == code || // Mc SYLOTI NAGRI VOWEL SIGN OO\r\n\t\t(0xA880 <= code && code <= 0xA881) || // Mc [2] SAURASHTRA SIGN ANUSVARA..SAURASHTRA SIGN VISARGA\r\n\t\t(0xA8B4 <= code && code <= 0xA8C3) || // Mc [16] SAURASHTRA CONSONANT SIGN HAARU..SAURASHTRA VOWEL SIGN AU\r\n\t\t(0xA952 <= code && code <= 0xA953) || // Mc [2] REJANG CONSONANT SIGN H..REJANG VIRAMA\r\n\t\t0xA983 == code || // Mc JAVANESE SIGN WIGNYAN\r\n\t\t(0xA9B4 <= code && code <= 0xA9B5) || // Mc [2] JAVANESE VOWEL SIGN TARUNG..JAVANESE VOWEL SIGN TOLONG\r\n\t\t(0xA9BA <= code && code <= 0xA9BB) || // Mc [2] JAVANESE VOWEL SIGN TALING..JAVANESE VOWEL SIGN DIRGA MURE\r\n\t\t(0xA9BD <= code && code <= 0xA9C0) || // Mc [4] JAVANESE CONSONANT SIGN KERET..JAVANESE PANGKON\r\n\t\t(0xAA2F <= code && code <= 0xAA30) || // Mc [2] CHAM VOWEL SIGN O..CHAM VOWEL SIGN AI\r\n\t\t(0xAA33 <= code && code <= 0xAA34) || // Mc [2] CHAM CONSONANT SIGN YA..CHAM CONSONANT SIGN RA\r\n\t\t0xAA4D == code || // Mc CHAM CONSONANT SIGN FINAL H\r\n\t\t0xAAEB == code || // Mc MEETEI MAYEK VOWEL SIGN II\r\n\t\t(0xAAEE <= code && code <= 0xAAEF) || // Mc [2] MEETEI MAYEK VOWEL SIGN AU..MEETEI MAYEK VOWEL SIGN AAU\r\n\t\t0xAAF5 == code || // Mc MEETEI MAYEK VOWEL SIGN VISARGA\r\n\t\t(0xABE3 <= code && code <= 0xABE4) || // Mc [2] MEETEI MAYEK VOWEL SIGN ONAP..MEETEI MAYEK VOWEL SIGN INAP\r\n\t\t(0xABE6 <= code && code <= 0xABE7) || // Mc [2] MEETEI MAYEK VOWEL SIGN YENAP..MEETEI MAYEK VOWEL SIGN SOUNAP\r\n\t\t(0xABE9 <= code && code <= 0xABEA) || // Mc [2] MEETEI MAYEK VOWEL SIGN CHEINAP..MEETEI MAYEK VOWEL SIGN NUNG\r\n\t\t0xABEC == code || // Mc MEETEI MAYEK LUM IYEK\r\n\t\t0x11000 == code || // Mc BRAHMI SIGN CANDRABINDU\r\n\t\t0x11002 == code || // Mc BRAHMI SIGN VISARGA\r\n\t\t0x11082 == code || // Mc KAITHI SIGN VISARGA\r\n\t\t(0x110B0 <= code && code <= 0x110B2) || // Mc [3] KAITHI VOWEL SIGN AA..KAITHI VOWEL SIGN II\r\n\t\t(0x110B7 <= code && code <= 0x110B8) || // Mc [2] KAITHI VOWEL SIGN O..KAITHI VOWEL SIGN AU\r\n\t\t0x1112C == code || // Mc CHAKMA VOWEL SIGN E\r\n\t\t0x11182 == code || // Mc SHARADA SIGN VISARGA\r\n\t\t(0x111B3 <= code && code <= 0x111B5) || // Mc [3] SHARADA VOWEL SIGN AA..SHARADA VOWEL SIGN II\r\n\t\t(0x111BF <= code && code <= 0x111C0) || // Mc [2] SHARADA VOWEL SIGN AU..SHARADA SIGN VIRAMA\r\n\t\t(0x1122C <= code && code <= 0x1122E) || // Mc [3] KHOJKI VOWEL SIGN AA..KHOJKI VOWEL SIGN II\r\n\t\t(0x11232 <= code && code <= 0x11233) || // Mc [2] KHOJKI VOWEL SIGN O..KHOJKI VOWEL SIGN AU\r\n\t\t0x11235 == code || // Mc KHOJKI SIGN VIRAMA\r\n\t\t(0x112E0 <= code && code <= 0x112E2) || // Mc [3] KHUDAWADI VOWEL SIGN AA..KHUDAWADI VOWEL SIGN II\r\n\t\t(0x11302 <= code && code <= 0x11303) || // Mc [2] GRANTHA SIGN ANUSVARA..GRANTHA SIGN VISARGA\r\n\t\t0x1133F == code || // Mc GRANTHA VOWEL SIGN I\r\n\t\t(0x11341 <= code && code <= 0x11344) || // Mc [4] GRANTHA VOWEL SIGN U..GRANTHA VOWEL SIGN VOCALIC RR\r\n\t\t(0x11347 <= code && code <= 0x11348) || // Mc [2] GRANTHA VOWEL SIGN EE..GRANTHA VOWEL SIGN AI\r\n\t\t(0x1134B <= code && code <= 0x1134D) || // Mc [3] GRANTHA VOWEL SIGN OO..GRANTHA SIGN VIRAMA\r\n\t\t(0x11362 <= code && code <= 0x11363) || // Mc [2] GRANTHA VOWEL SIGN VOCALIC L..GRANTHA VOWEL SIGN VOCALIC LL\r\n\t\t(0x11435 <= code && code <= 0x11437) || // Mc [3] NEWA VOWEL SIGN AA..NEWA VOWEL SIGN II\r\n\t\t(0x11440 <= code && code <= 0x11441) || // Mc [2] NEWA VOWEL SIGN O..NEWA VOWEL SIGN AU\r\n\t\t0x11445 == code || // Mc NEWA SIGN VISARGA\r\n\t\t(0x114B1 <= code && code <= 0x114B2) || // Mc [2] TIRHUTA VOWEL SIGN I..TIRHUTA VOWEL SIGN II\r\n\t\t0x114B9 == code || // Mc TIRHUTA VOWEL SIGN E\r\n\t\t(0x114BB <= code && code <= 0x114BC) || // Mc [2] TIRHUTA VOWEL SIGN AI..TIRHUTA VOWEL SIGN O\r\n\t\t0x114BE == code || // Mc TIRHUTA VOWEL SIGN AU\r\n\t\t0x114C1 == code || // Mc TIRHUTA SIGN VISARGA\r\n\t\t(0x115B0 <= code && code <= 0x115B1) || // Mc [2] SIDDHAM VOWEL SIGN I..SIDDHAM VOWEL SIGN II\r\n\t\t(0x115B8 <= code && code <= 0x115BB) || // Mc [4] SIDDHAM VOWEL SIGN E..SIDDHAM VOWEL SIGN AU\r\n\t\t0x115BE == code || // Mc SIDDHAM SIGN VISARGA\r\n\t\t(0x11630 <= code && code <= 0x11632) || // Mc [3] MODI VOWEL SIGN AA..MODI VOWEL SIGN II\r\n\t\t(0x1163B <= code && code <= 0x1163C) || // Mc [2] MODI VOWEL SIGN O..MODI VOWEL SIGN AU\r\n\t\t0x1163E == code || // Mc MODI SIGN VISARGA\r\n\t\t0x116AC == code || // Mc TAKRI SIGN VISARGA\r\n\t\t(0x116AE <= code && code <= 0x116AF) || // Mc [2] TAKRI VOWEL SIGN I..TAKRI VOWEL SIGN II\r\n\t\t0x116B6 == code || // Mc TAKRI SIGN VIRAMA\r\n\t\t(0x11720 <= code && code <= 0x11721) || // Mc [2] AHOM VOWEL SIGN A..AHOM VOWEL SIGN AA\r\n\t\t0x11726 == code || // Mc AHOM VOWEL SIGN E\r\n\t\t(0x11A07 <= code && code <= 0x11A08) || // Mc [2] ZANABAZAR SQUARE VOWEL SIGN AI..ZANABAZAR SQUARE VOWEL SIGN AU\r\n\t\t0x11A39 == code || // Mc ZANABAZAR SQUARE SIGN VISARGA\r\n\t\t(0x11A57 <= code && code <= 0x11A58) || // Mc [2] SOYOMBO VOWEL SIGN AI..SOYOMBO VOWEL SIGN AU\r\n\t\t0x11A97 == code || // Mc SOYOMBO SIGN VISARGA\r\n\t\t0x11C2F == code || // Mc BHAIKSUKI VOWEL SIGN AA\r\n\t\t0x11C3E == code || // Mc BHAIKSUKI SIGN VISARGA\r\n\t\t0x11CA9 == code || // Mc MARCHEN SUBJOINED LETTER YA\r\n\t\t0x11CB1 == code || // Mc MARCHEN VOWEL SIGN I\r\n\t\t0x11CB4 == code || // Mc MARCHEN VOWEL SIGN O\r\n\t\t(0x16F51 <= code && code <= 0x16F7E) || // Mc [46] MIAO SIGN ASPIRATION..MIAO VOWEL SIGN NG\r\n\t\t0x1D166 == code || // Mc MUSICAL SYMBOL COMBINING SPRECHGESANG STEM\r\n\t\t0x1D16D == code // Mc MUSICAL SYMBOL COMBINING AUGMENTATION DOT\r\n\t\t){\r\n\t\t\treturn SpacingMark;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\tif(\r\n\t\t(0x1100 <= code && code <= 0x115F) || // Lo [96] HANGUL CHOSEONG KIYEOK..HANGUL CHOSEONG FILLER\r\n\t\t(0xA960 <= code && code <= 0xA97C) // Lo [29] HANGUL CHOSEONG TIKEUT-MIEUM..HANGUL CHOSEONG SSANGYEORINHIEUH\r\n\t\t){\r\n\t\t\treturn L;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t(0x1160 <= code && code <= 0x11A7) || // Lo [72] HANGUL JUNGSEONG FILLER..HANGUL JUNGSEONG O-YAE\r\n\t\t(0xD7B0 <= code && code <= 0xD7C6) // Lo [23] HANGUL JUNGSEONG O-YEO..HANGUL JUNGSEONG ARAEA-E\r\n\t\t){\r\n\t\t\treturn V;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\tif(\r\n\t\t(0x11A8 <= code && code <= 0x11FF) || // Lo [88] HANGUL JONGSEONG KIYEOK..HANGUL JONGSEONG SSANGNIEUN\r\n\t\t(0xD7CB <= code && code <= 0xD7FB) // Lo [49] HANGUL JONGSEONG NIEUN-RIEUL..HANGUL JONGSEONG PHIEUPH-THIEUTH\r\n\t\t){\r\n\t\t\treturn T;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t0xAC00 == code || // Lo HANGUL SYLLABLE GA\r\n\t\t0xAC1C == code || // Lo HANGUL SYLLABLE GAE\r\n\t\t0xAC38 == code || // Lo HANGUL SYLLABLE GYA\r\n\t\t0xAC54 == code || // Lo HANGUL SYLLABLE GYAE\r\n\t\t0xAC70 == code || // Lo HANGUL SYLLABLE GEO\r\n\t\t0xAC8C == code || // Lo HANGUL SYLLABLE GE\r\n\t\t0xACA8 == code || // Lo HANGUL SYLLABLE GYEO\r\n\t\t0xACC4 == code || // Lo HANGUL SYLLABLE GYE\r\n\t\t0xACE0 == code || // Lo HANGUL SYLLABLE GO\r\n\t\t0xACFC == code || // Lo HANGUL SYLLABLE GWA\r\n\t\t0xAD18 == code || // Lo HANGUL SYLLABLE GWAE\r\n\t\t0xAD34 == code || // Lo HANGUL SYLLABLE GOE\r\n\t\t0xAD50 == code || // Lo HANGUL SYLLABLE GYO\r\n\t\t0xAD6C == code || // Lo HANGUL SYLLABLE GU\r\n\t\t0xAD88 == code || // Lo HANGUL SYLLABLE GWEO\r\n\t\t0xADA4 == code || // Lo HANGUL SYLLABLE GWE\r\n\t\t0xADC0 == code || // Lo HANGUL SYLLABLE GWI\r\n\t\t0xADDC == code || // Lo HANGUL SYLLABLE GYU\r\n\t\t0xADF8 == code || // Lo HANGUL SYLLABLE GEU\r\n\t\t0xAE14 == code || // Lo HANGUL SYLLABLE GYI\r\n\t\t0xAE30 == code || // Lo HANGUL SYLLABLE GI\r\n\t\t0xAE4C == code || // Lo HANGUL SYLLABLE GGA\r\n\t\t0xAE68 == code || // Lo HANGUL SYLLABLE GGAE\r\n\t\t0xAE84 == code || // Lo HANGUL SYLLABLE GGYA\r\n\t\t0xAEA0 == code || // Lo HANGUL SYLLABLE GGYAE\r\n\t\t0xAEBC == code || // Lo HANGUL SYLLABLE GGEO\r\n\t\t0xAED8 == code || // Lo HANGUL SYLLABLE GGE\r\n\t\t0xAEF4 == code || // Lo HANGUL SYLLABLE GGYEO\r\n\t\t0xAF10 == code || // Lo HANGUL SYLLABLE GGYE\r\n\t\t0xAF2C == code || // Lo HANGUL SYLLABLE GGO\r\n\t\t0xAF48 == code || // Lo HANGUL SYLLABLE GGWA\r\n\t\t0xAF64 == code || // Lo HANGUL SYLLABLE GGWAE\r\n\t\t0xAF80 == code || // Lo HANGUL SYLLABLE GGOE\r\n\t\t0xAF9C == code || // Lo HANGUL SYLLABLE GGYO\r\n\t\t0xAFB8 == code || // Lo HANGUL SYLLABLE GGU\r\n\t\t0xAFD4 == code || // Lo HANGUL SYLLABLE GGWEO\r\n\t\t0xAFF0 == code || // Lo HANGUL SYLLABLE GGWE\r\n\t\t0xB00C == code || // Lo HANGUL SYLLABLE GGWI\r\n\t\t0xB028 == code || // Lo HANGUL SYLLABLE GGYU\r\n\t\t0xB044 == code || // Lo HANGUL SYLLABLE GGEU\r\n\t\t0xB060 == code || // Lo HANGUL SYLLABLE GGYI\r\n\t\t0xB07C == code || // Lo HANGUL SYLLABLE GGI\r\n\t\t0xB098 == code || // Lo HANGUL SYLLABLE NA\r\n\t\t0xB0B4 == code || // Lo HANGUL SYLLABLE NAE\r\n\t\t0xB0D0 == code || // Lo HANGUL SYLLABLE NYA\r\n\t\t0xB0EC == code || // Lo HANGUL SYLLABLE NYAE\r\n\t\t0xB108 == code || // Lo HANGUL SYLLABLE NEO\r\n\t\t0xB124 == code || // Lo HANGUL SYLLABLE NE\r\n\t\t0xB140 == code || // Lo HANGUL SYLLABLE NYEO\r\n\t\t0xB15C == code || // Lo HANGUL SYLLABLE NYE\r\n\t\t0xB178 == code || // Lo HANGUL SYLLABLE NO\r\n\t\t0xB194 == code || // Lo HANGUL SYLLABLE NWA\r\n\t\t0xB1B0 == code || // Lo HANGUL SYLLABLE NWAE\r\n\t\t0xB1CC == code || // Lo HANGUL SYLLABLE NOE\r\n\t\t0xB1E8 == code || // Lo HANGUL SYLLABLE NYO\r\n\t\t0xB204 == code || // Lo HANGUL SYLLABLE NU\r\n\t\t0xB220 == code || // Lo HANGUL SYLLABLE NWEO\r\n\t\t0xB23C == code || // Lo HANGUL SYLLABLE NWE\r\n\t\t0xB258 == code || // Lo HANGUL SYLLABLE NWI\r\n\t\t0xB274 == code || // Lo HANGUL SYLLABLE NYU\r\n\t\t0xB290 == code || // Lo HANGUL SYLLABLE NEU\r\n\t\t0xB2AC == code || // Lo HANGUL SYLLABLE NYI\r\n\t\t0xB2C8 == code || // Lo HANGUL SYLLABLE NI\r\n\t\t0xB2E4 == code || // Lo HANGUL SYLLABLE DA\r\n\t\t0xB300 == code || // Lo HANGUL SYLLABLE DAE\r\n\t\t0xB31C == code || // Lo HANGUL SYLLABLE DYA\r\n\t\t0xB338 == code || // Lo HANGUL SYLLABLE DYAE\r\n\t\t0xB354 == code || // Lo HANGUL SYLLABLE DEO\r\n\t\t0xB370 == code || // Lo HANGUL SYLLABLE DE\r\n\t\t0xB38C == code || // Lo HANGUL SYLLABLE DYEO\r\n\t\t0xB3A8 == code || // Lo HANGUL SYLLABLE DYE\r\n\t\t0xB3C4 == code || // Lo HANGUL SYLLABLE DO\r\n\t\t0xB3E0 == code || // Lo HANGUL SYLLABLE DWA\r\n\t\t0xB3FC == code || // Lo HANGUL SYLLABLE DWAE\r\n\t\t0xB418 == code || // Lo HANGUL SYLLABLE DOE\r\n\t\t0xB434 == code || // Lo HANGUL SYLLABLE DYO\r\n\t\t0xB450 == code || // Lo HANGUL SYLLABLE DU\r\n\t\t0xB46C == code || // Lo HANGUL SYLLABLE DWEO\r\n\t\t0xB488 == code || // Lo HANGUL SYLLABLE DWE\r\n\t\t0xB4A4 == code || // Lo HANGUL SYLLABLE DWI\r\n\t\t0xB4C0 == code || // Lo HANGUL SYLLABLE DYU\r\n\t\t0xB4DC == code || // Lo HANGUL SYLLABLE DEU\r\n\t\t0xB4F8 == code || // Lo HANGUL SYLLABLE DYI\r\n\t\t0xB514 == code || // Lo HANGUL SYLLABLE DI\r\n\t\t0xB530 == code || // Lo HANGUL SYLLABLE DDA\r\n\t\t0xB54C == code || // Lo HANGUL SYLLABLE DDAE\r\n\t\t0xB568 == code || // Lo HANGUL SYLLABLE DDYA\r\n\t\t0xB584 == code || // Lo HANGUL SYLLABLE DDYAE\r\n\t\t0xB5A0 == code || // Lo HANGUL SYLLABLE DDEO\r\n\t\t0xB5BC == code || // Lo HANGUL SYLLABLE DDE\r\n\t\t0xB5D8 == code || // Lo HANGUL SYLLABLE DDYEO\r\n\t\t0xB5F4 == code || // Lo HANGUL SYLLABLE DDYE\r\n\t\t0xB610 == code || // Lo HANGUL SYLLABLE DDO\r\n\t\t0xB62C == code || // Lo HANGUL SYLLABLE DDWA\r\n\t\t0xB648 == code || // Lo HANGUL SYLLABLE DDWAE\r\n\t\t0xB664 == code || // Lo HANGUL SYLLABLE DDOE\r\n\t\t0xB680 == code || // Lo HANGUL SYLLABLE DDYO\r\n\t\t0xB69C == code || // Lo HANGUL SYLLABLE DDU\r\n\t\t0xB6B8 == code || // Lo HANGUL SYLLABLE DDWEO\r\n\t\t0xB6D4 == code || // Lo HANGUL SYLLABLE DDWE\r\n\t\t0xB6F0 == code || // Lo HANGUL SYLLABLE DDWI\r\n\t\t0xB70C == code || // Lo HANGUL SYLLABLE DDYU\r\n\t\t0xB728 == code || // Lo HANGUL SYLLABLE DDEU\r\n\t\t0xB744 == code || // Lo HANGUL SYLLABLE DDYI\r\n\t\t0xB760 == code || // Lo HANGUL SYLLABLE DDI\r\n\t\t0xB77C == code || // Lo HANGUL SYLLABLE RA\r\n\t\t0xB798 == code || // Lo HANGUL SYLLABLE RAE\r\n\t\t0xB7B4 == code || // Lo HANGUL SYLLABLE RYA\r\n\t\t0xB7D0 == code || // Lo HANGUL SYLLABLE RYAE\r\n\t\t0xB7EC == code || // Lo HANGUL SYLLABLE REO\r\n\t\t0xB808 == code || // Lo HANGUL SYLLABLE RE\r\n\t\t0xB824 == code || // Lo HANGUL SYLLABLE RYEO\r\n\t\t0xB840 == code || // Lo HANGUL SYLLABLE RYE\r\n\t\t0xB85C == code || // Lo HANGUL SYLLABLE RO\r\n\t\t0xB878 == code || // Lo HANGUL SYLLABLE RWA\r\n\t\t0xB894 == code || // Lo HANGUL SYLLABLE RWAE\r\n\t\t0xB8B0 == code || // Lo HANGUL SYLLABLE ROE\r\n\t\t0xB8CC == code || // Lo HANGUL SYLLABLE RYO\r\n\t\t0xB8E8 == code || // Lo HANGUL SYLLABLE RU\r\n\t\t0xB904 == code || // Lo HANGUL SYLLABLE RWEO\r\n\t\t0xB920 == code || // Lo HANGUL SYLLABLE RWE\r\n\t\t0xB93C == code || // Lo HANGUL SYLLABLE RWI\r\n\t\t0xB958 == code || // Lo HANGUL SYLLABLE RYU\r\n\t\t0xB974 == code || // Lo HANGUL SYLLABLE REU\r\n\t\t0xB990 == code || // Lo HANGUL SYLLABLE RYI\r\n\t\t0xB9AC == code || // Lo HANGUL SYLLABLE RI\r\n\t\t0xB9C8 == code || // Lo HANGUL SYLLABLE MA\r\n\t\t0xB9E4 == code || // Lo HANGUL SYLLABLE MAE\r\n\t\t0xBA00 == code || // Lo HANGUL SYLLABLE MYA\r\n\t\t0xBA1C == code || // Lo HANGUL SYLLABLE MYAE\r\n\t\t0xBA38 == code || // Lo HANGUL SYLLABLE MEO\r\n\t\t0xBA54 == code || // Lo HANGUL SYLLABLE ME\r\n\t\t0xBA70 == code || // Lo HANGUL SYLLABLE MYEO\r\n\t\t0xBA8C == code || // Lo HANGUL SYLLABLE MYE\r\n\t\t0xBAA8 == code || // Lo HANGUL SYLLABLE MO\r\n\t\t0xBAC4 == code || // Lo HANGUL SYLLABLE MWA\r\n\t\t0xBAE0 == code || // Lo HANGUL SYLLABLE MWAE\r\n\t\t0xBAFC == code || // Lo HANGUL SYLLABLE MOE\r\n\t\t0xBB18 == code || // Lo HANGUL SYLLABLE MYO\r\n\t\t0xBB34 == code || // Lo HANGUL SYLLABLE MU\r\n\t\t0xBB50 == code || // Lo HANGUL SYLLABLE MWEO\r\n\t\t0xBB6C == code || // Lo HANGUL SYLLABLE MWE\r\n\t\t0xBB88 == code || // Lo HANGUL SYLLABLE MWI\r\n\t\t0xBBA4 == code || // Lo HANGUL SYLLABLE MYU\r\n\t\t0xBBC0 == code || // Lo HANGUL SYLLABLE MEU\r\n\t\t0xBBDC == code || // Lo HANGUL SYLLABLE MYI\r\n\t\t0xBBF8 == code || // Lo HANGUL SYLLABLE MI\r\n\t\t0xBC14 == code || // Lo HANGUL SYLLABLE BA\r\n\t\t0xBC30 == code || // Lo HANGUL SYLLABLE BAE\r\n\t\t0xBC4C == code || // Lo HANGUL SYLLABLE BYA\r\n\t\t0xBC68 == code || // Lo HANGUL SYLLABLE BYAE\r\n\t\t0xBC84 == code || // Lo HANGUL SYLLABLE BEO\r\n\t\t0xBCA0 == code || // Lo HANGUL SYLLABLE BE\r\n\t\t0xBCBC == code || // Lo HANGUL SYLLABLE BYEO\r\n\t\t0xBCD8 == code || // Lo HANGUL SYLLABLE BYE\r\n\t\t0xBCF4 == code || // Lo HANGUL SYLLABLE BO\r\n\t\t0xBD10 == code || // Lo HANGUL SYLLABLE BWA\r\n\t\t0xBD2C == code || // Lo HANGUL SYLLABLE BWAE\r\n\t\t0xBD48 == code || // Lo HANGUL SYLLABLE BOE\r\n\t\t0xBD64 == code || // Lo HANGUL SYLLABLE BYO\r\n\t\t0xBD80 == code || // Lo HANGUL SYLLABLE BU\r\n\t\t0xBD9C == code || // Lo HANGUL SYLLABLE BWEO\r\n\t\t0xBDB8 == code || // Lo HANGUL SYLLABLE BWE\r\n\t\t0xBDD4 == code || // Lo HANGUL SYLLABLE BWI\r\n\t\t0xBDF0 == code || // Lo HANGUL SYLLABLE BYU\r\n\t\t0xBE0C == code || // Lo HANGUL SYLLABLE BEU\r\n\t\t0xBE28 == code || // Lo HANGUL SYLLABLE BYI\r\n\t\t0xBE44 == code || // Lo HANGUL SYLLABLE BI\r\n\t\t0xBE60 == code || // Lo HANGUL SYLLABLE BBA\r\n\t\t0xBE7C == code || // Lo HANGUL SYLLABLE BBAE\r\n\t\t0xBE98 == code || // Lo HANGUL SYLLABLE BBYA\r\n\t\t0xBEB4 == code || // Lo HANGUL SYLLABLE BBYAE\r\n\t\t0xBED0 == code || // Lo HANGUL SYLLABLE BBEO\r\n\t\t0xBEEC == code || // Lo HANGUL SYLLABLE BBE\r\n\t\t0xBF08 == code || // Lo HANGUL SYLLABLE BBYEO\r\n\t\t0xBF24 == code || // Lo HANGUL SYLLABLE BBYE\r\n\t\t0xBF40 == code || // Lo HANGUL SYLLABLE BBO\r\n\t\t0xBF5C == code || // Lo HANGUL SYLLABLE BBWA\r\n\t\t0xBF78 == code || // Lo HANGUL SYLLABLE BBWAE\r\n\t\t0xBF94 == code || // Lo HANGUL SYLLABLE BBOE\r\n\t\t0xBFB0 == code || // Lo HANGUL SYLLABLE BBYO\r\n\t\t0xBFCC == code || // Lo HANGUL SYLLABLE BBU\r\n\t\t0xBFE8 == code || // Lo HANGUL SYLLABLE BBWEO\r\n\t\t0xC004 == code || // Lo HANGUL SYLLABLE BBWE\r\n\t\t0xC020 == code || // Lo HANGUL SYLLABLE BBWI\r\n\t\t0xC03C == code || // Lo HANGUL SYLLABLE BBYU\r\n\t\t0xC058 == code || // Lo HANGUL SYLLABLE BBEU\r\n\t\t0xC074 == code || // Lo HANGUL SYLLABLE BBYI\r\n\t\t0xC090 == code || // Lo HANGUL SYLLABLE BBI\r\n\t\t0xC0AC == code || // Lo HANGUL SYLLABLE SA\r\n\t\t0xC0C8 == code || // Lo HANGUL SYLLABLE SAE\r\n\t\t0xC0E4 == code || // Lo HANGUL SYLLABLE SYA\r\n\t\t0xC100 == code || // Lo HANGUL SYLLABLE SYAE\r\n\t\t0xC11C == code || // Lo HANGUL SYLLABLE SEO\r\n\t\t0xC138 == code || // Lo HANGUL SYLLABLE SE\r\n\t\t0xC154 == code || // Lo HANGUL SYLLABLE SYEO\r\n\t\t0xC170 == code || // Lo HANGUL SYLLABLE SYE\r\n\t\t0xC18C == code || // Lo HANGUL SYLLABLE SO\r\n\t\t0xC1A8 == code || // Lo HANGUL SYLLABLE SWA\r\n\t\t0xC1C4 == code || // Lo HANGUL SYLLABLE SWAE\r\n\t\t0xC1E0 == code || // Lo HANGUL SYLLABLE SOE\r\n\t\t0xC1FC == code || // Lo HANGUL SYLLABLE SYO\r\n\t\t0xC218 == code || // Lo HANGUL SYLLABLE SU\r\n\t\t0xC234 == code || // Lo HANGUL SYLLABLE SWEO\r\n\t\t0xC250 == code || // Lo HANGUL SYLLABLE SWE\r\n\t\t0xC26C == code || // Lo HANGUL SYLLABLE SWI\r\n\t\t0xC288 == code || // Lo HANGUL SYLLABLE SYU\r\n\t\t0xC2A4 == code || // Lo HANGUL SYLLABLE SEU\r\n\t\t0xC2C0 == code || // Lo HANGUL SYLLABLE SYI\r\n\t\t0xC2DC == code || // Lo HANGUL SYLLABLE SI\r\n\t\t0xC2F8 == code || // Lo HANGUL SYLLABLE SSA\r\n\t\t0xC314 == code || // Lo HANGUL SYLLABLE SSAE\r\n\t\t0xC330 == code || // Lo HANGUL SYLLABLE SSYA\r\n\t\t0xC34C == code || // Lo HANGUL SYLLABLE SSYAE\r\n\t\t0xC368 == code || // Lo HANGUL SYLLABLE SSEO\r\n\t\t0xC384 == code || // Lo HANGUL SYLLABLE SSE\r\n\t\t0xC3A0 == code || // Lo HANGUL SYLLABLE SSYEO\r\n\t\t0xC3BC == code || // Lo HANGUL SYLLABLE SSYE\r\n\t\t0xC3D8 == code || // Lo HANGUL SYLLABLE SSO\r\n\t\t0xC3F4 == code || // Lo HANGUL SYLLABLE SSWA\r\n\t\t0xC410 == code || // Lo HANGUL SYLLABLE SSWAE\r\n\t\t0xC42C == code || // Lo HANGUL SYLLABLE SSOE\r\n\t\t0xC448 == code || // Lo HANGUL SYLLABLE SSYO\r\n\t\t0xC464 == code || // Lo HANGUL SYLLABLE SSU\r\n\t\t0xC480 == code || // Lo HANGUL SYLLABLE SSWEO\r\n\t\t0xC49C == code || // Lo HANGUL SYLLABLE SSWE\r\n\t\t0xC4B8 == code || // Lo HANGUL SYLLABLE SSWI\r\n\t\t0xC4D4 == code || // Lo HANGUL SYLLABLE SSYU\r\n\t\t0xC4F0 == code || // Lo HANGUL SYLLABLE SSEU\r\n\t\t0xC50C == code || // Lo HANGUL SYLLABLE SSYI\r\n\t\t0xC528 == code || // Lo HANGUL SYLLABLE SSI\r\n\t\t0xC544 == code || // Lo HANGUL SYLLABLE A\r\n\t\t0xC560 == code || // Lo HANGUL SYLLABLE AE\r\n\t\t0xC57C == code || // Lo HANGUL SYLLABLE YA\r\n\t\t0xC598 == code || // Lo HANGUL SYLLABLE YAE\r\n\t\t0xC5B4 == code || // Lo HANGUL SYLLABLE EO\r\n\t\t0xC5D0 == code || // Lo HANGUL SYLLABLE E\r\n\t\t0xC5EC == code || // Lo HANGUL SYLLABLE YEO\r\n\t\t0xC608 == code || // Lo HANGUL SYLLABLE YE\r\n\t\t0xC624 == code || // Lo HANGUL SYLLABLE O\r\n\t\t0xC640 == code || // Lo HANGUL SYLLABLE WA\r\n\t\t0xC65C == code || // Lo HANGUL SYLLABLE WAE\r\n\t\t0xC678 == code || // Lo HANGUL SYLLABLE OE\r\n\t\t0xC694 == code || // Lo HANGUL SYLLABLE YO\r\n\t\t0xC6B0 == code || // Lo HANGUL SYLLABLE U\r\n\t\t0xC6CC == code || // Lo HANGUL SYLLABLE WEO\r\n\t\t0xC6E8 == code || // Lo HANGUL SYLLABLE WE\r\n\t\t0xC704 == code || // Lo HANGUL SYLLABLE WI\r\n\t\t0xC720 == code || // Lo HANGUL SYLLABLE YU\r\n\t\t0xC73C == code || // Lo HANGUL SYLLABLE EU\r\n\t\t0xC758 == code || // Lo HANGUL SYLLABLE YI\r\n\t\t0xC774 == code || // Lo HANGUL SYLLABLE I\r\n\t\t0xC790 == code || // Lo HANGUL SYLLABLE JA\r\n\t\t0xC7AC == code || // Lo HANGUL SYLLABLE JAE\r\n\t\t0xC7C8 == code || // Lo HANGUL SYLLABLE JYA\r\n\t\t0xC7E4 == code || // Lo HANGUL SYLLABLE JYAE\r\n\t\t0xC800 == code || // Lo HANGUL SYLLABLE JEO\r\n\t\t0xC81C == code || // Lo HANGUL SYLLABLE JE\r\n\t\t0xC838 == code || // Lo HANGUL SYLLABLE JYEO\r\n\t\t0xC854 == code || // Lo HANGUL SYLLABLE JYE\r\n\t\t0xC870 == code || // Lo HANGUL SYLLABLE JO\r\n\t\t0xC88C == code || // Lo HANGUL SYLLABLE JWA\r\n\t\t0xC8A8 == code || // Lo HANGUL SYLLABLE JWAE\r\n\t\t0xC8C4 == code || // Lo HANGUL SYLLABLE JOE\r\n\t\t0xC8E0 == code || // Lo HANGUL SYLLABLE JYO\r\n\t\t0xC8FC == code || // Lo HANGUL SYLLABLE JU\r\n\t\t0xC918 == code || // Lo HANGUL SYLLABLE JWEO\r\n\t\t0xC934 == code || // Lo HANGUL SYLLABLE JWE\r\n\t\t0xC950 == code || // Lo HANGUL SYLLABLE JWI\r\n\t\t0xC96C == code || // Lo HANGUL SYLLABLE JYU\r\n\t\t0xC988 == code || // Lo HANGUL SYLLABLE JEU\r\n\t\t0xC9A4 == code || // Lo HANGUL SYLLABLE JYI\r\n\t\t0xC9C0 == code || // Lo HANGUL SYLLABLE JI\r\n\t\t0xC9DC == code || // Lo HANGUL SYLLABLE JJA\r\n\t\t0xC9F8 == code || // Lo HANGUL SYLLABLE JJAE\r\n\t\t0xCA14 == code || // Lo HANGUL SYLLABLE JJYA\r\n\t\t0xCA30 == code || // Lo HANGUL SYLLABLE JJYAE\r\n\t\t0xCA4C == code || // Lo HANGUL SYLLABLE JJEO\r\n\t\t0xCA68 == code || // Lo HANGUL SYLLABLE JJE\r\n\t\t0xCA84 == code || // Lo HANGUL SYLLABLE JJYEO\r\n\t\t0xCAA0 == code || // Lo HANGUL SYLLABLE JJYE\r\n\t\t0xCABC == code || // Lo HANGUL SYLLABLE JJO\r\n\t\t0xCAD8 == code || // Lo HANGUL SYLLABLE JJWA\r\n\t\t0xCAF4 == code || // Lo HANGUL SYLLABLE JJWAE\r\n\t\t0xCB10 == code || // Lo HANGUL SYLLABLE JJOE\r\n\t\t0xCB2C == code || // Lo HANGUL SYLLABLE JJYO\r\n\t\t0xCB48 == code || // Lo HANGUL SYLLABLE JJU\r\n\t\t0xCB64 == code || // Lo HANGUL SYLLABLE JJWEO\r\n\t\t0xCB80 == code || // Lo HANGUL SYLLABLE JJWE\r\n\t\t0xCB9C == code || // Lo HANGUL SYLLABLE JJWI\r\n\t\t0xCBB8 == code || // Lo HANGUL SYLLABLE JJYU\r\n\t\t0xCBD4 == code || // Lo HANGUL SYLLABLE JJEU\r\n\t\t0xCBF0 == code || // Lo HANGUL SYLLABLE JJYI\r\n\t\t0xCC0C == code || // Lo HANGUL SYLLABLE JJI\r\n\t\t0xCC28 == code || // Lo HANGUL SYLLABLE CA\r\n\t\t0xCC44 == code || // Lo HANGUL SYLLABLE CAE\r\n\t\t0xCC60 == code || // Lo HANGUL SYLLABLE CYA\r\n\t\t0xCC7C == code || // Lo HANGUL SYLLABLE CYAE\r\n\t\t0xCC98 == code || // Lo HANGUL SYLLABLE CEO\r\n\t\t0xCCB4 == code || // Lo HANGUL SYLLABLE CE\r\n\t\t0xCCD0 == code || // Lo HANGUL SYLLABLE CYEO\r\n\t\t0xCCEC == code || // Lo HANGUL SYLLABLE CYE\r\n\t\t0xCD08 == code || // Lo HANGUL SYLLABLE CO\r\n\t\t0xCD24 == code || // Lo HANGUL SYLLABLE CWA\r\n\t\t0xCD40 == code || // Lo HANGUL SYLLABLE CWAE\r\n\t\t0xCD5C == code || // Lo HANGUL SYLLABLE COE\r\n\t\t0xCD78 == code || // Lo HANGUL SYLLABLE CYO\r\n\t\t0xCD94 == code || // Lo HANGUL SYLLABLE CU\r\n\t\t0xCDB0 == code || // Lo HANGUL SYLLABLE CWEO\r\n\t\t0xCDCC == code || // Lo HANGUL SYLLABLE CWE\r\n\t\t0xCDE8 == code || // Lo HANGUL SYLLABLE CWI\r\n\t\t0xCE04 == code || // Lo HANGUL SYLLABLE CYU\r\n\t\t0xCE20 == code || // Lo HANGUL SYLLABLE CEU\r\n\t\t0xCE3C == code || // Lo HANGUL SYLLABLE CYI\r\n\t\t0xCE58 == code || // Lo HANGUL SYLLABLE CI\r\n\t\t0xCE74 == code || // Lo HANGUL SYLLABLE KA\r\n\t\t0xCE90 == code || // Lo HANGUL SYLLABLE KAE\r\n\t\t0xCEAC == code || // Lo HANGUL SYLLABLE KYA\r\n\t\t0xCEC8 == code || // Lo HANGUL SYLLABLE KYAE\r\n\t\t0xCEE4 == code || // Lo HANGUL SYLLABLE KEO\r\n\t\t0xCF00 == code || // Lo HANGUL SYLLABLE KE\r\n\t\t0xCF1C == code || // Lo HANGUL SYLLABLE KYEO\r\n\t\t0xCF38 == code || // Lo HANGUL SYLLABLE KYE\r\n\t\t0xCF54 == code || // Lo HANGUL SYLLABLE KO\r\n\t\t0xCF70 == code || // Lo HANGUL SYLLABLE KWA\r\n\t\t0xCF8C == code || // Lo HANGUL SYLLABLE KWAE\r\n\t\t0xCFA8 == code || // Lo HANGUL SYLLABLE KOE\r\n\t\t0xCFC4 == code || // Lo HANGUL SYLLABLE KYO\r\n\t\t0xCFE0 == code || // Lo HANGUL SYLLABLE KU\r\n\t\t0xCFFC == code || // Lo HANGUL SYLLABLE KWEO\r\n\t\t0xD018 == code || // Lo HANGUL SYLLABLE KWE\r\n\t\t0xD034 == code || // Lo HANGUL SYLLABLE KWI\r\n\t\t0xD050 == code || // Lo HANGUL SYLLABLE KYU\r\n\t\t0xD06C == code || // Lo HANGUL SYLLABLE KEU\r\n\t\t0xD088 == code || // Lo HANGUL SYLLABLE KYI\r\n\t\t0xD0A4 == code || // Lo HANGUL SYLLABLE KI\r\n\t\t0xD0C0 == code || // Lo HANGUL SYLLABLE TA\r\n\t\t0xD0DC == code || // Lo HANGUL SYLLABLE TAE\r\n\t\t0xD0F8 == code || // Lo HANGUL SYLLABLE TYA\r\n\t\t0xD114 == code || // Lo HANGUL SYLLABLE TYAE\r\n\t\t0xD130 == code || // Lo HANGUL SYLLABLE TEO\r\n\t\t0xD14C == code || // Lo HANGUL SYLLABLE TE\r\n\t\t0xD168 == code || // Lo HANGUL SYLLABLE TYEO\r\n\t\t0xD184 == code || // Lo HANGUL SYLLABLE TYE\r\n\t\t0xD1A0 == code || // Lo HANGUL SYLLABLE TO\r\n\t\t0xD1BC == code || // Lo HANGUL SYLLABLE TWA\r\n\t\t0xD1D8 == code || // Lo HANGUL SYLLABLE TWAE\r\n\t\t0xD1F4 == code || // Lo HANGUL SYLLABLE TOE\r\n\t\t0xD210 == code || // Lo HANGUL SYLLABLE TYO\r\n\t\t0xD22C == code || // Lo HANGUL SYLLABLE TU\r\n\t\t0xD248 == code || // Lo HANGUL SYLLABLE TWEO\r\n\t\t0xD264 == code || // Lo HANGUL SYLLABLE TWE\r\n\t\t0xD280 == code || // Lo HANGUL SYLLABLE TWI\r\n\t\t0xD29C == code || // Lo HANGUL SYLLABLE TYU\r\n\t\t0xD2B8 == code || // Lo HANGUL SYLLABLE TEU\r\n\t\t0xD2D4 == code || // Lo HANGUL SYLLABLE TYI\r\n\t\t0xD2F0 == code || // Lo HANGUL SYLLABLE TI\r\n\t\t0xD30C == code || // Lo HANGUL SYLLABLE PA\r\n\t\t0xD328 == code || // Lo HANGUL SYLLABLE PAE\r\n\t\t0xD344 == code || // Lo HANGUL SYLLABLE PYA\r\n\t\t0xD360 == code || // Lo HANGUL SYLLABLE PYAE\r\n\t\t0xD37C == code || // Lo HANGUL SYLLABLE PEO\r\n\t\t0xD398 == code || // Lo HANGUL SYLLABLE PE\r\n\t\t0xD3B4 == code || // Lo HANGUL SYLLABLE PYEO\r\n\t\t0xD3D0 == code || // Lo HANGUL SYLLABLE PYE\r\n\t\t0xD3EC == code || // Lo HANGUL SYLLABLE PO\r\n\t\t0xD408 == code || // Lo HANGUL SYLLABLE PWA\r\n\t\t0xD424 == code || // Lo HANGUL SYLLABLE PWAE\r\n\t\t0xD440 == code || // Lo HANGUL SYLLABLE POE\r\n\t\t0xD45C == code || // Lo HANGUL SYLLABLE PYO\r\n\t\t0xD478 == code || // Lo HANGUL SYLLABLE PU\r\n\t\t0xD494 == code || // Lo HANGUL SYLLABLE PWEO\r\n\t\t0xD4B0 == code || // Lo HANGUL SYLLABLE PWE\r\n\t\t0xD4CC == code || // Lo HANGUL SYLLABLE PWI\r\n\t\t0xD4E8 == code || // Lo HANGUL SYLLABLE PYU\r\n\t\t0xD504 == code || // Lo HANGUL SYLLABLE PEU\r\n\t\t0xD520 == code || // Lo HANGUL SYLLABLE PYI\r\n\t\t0xD53C == code || // Lo HANGUL SYLLABLE PI\r\n\t\t0xD558 == code || // Lo HANGUL SYLLABLE HA\r\n\t\t0xD574 == code || // Lo HANGUL SYLLABLE HAE\r\n\t\t0xD590 == code || // Lo HANGUL SYLLABLE HYA\r\n\t\t0xD5AC == code || // Lo HANGUL SYLLABLE HYAE\r\n\t\t0xD5C8 == code || // Lo HANGUL SYLLABLE HEO\r\n\t\t0xD5E4 == code || // Lo HANGUL SYLLABLE HE\r\n\t\t0xD600 == code || // Lo HANGUL SYLLABLE HYEO\r\n\t\t0xD61C == code || // Lo HANGUL SYLLABLE HYE\r\n\t\t0xD638 == code || // Lo HANGUL SYLLABLE HO\r\n\t\t0xD654 == code || // Lo HANGUL SYLLABLE HWA\r\n\t\t0xD670 == code || // Lo HANGUL SYLLABLE HWAE\r\n\t\t0xD68C == code || // Lo HANGUL SYLLABLE HOE\r\n\t\t0xD6A8 == code || // Lo HANGUL SYLLABLE HYO\r\n\t\t0xD6C4 == code || // Lo HANGUL SYLLABLE HU\r\n\t\t0xD6E0 == code || // Lo HANGUL SYLLABLE HWEO\r\n\t\t0xD6FC == code || // Lo HANGUL SYLLABLE HWE\r\n\t\t0xD718 == code || // Lo HANGUL SYLLABLE HWI\r\n\t\t0xD734 == code || // Lo HANGUL SYLLABLE HYU\r\n\t\t0xD750 == code || // Lo HANGUL SYLLABLE HEU\r\n\t\t0xD76C == code || // Lo HANGUL SYLLABLE HYI\r\n\t\t0xD788 == code // Lo HANGUL SYLLABLE HI\r\n\t\t){\r\n\t\t\treturn LV;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t(0xAC01 <= code && code <= 0xAC1B) || // Lo [27] HANGUL SYLLABLE GAG..HANGUL SYLLABLE GAH\r\n\t\t(0xAC1D <= code && code <= 0xAC37) || // Lo [27] HANGUL SYLLABLE GAEG..HANGUL SYLLABLE GAEH\r\n\t\t(0xAC39 <= code && code <= 0xAC53) || // Lo [27] HANGUL SYLLABLE GYAG..HANGUL SYLLABLE GYAH\r\n\t\t(0xAC55 <= code && code <= 0xAC6F) || // Lo [27] HANGUL SYLLABLE GYAEG..HANGUL SYLLABLE GYAEH\r\n\t\t(0xAC71 <= code && code <= 0xAC8B) || // Lo [27] HANGUL SYLLABLE GEOG..HANGUL SYLLABLE GEOH\r\n\t\t(0xAC8D <= code && code <= 0xACA7) || // Lo [27] HANGUL SYLLABLE GEG..HANGUL SYLLABLE GEH\r\n\t\t(0xACA9 <= code && code <= 0xACC3) || // Lo [27] HANGUL SYLLABLE GYEOG..HANGUL SYLLABLE GYEOH\r\n\t\t(0xACC5 <= code && code <= 0xACDF) || // Lo [27] HANGUL SYLLABLE GYEG..HANGUL SYLLABLE GYEH\r\n\t\t(0xACE1 <= code && code <= 0xACFB) || // Lo [27] HANGUL SYLLABLE GOG..HANGUL SYLLABLE GOH\r\n\t\t(0xACFD <= code && code <= 0xAD17) || // Lo [27] HANGUL SYLLABLE GWAG..HANGUL SYLLABLE GWAH\r\n\t\t(0xAD19 <= code && code <= 0xAD33) || // Lo [27] HANGUL SYLLABLE GWAEG..HANGUL SYLLABLE GWAEH\r\n\t\t(0xAD35 <= code && code <= 0xAD4F) || // Lo [27] HANGUL SYLLABLE GOEG..HANGUL SYLLABLE GOEH\r\n\t\t(0xAD51 <= code && code <= 0xAD6B) || // Lo [27] HANGUL SYLLABLE GYOG..HANGUL SYLLABLE GYOH\r\n\t\t(0xAD6D <= code && code <= 0xAD87) || // Lo [27] HANGUL SYLLABLE GUG..HANGUL SYLLABLE GUH\r\n\t\t(0xAD89 <= code && code <= 0xADA3) || // Lo [27] HANGUL SYLLABLE GWEOG..HANGUL SYLLABLE GWEOH\r\n\t\t(0xADA5 <= code && code <= 0xADBF) || // Lo [27] HANGUL SYLLABLE GWEG..HANGUL SYLLABLE GWEH\r\n\t\t(0xADC1 <= code && code <= 0xADDB) || // Lo [27] HANGUL SYLLABLE GWIG..HANGUL SYLLABLE GWIH\r\n\t\t(0xADDD <= code && code <= 0xADF7) || // Lo [27] HANGUL SYLLABLE GYUG..HANGUL SYLLABLE GYUH\r\n\t\t(0xADF9 <= code && code <= 0xAE13) || // Lo [27] HANGUL SYLLABLE GEUG..HANGUL SYLLABLE GEUH\r\n\t\t(0xAE15 <= code && code <= 0xAE2F) || // Lo [27] HANGUL SYLLABLE GYIG..HANGUL SYLLABLE GYIH\r\n\t\t(0xAE31 <= code && code <= 0xAE4B) || // Lo [27] HANGUL SYLLABLE GIG..HANGUL SYLLABLE GIH\r\n\t\t(0xAE4D <= code && code <= 0xAE67) || // Lo [27] HANGUL SYLLABLE GGAG..HANGUL SYLLABLE GGAH\r\n\t\t(0xAE69 <= code && code <= 0xAE83) || // Lo [27] HANGUL SYLLABLE GGAEG..HANGUL SYLLABLE GGAEH\r\n\t\t(0xAE85 <= code && code <= 0xAE9F) || // Lo [27] HANGUL SYLLABLE GGYAG..HANGUL SYLLABLE GGYAH\r\n\t\t(0xAEA1 <= code && code <= 0xAEBB) || // Lo [27] HANGUL SYLLABLE GGYAEG..HANGUL SYLLABLE GGYAEH\r\n\t\t(0xAEBD <= code && code <= 0xAED7) || // Lo [27] HANGUL SYLLABLE GGEOG..HANGUL SYLLABLE GGEOH\r\n\t\t(0xAED9 <= code && code <= 0xAEF3) || // Lo [27] HANGUL SYLLABLE GGEG..HANGUL SYLLABLE GGEH\r\n\t\t(0xAEF5 <= code && code <= 0xAF0F) || // Lo [27] HANGUL SYLLABLE GGYEOG..HANGUL SYLLABLE GGYEOH\r\n\t\t(0xAF11 <= code && code <= 0xAF2B) || // Lo [27] HANGUL SYLLABLE GGYEG..HANGUL SYLLABLE GGYEH\r\n\t\t(0xAF2D <= code && code <= 0xAF47) || // Lo [27] HANGUL SYLLABLE GGOG..HANGUL SYLLABLE GGOH\r\n\t\t(0xAF49 <= code && code <= 0xAF63) || // Lo [27] HANGUL SYLLABLE GGWAG..HANGUL SYLLABLE GGWAH\r\n\t\t(0xAF65 <= code && code <= 0xAF7F) || // Lo [27] HANGUL SYLLABLE GGWAEG..HANGUL SYLLABLE GGWAEH\r\n\t\t(0xAF81 <= code && code <= 0xAF9B) || // Lo [27] HANGUL SYLLABLE GGOEG..HANGUL SYLLABLE GGOEH\r\n\t\t(0xAF9D <= code && code <= 0xAFB7) || // Lo [27] HANGUL SYLLABLE GGYOG..HANGUL SYLLABLE GGYOH\r\n\t\t(0xAFB9 <= code && code <= 0xAFD3) || // Lo [27] HANGUL SYLLABLE GGUG..HANGUL SYLLABLE GGUH\r\n\t\t(0xAFD5 <= code && code <= 0xAFEF) || // Lo [27] HANGUL SYLLABLE GGWEOG..HANGUL SYLLABLE GGWEOH\r\n\t\t(0xAFF1 <= code && code <= 0xB00B) || // Lo [27] HANGUL SYLLABLE GGWEG..HANGUL SYLLABLE GGWEH\r\n\t\t(0xB00D <= code && code <= 0xB027) || // Lo [27] HANGUL SYLLABLE GGWIG..HANGUL SYLLABLE GGWIH\r\n\t\t(0xB029 <= code && code <= 0xB043) || // Lo [27] HANGUL SYLLABLE GGYUG..HANGUL SYLLABLE GGYUH\r\n\t\t(0xB045 <= code && code <= 0xB05F) || // Lo [27] HANGUL SYLLABLE GGEUG..HANGUL SYLLABLE GGEUH\r\n\t\t(0xB061 <= code && code <= 0xB07B) || // Lo [27] HANGUL SYLLABLE GGYIG..HANGUL SYLLABLE GGYIH\r\n\t\t(0xB07D <= code && code <= 0xB097) || // Lo [27] HANGUL SYLLABLE GGIG..HANGUL SYLLABLE GGIH\r\n\t\t(0xB099 <= code && code <= 0xB0B3) || // Lo [27] HANGUL SYLLABLE NAG..HANGUL SYLLABLE NAH\r\n\t\t(0xB0B5 <= code && code <= 0xB0CF) || // Lo [27] HANGUL SYLLABLE NAEG..HANGUL SYLLABLE NAEH\r\n\t\t(0xB0D1 <= code && code <= 0xB0EB) || // Lo [27] HANGUL SYLLABLE NYAG..HANGUL SYLLABLE NYAH\r\n\t\t(0xB0ED <= code && code <= 0xB107) || // Lo [27] HANGUL SYLLABLE NYAEG..HANGUL SYLLABLE NYAEH\r\n\t\t(0xB109 <= code && code <= 0xB123) || // Lo [27] HANGUL SYLLABLE NEOG..HANGUL SYLLABLE NEOH\r\n\t\t(0xB125 <= code && code <= 0xB13F) || // Lo [27] HANGUL SYLLABLE NEG..HANGUL SYLLABLE NEH\r\n\t\t(0xB141 <= code && code <= 0xB15B) || // Lo [27] HANGUL SYLLABLE NYEOG..HANGUL SYLLABLE NYEOH\r\n\t\t(0xB15D <= code && code <= 0xB177) || // Lo [27] HANGUL SYLLABLE NYEG..HANGUL SYLLABLE NYEH\r\n\t\t(0xB179 <= code && code <= 0xB193) || // Lo [27] HANGUL SYLLABLE NOG..HANGUL SYLLABLE NOH\r\n\t\t(0xB195 <= code && code <= 0xB1AF) || // Lo [27] HANGUL SYLLABLE NWAG..HANGUL SYLLABLE NWAH\r\n\t\t(0xB1B1 <= code && code <= 0xB1CB) || // Lo [27] HANGUL SYLLABLE NWAEG..HANGUL SYLLABLE NWAEH\r\n\t\t(0xB1CD <= code && code <= 0xB1E7) || // Lo [27] HANGUL SYLLABLE NOEG..HANGUL SYLLABLE NOEH\r\n\t\t(0xB1E9 <= code && code <= 0xB203) || // Lo [27] HANGUL SYLLABLE NYOG..HANGUL SYLLABLE NYOH\r\n\t\t(0xB205 <= code && code <= 0xB21F) || // Lo [27] HANGUL SYLLABLE NUG..HANGUL SYLLABLE NUH\r\n\t\t(0xB221 <= code && code <= 0xB23B) || // Lo [27] HANGUL SYLLABLE NWEOG..HANGUL SYLLABLE NWEOH\r\n\t\t(0xB23D <= code && code <= 0xB257) || // Lo [27] HANGUL SYLLABLE NWEG..HANGUL SYLLABLE NWEH\r\n\t\t(0xB259 <= code && code <= 0xB273) || // Lo [27] HANGUL SYLLABLE NWIG..HANGUL SYLLABLE NWIH\r\n\t\t(0xB275 <= code && code <= 0xB28F) || // Lo [27] HANGUL SYLLABLE NYUG..HANGUL SYLLABLE NYUH\r\n\t\t(0xB291 <= code && code <= 0xB2AB) || // Lo [27] HANGUL SYLLABLE NEUG..HANGUL SYLLABLE NEUH\r\n\t\t(0xB2AD <= code && code <= 0xB2C7) || // Lo [27] HANGUL SYLLABLE NYIG..HANGUL SYLLABLE NYIH\r\n\t\t(0xB2C9 <= code && code <= 0xB2E3) || // Lo [27] HANGUL SYLLABLE NIG..HANGUL SYLLABLE NIH\r\n\t\t(0xB2E5 <= code && code <= 0xB2FF) || // Lo [27] HANGUL SYLLABLE DAG..HANGUL SYLLABLE DAH\r\n\t\t(0xB301 <= code && code <= 0xB31B) || // Lo [27] HANGUL SYLLABLE DAEG..HANGUL SYLLABLE DAEH\r\n\t\t(0xB31D <= code && code <= 0xB337) || // Lo [27] HANGUL SYLLABLE DYAG..HANGUL SYLLABLE DYAH\r\n\t\t(0xB339 <= code && code <= 0xB353) || // Lo [27] HANGUL SYLLABLE DYAEG..HANGUL SYLLABLE DYAEH\r\n\t\t(0xB355 <= code && code <= 0xB36F) || // Lo [27] HANGUL SYLLABLE DEOG..HANGUL SYLLABLE DEOH\r\n\t\t(0xB371 <= code && code <= 0xB38B) || // Lo [27] HANGUL SYLLABLE DEG..HANGUL SYLLABLE DEH\r\n\t\t(0xB38D <= code && code <= 0xB3A7) || // Lo [27] HANGUL SYLLABLE DYEOG..HANGUL SYLLABLE DYEOH\r\n\t\t(0xB3A9 <= code && code <= 0xB3C3) || // Lo [27] HANGUL SYLLABLE DYEG..HANGUL SYLLABLE DYEH\r\n\t\t(0xB3C5 <= code && code <= 0xB3DF) || // Lo [27] HANGUL SYLLABLE DOG..HANGUL SYLLABLE DOH\r\n\t\t(0xB3E1 <= code && code <= 0xB3FB) || // Lo [27] HANGUL SYLLABLE DWAG..HANGUL SYLLABLE DWAH\r\n\t\t(0xB3FD <= code && code <= 0xB417) || // Lo [27] HANGUL SYLLABLE DWAEG..HANGUL SYLLABLE DWAEH\r\n\t\t(0xB419 <= code && code <= 0xB433) || // Lo [27] HANGUL SYLLABLE DOEG..HANGUL SYLLABLE DOEH\r\n\t\t(0xB435 <= code && code <= 0xB44F) || // Lo [27] HANGUL SYLLABLE DYOG..HANGUL SYLLABLE DYOH\r\n\t\t(0xB451 <= code && code <= 0xB46B) || // Lo [27] HANGUL SYLLABLE DUG..HANGUL SYLLABLE DUH\r\n\t\t(0xB46D <= code && code <= 0xB487) || // Lo [27] HANGUL SYLLABLE DWEOG..HANGUL SYLLABLE DWEOH\r\n\t\t(0xB489 <= code && code <= 0xB4A3) || // Lo [27] HANGUL SYLLABLE DWEG..HANGUL SYLLABLE DWEH\r\n\t\t(0xB4A5 <= code && code <= 0xB4BF) || // Lo [27] HANGUL SYLLABLE DWIG..HANGUL SYLLABLE DWIH\r\n\t\t(0xB4C1 <= code && code <= 0xB4DB) || // Lo [27] HANGUL SYLLABLE DYUG..HANGUL SYLLABLE DYUH\r\n\t\t(0xB4DD <= code && code <= 0xB4F7) || // Lo [27] HANGUL SYLLABLE DEUG..HANGUL SYLLABLE DEUH\r\n\t\t(0xB4F9 <= code && code <= 0xB513) || // Lo [27] HANGUL SYLLABLE DYIG..HANGUL SYLLABLE DYIH\r\n\t\t(0xB515 <= code && code <= 0xB52F) || // Lo [27] HANGUL SYLLABLE DIG..HANGUL SYLLABLE DIH\r\n\t\t(0xB531 <= code && code <= 0xB54B) || // Lo [27] HANGUL SYLLABLE DDAG..HANGUL SYLLABLE DDAH\r\n\t\t(0xB54D <= code && code <= 0xB567) || // Lo [27] HANGUL SYLLABLE DDAEG..HANGUL SYLLABLE DDAEH\r\n\t\t(0xB569 <= code && code <= 0xB583) || // Lo [27] HANGUL SYLLABLE DDYAG..HANGUL SYLLABLE DDYAH\r\n\t\t(0xB585 <= code && code <= 0xB59F) || // Lo [27] HANGUL SYLLABLE DDYAEG..HANGUL SYLLABLE DDYAEH\r\n\t\t(0xB5A1 <= code && code <= 0xB5BB) || // Lo [27] HANGUL SYLLABLE DDEOG..HANGUL SYLLABLE DDEOH\r\n\t\t(0xB5BD <= code && code <= 0xB5D7) || // Lo [27] HANGUL SYLLABLE DDEG..HANGUL SYLLABLE DDEH\r\n\t\t(0xB5D9 <= code && code <= 0xB5F3) || // Lo [27] HANGUL SYLLABLE DDYEOG..HANGUL SYLLABLE DDYEOH\r\n\t\t(0xB5F5 <= code && code <= 0xB60F) || // Lo [27] HANGUL SYLLABLE DDYEG..HANGUL SYLLABLE DDYEH\r\n\t\t(0xB611 <= code && code <= 0xB62B) || // Lo [27] HANGUL SYLLABLE DDOG..HANGUL SYLLABLE DDOH\r\n\t\t(0xB62D <= code && code <= 0xB647) || // Lo [27] HANGUL SYLLABLE DDWAG..HANGUL SYLLABLE DDWAH\r\n\t\t(0xB649 <= code && code <= 0xB663) || // Lo [27] HANGUL SYLLABLE DDWAEG..HANGUL SYLLABLE DDWAEH\r\n\t\t(0xB665 <= code && code <= 0xB67F) || // Lo [27] HANGUL SYLLABLE DDOEG..HANGUL SYLLABLE DDOEH\r\n\t\t(0xB681 <= code && code <= 0xB69B) || // Lo [27] HANGUL SYLLABLE DDYOG..HANGUL SYLLABLE DDYOH\r\n\t\t(0xB69D <= code && code <= 0xB6B7) || // Lo [27] HANGUL SYLLABLE DDUG..HANGUL SYLLABLE DDUH\r\n\t\t(0xB6B9 <= code && code <= 0xB6D3) || // Lo [27] HANGUL SYLLABLE DDWEOG..HANGUL SYLLABLE DDWEOH\r\n\t\t(0xB6D5 <= code && code <= 0xB6EF) || // Lo [27] HANGUL SYLLABLE DDWEG..HANGUL SYLLABLE DDWEH\r\n\t\t(0xB6F1 <= code && code <= 0xB70B) || // Lo [27] HANGUL SYLLABLE DDWIG..HANGUL SYLLABLE DDWIH\r\n\t\t(0xB70D <= code && code <= 0xB727) || // Lo [27] HANGUL SYLLABLE DDYUG..HANGUL SYLLABLE DDYUH\r\n\t\t(0xB729 <= code && code <= 0xB743) || // Lo [27] HANGUL SYLLABLE DDEUG..HANGUL SYLLABLE DDEUH\r\n\t\t(0xB745 <= code && code <= 0xB75F) || // Lo [27] HANGUL SYLLABLE DDYIG..HANGUL SYLLABLE DDYIH\r\n\t\t(0xB761 <= code && code <= 0xB77B) || // Lo [27] HANGUL SYLLABLE DDIG..HANGUL SYLLABLE DDIH\r\n\t\t(0xB77D <= code && code <= 0xB797) || // Lo [27] HANGUL SYLLABLE RAG..HANGUL SYLLABLE RAH\r\n\t\t(0xB799 <= code && code <= 0xB7B3) || // Lo [27] HANGUL SYLLABLE RAEG..HANGUL SYLLABLE RAEH\r\n\t\t(0xB7B5 <= code && code <= 0xB7CF) || // Lo [27] HANGUL SYLLABLE RYAG..HANGUL SYLLABLE RYAH\r\n\t\t(0xB7D1 <= code && code <= 0xB7EB) || // Lo [27] HANGUL SYLLABLE RYAEG..HANGUL SYLLABLE RYAEH\r\n\t\t(0xB7ED <= code && code <= 0xB807) || // Lo [27] HANGUL SYLLABLE REOG..HANGUL SYLLABLE REOH\r\n\t\t(0xB809 <= code && code <= 0xB823) || // Lo [27] HANGUL SYLLABLE REG..HANGUL SYLLABLE REH\r\n\t\t(0xB825 <= code && code <= 0xB83F) || // Lo [27] HANGUL SYLLABLE RYEOG..HANGUL SYLLABLE RYEOH\r\n\t\t(0xB841 <= code && code <= 0xB85B) || // Lo [27] HANGUL SYLLABLE RYEG..HANGUL SYLLABLE RYEH\r\n\t\t(0xB85D <= code && code <= 0xB877) || // Lo [27] HANGUL SYLLABLE ROG..HANGUL SYLLABLE ROH\r\n\t\t(0xB879 <= code && code <= 0xB893) || // Lo [27] HANGUL SYLLABLE RWAG..HANGUL SYLLABLE RWAH\r\n\t\t(0xB895 <= code && code <= 0xB8AF) || // Lo [27] HANGUL SYLLABLE RWAEG..HANGUL SYLLABLE RWAEH\r\n\t\t(0xB8B1 <= code && code <= 0xB8CB) || // Lo [27] HANGUL SYLLABLE ROEG..HANGUL SYLLABLE ROEH\r\n\t\t(0xB8CD <= code && code <= 0xB8E7) || // Lo [27] HANGUL SYLLABLE RYOG..HANGUL SYLLABLE RYOH\r\n\t\t(0xB8E9 <= code && code <= 0xB903) || // Lo [27] HANGUL SYLLABLE RUG..HANGUL SYLLABLE RUH\r\n\t\t(0xB905 <= code && code <= 0xB91F) || // Lo [27] HANGUL SYLLABLE RWEOG..HANGUL SYLLABLE RWEOH\r\n\t\t(0xB921 <= code && code <= 0xB93B) || // Lo [27] HANGUL SYLLABLE RWEG..HANGUL SYLLABLE RWEH\r\n\t\t(0xB93D <= code && code <= 0xB957) || // Lo [27] HANGUL SYLLABLE RWIG..HANGUL SYLLABLE RWIH\r\n\t\t(0xB959 <= code && code <= 0xB973) || // Lo [27] HANGUL SYLLABLE RYUG..HANGUL SYLLABLE RYUH\r\n\t\t(0xB975 <= code && code <= 0xB98F) || // Lo [27] HANGUL SYLLABLE REUG..HANGUL SYLLABLE REUH\r\n\t\t(0xB991 <= code && code <= 0xB9AB) || // Lo [27] HANGUL SYLLABLE RYIG..HANGUL SYLLABLE RYIH\r\n\t\t(0xB9AD <= code && code <= 0xB9C7) || // Lo [27] HANGUL SYLLABLE RIG..HANGUL SYLLABLE RIH\r\n\t\t(0xB9C9 <= code && code <= 0xB9E3) || // Lo [27] HANGUL SYLLABLE MAG..HANGUL SYLLABLE MAH\r\n\t\t(0xB9E5 <= code && code <= 0xB9FF) || // Lo [27] HANGUL SYLLABLE MAEG..HANGUL SYLLABLE MAEH\r\n\t\t(0xBA01 <= code && code <= 0xBA1B) || // Lo [27] HANGUL SYLLABLE MYAG..HANGUL SYLLABLE MYAH\r\n\t\t(0xBA1D <= code && code <= 0xBA37) || // Lo [27] HANGUL SYLLABLE MYAEG..HANGUL SYLLABLE MYAEH\r\n\t\t(0xBA39 <= code && code <= 0xBA53) || // Lo [27] HANGUL SYLLABLE MEOG..HANGUL SYLLABLE MEOH\r\n\t\t(0xBA55 <= code && code <= 0xBA6F) || // Lo [27] HANGUL SYLLABLE MEG..HANGUL SYLLABLE MEH\r\n\t\t(0xBA71 <= code && code <= 0xBA8B) || // Lo [27] HANGUL SYLLABLE MYEOG..HANGUL SYLLABLE MYEOH\r\n\t\t(0xBA8D <= code && code <= 0xBAA7) || // Lo [27] HANGUL SYLLABLE MYEG..HANGUL SYLLABLE MYEH\r\n\t\t(0xBAA9 <= code && code <= 0xBAC3) || // Lo [27] HANGUL SYLLABLE MOG..HANGUL SYLLABLE MOH\r\n\t\t(0xBAC5 <= code && code <= 0xBADF) || // Lo [27] HANGUL SYLLABLE MWAG..HANGUL SYLLABLE MWAH\r\n\t\t(0xBAE1 <= code && code <= 0xBAFB) || // Lo [27] HANGUL SYLLABLE MWAEG..HANGUL SYLLABLE MWAEH\r\n\t\t(0xBAFD <= code && code <= 0xBB17) || // Lo [27] HANGUL SYLLABLE MOEG..HANGUL SYLLABLE MOEH\r\n\t\t(0xBB19 <= code && code <= 0xBB33) || // Lo [27] HANGUL SYLLABLE MYOG..HANGUL SYLLABLE MYOH\r\n\t\t(0xBB35 <= code && code <= 0xBB4F) || // Lo [27] HANGUL SYLLABLE MUG..HANGUL SYLLABLE MUH\r\n\t\t(0xBB51 <= code && code <= 0xBB6B) || // Lo [27] HANGUL SYLLABLE MWEOG..HANGUL SYLLABLE MWEOH\r\n\t\t(0xBB6D <= code && code <= 0xBB87) || // Lo [27] HANGUL SYLLABLE MWEG..HANGUL SYLLABLE MWEH\r\n\t\t(0xBB89 <= code && code <= 0xBBA3) || // Lo [27] HANGUL SYLLABLE MWIG..HANGUL SYLLABLE MWIH\r\n\t\t(0xBBA5 <= code && code <= 0xBBBF) || // Lo [27] HANGUL SYLLABLE MYUG..HANGUL SYLLABLE MYUH\r\n\t\t(0xBBC1 <= code && code <= 0xBBDB) || // Lo [27] HANGUL SYLLABLE MEUG..HANGUL SYLLABLE MEUH\r\n\t\t(0xBBDD <= code && code <= 0xBBF7) || // Lo [27] HANGUL SYLLABLE MYIG..HANGUL SYLLABLE MYIH\r\n\t\t(0xBBF9 <= code && code <= 0xBC13) || // Lo [27] HANGUL SYLLABLE MIG..HANGUL SYLLABLE MIH\r\n\t\t(0xBC15 <= code && code <= 0xBC2F) || // Lo [27] HANGUL SYLLABLE BAG..HANGUL SYLLABLE BAH\r\n\t\t(0xBC31 <= code && code <= 0xBC4B) || // Lo [27] HANGUL SYLLABLE BAEG..HANGUL SYLLABLE BAEH\r\n\t\t(0xBC4D <= code && code <= 0xBC67) || // Lo [27] HANGUL SYLLABLE BYAG..HANGUL SYLLABLE BYAH\r\n\t\t(0xBC69 <= code && code <= 0xBC83) || // Lo [27] HANGUL SYLLABLE BYAEG..HANGUL SYLLABLE BYAEH\r\n\t\t(0xBC85 <= code && code <= 0xBC9F) || // Lo [27] HANGUL SYLLABLE BEOG..HANGUL SYLLABLE BEOH\r\n\t\t(0xBCA1 <= code && code <= 0xBCBB) || // Lo [27] HANGUL SYLLABLE BEG..HANGUL SYLLABLE BEH\r\n\t\t(0xBCBD <= code && code <= 0xBCD7) || // Lo [27] HANGUL SYLLABLE BYEOG..HANGUL SYLLABLE BYEOH\r\n\t\t(0xBCD9 <= code && code <= 0xBCF3) || // Lo [27] HANGUL SYLLABLE BYEG..HANGUL SYLLABLE BYEH\r\n\t\t(0xBCF5 <= code && code <= 0xBD0F) || // Lo [27] HANGUL SYLLABLE BOG..HANGUL SYLLABLE BOH\r\n\t\t(0xBD11 <= code && code <= 0xBD2B) || // Lo [27] HANGUL SYLLABLE BWAG..HANGUL SYLLABLE BWAH\r\n\t\t(0xBD2D <= code && code <= 0xBD47) || // Lo [27] HANGUL SYLLABLE BWAEG..HANGUL SYLLABLE BWAEH\r\n\t\t(0xBD49 <= code && code <= 0xBD63) || // Lo [27] HANGUL SYLLABLE BOEG..HANGUL SYLLABLE BOEH\r\n\t\t(0xBD65 <= code && code <= 0xBD7F) || // Lo [27] HANGUL SYLLABLE BYOG..HANGUL SYLLABLE BYOH\r\n\t\t(0xBD81 <= code && code <= 0xBD9B) || // Lo [27] HANGUL SYLLABLE BUG..HANGUL SYLLABLE BUH\r\n\t\t(0xBD9D <= code && code <= 0xBDB7) || // Lo [27] HANGUL SYLLABLE BWEOG..HANGUL SYLLABLE BWEOH\r\n\t\t(0xBDB9 <= code && code <= 0xBDD3) || // Lo [27] HANGUL SYLLABLE BWEG..HANGUL SYLLABLE BWEH\r\n\t\t(0xBDD5 <= code && code <= 0xBDEF) || // Lo [27] HANGUL SYLLABLE BWIG..HANGUL SYLLABLE BWIH\r\n\t\t(0xBDF1 <= code && code <= 0xBE0B) || // Lo [27] HANGUL SYLLABLE BYUG..HANGUL SYLLABLE BYUH\r\n\t\t(0xBE0D <= code && code <= 0xBE27) || // Lo [27] HANGUL SYLLABLE BEUG..HANGUL SYLLABLE BEUH\r\n\t\t(0xBE29 <= code && code <= 0xBE43) || // Lo [27] HANGUL SYLLABLE BYIG..HANGUL SYLLABLE BYIH\r\n\t\t(0xBE45 <= code && code <= 0xBE5F) || // Lo [27] HANGUL SYLLABLE BIG..HANGUL SYLLABLE BIH\r\n\t\t(0xBE61 <= code && code <= 0xBE7B) || // Lo [27] HANGUL SYLLABLE BBAG..HANGUL SYLLABLE BBAH\r\n\t\t(0xBE7D <= code && code <= 0xBE97) || // Lo [27] HANGUL SYLLABLE BBAEG..HANGUL SYLLABLE BBAEH\r\n\t\t(0xBE99 <= code && code <= 0xBEB3) || // Lo [27] HANGUL SYLLABLE BBYAG..HANGUL SYLLABLE BBYAH\r\n\t\t(0xBEB5 <= code && code <= 0xBECF) || // Lo [27] HANGUL SYLLABLE BBYAEG..HANGUL SYLLABLE BBYAEH\r\n\t\t(0xBED1 <= code && code <= 0xBEEB) || // Lo [27] HANGUL SYLLABLE BBEOG..HANGUL SYLLABLE BBEOH\r\n\t\t(0xBEED <= code && code <= 0xBF07) || // Lo [27] HANGUL SYLLABLE BBEG..HANGUL SYLLABLE BBEH\r\n\t\t(0xBF09 <= code && code <= 0xBF23) || // Lo [27] HANGUL SYLLABLE BBYEOG..HANGUL SYLLABLE BBYEOH\r\n\t\t(0xBF25 <= code && code <= 0xBF3F) || // Lo [27] HANGUL SYLLABLE BBYEG..HANGUL SYLLABLE BBYEH\r\n\t\t(0xBF41 <= code && code <= 0xBF5B) || // Lo [27] HANGUL SYLLABLE BBOG..HANGUL SYLLABLE BBOH\r\n\t\t(0xBF5D <= code && code <= 0xBF77) || // Lo [27] HANGUL SYLLABLE BBWAG..HANGUL SYLLABLE BBWAH\r\n\t\t(0xBF79 <= code && code <= 0xBF93) || // Lo [27] HANGUL SYLLABLE BBWAEG..HANGUL SYLLABLE BBWAEH\r\n\t\t(0xBF95 <= code && code <= 0xBFAF) || // Lo [27] HANGUL SYLLABLE BBOEG..HANGUL SYLLABLE BBOEH\r\n\t\t(0xBFB1 <= code && code <= 0xBFCB) || // Lo [27] HANGUL SYLLABLE BBYOG..HANGUL SYLLABLE BBYOH\r\n\t\t(0xBFCD <= code && code <= 0xBFE7) || // Lo [27] HANGUL SYLLABLE BBUG..HANGUL SYLLABLE BBUH\r\n\t\t(0xBFE9 <= code && code <= 0xC003) || // Lo [27] HANGUL SYLLABLE BBWEOG..HANGUL SYLLABLE BBWEOH\r\n\t\t(0xC005 <= code && code <= 0xC01F) || // Lo [27] HANGUL SYLLABLE BBWEG..HANGUL SYLLABLE BBWEH\r\n\t\t(0xC021 <= code && code <= 0xC03B) || // Lo [27] HANGUL SYLLABLE BBWIG..HANGUL SYLLABLE BBWIH\r\n\t\t(0xC03D <= code && code <= 0xC057) || // Lo [27] HANGUL SYLLABLE BBYUG..HANGUL SYLLABLE BBYUH\r\n\t\t(0xC059 <= code && code <= 0xC073) || // Lo [27] HANGUL SYLLABLE BBEUG..HANGUL SYLLABLE BBEUH\r\n\t\t(0xC075 <= code && code <= 0xC08F) || // Lo [27] HANGUL SYLLABLE BBYIG..HANGUL SYLLABLE BBYIH\r\n\t\t(0xC091 <= code && code <= 0xC0AB) || // Lo [27] HANGUL SYLLABLE BBIG..HANGUL SYLLABLE BBIH\r\n\t\t(0xC0AD <= code && code <= 0xC0C7) || // Lo [27] HANGUL SYLLABLE SAG..HANGUL SYLLABLE SAH\r\n\t\t(0xC0C9 <= code && code <= 0xC0E3) || // Lo [27] HANGUL SYLLABLE SAEG..HANGUL SYLLABLE SAEH\r\n\t\t(0xC0E5 <= code && code <= 0xC0FF) || // Lo [27] HANGUL SYLLABLE SYAG..HANGUL SYLLABLE SYAH\r\n\t\t(0xC101 <= code && code <= 0xC11B) || // Lo [27] HANGUL SYLLABLE SYAEG..HANGUL SYLLABLE SYAEH\r\n\t\t(0xC11D <= code && code <= 0xC137) || // Lo [27] HANGUL SYLLABLE SEOG..HANGUL SYLLABLE SEOH\r\n\t\t(0xC139 <= code && code <= 0xC153) || // Lo [27] HANGUL SYLLABLE SEG..HANGUL SYLLABLE SEH\r\n\t\t(0xC155 <= code && code <= 0xC16F) || // Lo [27] HANGUL SYLLABLE SYEOG..HANGUL SYLLABLE SYEOH\r\n\t\t(0xC171 <= code && code <= 0xC18B) || // Lo [27] HANGUL SYLLABLE SYEG..HANGUL SYLLABLE SYEH\r\n\t\t(0xC18D <= code && code <= 0xC1A7) || // Lo [27] HANGUL SYLLABLE SOG..HANGUL SYLLABLE SOH\r\n\t\t(0xC1A9 <= code && code <= 0xC1C3) || // Lo [27] HANGUL SYLLABLE SWAG..HANGUL SYLLABLE SWAH\r\n\t\t(0xC1C5 <= code && code <= 0xC1DF) || // Lo [27] HANGUL SYLLABLE SWAEG..HANGUL SYLLABLE SWAEH\r\n\t\t(0xC1E1 <= code && code <= 0xC1FB) || // Lo [27] HANGUL SYLLABLE SOEG..HANGUL SYLLABLE SOEH\r\n\t\t(0xC1FD <= code && code <= 0xC217) || // Lo [27] HANGUL SYLLABLE SYOG..HANGUL SYLLABLE SYOH\r\n\t\t(0xC219 <= code && code <= 0xC233) || // Lo [27] HANGUL SYLLABLE SUG..HANGUL SYLLABLE SUH\r\n\t\t(0xC235 <= code && code <= 0xC24F) || // Lo [27] HANGUL SYLLABLE SWEOG..HANGUL SYLLABLE SWEOH\r\n\t\t(0xC251 <= code && code <= 0xC26B) || // Lo [27] HANGUL SYLLABLE SWEG..HANGUL SYLLABLE SWEH\r\n\t\t(0xC26D <= code && code <= 0xC287) || // Lo [27] HANGUL SYLLABLE SWIG..HANGUL SYLLABLE SWIH\r\n\t\t(0xC289 <= code && code <= 0xC2A3) || // Lo [27] HANGUL SYLLABLE SYUG..HANGUL SYLLABLE SYUH\r\n\t\t(0xC2A5 <= code && code <= 0xC2BF) || // Lo [27] HANGUL SYLLABLE SEUG..HANGUL SYLLABLE SEUH\r\n\t\t(0xC2C1 <= code && code <= 0xC2DB) || // Lo [27] HANGUL SYLLABLE SYIG..HANGUL SYLLABLE SYIH\r\n\t\t(0xC2DD <= code && code <= 0xC2F7) || // Lo [27] HANGUL SYLLABLE SIG..HANGUL SYLLABLE SIH\r\n\t\t(0xC2F9 <= code && code <= 0xC313) || // Lo [27] HANGUL SYLLABLE SSAG..HANGUL SYLLABLE SSAH\r\n\t\t(0xC315 <= code && code <= 0xC32F) || // Lo [27] HANGUL SYLLABLE SSAEG..HANGUL SYLLABLE SSAEH\r\n\t\t(0xC331 <= code && code <= 0xC34B) || // Lo [27] HANGUL SYLLABLE SSYAG..HANGUL SYLLABLE SSYAH\r\n\t\t(0xC34D <= code && code <= 0xC367) || // Lo [27] HANGUL SYLLABLE SSYAEG..HANGUL SYLLABLE SSYAEH\r\n\t\t(0xC369 <= code && code <= 0xC383) || // Lo [27] HANGUL SYLLABLE SSEOG..HANGUL SYLLABLE SSEOH\r\n\t\t(0xC385 <= code && code <= 0xC39F) || // Lo [27] HANGUL SYLLABLE SSEG..HANGUL SYLLABLE SSEH\r\n\t\t(0xC3A1 <= code && code <= 0xC3BB) || // Lo [27] HANGUL SYLLABLE SSYEOG..HANGUL SYLLABLE SSYEOH\r\n\t\t(0xC3BD <= code && code <= 0xC3D7) || // Lo [27] HANGUL SYLLABLE SSYEG..HANGUL SYLLABLE SSYEH\r\n\t\t(0xC3D9 <= code && code <= 0xC3F3) || // Lo [27] HANGUL SYLLABLE SSOG..HANGUL SYLLABLE SSOH\r\n\t\t(0xC3F5 <= code && code <= 0xC40F) || // Lo [27] HANGUL SYLLABLE SSWAG..HANGUL SYLLABLE SSWAH\r\n\t\t(0xC411 <= code && code <= 0xC42B) || // Lo [27] HANGUL SYLLABLE SSWAEG..HANGUL SYLLABLE SSWAEH\r\n\t\t(0xC42D <= code && code <= 0xC447) || // Lo [27] HANGUL SYLLABLE SSOEG..HANGUL SYLLABLE SSOEH\r\n\t\t(0xC449 <= code && code <= 0xC463) || // Lo [27] HANGUL SYLLABLE SSYOG..HANGUL SYLLABLE SSYOH\r\n\t\t(0xC465 <= code && code <= 0xC47F) || // Lo [27] HANGUL SYLLABLE SSUG..HANGUL SYLLABLE SSUH\r\n\t\t(0xC481 <= code && code <= 0xC49B) || // Lo [27] HANGUL SYLLABLE SSWEOG..HANGUL SYLLABLE SSWEOH\r\n\t\t(0xC49D <= code && code <= 0xC4B7) || // Lo [27] HANGUL SYLLABLE SSWEG..HANGUL SYLLABLE SSWEH\r\n\t\t(0xC4B9 <= code && code <= 0xC4D3) || // Lo [27] HANGUL SYLLABLE SSWIG..HANGUL SYLLABLE SSWIH\r\n\t\t(0xC4D5 <= code && code <= 0xC4EF) || // Lo [27] HANGUL SYLLABLE SSYUG..HANGUL SYLLABLE SSYUH\r\n\t\t(0xC4F1 <= code && code <= 0xC50B) || // Lo [27] HANGUL SYLLABLE SSEUG..HANGUL SYLLABLE SSEUH\r\n\t\t(0xC50D <= code && code <= 0xC527) || // Lo [27] HANGUL SYLLABLE SSYIG..HANGUL SYLLABLE SSYIH\r\n\t\t(0xC529 <= code && code <= 0xC543) || // Lo [27] HANGUL SYLLABLE SSIG..HANGUL SYLLABLE SSIH\r\n\t\t(0xC545 <= code && code <= 0xC55F) || // Lo [27] HANGUL SYLLABLE AG..HANGUL SYLLABLE AH\r\n\t\t(0xC561 <= code && code <= 0xC57B) || // Lo [27] HANGUL SYLLABLE AEG..HANGUL SYLLABLE AEH\r\n\t\t(0xC57D <= code && code <= 0xC597) || // Lo [27] HANGUL SYLLABLE YAG..HANGUL SYLLABLE YAH\r\n\t\t(0xC599 <= code && code <= 0xC5B3) || // Lo [27] HANGUL SYLLABLE YAEG..HANGUL SYLLABLE YAEH\r\n\t\t(0xC5B5 <= code && code <= 0xC5CF) || // Lo [27] HANGUL SYLLABLE EOG..HANGUL SYLLABLE EOH\r\n\t\t(0xC5D1 <= code && code <= 0xC5EB) || // Lo [27] HANGUL SYLLABLE EG..HANGUL SYLLABLE EH\r\n\t\t(0xC5ED <= code && code <= 0xC607) || // Lo [27] HANGUL SYLLABLE YEOG..HANGUL SYLLABLE YEOH\r\n\t\t(0xC609 <= code && code <= 0xC623) || // Lo [27] HANGUL SYLLABLE YEG..HANGUL SYLLABLE YEH\r\n\t\t(0xC625 <= code && code <= 0xC63F) || // Lo [27] HANGUL SYLLABLE OG..HANGUL SYLLABLE OH\r\n\t\t(0xC641 <= code && code <= 0xC65B) || // Lo [27] HANGUL SYLLABLE WAG..HANGUL SYLLABLE WAH\r\n\t\t(0xC65D <= code && code <= 0xC677) || // Lo [27] HANGUL SYLLABLE WAEG..HANGUL SYLLABLE WAEH\r\n\t\t(0xC679 <= code && code <= 0xC693) || // Lo [27] HANGUL SYLLABLE OEG..HANGUL SYLLABLE OEH\r\n\t\t(0xC695 <= code && code <= 0xC6AF) || // Lo [27] HANGUL SYLLABLE YOG..HANGUL SYLLABLE YOH\r\n\t\t(0xC6B1 <= code && code <= 0xC6CB) || // Lo [27] HANGUL SYLLABLE UG..HANGUL SYLLABLE UH\r\n\t\t(0xC6CD <= code && code <= 0xC6E7) || // Lo [27] HANGUL SYLLABLE WEOG..HANGUL SYLLABLE WEOH\r\n\t\t(0xC6E9 <= code && code <= 0xC703) || // Lo [27] HANGUL SYLLABLE WEG..HANGUL SYLLABLE WEH\r\n\t\t(0xC705 <= code && code <= 0xC71F) || // Lo [27] HANGUL SYLLABLE WIG..HANGUL SYLLABLE WIH\r\n\t\t(0xC721 <= code && code <= 0xC73B) || // Lo [27] HANGUL SYLLABLE YUG..HANGUL SYLLABLE YUH\r\n\t\t(0xC73D <= code && code <= 0xC757) || // Lo [27] HANGUL SYLLABLE EUG..HANGUL SYLLABLE EUH\r\n\t\t(0xC759 <= code && code <= 0xC773) || // Lo [27] HANGUL SYLLABLE YIG..HANGUL SYLLABLE YIH\r\n\t\t(0xC775 <= code && code <= 0xC78F) || // Lo [27] HANGUL SYLLABLE IG..HANGUL SYLLABLE IH\r\n\t\t(0xC791 <= code && code <= 0xC7AB) || // Lo [27] HANGUL SYLLABLE JAG..HANGUL SYLLABLE JAH\r\n\t\t(0xC7AD <= code && code <= 0xC7C7) || // Lo [27] HANGUL SYLLABLE JAEG..HANGUL SYLLABLE JAEH\r\n\t\t(0xC7C9 <= code && code <= 0xC7E3) || // Lo [27] HANGUL SYLLABLE JYAG..HANGUL SYLLABLE JYAH\r\n\t\t(0xC7E5 <= code && code <= 0xC7FF) || // Lo [27] HANGUL SYLLABLE JYAEG..HANGUL SYLLABLE JYAEH\r\n\t\t(0xC801 <= code && code <= 0xC81B) || // Lo [27] HANGUL SYLLABLE JEOG..HANGUL SYLLABLE JEOH\r\n\t\t(0xC81D <= code && code <= 0xC837) || // Lo [27] HANGUL SYLLABLE JEG..HANGUL SYLLABLE JEH\r\n\t\t(0xC839 <= code && code <= 0xC853) || // Lo [27] HANGUL SYLLABLE JYEOG..HANGUL SYLLABLE JYEOH\r\n\t\t(0xC855 <= code && code <= 0xC86F) || // Lo [27] HANGUL SYLLABLE JYEG..HANGUL SYLLABLE JYEH\r\n\t\t(0xC871 <= code && code <= 0xC88B) || // Lo [27] HANGUL SYLLABLE JOG..HANGUL SYLLABLE JOH\r\n\t\t(0xC88D <= code && code <= 0xC8A7) || // Lo [27] HANGUL SYLLABLE JWAG..HANGUL SYLLABLE JWAH\r\n\t\t(0xC8A9 <= code && code <= 0xC8C3) || // Lo [27] HANGUL SYLLABLE JWAEG..HANGUL SYLLABLE JWAEH\r\n\t\t(0xC8C5 <= code && code <= 0xC8DF) || // Lo [27] HANGUL SYLLABLE JOEG..HANGUL SYLLABLE JOEH\r\n\t\t(0xC8E1 <= code && code <= 0xC8FB) || // Lo [27] HANGUL SYLLABLE JYOG..HANGUL SYLLABLE JYOH\r\n\t\t(0xC8FD <= code && code <= 0xC917) || // Lo [27] HANGUL SYLLABLE JUG..HANGUL SYLLABLE JUH\r\n\t\t(0xC919 <= code && code <= 0xC933) || // Lo [27] HANGUL SYLLABLE JWEOG..HANGUL SYLLABLE JWEOH\r\n\t\t(0xC935 <= code && code <= 0xC94F) || // Lo [27] HANGUL SYLLABLE JWEG..HANGUL SYLLABLE JWEH\r\n\t\t(0xC951 <= code && code <= 0xC96B) || // Lo [27] HANGUL SYLLABLE JWIG..HANGUL SYLLABLE JWIH\r\n\t\t(0xC96D <= code && code <= 0xC987) || // Lo [27] HANGUL SYLLABLE JYUG..HANGUL SYLLABLE JYUH\r\n\t\t(0xC989 <= code && code <= 0xC9A3) || // Lo [27] HANGUL SYLLABLE JEUG..HANGUL SYLLABLE JEUH\r\n\t\t(0xC9A5 <= code && code <= 0xC9BF) || // Lo [27] HANGUL SYLLABLE JYIG..HANGUL SYLLABLE JYIH\r\n\t\t(0xC9C1 <= code && code <= 0xC9DB) || // Lo [27] HANGUL SYLLABLE JIG..HANGUL SYLLABLE JIH\r\n\t\t(0xC9DD <= code && code <= 0xC9F7) || // Lo [27] HANGUL SYLLABLE JJAG..HANGUL SYLLABLE JJAH\r\n\t\t(0xC9F9 <= code && code <= 0xCA13) || // Lo [27] HANGUL SYLLABLE JJAEG..HANGUL SYLLABLE JJAEH\r\n\t\t(0xCA15 <= code && code <= 0xCA2F) || // Lo [27] HANGUL SYLLABLE JJYAG..HANGUL SYLLABLE JJYAH\r\n\t\t(0xCA31 <= code && code <= 0xCA4B) || // Lo [27] HANGUL SYLLABLE JJYAEG..HANGUL SYLLABLE JJYAEH\r\n\t\t(0xCA4D <= code && code <= 0xCA67) || // Lo [27] HANGUL SYLLABLE JJEOG..HANGUL SYLLABLE JJEOH\r\n\t\t(0xCA69 <= code && code <= 0xCA83) || // Lo [27] HANGUL SYLLABLE JJEG..HANGUL SYLLABLE JJEH\r\n\t\t(0xCA85 <= code && code <= 0xCA9F) || // Lo [27] HANGUL SYLLABLE JJYEOG..HANGUL SYLLABLE JJYEOH\r\n\t\t(0xCAA1 <= code && code <= 0xCABB) || // Lo [27] HANGUL SYLLABLE JJYEG..HANGUL SYLLABLE JJYEH\r\n\t\t(0xCABD <= code && code <= 0xCAD7) || // Lo [27] HANGUL SYLLABLE JJOG..HANGUL SYLLABLE JJOH\r\n\t\t(0xCAD9 <= code && code <= 0xCAF3) || // Lo [27] HANGUL SYLLABLE JJWAG..HANGUL SYLLABLE JJWAH\r\n\t\t(0xCAF5 <= code && code <= 0xCB0F) || // Lo [27] HANGUL SYLLABLE JJWAEG..HANGUL SYLLABLE JJWAEH\r\n\t\t(0xCB11 <= code && code <= 0xCB2B) || // Lo [27] HANGUL SYLLABLE JJOEG..HANGUL SYLLABLE JJOEH\r\n\t\t(0xCB2D <= code && code <= 0xCB47) || // Lo [27] HANGUL SYLLABLE JJYOG..HANGUL SYLLABLE JJYOH\r\n\t\t(0xCB49 <= code && code <= 0xCB63) || // Lo [27] HANGUL SYLLABLE JJUG..HANGUL SYLLABLE JJUH\r\n\t\t(0xCB65 <= code && code <= 0xCB7F) || // Lo [27] HANGUL SYLLABLE JJWEOG..HANGUL SYLLABLE JJWEOH\r\n\t\t(0xCB81 <= code && code <= 0xCB9B) || // Lo [27] HANGUL SYLLABLE JJWEG..HANGUL SYLLABLE JJWEH\r\n\t\t(0xCB9D <= code && code <= 0xCBB7) || // Lo [27] HANGUL SYLLABLE JJWIG..HANGUL SYLLABLE JJWIH\r\n\t\t(0xCBB9 <= code && code <= 0xCBD3) || // Lo [27] HANGUL SYLLABLE JJYUG..HANGUL SYLLABLE JJYUH\r\n\t\t(0xCBD5 <= code && code <= 0xCBEF) || // Lo [27] HANGUL SYLLABLE JJEUG..HANGUL SYLLABLE JJEUH\r\n\t\t(0xCBF1 <= code && code <= 0xCC0B) || // Lo [27] HANGUL SYLLABLE JJYIG..HANGUL SYLLABLE JJYIH\r\n\t\t(0xCC0D <= code && code <= 0xCC27) || // Lo [27] HANGUL SYLLABLE JJIG..HANGUL SYLLABLE JJIH\r\n\t\t(0xCC29 <= code && code <= 0xCC43) || // Lo [27] HANGUL SYLLABLE CAG..HANGUL SYLLABLE CAH\r\n\t\t(0xCC45 <= code && code <= 0xCC5F) || // Lo [27] HANGUL SYLLABLE CAEG..HANGUL SYLLABLE CAEH\r\n\t\t(0xCC61 <= code && code <= 0xCC7B) || // Lo [27] HANGUL SYLLABLE CYAG..HANGUL SYLLABLE CYAH\r\n\t\t(0xCC7D <= code && code <= 0xCC97) || // Lo [27] HANGUL SYLLABLE CYAEG..HANGUL SYLLABLE CYAEH\r\n\t\t(0xCC99 <= code && code <= 0xCCB3) || // Lo [27] HANGUL SYLLABLE CEOG..HANGUL SYLLABLE CEOH\r\n\t\t(0xCCB5 <= code && code <= 0xCCCF) || // Lo [27] HANGUL SYLLABLE CEG..HANGUL SYLLABLE CEH\r\n\t\t(0xCCD1 <= code && code <= 0xCCEB) || // Lo [27] HANGUL SYLLABLE CYEOG..HANGUL SYLLABLE CYEOH\r\n\t\t(0xCCED <= code && code <= 0xCD07) || // Lo [27] HANGUL SYLLABLE CYEG..HANGUL SYLLABLE CYEH\r\n\t\t(0xCD09 <= code && code <= 0xCD23) || // Lo [27] HANGUL SYLLABLE COG..HANGUL SYLLABLE COH\r\n\t\t(0xCD25 <= code && code <= 0xCD3F) || // Lo [27] HANGUL SYLLABLE CWAG..HANGUL SYLLABLE CWAH\r\n\t\t(0xCD41 <= code && code <= 0xCD5B) || // Lo [27] HANGUL SYLLABLE CWAEG..HANGUL SYLLABLE CWAEH\r\n\t\t(0xCD5D <= code && code <= 0xCD77) || // Lo [27] HANGUL SYLLABLE COEG..HANGUL SYLLABLE COEH\r\n\t\t(0xCD79 <= code && code <= 0xCD93) || // Lo [27] HANGUL SYLLABLE CYOG..HANGUL SYLLABLE CYOH\r\n\t\t(0xCD95 <= code && code <= 0xCDAF) || // Lo [27] HANGUL SYLLABLE CUG..HANGUL SYLLABLE CUH\r\n\t\t(0xCDB1 <= code && code <= 0xCDCB) || // Lo [27] HANGUL SYLLABLE CWEOG..HANGUL SYLLABLE CWEOH\r\n\t\t(0xCDCD <= code && code <= 0xCDE7) || // Lo [27] HANGUL SYLLABLE CWEG..HANGUL SYLLABLE CWEH\r\n\t\t(0xCDE9 <= code && code <= 0xCE03) || // Lo [27] HANGUL SYLLABLE CWIG..HANGUL SYLLABLE CWIH\r\n\t\t(0xCE05 <= code && code <= 0xCE1F) || // Lo [27] HANGUL SYLLABLE CYUG..HANGUL SYLLABLE CYUH\r\n\t\t(0xCE21 <= code && code <= 0xCE3B) || // Lo [27] HANGUL SYLLABLE CEUG..HANGUL SYLLABLE CEUH\r\n\t\t(0xCE3D <= code && code <= 0xCE57) || // Lo [27] HANGUL SYLLABLE CYIG..HANGUL SYLLABLE CYIH\r\n\t\t(0xCE59 <= code && code <= 0xCE73) || // Lo [27] HANGUL SYLLABLE CIG..HANGUL SYLLABLE CIH\r\n\t\t(0xCE75 <= code && code <= 0xCE8F) || // Lo [27] HANGUL SYLLABLE KAG..HANGUL SYLLABLE KAH\r\n\t\t(0xCE91 <= code && code <= 0xCEAB) || // Lo [27] HANGUL SYLLABLE KAEG..HANGUL SYLLABLE KAEH\r\n\t\t(0xCEAD <= code && code <= 0xCEC7) || // Lo [27] HANGUL SYLLABLE KYAG..HANGUL SYLLABLE KYAH\r\n\t\t(0xCEC9 <= code && code <= 0xCEE3) || // Lo [27] HANGUL SYLLABLE KYAEG..HANGUL SYLLABLE KYAEH\r\n\t\t(0xCEE5 <= code && code <= 0xCEFF) || // Lo [27] HANGUL SYLLABLE KEOG..HANGUL SYLLABLE KEOH\r\n\t\t(0xCF01 <= code && code <= 0xCF1B) || // Lo [27] HANGUL SYLLABLE KEG..HANGUL SYLLABLE KEH\r\n\t\t(0xCF1D <= code && code <= 0xCF37) || // Lo [27] HANGUL SYLLABLE KYEOG..HANGUL SYLLABLE KYEOH\r\n\t\t(0xCF39 <= code && code <= 0xCF53) || // Lo [27] HANGUL SYLLABLE KYEG..HANGUL SYLLABLE KYEH\r\n\t\t(0xCF55 <= code && code <= 0xCF6F) || // Lo [27] HANGUL SYLLABLE KOG..HANGUL SYLLABLE KOH\r\n\t\t(0xCF71 <= code && code <= 0xCF8B) || // Lo [27] HANGUL SYLLABLE KWAG..HANGUL SYLLABLE KWAH\r\n\t\t(0xCF8D <= code && code <= 0xCFA7) || // Lo [27] HANGUL SYLLABLE KWAEG..HANGUL SYLLABLE KWAEH\r\n\t\t(0xCFA9 <= code && code <= 0xCFC3) || // Lo [27] HANGUL SYLLABLE KOEG..HANGUL SYLLABLE KOEH\r\n\t\t(0xCFC5 <= code && code <= 0xCFDF) || // Lo [27] HANGUL SYLLABLE KYOG..HANGUL SYLLABLE KYOH\r\n\t\t(0xCFE1 <= code && code <= 0xCFFB) || // Lo [27] HANGUL SYLLABLE KUG..HANGUL SYLLABLE KUH\r\n\t\t(0xCFFD <= code && code <= 0xD017) || // Lo [27] HANGUL SYLLABLE KWEOG..HANGUL SYLLABLE KWEOH\r\n\t\t(0xD019 <= code && code <= 0xD033) || // Lo [27] HANGUL SYLLABLE KWEG..HANGUL SYLLABLE KWEH\r\n\t\t(0xD035 <= code && code <= 0xD04F) || // Lo [27] HANGUL SYLLABLE KWIG..HANGUL SYLLABLE KWIH\r\n\t\t(0xD051 <= code && code <= 0xD06B) || // Lo [27] HANGUL SYLLABLE KYUG..HANGUL SYLLABLE KYUH\r\n\t\t(0xD06D <= code && code <= 0xD087) || // Lo [27] HANGUL SYLLABLE KEUG..HANGUL SYLLABLE KEUH\r\n\t\t(0xD089 <= code && code <= 0xD0A3) || // Lo [27] HANGUL SYLLABLE KYIG..HANGUL SYLLABLE KYIH\r\n\t\t(0xD0A5 <= code && code <= 0xD0BF) || // Lo [27] HANGUL SYLLABLE KIG..HANGUL SYLLABLE KIH\r\n\t\t(0xD0C1 <= code && code <= 0xD0DB) || // Lo [27] HANGUL SYLLABLE TAG..HANGUL SYLLABLE TAH\r\n\t\t(0xD0DD <= code && code <= 0xD0F7) || // Lo [27] HANGUL SYLLABLE TAEG..HANGUL SYLLABLE TAEH\r\n\t\t(0xD0F9 <= code && code <= 0xD113) || // Lo [27] HANGUL SYLLABLE TYAG..HANGUL SYLLABLE TYAH\r\n\t\t(0xD115 <= code && code <= 0xD12F) || // Lo [27] HANGUL SYLLABLE TYAEG..HANGUL SYLLABLE TYAEH\r\n\t\t(0xD131 <= code && code <= 0xD14B) || // Lo [27] HANGUL SYLLABLE TEOG..HANGUL SYLLABLE TEOH\r\n\t\t(0xD14D <= code && code <= 0xD167) || // Lo [27] HANGUL SYLLABLE TEG..HANGUL SYLLABLE TEH\r\n\t\t(0xD169 <= code && code <= 0xD183) || // Lo [27] HANGUL SYLLABLE TYEOG..HANGUL SYLLABLE TYEOH\r\n\t\t(0xD185 <= code && code <= 0xD19F) || // Lo [27] HANGUL SYLLABLE TYEG..HANGUL SYLLABLE TYEH\r\n\t\t(0xD1A1 <= code && code <= 0xD1BB) || // Lo [27] HANGUL SYLLABLE TOG..HANGUL SYLLABLE TOH\r\n\t\t(0xD1BD <= code && code <= 0xD1D7) || // Lo [27] HANGUL SYLLABLE TWAG..HANGUL SYLLABLE TWAH\r\n\t\t(0xD1D9 <= code && code <= 0xD1F3) || // Lo [27] HANGUL SYLLABLE TWAEG..HANGUL SYLLABLE TWAEH\r\n\t\t(0xD1F5 <= code && code <= 0xD20F) || // Lo [27] HANGUL SYLLABLE TOEG..HANGUL SYLLABLE TOEH\r\n\t\t(0xD211 <= code && code <= 0xD22B) || // Lo [27] HANGUL SYLLABLE TYOG..HANGUL SYLLABLE TYOH\r\n\t\t(0xD22D <= code && code <= 0xD247) || // Lo [27] HANGUL SYLLABLE TUG..HANGUL SYLLABLE TUH\r\n\t\t(0xD249 <= code && code <= 0xD263) || // Lo [27] HANGUL SYLLABLE TWEOG..HANGUL SYLLABLE TWEOH\r\n\t\t(0xD265 <= code && code <= 0xD27F) || // Lo [27] HANGUL SYLLABLE TWEG..HANGUL SYLLABLE TWEH\r\n\t\t(0xD281 <= code && code <= 0xD29B) || // Lo [27] HANGUL SYLLABLE TWIG..HANGUL SYLLABLE TWIH\r\n\t\t(0xD29D <= code && code <= 0xD2B7) || // Lo [27] HANGUL SYLLABLE TYUG..HANGUL SYLLABLE TYUH\r\n\t\t(0xD2B9 <= code && code <= 0xD2D3) || // Lo [27] HANGUL SYLLABLE TEUG..HANGUL SYLLABLE TEUH\r\n\t\t(0xD2D5 <= code && code <= 0xD2EF) || // Lo [27] HANGUL SYLLABLE TYIG..HANGUL SYLLABLE TYIH\r\n\t\t(0xD2F1 <= code && code <= 0xD30B) || // Lo [27] HANGUL SYLLABLE TIG..HANGUL SYLLABLE TIH\r\n\t\t(0xD30D <= code && code <= 0xD327) || // Lo [27] HANGUL SYLLABLE PAG..HANGUL SYLLABLE PAH\r\n\t\t(0xD329 <= code && code <= 0xD343) || // Lo [27] HANGUL SYLLABLE PAEG..HANGUL SYLLABLE PAEH\r\n\t\t(0xD345 <= code && code <= 0xD35F) || // Lo [27] HANGUL SYLLABLE PYAG..HANGUL SYLLABLE PYAH\r\n\t\t(0xD361 <= code && code <= 0xD37B) || // Lo [27] HANGUL SYLLABLE PYAEG..HANGUL SYLLABLE PYAEH\r\n\t\t(0xD37D <= code && code <= 0xD397) || // Lo [27] HANGUL SYLLABLE PEOG..HANGUL SYLLABLE PEOH\r\n\t\t(0xD399 <= code && code <= 0xD3B3) || // Lo [27] HANGUL SYLLABLE PEG..HANGUL SYLLABLE PEH\r\n\t\t(0xD3B5 <= code && code <= 0xD3CF) || // Lo [27] HANGUL SYLLABLE PYEOG..HANGUL SYLLABLE PYEOH\r\n\t\t(0xD3D1 <= code && code <= 0xD3EB) || // Lo [27] HANGUL SYLLABLE PYEG..HANGUL SYLLABLE PYEH\r\n\t\t(0xD3ED <= code && code <= 0xD407) || // Lo [27] HANGUL SYLLABLE POG..HANGUL SYLLABLE POH\r\n\t\t(0xD409 <= code && code <= 0xD423) || // Lo [27] HANGUL SYLLABLE PWAG..HANGUL SYLLABLE PWAH\r\n\t\t(0xD425 <= code && code <= 0xD43F) || // Lo [27] HANGUL SYLLABLE PWAEG..HANGUL SYLLABLE PWAEH\r\n\t\t(0xD441 <= code && code <= 0xD45B) || // Lo [27] HANGUL SYLLABLE POEG..HANGUL SYLLABLE POEH\r\n\t\t(0xD45D <= code && code <= 0xD477) || // Lo [27] HANGUL SYLLABLE PYOG..HANGUL SYLLABLE PYOH\r\n\t\t(0xD479 <= code && code <= 0xD493) || // Lo [27] HANGUL SYLLABLE PUG..HANGUL SYLLABLE PUH\r\n\t\t(0xD495 <= code && code <= 0xD4AF) || // Lo [27] HANGUL SYLLABLE PWEOG..HANGUL SYLLABLE PWEOH\r\n\t\t(0xD4B1 <= code && code <= 0xD4CB) || // Lo [27] HANGUL SYLLABLE PWEG..HANGUL SYLLABLE PWEH\r\n\t\t(0xD4CD <= code && code <= 0xD4E7) || // Lo [27] HANGUL SYLLABLE PWIG..HANGUL SYLLABLE PWIH\r\n\t\t(0xD4E9 <= code && code <= 0xD503) || // Lo [27] HANGUL SYLLABLE PYUG..HANGUL SYLLABLE PYUH\r\n\t\t(0xD505 <= code && code <= 0xD51F) || // Lo [27] HANGUL SYLLABLE PEUG..HANGUL SYLLABLE PEUH\r\n\t\t(0xD521 <= code && code <= 0xD53B) || // Lo [27] HANGUL SYLLABLE PYIG..HANGUL SYLLABLE PYIH\r\n\t\t(0xD53D <= code && code <= 0xD557) || // Lo [27] HANGUL SYLLABLE PIG..HANGUL SYLLABLE PIH\r\n\t\t(0xD559 <= code && code <= 0xD573) || // Lo [27] HANGUL SYLLABLE HAG..HANGUL SYLLABLE HAH\r\n\t\t(0xD575 <= code && code <= 0xD58F) || // Lo [27] HANGUL SYLLABLE HAEG..HANGUL SYLLABLE HAEH\r\n\t\t(0xD591 <= code && code <= 0xD5AB) || // Lo [27] HANGUL SYLLABLE HYAG..HANGUL SYLLABLE HYAH\r\n\t\t(0xD5AD <= code && code <= 0xD5C7) || // Lo [27] HANGUL SYLLABLE HYAEG..HANGUL SYLLABLE HYAEH\r\n\t\t(0xD5C9 <= code && code <= 0xD5E3) || // Lo [27] HANGUL SYLLABLE HEOG..HANGUL SYLLABLE HEOH\r\n\t\t(0xD5E5 <= code && code <= 0xD5FF) || // Lo [27] HANGUL SYLLABLE HEG..HANGUL SYLLABLE HEH\r\n\t\t(0xD601 <= code && code <= 0xD61B) || // Lo [27] HANGUL SYLLABLE HYEOG..HANGUL SYLLABLE HYEOH\r\n\t\t(0xD61D <= code && code <= 0xD637) || // Lo [27] HANGUL SYLLABLE HYEG..HANGUL SYLLABLE HYEH\r\n\t\t(0xD639 <= code && code <= 0xD653) || // Lo [27] HANGUL SYLLABLE HOG..HANGUL SYLLABLE HOH\r\n\t\t(0xD655 <= code && code <= 0xD66F) || // Lo [27] HANGUL SYLLABLE HWAG..HANGUL SYLLABLE HWAH\r\n\t\t(0xD671 <= code && code <= 0xD68B) || // Lo [27] HANGUL SYLLABLE HWAEG..HANGUL SYLLABLE HWAEH\r\n\t\t(0xD68D <= code && code <= 0xD6A7) || // Lo [27] HANGUL SYLLABLE HOEG..HANGUL SYLLABLE HOEH\r\n\t\t(0xD6A9 <= code && code <= 0xD6C3) || // Lo [27] HANGUL SYLLABLE HYOG..HANGUL SYLLABLE HYOH\r\n\t\t(0xD6C5 <= code && code <= 0xD6DF) || // Lo [27] HANGUL SYLLABLE HUG..HANGUL SYLLABLE HUH\r\n\t\t(0xD6E1 <= code && code <= 0xD6FB) || // Lo [27] HANGUL SYLLABLE HWEOG..HANGUL SYLLABLE HWEOH\r\n\t\t(0xD6FD <= code && code <= 0xD717) || // Lo [27] HANGUL SYLLABLE HWEG..HANGUL SYLLABLE HWEH\r\n\t\t(0xD719 <= code && code <= 0xD733) || // Lo [27] HANGUL SYLLABLE HWIG..HANGUL SYLLABLE HWIH\r\n\t\t(0xD735 <= code && code <= 0xD74F) || // Lo [27] HANGUL SYLLABLE HYUG..HANGUL SYLLABLE HYUH\r\n\t\t(0xD751 <= code && code <= 0xD76B) || // Lo [27] HANGUL SYLLABLE HEUG..HANGUL SYLLABLE HEUH\r\n\t\t(0xD76D <= code && code <= 0xD787) || // Lo [27] HANGUL SYLLABLE HYIG..HANGUL SYLLABLE HYIH\r\n\t\t(0xD789 <= code && code <= 0xD7A3) // Lo [27] HANGUL SYLLABLE HIG..HANGUL SYLLABLE HIH\r\n\t\t){\r\n\t\t\treturn LVT;\r\n\t\t}\r\n\t\t\r\n\t\tif(\r\n\t\t0x261D == code || // So WHITE UP POINTING INDEX\r\n\t\t0x26F9 == code || // So PERSON WITH BALL\r\n\t\t(0x270A <= code && code <= 0x270D) || // So [4] RAISED FIST..WRITING HAND\r\n\t\t0x1F385 == code || // So FATHER CHRISTMAS\r\n\t\t(0x1F3C2 <= code && code <= 0x1F3C4) || // So [3] SNOWBOARDER..SURFER\r\n\t\t0x1F3C7 == code || // So HORSE RACING\r\n\t\t(0x1F3CA <= code && code <= 0x1F3CC) || // So [3] SWIMMER..GOLFER\r\n\t\t(0x1F442 <= code && code <= 0x1F443) || // So [2] EAR..NOSE\r\n\t\t(0x1F446 <= code && code <= 0x1F450) || // So [11] WHITE UP POINTING BACKHAND INDEX..OPEN HANDS SIGN\r\n\t\t0x1F46E == code || // So POLICE OFFICER\r\n\t\t(0x1F470 <= code && code <= 0x1F478) || // So [9] BRIDE WITH VEIL..PRINCESS\r\n\t\t0x1F47C == code || // So BABY ANGEL\r\n\t\t(0x1F481 <= code && code <= 0x1F483) || // So [3] INFORMATION DESK PERSON..DANCER\r\n\t\t(0x1F485 <= code && code <= 0x1F487) || // So [3] NAIL POLISH..HAIRCUT\r\n\t\t0x1F4AA == code || // So FLEXED BICEPS\r\n\t\t(0x1F574 <= code && code <= 0x1F575) || // So [2] MAN IN BUSINESS SUIT LEVITATING..SLEUTH OR SPY\r\n\t\t0x1F57A == code || // So MAN DANCING\r\n\t\t0x1F590 == code || // So RAISED HAND WITH FINGERS SPLAYED\r\n\t\t(0x1F595 <= code && code <= 0x1F596) || // So [2] REVERSED HAND WITH MIDDLE FINGER EXTENDED..RAISED HAND WITH PART BETWEEN MIDDLE AND RING FINGERS\r\n\t\t(0x1F645 <= code && code <= 0x1F647) || // So [3] FACE WITH NO GOOD GESTURE..PERSON BOWING DEEPLY\r\n\t\t(0x1F64B <= code && code <= 0x1F64F) || // So [5] HAPPY PERSON RAISING ONE HAND..PERSON WITH FOLDED HANDS\r\n\t\t0x1F6A3 == code || // So ROWBOAT\r\n\t\t(0x1F6B4 <= code && code <= 0x1F6B6) || // So [3] BICYCLIST..PEDESTRIAN\r\n\t\t0x1F6C0 == code || // So BATH\r\n\t\t0x1F6CC == code || // So SLEEPING ACCOMMODATION\r\n\t\t(0x1F918 <= code && code <= 0x1F91C) || // So [5] SIGN OF THE HORNS..RIGHT-FACING FIST\r\n\t\t(0x1F91E <= code && code <= 0x1F91F) || // So [2] HAND WITH INDEX AND MIDDLE FINGERS CROSSED..I LOVE YOU HAND SIGN\r\n\t\t0x1F926 == code || // So FACE PALM\r\n\t\t(0x1F930 <= code && code <= 0x1F939) || // So [10] PREGNANT WOMAN..JUGGLING\r\n\t\t(0x1F93D <= code && code <= 0x1F93E) || // So [2] WATER POLO..HANDBALL\r\n\t\t(0x1F9D1 <= code && code <= 0x1F9DD) // So [13] ADULT..ELF\r\n\t\t){\r\n\t\t\treturn E_Base;\r\n\t\t}\r\n\r\n\t\tif(\r\n\t\t(0x1F3FB <= code && code <= 0x1F3FF) // Sk [5] EMOJI MODIFIER FITZPATRICK TYPE-1-2..EMOJI MODIFIER FITZPATRICK TYPE-6\r\n\t\t){\r\n\t\t\treturn E_Modifier;\r\n\t\t}\r\n\r\n\t\tif(\r\n\t\t0x200D == code // Cf ZERO WIDTH JOINER\r\n\t\t){\r\n\t\t\treturn ZWJ;\r\n\t\t}\r\n\r\n\t\tif(\r\n\t\t0x2640 == code || // So FEMALE SIGN\r\n\t\t0x2642 == code || // So MALE SIGN\r\n\t\t(0x2695 <= code && code <= 0x2696) || // So [2] STAFF OF AESCULAPIUS..SCALES\r\n\t\t0x2708 == code || // So AIRPLANE\r\n\t\t0x2764 == code || // So HEAVY BLACK HEART\r\n\t\t0x1F308 == code || // So RAINBOW\r\n\t\t0x1F33E == code || // So EAR OF RICE\r\n\t\t0x1F373 == code || // So COOKING\r\n\t\t0x1F393 == code || // So GRADUATION CAP\r\n\t\t0x1F3A4 == code || // So MICROPHONE\r\n\t\t0x1F3A8 == code || // So ARTIST PALETTE\r\n\t\t0x1F3EB == code || // So SCHOOL\r\n\t\t0x1F3ED == code || // So FACTORY\r\n\t\t0x1F48B == code || // So KISS MARK\r\n\t\t(0x1F4BB <= code && code <= 0x1F4BC) || // So [2] PERSONAL COMPUTER..BRIEFCASE\r\n\t\t0x1F527 == code || // So WRENCH\r\n\t\t0x1F52C == code || // So MICROSCOPE\r\n\t\t0x1F5E8 == code || // So LEFT SPEECH BUBBLE\r\n\t\t0x1F680 == code || // So ROCKET\r\n\t\t0x1F692 == code // So FIRE ENGINE\r\n\t\t){\r\n\t\t\treturn Glue_After_Zwj;\r\n\t\t}\r\n\r\n\t\tif(\r\n\t\t(0x1F466 <= code && code <= 0x1F469) // So [4] BOY..WOMAN\r\n\t\t){\r\n\t\t\treturn E_Base_GAZ;\r\n\t\t}\r\n\t\t\r\n\t\t\r\n\t\t//all unlisted characters have a grapheme break property of \"Other\"\r\n\t\treturn Other;\r\n\t}\r\n\treturn this;\r\n}\r\n\r\nif (typeof module != 'undefined' && module.exports) {\r\n module.exports = GraphemeSplitter;\r\n}\r\n","/*\nobject-assign\n(c) Sindre Sorhus\n@license MIT\n*/\n\n'use strict';\n/* eslint-disable no-unused-vars */\nvar getOwnPropertySymbols = Object.getOwnPropertySymbols;\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nvar propIsEnumerable = Object.prototype.propertyIsEnumerable;\n\nfunction toObject(val) {\n\tif (val === null || val === undefined) {\n\t\tthrow new TypeError('Object.assign cannot be called with null or undefined');\n\t}\n\n\treturn Object(val);\n}\n\nfunction shouldUseNative() {\n\ttry {\n\t\tif (!Object.assign) {\n\t\t\treturn false;\n\t\t}\n\n\t\t// Detect buggy property enumeration order in older V8 versions.\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=4118\n\t\tvar test1 = new String('abc'); // eslint-disable-line no-new-wrappers\n\t\ttest1[5] = 'de';\n\t\tif (Object.getOwnPropertyNames(test1)[0] === '5') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test2 = {};\n\t\tfor (var i = 0; i < 10; i++) {\n\t\t\ttest2['_' + String.fromCharCode(i)] = i;\n\t\t}\n\t\tvar order2 = Object.getOwnPropertyNames(test2).map(function (n) {\n\t\t\treturn test2[n];\n\t\t});\n\t\tif (order2.join('') !== '0123456789') {\n\t\t\treturn false;\n\t\t}\n\n\t\t// https://bugs.chromium.org/p/v8/issues/detail?id=3056\n\t\tvar test3 = {};\n\t\t'abcdefghijklmnopqrst'.split('').forEach(function (letter) {\n\t\t\ttest3[letter] = letter;\n\t\t});\n\t\tif (Object.keys(Object.assign({}, test3)).join('') !==\n\t\t\t\t'abcdefghijklmnopqrst') {\n\t\t\treturn false;\n\t\t}\n\n\t\treturn true;\n\t} catch (err) {\n\t\t// We don't expect any of the above to throw, but better to be safe.\n\t\treturn false;\n\t}\n}\n\nmodule.exports = shouldUseNative() ? Object.assign : function (target, source) {\n\tvar from;\n\tvar to = toObject(target);\n\tvar symbols;\n\n\tfor (var s = 1; s < arguments.length; s++) {\n\t\tfrom = Object(arguments[s]);\n\n\t\tfor (var key in from) {\n\t\t\tif (hasOwnProperty.call(from, key)) {\n\t\t\t\tto[key] = from[key];\n\t\t\t}\n\t\t}\n\n\t\tif (getOwnPropertySymbols) {\n\t\t\tsymbols = getOwnPropertySymbols(from);\n\t\t\tfor (var i = 0; i < symbols.length; i++) {\n\t\t\t\tif (propIsEnumerable.call(from, symbols[i])) {\n\t\t\t\t\tto[symbols[i]] = from[symbols[i]];\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n\n\treturn to;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bigint: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","'use strict';\nconst strictUriEncode = require('strict-uri-encode');\nconst decodeComponent = require('decode-uri-component');\nconst splitOnFirst = require('split-on-first');\nconst filterObject = require('filter-obj');\n\nconst isNullOrUndefined = value => value === null || value === undefined;\n\nconst encodeFragmentIdentifier = Symbol('encodeFragmentIdentifier');\n\nfunction encoderForArrayFormat(options) {\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tconst index = result.length;\n\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[', index, ']'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [\n\t\t\t\t\t...result,\n\t\t\t\t\t[encode(key, options), '[', encode(index, options), ']=', encode(value, options)].join('')\n\t\t\t\t];\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), '[]'].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '[]=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'colon-list-separator':\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, [encode(key, options), ':list='].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), ':list=', encode(value, options)].join('')];\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\tcase 'bracket-separator': {\n\t\t\tconst keyValueSep = options.arrayFormat === 'bracket-separator' ?\n\t\t\t\t'[]=' :\n\t\t\t\t'=';\n\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\t// Translate null to an empty string so that it doesn't serialize as 'null'\n\t\t\t\tvalue = value === null ? '' : value;\n\n\t\t\t\tif (result.length === 0) {\n\t\t\t\t\treturn [[encode(key, options), keyValueSep, encode(value, options)].join('')];\n\t\t\t\t}\n\n\t\t\t\treturn [[result, encode(value, options)].join(options.arrayFormatSeparator)];\n\t\t\t};\n\t\t}\n\n\t\tdefault:\n\t\t\treturn key => (result, value) => {\n\t\t\t\tif (\n\t\t\t\t\tvalue === undefined ||\n\t\t\t\t\t(options.skipNull && value === null) ||\n\t\t\t\t\t(options.skipEmptyString && value === '')\n\t\t\t\t) {\n\t\t\t\t\treturn result;\n\t\t\t\t}\n\n\t\t\t\tif (value === null) {\n\t\t\t\t\treturn [...result, encode(key, options)];\n\t\t\t\t}\n\n\t\t\t\treturn [...result, [encode(key, options), '=', encode(value, options)].join('')];\n\t\t\t};\n\t}\n}\n\nfunction parserForArrayFormat(options) {\n\tlet result;\n\n\tswitch (options.arrayFormat) {\n\t\tcase 'index':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /\\[(\\d*)\\]$/.exec(key);\n\n\t\t\t\tkey = key.replace(/\\[\\d*\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = {};\n\t\t\t\t}\n\n\t\t\t\taccumulator[key][result[1]] = value;\n\t\t\t};\n\n\t\tcase 'bracket':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(\\[\\])$/.exec(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'colon-list-separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tresult = /(:list)$/.exec(key);\n\t\t\t\tkey = key.replace(/:list$/, '');\n\n\t\t\t\tif (!result) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = [value];\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\n\t\tcase 'comma':\n\t\tcase 'separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = typeof value === 'string' && value.includes(options.arrayFormatSeparator);\n\t\t\t\tconst isEncodedArray = (typeof value === 'string' && !isArray && decode(value, options).includes(options.arrayFormatSeparator));\n\t\t\t\tvalue = isEncodedArray ? decode(value, options) : value;\n\t\t\t\tconst newValue = isArray || isEncodedArray ? value.split(options.arrayFormatSeparator).map(item => decode(item, options)) : value === null ? value : decode(value, options);\n\t\t\t\taccumulator[key] = newValue;\n\t\t\t};\n\n\t\tcase 'bracket-separator':\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tconst isArray = /(\\[\\])$/.test(key);\n\t\t\t\tkey = key.replace(/\\[\\]$/, '');\n\n\t\t\t\tif (!isArray) {\n\t\t\t\t\taccumulator[key] = value ? decode(value, options) : value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\tconst arrayValue = value === null ?\n\t\t\t\t\t[] :\n\t\t\t\t\tvalue.split(options.arrayFormatSeparator).map(item => decode(item, options));\n\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = arrayValue;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], arrayValue);\n\t\t\t};\n\n\t\tdefault:\n\t\t\treturn (key, value, accumulator) => {\n\t\t\t\tif (accumulator[key] === undefined) {\n\t\t\t\t\taccumulator[key] = value;\n\t\t\t\t\treturn;\n\t\t\t\t}\n\n\t\t\t\taccumulator[key] = [].concat(accumulator[key], value);\n\t\t\t};\n\t}\n}\n\nfunction validateArrayFormatSeparator(value) {\n\tif (typeof value !== 'string' || value.length !== 1) {\n\t\tthrow new TypeError('arrayFormatSeparator must be single character string');\n\t}\n}\n\nfunction encode(value, options) {\n\tif (options.encode) {\n\t\treturn options.strict ? strictUriEncode(value) : encodeURIComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction decode(value, options) {\n\tif (options.decode) {\n\t\treturn decodeComponent(value);\n\t}\n\n\treturn value;\n}\n\nfunction keysSorter(input) {\n\tif (Array.isArray(input)) {\n\t\treturn input.sort();\n\t}\n\n\tif (typeof input === 'object') {\n\t\treturn keysSorter(Object.keys(input))\n\t\t\t.sort((a, b) => Number(a) - Number(b))\n\t\t\t.map(key => input[key]);\n\t}\n\n\treturn input;\n}\n\nfunction removeHash(input) {\n\tconst hashStart = input.indexOf('#');\n\tif (hashStart !== -1) {\n\t\tinput = input.slice(0, hashStart);\n\t}\n\n\treturn input;\n}\n\nfunction getHash(url) {\n\tlet hash = '';\n\tconst hashStart = url.indexOf('#');\n\tif (hashStart !== -1) {\n\t\thash = url.slice(hashStart);\n\t}\n\n\treturn hash;\n}\n\nfunction extract(input) {\n\tinput = removeHash(input);\n\tconst queryStart = input.indexOf('?');\n\tif (queryStart === -1) {\n\t\treturn '';\n\t}\n\n\treturn input.slice(queryStart + 1);\n}\n\nfunction parseValue(value, options) {\n\tif (options.parseNumbers && !Number.isNaN(Number(value)) && (typeof value === 'string' && value.trim() !== '')) {\n\t\tvalue = Number(value);\n\t} else if (options.parseBooleans && value !== null && (value.toLowerCase() === 'true' || value.toLowerCase() === 'false')) {\n\t\tvalue = value.toLowerCase() === 'true';\n\t}\n\n\treturn value;\n}\n\nfunction parse(query, options) {\n\toptions = Object.assign({\n\t\tdecode: true,\n\t\tsort: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ',',\n\t\tparseNumbers: false,\n\t\tparseBooleans: false\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst formatter = parserForArrayFormat(options);\n\n\t// Create an object with no prototype\n\tconst ret = Object.create(null);\n\n\tif (typeof query !== 'string') {\n\t\treturn ret;\n\t}\n\n\tquery = query.trim().replace(/^[?#&]/, '');\n\n\tif (!query) {\n\t\treturn ret;\n\t}\n\n\tfor (const param of query.split('&')) {\n\t\tif (param === '') {\n\t\t\tcontinue;\n\t\t}\n\n\t\tlet [key, value] = splitOnFirst(options.decode ? param.replace(/\\+/g, ' ') : param, '=');\n\n\t\t// Missing `=` should be `null`:\n\t\t// http://w3.org/TR/2012/WD-url-20120524/#collect-url-parameters\n\t\tvalue = value === undefined ? null : ['comma', 'separator', 'bracket-separator'].includes(options.arrayFormat) ? value : decode(value, options);\n\t\tformatter(decode(key, options), value, ret);\n\t}\n\n\tfor (const key of Object.keys(ret)) {\n\t\tconst value = ret[key];\n\t\tif (typeof value === 'object' && value !== null) {\n\t\t\tfor (const k of Object.keys(value)) {\n\t\t\t\tvalue[k] = parseValue(value[k], options);\n\t\t\t}\n\t\t} else {\n\t\t\tret[key] = parseValue(value, options);\n\t\t}\n\t}\n\n\tif (options.sort === false) {\n\t\treturn ret;\n\t}\n\n\treturn (options.sort === true ? Object.keys(ret).sort() : Object.keys(ret).sort(options.sort)).reduce((result, key) => {\n\t\tconst value = ret[key];\n\t\tif (Boolean(value) && typeof value === 'object' && !Array.isArray(value)) {\n\t\t\t// Sort object keys, not values\n\t\t\tresult[key] = keysSorter(value);\n\t\t} else {\n\t\t\tresult[key] = value;\n\t\t}\n\n\t\treturn result;\n\t}, Object.create(null));\n}\n\nexports.extract = extract;\nexports.parse = parse;\n\nexports.stringify = (object, options) => {\n\tif (!object) {\n\t\treturn '';\n\t}\n\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\tarrayFormat: 'none',\n\t\tarrayFormatSeparator: ','\n\t}, options);\n\n\tvalidateArrayFormatSeparator(options.arrayFormatSeparator);\n\n\tconst shouldFilter = key => (\n\t\t(options.skipNull && isNullOrUndefined(object[key])) ||\n\t\t(options.skipEmptyString && object[key] === '')\n\t);\n\n\tconst formatter = encoderForArrayFormat(options);\n\n\tconst objectCopy = {};\n\n\tfor (const key of Object.keys(object)) {\n\t\tif (!shouldFilter(key)) {\n\t\t\tobjectCopy[key] = object[key];\n\t\t}\n\t}\n\n\tconst keys = Object.keys(objectCopy);\n\n\tif (options.sort !== false) {\n\t\tkeys.sort(options.sort);\n\t}\n\n\treturn keys.map(key => {\n\t\tconst value = object[key];\n\n\t\tif (value === undefined) {\n\t\t\treturn '';\n\t\t}\n\n\t\tif (value === null) {\n\t\t\treturn encode(key, options);\n\t\t}\n\n\t\tif (Array.isArray(value)) {\n\t\t\tif (value.length === 0 && options.arrayFormat === 'bracket-separator') {\n\t\t\t\treturn encode(key, options) + '[]';\n\t\t\t}\n\n\t\t\treturn value\n\t\t\t\t.reduce(formatter(key), [])\n\t\t\t\t.join('&');\n\t\t}\n\n\t\treturn encode(key, options) + '=' + encode(value, options);\n\t}).filter(x => x.length > 0).join('&');\n};\n\nexports.parseUrl = (url, options) => {\n\toptions = Object.assign({\n\t\tdecode: true\n\t}, options);\n\n\tconst [url_, hash] = splitOnFirst(url, '#');\n\n\treturn Object.assign(\n\t\t{\n\t\t\turl: url_.split('?')[0] || '',\n\t\t\tquery: parse(extract(url), options)\n\t\t},\n\t\toptions && options.parseFragmentIdentifier && hash ? {fragmentIdentifier: decode(hash, options)} : {}\n\t);\n};\n\nexports.stringifyUrl = (object, options) => {\n\toptions = Object.assign({\n\t\tencode: true,\n\t\tstrict: true,\n\t\t[encodeFragmentIdentifier]: true\n\t}, options);\n\n\tconst url = removeHash(object.url).split('?')[0] || '';\n\tconst queryFromUrl = exports.extract(object.url);\n\tconst parsedQueryFromUrl = exports.parse(queryFromUrl, {sort: false});\n\n\tconst query = Object.assign(parsedQueryFromUrl, object.query);\n\tlet queryString = exports.stringify(query, options);\n\tif (queryString) {\n\t\tqueryString = `?${queryString}`;\n\t}\n\n\tlet hash = getHash(object.url);\n\tif (object.fragmentIdentifier) {\n\t\thash = `#${options[encodeFragmentIdentifier] ? encode(object.fragmentIdentifier, options) : object.fragmentIdentifier}`;\n\t}\n\n\treturn `${url}${queryString}${hash}`;\n};\n\nexports.pick = (input, filter, options) => {\n\toptions = Object.assign({\n\t\tparseFragmentIdentifier: true,\n\t\t[encodeFragmentIdentifier]: false\n\t}, options);\n\n\tconst {url, query, fragmentIdentifier} = exports.parseUrl(input, options);\n\treturn exports.stringifyUrl({\n\t\turl,\n\t\tquery: filterObject(query, filter),\n\t\tfragmentIdentifier\n\t}, options);\n};\n\nexports.exclude = (input, filter, options) => {\n\tconst exclusionFilter = Array.isArray(filter) ? key => !filter.includes(key) : (key, value) => !filter(key, value);\n\n\treturn exports.pick(input, exclusionFilter, options);\n};\n","!function(e,t){\"object\"==typeof exports&&\"undefined\"!=typeof module?t(exports,require(\"react\"),require(\"prop-types\"),require(\"classnames\"),require(\"date-fns/isDate\"),require(\"date-fns/isValid\"),require(\"date-fns/format\"),require(\"date-fns/addMinutes\"),require(\"date-fns/addHours\"),require(\"date-fns/addDays\"),require(\"date-fns/addWeeks\"),require(\"date-fns/addMonths\"),require(\"date-fns/addYears\"),require(\"date-fns/subMinutes\"),require(\"date-fns/subHours\"),require(\"date-fns/subDays\"),require(\"date-fns/subWeeks\"),require(\"date-fns/subMonths\"),require(\"date-fns/subYears\"),require(\"date-fns/getSeconds\"),require(\"date-fns/getMinutes\"),require(\"date-fns/getHours\"),require(\"date-fns/getDay\"),require(\"date-fns/getDate\"),require(\"date-fns/getISOWeek\"),require(\"date-fns/getMonth\"),require(\"date-fns/getQuarter\"),require(\"date-fns/getYear\"),require(\"date-fns/getTime\"),require(\"date-fns/setSeconds\"),require(\"date-fns/setMinutes\"),require(\"date-fns/setHours\"),require(\"date-fns/setMonth\"),require(\"date-fns/setQuarter\"),require(\"date-fns/setYear\"),require(\"date-fns/min\"),require(\"date-fns/max\"),require(\"date-fns/differenceInCalendarDays\"),require(\"date-fns/differenceInCalendarMonths\"),require(\"date-fns/differenceInCalendarWeeks\"),require(\"date-fns/differenceInCalendarYears\"),require(\"date-fns/startOfDay\"),require(\"date-fns/startOfWeek\"),require(\"date-fns/startOfMonth\"),require(\"date-fns/startOfQuarter\"),require(\"date-fns/startOfYear\"),require(\"date-fns/endOfDay\"),require(\"date-fns/endOfWeek\"),require(\"date-fns/endOfMonth\"),require(\"date-fns/isEqual\"),require(\"date-fns/isSameDay\"),require(\"date-fns/isSameMonth\"),require(\"date-fns/isSameYear\"),require(\"date-fns/isSameQuarter\"),require(\"date-fns/isAfter\"),require(\"date-fns/isBefore\"),require(\"date-fns/isWithinInterval\"),require(\"date-fns/toDate\"),require(\"date-fns/parse\"),require(\"date-fns/parseISO\"),require(\"react-onclickoutside\"),require(\"react-dom\"),require(\"react-popper\")):\"function\"==typeof define&&define.amd?define([\"exports\",\"react\",\"prop-types\",\"classnames\",\"date-fns/isDate\",\"date-fns/isValid\",\"date-fns/format\",\"date-fns/addMinutes\",\"date-fns/addHours\",\"date-fns/addDays\",\"date-fns/addWeeks\",\"date-fns/addMonths\",\"date-fns/addYears\",\"date-fns/subMinutes\",\"date-fns/subHours\",\"date-fns/subDays\",\"date-fns/subWeeks\",\"date-fns/subMonths\",\"date-fns/subYears\",\"date-fns/getSeconds\",\"date-fns/getMinutes\",\"date-fns/getHours\",\"date-fns/getDay\",\"date-fns/getDate\",\"date-fns/getISOWeek\",\"date-fns/getMonth\",\"date-fns/getQuarter\",\"date-fns/getYear\",\"date-fns/getTime\",\"date-fns/setSeconds\",\"date-fns/setMinutes\",\"date-fns/setHours\",\"date-fns/setMonth\",\"date-fns/setQuarter\",\"date-fns/setYear\",\"date-fns/min\",\"date-fns/max\",\"date-fns/differenceInCalendarDays\",\"date-fns/differenceInCalendarMonths\",\"date-fns/differenceInCalendarWeeks\",\"date-fns/differenceInCalendarYears\",\"date-fns/startOfDay\",\"date-fns/startOfWeek\",\"date-fns/startOfMonth\",\"date-fns/startOfQuarter\",\"date-fns/startOfYear\",\"date-fns/endOfDay\",\"date-fns/endOfWeek\",\"date-fns/endOfMonth\",\"date-fns/isEqual\",\"date-fns/isSameDay\",\"date-fns/isSameMonth\",\"date-fns/isSameYear\",\"date-fns/isSameQuarter\",\"date-fns/isAfter\",\"date-fns/isBefore\",\"date-fns/isWithinInterval\",\"date-fns/toDate\",\"date-fns/parse\",\"date-fns/parseISO\",\"react-onclickoutside\",\"react-dom\",\"react-popper\"],t):t((e=\"undefined\"!=typeof globalThis?globalThis:e||self).DatePicker={},e.React,e.PropTypes,e.classNames,e.isDate,e.isValidDate,e.format,e.addMinutes,e.addHours,e.addDays,e.addWeeks,e.addMonths,e.addYears,null,null,e.subDays,e.subWeeks,e.subMonths,e.subYears,e.getSeconds,e.getMinutes,e.getHours,e.getDay,e.getDate,e.getISOWeek,e.getMonth,e.getQuarter,e.getYear,e.getTime,e.setSeconds,e.setMinutes,e.setHours,e.setMonth,e.setQuarter,e.setYear,e.min,e.max,e.differenceInCalendarDays,e.differenceInCalendarMonths,null,e.differenceInCalendarYears,e.startOfDay,e.startOfWeek,e.startOfMonth,e.startOfQuarter,e.startOfYear,e.endOfDay,null,null,e.dfIsEqual,e.dfIsSameDay,e.dfIsSameMonth,e.dfIsSameYear,e.dfIsSameQuarter,e.isAfter,e.isBefore,e.isWithinInterval,e.toDate,e.parse,e.parseISO,e.onClickOutside,e.ReactDOM,e.ReactPopper)}(this,(function(e,t,r,a,n,o,s,i,p,l,d,c,u,f,h,m,y,D,v,w,g,k,b,S,C,_,M,P,E,N,x,O,Y,I,T,L,R,F,A,q,W,B,K,H,j,Q,V,U,$,z,G,J,X,Z,ee,te,re,ae,ne,oe,se,ie,pe){\"use strict\";function le(e){return e&&\"object\"==typeof e&&\"default\"in e?e:{default:e}}var de=le(t),ce=le(a),ue=le(n),fe=le(o),he=le(s),me=le(i),ye=le(p),De=le(l),ve=le(d),we=le(c),ge=le(u),ke=le(m),be=le(y),Se=le(D),Ce=le(v),_e=le(w),Me=le(g),Pe=le(k),Ee=le(b),Ne=le(S),xe=le(C),Oe=le(_),Ye=le(M),Ie=le(P),Te=le(E),Le=le(N),Re=le(x),Fe=le(O),Ae=le(Y),qe=le(I),We=le(T),Be=le(L),Ke=le(R),He=le(F),je=le(A),Qe=le(W),Ve=le(B),Ue=le(K),$e=le(H),ze=le(j),Ge=le(Q),Je=le(V),Xe=le(z),Ze=le(G),et=le(J),tt=le(X),rt=le(Z),at=le(ee),nt=le(te),ot=le(re),st=le(ae),it=le(ne),pt=le(oe),lt=le(se),dt=le(ie);function ct(e,t){var r=Object.keys(e);if(Object.getOwnPropertySymbols){var a=Object.getOwnPropertySymbols(e);t&&(a=a.filter((function(t){return Object.getOwnPropertyDescriptor(e,t).enumerable}))),r.push.apply(r,a)}return r}function ut(e){for(var t=1;te.length)&&(t=e.length);for(var r=0,a=new Array(t);r0&&(o=it.default(e,t.slice(0,e.length),new Date)),Tt(o)||(o=new Date(e))),Tt(o)&&i?o:null)}function Tt(e,t){return t=t||new Date(\"1/1/1000\"),fe.default(e)&&!nt.default(e,t)}function Lt(e,t,r){if(\"en\"===r)return he.default(e,t,{awareOfUnicodeTokens:!0});var a=Xt(r);return r&&!a&&console.warn('A locale object was not found for the provided string [\"'.concat(r,'\"].')),!a&&Jt()&&Xt(Jt())&&(a=Xt(Jt())),he.default(e,t,{locale:a||null,awareOfUnicodeTokens:!0})}function Rt(e,t){var r=t.dateFormat,a=t.locale;return e&&Lt(e,Array.isArray(r)?r[0]:r,a)||\"\"}function Ft(e,t){var r=t.hour,a=void 0===r?0:r,n=t.minute,o=void 0===n?0:n,s=t.second,i=void 0===s?0:s;return Fe.default(Re.default(Le.default(e,i),o),a)}function At(e,t){var r=t&&Xt(t)||Jt()&&Xt(Jt());return xe.default(e,r?{locale:r}:null)}function qt(e,t){return Lt(e,\"ddd\",t)}function Wt(e){return Ve.default(e)}function Bt(e,t,r){var a=Xt(t||Jt());return Ue.default(e,{locale:a,weekStartsOn:r})}function Kt(e){return $e.default(e)}function Ht(e){return Ge.default(e)}function jt(e){return ze.default(e)}function Qt(e,t){return e&&t?tt.default(e,t):!e&&!t}function Vt(e,t){return e&&t?et.default(e,t):!e&&!t}function Ut(e,t){return e&&t?rt.default(e,t):!e&&!t}function $t(e,t){return e&&t?Ze.default(e,t):!e&&!t}function zt(e,t){return e&&t?Xe.default(e,t):!e&&!t}function Gt(e,t,r){var a,n=Ve.default(t),o=Je.default(r);try{a=ot.default(e,{start:n,end:o})}catch(e){a=!1}return a}function Jt(){return(\"undefined\"!=typeof window?window:globalThis).__localeId__}function Xt(e){if(\"string\"==typeof e){var t=\"undefined\"!=typeof window?window:globalThis;return t.__localeData__?t.__localeData__[e]:null}return e}function Zt(e,t){return Lt(Ae.default(Yt(),e),\"LLLL\",t)}function er(e,t){return Lt(Ae.default(Yt(),e),\"LLL\",t)}function tr(e,t){return Lt(qe.default(Yt(),e),\"QQQ\",t)}function rr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.maxDate,n=t.excludeDates,o=t.excludeDateIntervals,s=t.includeDates,i=t.includeDateIntervals,p=t.filterDate;return lr(e,{minDate:r,maxDate:a})||n&&n.some((function(t){return $t(e,t)}))||o&&o.some((function(t){var r=t.start,a=t.end;return ot.default(e,{start:r,end:a})}))||s&&!s.some((function(t){return $t(e,t)}))||i&&!i.some((function(t){var r=t.start,a=t.end;return ot.default(e,{start:r,end:a})}))||p&&!p(Yt(e))||!1}function ar(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.excludeDates,a=t.excludeDateIntervals;return a&&a.length>0?a.some((function(t){var r=t.start,a=t.end;return ot.default(e,{start:r,end:a})})):r&&r.some((function(t){return $t(e,t)}))||!1}function nr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.maxDate,n=t.excludeDates,o=t.includeDates,s=t.filterDate;return lr(e,{minDate:r,maxDate:a})||n&&n.some((function(t){return Vt(e,t)}))||o&&!o.some((function(t){return Vt(e,t)}))||s&&!s(Yt(e))||!1}function or(e,t,r,a){var n=Ie.default(e),o=Oe.default(e),s=Ie.default(t),i=Oe.default(t),p=Ie.default(a);return n===s&&n===p?o<=r&&r<=i:n=r||pn:void 0}function sr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.maxDate,n=t.excludeDates,o=t.includeDates,s=t.filterDate;return lr(e,{minDate:r,maxDate:a})||n&&n.some((function(t){return Ut(e,t)}))||o&&!o.some((function(t){return Ut(e,t)}))||s&&!s(Yt(e))||!1}function ir(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.maxDate,n=new Date(e,0,1);return lr(n,{minDate:r,maxDate:a})||!1}function pr(e,t,r,a){var n=Ie.default(e),o=Ye.default(e),s=Ie.default(t),i=Ye.default(t),p=Ie.default(a);return n===s&&n===p?o<=r&&r<=i:n=r||pn:void 0}function lr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.maxDate;return r&&He.default(e,r)<0||a&&He.default(e,a)>0}function dr(e,t){return t.some((function(t){return Pe.default(t)===Pe.default(e)&&Me.default(t)===Me.default(e)}))}function cr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.excludeTimes,a=t.includeTimes,n=t.filterTime;return r&&dr(e,r)||a&&!dr(e,a)||n&&!n(e)||!1}function ur(e,t){var r=t.minTime,a=t.maxTime;if(!r||!a)throw new Error(\"Both minTime and maxTime props required\");var n,o=Yt(),s=Fe.default(Re.default(o,Me.default(e)),Pe.default(e)),i=Fe.default(Re.default(o,Me.default(r)),Pe.default(r)),p=Fe.default(Re.default(o,Me.default(a)),Pe.default(a));try{n=!ot.default(s,{start:i,end:p})}catch(e){n=!1}return n}function fr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.includeDates,n=Se.default(e,1);return r&&je.default(r,n)>0||a&&a.every((function(e){return je.default(e,n)>0}))||!1}function hr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.maxDate,a=t.includeDates,n=we.default(e,1);return r&&je.default(n,r)>0||a&&a.every((function(e){return je.default(n,e)>0}))||!1}function mr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.includeDates,n=Ce.default(e,1);return r&&Qe.default(r,n)>0||a&&a.every((function(e){return Qe.default(e,n)>0}))||!1}function yr(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.maxDate,a=t.includeDates,n=ge.default(e,1);return r&&Qe.default(n,r)>0||a&&a.every((function(e){return Qe.default(n,e)>0}))||!1}function Dr(e){var t=e.minDate,r=e.includeDates;if(r&&t){var a=r.filter((function(e){return He.default(e,t)>=0}));return Be.default(a)}return r?Be.default(r):t}function vr(e){var t=e.maxDate,r=e.includeDates;if(r&&t){var a=r.filter((function(e){return He.default(e,t)<=0}));return Ke.default(a)}return r?Ke.default(r):t}function wr(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:[],t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"react-datepicker__day--highlighted\",r=new Map,a=0,n=e.length;a1&&void 0!==arguments[1]?arguments[1]:xt,r=Math.ceil(Ie.default(e)/t)*t,a=r-(t-1);return{startPeriod:a,endPeriod:r}}function Sr(e,t,r,a){for(var n=[],o=0;o<2*t+1;o++){var s=e+t-o,i=!0;r&&(i=Ie.default(r)<=s),a&&i&&(i=Ie.default(a)>=s),i&&n.push(s)}return n}var Cr=function(e){wt(a,e);var r=Ct(a);function a(e){var n;ht(this,a),Dt(bt(n=r.call(this,e)),\"renderOptions\",(function(){var e=n.props.year,t=n.state.yearsList.map((function(t){return de.default.createElement(\"div\",{className:e===t?\"react-datepicker__year-option react-datepicker__year-option--selected_year\":\"react-datepicker__year-option\",key:t,onClick:n.onChange.bind(bt(n),t),\"aria-selected\":e===t?\"true\":void 0},e===t?de.default.createElement(\"span\",{className:\"react-datepicker__year-option--selected\"},\"✓\"):\"\",t)})),r=n.props.minDate?Ie.default(n.props.minDate):null,a=n.props.maxDate?Ie.default(n.props.maxDate):null;return a&&n.state.yearsList.find((function(e){return e===a}))||t.unshift(de.default.createElement(\"div\",{className:\"react-datepicker__year-option\",key:\"upcoming\",onClick:n.incrementYears},de.default.createElement(\"a\",{className:\"react-datepicker__navigation react-datepicker__navigation--years react-datepicker__navigation--years-upcoming\"}))),r&&n.state.yearsList.find((function(e){return e===r}))||t.push(de.default.createElement(\"div\",{className:\"react-datepicker__year-option\",key:\"previous\",onClick:n.decrementYears},de.default.createElement(\"a\",{className:\"react-datepicker__navigation react-datepicker__navigation--years react-datepicker__navigation--years-previous\"}))),t})),Dt(bt(n),\"onChange\",(function(e){n.props.onChange(e)})),Dt(bt(n),\"handleClickOutside\",(function(){n.props.onCancel()})),Dt(bt(n),\"shiftYears\",(function(e){var t=n.state.yearsList.map((function(t){return t+e}));n.setState({yearsList:t})})),Dt(bt(n),\"incrementYears\",(function(){return n.shiftYears(1)})),Dt(bt(n),\"decrementYears\",(function(){return n.shiftYears(-1)}));var o=e.yearDropdownItemNumber,s=e.scrollableYearDropdown,i=o||(s?10:5);return n.state={yearsList:Sr(n.props.year,i,n.props.minDate,n.props.maxDate)},n.dropdownRef=t.createRef(),n}return yt(a,[{key:\"componentDidMount\",value:function(){var e=this.dropdownRef.current;e&&(e.scrollTop=e.scrollHeight/2-e.clientHeight/2)}},{key:\"render\",value:function(){var e=ce.default({\"react-datepicker__year-dropdown\":!0,\"react-datepicker__year-dropdown--scrollable\":this.props.scrollableYearDropdown});return de.default.createElement(\"div\",{className:e,ref:this.dropdownRef},this.renderOptions())}}]),a}(de.default.Component),_r=lt.default(Cr),Mr=function(e){wt(r,e);var t=Ct(r);function r(){var e;ht(this,r);for(var a=arguments.length,n=new Array(a),o=0;o0&&void 0!==arguments[0]?arguments[0]:{},r=!1;0===e.getTabIndex()&&!t.isInputFocused&&e.isSameDay(e.props.preSelection)&&(document.activeElement&&document.activeElement!==document.body||(r=!0),e.props.inline&&!e.props.shouldFocusDayInline&&(r=!1),e.props.containerRef&&e.props.containerRef.current&&e.props.containerRef.current.contains(document.activeElement)&&document.activeElement.classList.contains(\"react-datepicker__day\")&&(r=!0)),r&&e.dayEl.current.focus({preventScroll:!0})})),Dt(bt(e),\"renderDayContents\",(function(){return e.props.monthShowsDuplicateDaysEnd&&e.isAfterMonth()||e.props.monthShowsDuplicateDaysStart&&e.isBeforeMonth()?null:e.props.renderDayContents?e.props.renderDayContents(Ne.default(e.props.day),e.props.day):Ne.default(e.props.day)})),Dt(bt(e),\"render\",(function(){return de.default.createElement(\"div\",{ref:e.dayEl,className:e.getClassNames(e.props.day),onKeyDown:e.handleOnKeyDown,onClick:e.handleClick,onMouseEnter:e.handleMouseEnter,tabIndex:e.getTabIndex(),\"aria-label\":e.getAriaLabel(),role:\"option\",\"aria-disabled\":e.isDisabled(),\"aria-current\":e.isCurrentDay()?\"date\":void 0,\"aria-selected\":e.isSelected()},e.renderDayContents())})),e}return yt(r,[{key:\"componentDidMount\",value:function(){this.handleFocusDay()}},{key:\"componentDidUpdate\",value:function(e){this.handleFocusDay(e)}}]),r}(de.default.Component),Lr=function(e){wt(r,e);var t=Ct(r);function r(){var e;ht(this,r);for(var a=arguments.length,n=new Array(a),o=0;o=6,i=!r&&!e.isWeekInMonth(o);if(s||i){if(!e.props.peekNextMonth)break;n=!0}}return t})),Dt(bt(e),\"onMonthClick\",(function(t,r){e.handleDayClick(Kt(Ae.default(e.props.day,r)),t)})),Dt(bt(e),\"handleMonthNavigation\",(function(t,r){e.isDisabled(r)||e.isExcluded(r)||(e.props.setPreSelection(r),e.MONTH_REFS[t].current&&e.MONTH_REFS[t].current.focus())})),Dt(bt(e),\"onMonthKeyDown\",(function(t,r){var a=t.key;if(!e.props.disabledKeyboardNavigation)switch(a){case\"Enter\":e.onMonthClick(t,r),e.props.setPreSelection(e.props.selected);break;case\"ArrowRight\":e.handleMonthNavigation(11===r?0:r+1,we.default(e.props.preSelection,1));break;case\"ArrowLeft\":e.handleMonthNavigation(0===r?11:r-1,Se.default(e.props.preSelection,1))}})),Dt(bt(e),\"onQuarterClick\",(function(t,r){e.handleDayClick(jt(qe.default(e.props.day,r)),t)})),Dt(bt(e),\"getMonthClassNames\",(function(t){var r=e.props,a=r.day,n=r.startDate,o=r.endDate,s=r.selected,i=r.minDate,p=r.maxDate,l=r.preSelection,d=r.monthClassName,c=d?d(a):void 0;return ce.default(\"react-datepicker__month-text\",\"react-datepicker__month-\".concat(t),c,{\"react-datepicker__month--disabled\":(i||p)&&nr(Ae.default(a,t),e.props),\"react-datepicker__month--selected\":e.isSelectedMonth(a,t,s),\"react-datepicker__month-text--keyboard-selected\":Oe.default(l)===t,\"react-datepicker__month--in-range\":or(n,o,t,a),\"react-datepicker__month--range-start\":e.isRangeStartMonth(t),\"react-datepicker__month--range-end\":e.isRangeEndMonth(t),\"react-datepicker__month-text--today\":e.isCurrentMonth(a,t)})})),Dt(bt(e),\"getTabIndex\",(function(t){var r=Oe.default(e.props.preSelection);return e.props.disabledKeyboardNavigation||t!==r?\"-1\":\"0\"})),Dt(bt(e),\"getAriaLabel\",(function(t){var r=e.props,a=r.chooseDayAriaLabelPrefix,n=void 0===a?\"Choose\":a,o=r.disabledDayAriaLabelPrefix,s=void 0===o?\"Not available\":o,i=r.day,p=Ae.default(i,t),l=e.isDisabled(p)||e.isExcluded(p)?s:n;return\"\".concat(l,\" \").concat(Lt(p,\"MMMM yyyy\"))})),Dt(bt(e),\"getQuarterClassNames\",(function(t){var r=e.props,a=r.day,n=r.startDate,o=r.endDate,s=r.selected,i=r.minDate,p=r.maxDate;return ce.default(\"react-datepicker__quarter-text\",\"react-datepicker__quarter-\".concat(t),{\"react-datepicker__quarter--disabled\":(i||p)&&sr(qe.default(a,t),e.props),\"react-datepicker__quarter--selected\":e.isSelectedQuarter(a,t,s),\"react-datepicker__quarter--in-range\":pr(n,o,t,a),\"react-datepicker__quarter--range-start\":e.isRangeStartQuarter(t),\"react-datepicker__quarter--range-end\":e.isRangeEndQuarter(t)})})),Dt(bt(e),\"renderMonths\",(function(){var t=e.props,r=t.showFullMonthYearPicker,a=t.showTwoColumnMonthYearPicker,n=t.showFourColumnMonthYearPicker,o=t.locale,s=t.day,i=t.selected;return(n?[[0,1,2,3],[4,5,6,7],[8,9,10,11]]:a?[[0,1],[2,3],[4,5],[6,7],[8,9],[10,11]]:[[0,1,2],[3,4,5],[6,7,8],[9,10,11]]).map((function(t,a){return de.default.createElement(\"div\",{className:\"react-datepicker__month-wrapper\",key:a},t.map((function(t,a){return de.default.createElement(\"div\",{ref:e.MONTH_REFS[t],key:a,onClick:function(r){e.onMonthClick(r,t)},onKeyDown:function(r){e.onMonthKeyDown(r,t)},tabIndex:e.getTabIndex(t),className:e.getMonthClassNames(t),role:\"option\",\"aria-label\":e.getAriaLabel(t),\"aria-current\":e.isCurrentMonth(s,t)?\"date\":void 0,\"aria-selected\":e.isSelectedMonth(s,t,i)},r?Zt(t,o):er(t,o))})))}))})),Dt(bt(e),\"renderQuarters\",(function(){var t=e.props,r=t.day,a=t.selected;return de.default.createElement(\"div\",{className:\"react-datepicker__quarter-wrapper\"},[1,2,3,4].map((function(t,n){return de.default.createElement(\"div\",{key:n,role:\"option\",onClick:function(r){e.onQuarterClick(r,t)},className:e.getQuarterClassNames(t),\"aria-selected\":e.isSelectedQuarter(r,t,a)},tr(t,e.props.locale))})))})),Dt(bt(e),\"getClassNames\",(function(){var t=e.props;t.day;var r=t.selectingDate,a=t.selectsStart,n=t.selectsEnd,o=t.showMonthYearPicker,s=t.showQuarterYearPicker;return ce.default(\"react-datepicker__month\",{\"react-datepicker__month--selecting-range\":r&&(a||n)},{\"react-datepicker__monthPicker\":o},{\"react-datepicker__quarterPicker\":s})})),e}return yt(r,[{key:\"render\",value:function(){var e=this.props,t=e.showMonthYearPicker,r=e.showQuarterYearPicker,a=e.day,n=e.ariaLabelPrefix,o=void 0===n?\"month \":n;return de.default.createElement(\"div\",{className:this.getClassNames(),onMouseLeave:this.handleMouseLeave,\"aria-label\":\"\".concat(o,\" \").concat(Lt(a,\"yyyy-MM\")),role:\"listbox\"},t?this.renderMonths():r?this.renderQuarters():this.renderWeeks())}}]),r}(de.default.Component),Ar=function(e){wt(r,e);var t=Ct(r);function r(){var e;ht(this,r);for(var a=arguments.length,n=new Array(a),o=0;o0&&void 0!==arguments[0]?arguments[0]:{}).className||\"\").split(/\\s+/);return Kr.some((function(t){return e.indexOf(t)>=0}))})(e.target)&&a.props.onDropdownFocus()})),Dt(bt(a),\"getDateInView\",(function(){var e=a.props,t=e.preSelection,r=e.selected,n=e.openToDate,o=Dr(a.props),s=vr(a.props),i=Yt(),p=n||r||t;return p||(o&&nt.default(i,o)?o:s&&at.default(i,s)?s:i)})),Dt(bt(a),\"increaseMonth\",(function(){a.setState((function(e){var t=e.date;return{date:we.default(t,1)}}),(function(){return a.handleMonthChange(a.state.date)}))})),Dt(bt(a),\"decreaseMonth\",(function(){a.setState((function(e){var t=e.date;return{date:Se.default(t,1)}}),(function(){return a.handleMonthChange(a.state.date)}))})),Dt(bt(a),\"handleDayClick\",(function(e,t,r){a.props.onSelect(e,t,r),a.props.setPreSelection&&a.props.setPreSelection(e)})),Dt(bt(a),\"handleDayMouseEnter\",(function(e){a.setState({selectingDate:e}),a.props.onDayMouseEnter&&a.props.onDayMouseEnter(e)})),Dt(bt(a),\"handleMonthMouseLeave\",(function(){a.setState({selectingDate:null}),a.props.onMonthMouseLeave&&a.props.onMonthMouseLeave()})),Dt(bt(a),\"handleYearChange\",(function(e){a.props.onYearChange&&a.props.onYearChange(e),a.props.adjustDateOnChange&&(a.props.onSelect&&a.props.onSelect(e),a.props.setOpen&&a.props.setOpen(!0)),a.props.setPreSelection&&a.props.setPreSelection(e)})),Dt(bt(a),\"handleMonthChange\",(function(e){a.props.onMonthChange&&a.props.onMonthChange(e),a.props.adjustDateOnChange&&(a.props.onSelect&&a.props.onSelect(e),a.props.setOpen&&a.props.setOpen(!0)),a.props.setPreSelection&&a.props.setPreSelection(e)})),Dt(bt(a),\"handleMonthYearChange\",(function(e){a.handleYearChange(e),a.handleMonthChange(e)})),Dt(bt(a),\"changeYear\",(function(e){a.setState((function(t){var r=t.date;return{date:We.default(r,e)}}),(function(){return a.handleYearChange(a.state.date)}))})),Dt(bt(a),\"changeMonth\",(function(e){a.setState((function(t){var r=t.date;return{date:Ae.default(r,e)}}),(function(){return a.handleMonthChange(a.state.date)}))})),Dt(bt(a),\"changeMonthYear\",(function(e){a.setState((function(t){var r=t.date;return{date:We.default(Ae.default(r,Oe.default(e)),Ie.default(e))}}),(function(){return a.handleMonthYearChange(a.state.date)}))})),Dt(bt(a),\"header\",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:a.state.date,t=Bt(e,a.props.locale,a.props.calendarStartDay),r=[];return a.props.showWeekNumbers&&r.push(de.default.createElement(\"div\",{key:\"W\",className:\"react-datepicker__day-name\"},a.props.weekLabel||\"#\")),r.concat([0,1,2,3,4,5,6].map((function(e){var r=De.default(t,e),n=a.formatWeekday(r,a.props.locale),o=a.props.weekDayClassName?a.props.weekDayClassName(r):void 0;return de.default.createElement(\"div\",{key:e,className:ce.default(\"react-datepicker__day-name\",o)},n)})))})),Dt(bt(a),\"formatWeekday\",(function(e,t){return a.props.formatWeekDay?function(e,t,r){return t(Lt(e,\"EEEE\",r))}(e,a.props.formatWeekDay,t):a.props.useWeekdaysShort?function(e,t){return Lt(e,\"EEE\",t)}(e,t):function(e,t){return Lt(e,\"EEEEEE\",t)}(e,t)})),Dt(bt(a),\"decreaseYear\",(function(){a.setState((function(e){var t=e.date;return{date:Ce.default(t,a.props.showYearPicker?a.props.yearItemNumber:1)}}),(function(){return a.handleYearChange(a.state.date)}))})),Dt(bt(a),\"renderPreviousButton\",(function(){if(!a.props.renderCustomHeader){var e;switch(!0){case a.props.showMonthYearPicker:e=mr(a.state.date,a.props);break;case a.props.showYearPicker:e=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.minDate,a=t.yearItemNumber,n=void 0===a?xt:a,o=br(Ht(Ce.default(e,n)),n).endPeriod,s=r&&Ie.default(r);return s&&s>o||!1}(a.state.date,a.props);break;default:e=fr(a.state.date,a.props)}if((a.props.forceShowMonthNavigation||a.props.showDisabledMonthNavigation||!e)&&!a.props.showTimeSelectOnly){var t=[\"react-datepicker__navigation\",\"react-datepicker__navigation--previous\"],r=a.decreaseMonth;(a.props.showMonthYearPicker||a.props.showQuarterYearPicker||a.props.showYearPicker)&&(r=a.decreaseYear),e&&a.props.showDisabledMonthNavigation&&(t.push(\"react-datepicker__navigation--previous--disabled\"),r=null);var n=a.props.showMonthYearPicker||a.props.showQuarterYearPicker||a.props.showYearPicker,o=a.props,s=o.previousMonthButtonLabel,i=o.previousYearButtonLabel,p=a.props,l=p.previousMonthAriaLabel,d=void 0===l?\"string\"==typeof s?s:\"Previous Month\":l,c=p.previousYearAriaLabel,u=void 0===c?\"string\"==typeof i?i:\"Previous Year\":c;return de.default.createElement(\"button\",{type:\"button\",className:t.join(\" \"),onClick:r,onKeyDown:a.props.handleOnKeyDown,\"aria-label\":n?u:d},de.default.createElement(\"span\",{className:[\"react-datepicker__navigation-icon\",\"react-datepicker__navigation-icon--previous\"].join(\" \")},n?a.props.previousYearButtonLabel:a.props.previousMonthButtonLabel))}}})),Dt(bt(a),\"increaseYear\",(function(){a.setState((function(e){var t=e.date;return{date:ge.default(t,a.props.showYearPicker?a.props.yearItemNumber:1)}}),(function(){return a.handleYearChange(a.state.date)}))})),Dt(bt(a),\"renderNextButton\",(function(){if(!a.props.renderCustomHeader){var e;switch(!0){case a.props.showMonthYearPicker:e=yr(a.state.date,a.props);break;case a.props.showYearPicker:e=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},r=t.maxDate,a=t.yearItemNumber,n=void 0===a?xt:a,o=br(ge.default(e,n),n).startPeriod,s=r&&Ie.default(r);return s&&s0&&void 0!==arguments[0]?arguments[0]:a.state.date,t=[\"react-datepicker__current-month\"];return a.props.showYearDropdown&&t.push(\"react-datepicker__current-month--hasYearDropdown\"),a.props.showMonthDropdown&&t.push(\"react-datepicker__current-month--hasMonthDropdown\"),a.props.showMonthYearDropdown&&t.push(\"react-datepicker__current-month--hasMonthYearDropdown\"),de.default.createElement(\"div\",{className:t.join(\" \")},Lt(e,a.props.dateFormat,a.props.locale))})),Dt(bt(a),\"renderYearDropdown\",(function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(a.props.showYearDropdown&&!e)return de.default.createElement(Mr,{adjustDateOnChange:a.props.adjustDateOnChange,date:a.state.date,onSelect:a.props.onSelect,setOpen:a.props.setOpen,dropdownMode:a.props.dropdownMode,onChange:a.changeYear,minDate:a.props.minDate,maxDate:a.props.maxDate,year:Ie.default(a.state.date),scrollableYearDropdown:a.props.scrollableYearDropdown,yearDropdownItemNumber:a.props.yearDropdownItemNumber})})),Dt(bt(a),\"renderMonthDropdown\",(function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(a.props.showMonthDropdown&&!e)return de.default.createElement(Nr,{dropdownMode:a.props.dropdownMode,locale:a.props.locale,onChange:a.changeMonth,month:Oe.default(a.state.date),useShortMonthInDropdown:a.props.useShortMonthInDropdown})})),Dt(bt(a),\"renderMonthYearDropdown\",(function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(a.props.showMonthYearDropdown&&!e)return de.default.createElement(Ir,{dropdownMode:a.props.dropdownMode,locale:a.props.locale,dateFormat:a.props.dateFormat,onChange:a.changeMonthYear,minDate:a.props.minDate,maxDate:a.props.maxDate,date:a.state.date,scrollableMonthYearDropdown:a.props.scrollableMonthYearDropdown})})),Dt(bt(a),\"renderTodayButton\",(function(){if(a.props.todayButton&&!a.props.showTimeSelectOnly)return de.default.createElement(\"div\",{className:\"react-datepicker__today-button\",onClick:function(e){return a.props.onSelect(Ve.default(Yt()),e)}},a.props.todayButton)})),Dt(bt(a),\"renderDefaultHeader\",(function(e){var t=e.monthDate,r=e.i;return de.default.createElement(\"div\",{className:\"react-datepicker__header \".concat(a.props.showTimeSelect?\"react-datepicker__header--has-time-select\":\"\")},a.renderCurrentMonth(t),de.default.createElement(\"div\",{className:\"react-datepicker__header__dropdown react-datepicker__header__dropdown--\".concat(a.props.dropdownMode),onFocus:a.handleDropdownFocus},a.renderMonthDropdown(0!==r),a.renderMonthYearDropdown(0!==r),a.renderYearDropdown(0!==r)),de.default.createElement(\"div\",{className:\"react-datepicker__day-names\"},a.header(t)))})),Dt(bt(a),\"renderCustomHeader\",(function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=e.monthDate,r=e.i;if(a.props.showTimeSelect&&!a.state.monthContainer||a.props.showTimeSelectOnly)return null;var n=fr(a.state.date,a.props),o=hr(a.state.date,a.props),s=mr(a.state.date,a.props),i=yr(a.state.date,a.props),p=!a.props.showMonthYearPicker&&!a.props.showQuarterYearPicker&&!a.props.showYearPicker;return de.default.createElement(\"div\",{className:\"react-datepicker__header react-datepicker__header--custom\",onFocus:a.props.onDropdownFocus},a.props.renderCustomHeader(ut(ut({},a.state),{},{customHeaderCount:r,monthDate:t,changeMonth:a.changeMonth,changeYear:a.changeYear,decreaseMonth:a.decreaseMonth,increaseMonth:a.increaseMonth,decreaseYear:a.decreaseYear,increaseYear:a.increaseYear,prevMonthButtonDisabled:n,nextMonthButtonDisabled:o,prevYearButtonDisabled:s,nextYearButtonDisabled:i})),p&&de.default.createElement(\"div\",{className:\"react-datepicker__day-names\"},a.header(t)))})),Dt(bt(a),\"renderYearHeader\",(function(){var e=a.state.date,t=a.props,r=t.showYearPicker,n=br(e,t.yearItemNumber),o=n.startPeriod,s=n.endPeriod;return de.default.createElement(\"div\",{className:\"react-datepicker__header react-datepicker-year-header\"},r?\"\".concat(o,\" - \").concat(s):Ie.default(e))})),Dt(bt(a),\"renderHeader\",(function(e){switch(!0){case void 0!==a.props.renderCustomHeader:return a.renderCustomHeader(e);case a.props.showMonthYearPicker||a.props.showQuarterYearPicker||a.props.showYearPicker:return a.renderYearHeader(e);default:return a.renderDefaultHeader(e)}})),Dt(bt(a),\"renderMonths\",(function(){if(!a.props.showTimeSelectOnly&&!a.props.showYearPicker){for(var e=[],t=a.props.showPreviousMonths?a.props.monthsShown-1:0,r=Se.default(a.state.date,t),n=0;n0;e.push(de.default.createElement(\"div\",{key:i,ref:function(e){a.monthContainer=e},className:\"react-datepicker__month-container\"},a.renderHeader({monthDate:s,i:n}),de.default.createElement(Fr,{chooseDayAriaLabelPrefix:a.props.chooseDayAriaLabelPrefix,disabledDayAriaLabelPrefix:a.props.disabledDayAriaLabelPrefix,weekAriaLabelPrefix:a.props.weekAriaLabelPrefix,ariaLabelPrefix:a.props.monthAriaLabelPrefix,onChange:a.changeMonthYear,day:s,dayClassName:a.props.dayClassName,calendarStartDay:a.props.calendarStartDay,monthClassName:a.props.monthClassName,onDayClick:a.handleDayClick,handleOnKeyDown:a.props.handleOnDayKeyDown,onDayMouseEnter:a.handleDayMouseEnter,onMouseLeave:a.handleMonthMouseLeave,onWeekSelect:a.props.onWeekSelect,orderInDisplay:n,formatWeekNumber:a.props.formatWeekNumber,locale:a.props.locale,minDate:a.props.minDate,maxDate:a.props.maxDate,excludeDates:a.props.excludeDates,excludeDateIntervals:a.props.excludeDateIntervals,highlightDates:a.props.highlightDates,selectingDate:a.state.selectingDate,includeDates:a.props.includeDates,includeDateIntervals:a.props.includeDateIntervals,inline:a.props.inline,shouldFocusDayInline:a.props.shouldFocusDayInline,fixedHeight:a.props.fixedHeight,filterDate:a.props.filterDate,preSelection:a.props.preSelection,setPreSelection:a.props.setPreSelection,selected:a.props.selected,selectsStart:a.props.selectsStart,selectsEnd:a.props.selectsEnd,selectsRange:a.props.selectsRange,selectsDisabledDaysInRange:a.props.selectsDisabledDaysInRange,showWeekNumbers:a.props.showWeekNumbers,startDate:a.props.startDate,endDate:a.props.endDate,peekNextMonth:a.props.peekNextMonth,setOpen:a.props.setOpen,shouldCloseOnSelect:a.props.shouldCloseOnSelect,renderDayContents:a.props.renderDayContents,disabledKeyboardNavigation:a.props.disabledKeyboardNavigation,showMonthYearPicker:a.props.showMonthYearPicker,showFullMonthYearPicker:a.props.showFullMonthYearPicker,showTwoColumnMonthYearPicker:a.props.showTwoColumnMonthYearPicker,showFourColumnMonthYearPicker:a.props.showFourColumnMonthYearPicker,showYearPicker:a.props.showYearPicker,showQuarterYearPicker:a.props.showQuarterYearPicker,isInputFocused:a.props.isInputFocused,containerRef:a.containerRef,monthShowsDuplicateDaysEnd:p,monthShowsDuplicateDaysStart:l})))}return e}})),Dt(bt(a),\"renderYears\",(function(){if(!a.props.showTimeSelectOnly)return a.props.showYearPicker?de.default.createElement(\"div\",{className:\"react-datepicker__year--container\"},a.renderHeader(),de.default.createElement(qr,vt({onDayClick:a.handleDayClick,date:a.state.date},a.props))):void 0})),Dt(bt(a),\"renderTimeSection\",(function(){if(a.props.showTimeSelect&&(a.state.monthContainer||a.props.showTimeSelectOnly))return de.default.createElement(Ar,{selected:a.props.selected,openToDate:a.props.openToDate,onChange:a.props.onTimeChange,timeClassName:a.props.timeClassName,format:a.props.timeFormat,includeTimes:a.props.includeTimes,intervals:a.props.timeIntervals,minTime:a.props.minTime,maxTime:a.props.maxTime,excludeTimes:a.props.excludeTimes,filterTime:a.props.filterTime,timeCaption:a.props.timeCaption,todayButton:a.props.todayButton,showMonthDropdown:a.props.showMonthDropdown,showMonthYearDropdown:a.props.showMonthYearDropdown,showYearDropdown:a.props.showYearDropdown,withPortal:a.props.withPortal,monthRef:a.state.monthContainer,injectTimes:a.props.injectTimes,locale:a.props.locale,handleOnKeyDown:a.props.handleOnKeyDown,showTimeSelectOnly:a.props.showTimeSelectOnly})})),Dt(bt(a),\"renderInputTimeSection\",(function(){var e=new Date(a.props.selected),t=Tt(e)&&Boolean(a.props.selected)?\"\".concat(kr(e.getHours()),\":\").concat(kr(e.getMinutes())):\"\";if(a.props.showTimeInput)return de.default.createElement(Wr,{date:e,timeString:t,timeInputLabel:a.props.timeInputLabel,onChange:a.props.onTimeChange,customTimeInput:a.props.customTimeInput})})),a.containerRef=de.default.createRef(),a.state={date:a.getDateInView(),selectingDate:null,monthContainer:null},a}return yt(r,[{key:\"componentDidMount\",value:function(){var e=this;this.props.showTimeSelect&&(this.assignMonthContainer=void e.setState({monthContainer:e.monthContainer}))}},{key:\"componentDidUpdate\",value:function(e){this.props.preSelection&&!$t(this.props.preSelection,e.preSelection)?this.setState({date:this.props.preSelection}):this.props.openToDate&&!$t(this.props.openToDate,e.openToDate)&&this.setState({date:this.props.openToDate})}},{key:\"render\",value:function(){var e=this.props.container||Br;return de.default.createElement(\"div\",{ref:this.containerRef},de.default.createElement(e,{className:ce.default(\"react-datepicker\",this.props.className,{\"react-datepicker--time-only\":this.props.showTimeSelectOnly}),showPopperArrow:this.props.showPopperArrow,arrowProps:this.props.arrowProps},this.renderPreviousButton(),this.renderNextButton(),this.renderMonths(),this.renderYears(),this.renderTodayButton(),this.renderTimeSection(),this.renderInputTimeSection(),this.props.children))}}],[{key:\"defaultProps\",get:function(){return{onDropdownFocus:function(){},monthsShown:1,monthSelectedIn:0,forceShowMonthNavigation:!1,timeCaption:\"Time\",previousYearButtonLabel:\"Previous Year\",nextYearButtonLabel:\"Next Year\",previousMonthButtonLabel:\"Previous Month\",nextMonthButtonLabel:\"Next Month\",customTimeInput:null,yearItemNumber:xt}}}]),r}(de.default.Component),jr=function(e){wt(r,e);var t=Ct(r);function r(e){var a;return ht(this,r),(a=t.call(this,e)).el=document.createElement(\"div\"),a}return yt(r,[{key:\"componentDidMount\",value:function(){this.portalRoot=(this.props.portalHost||document).getElementById(this.props.portalId),this.portalRoot||(this.portalRoot=document.createElement(\"div\"),this.portalRoot.setAttribute(\"id\",this.props.portalId),(this.props.portalHost||document.body).appendChild(this.portalRoot)),this.portalRoot.appendChild(this.el)}},{key:\"componentWillUnmount\",value:function(){this.portalRoot.removeChild(this.el)}},{key:\"render\",value:function(){return dt.default.createPortal(this.props.children,this.el)}}]),r}(de.default.Component),Qr=function(e){return!e.disabled&&-1!==e.tabIndex},Vr=function(e){wt(r,e);var t=Ct(r);function r(e){var a;return ht(this,r),Dt(bt(a=t.call(this,e)),\"getTabChildren\",(function(){return Array.prototype.slice.call(a.tabLoopRef.current.querySelectorAll(\"[tabindex], a, button, input, select, textarea\"),1,-1).filter(Qr)})),Dt(bt(a),\"handleFocusStart\",(function(e){var t=a.getTabChildren();t&&t.length>1&&t[t.length-1].focus()})),Dt(bt(a),\"handleFocusEnd\",(function(e){var t=a.getTabChildren();t&&t.length>1&&t[0].focus()})),a.tabLoopRef=de.default.createRef(),a}return yt(r,[{key:\"render\",value:function(){return this.props.enableTabLoop?de.default.createElement(\"div\",{className:\"react-datepicker__tab-loop\",ref:this.tabLoopRef},de.default.createElement(\"div\",{className:\"react-datepicker__tab-loop__start\",tabIndex:\"0\",onFocus:this.handleFocusStart}),this.props.children,de.default.createElement(\"div\",{className:\"react-datepicker__tab-loop__end\",tabIndex:\"0\",onFocus:this.handleFocusEnd})):this.props.children}}],[{key:\"defaultProps\",get:function(){return{enableTabLoop:!0}}}]),r}(de.default.Component),Ur=function(e){wt(r,e);var t=Ct(r);function r(){return ht(this,r),t.apply(this,arguments)}return yt(r,[{key:\"render\",value:function(){var e,t=this.props,r=t.className,a=t.wrapperClassName,n=t.hidePopper,o=t.popperComponent,s=t.popperModifiers,i=t.popperPlacement,p=t.popperProps,l=t.targetComponent,d=t.enableTabLoop,c=t.popperOnKeyDown,u=t.portalId,f=t.portalHost;if(!n){var h=ce.default(\"react-datepicker-popper\",r);e=de.default.createElement(pe.Popper,vt({modifiers:s,placement:i},p),(function(e){var t=e.ref,r=e.style,a=e.placement,n=e.arrowProps;return de.default.createElement(Vr,{enableTabLoop:d},de.default.createElement(\"div\",{ref:t,style:r,className:h,\"data-placement\":a,onKeyDown:c},de.default.cloneElement(o,{arrowProps:n})))}))}this.props.popperContainer&&(e=de.default.createElement(this.props.popperContainer,{},e)),u&&!n&&(e=de.default.createElement(jr,{portalId:u,portalHost:f},e));var m=ce.default(\"react-datepicker-wrapper\",a);return de.default.createElement(pe.Manager,{className:\"react-datepicker-manager\"},de.default.createElement(pe.Reference,null,(function(e){var t=e.ref;return de.default.createElement(\"div\",{ref:t,className:m},l)})),e)}}],[{key:\"defaultProps\",get:function(){return{hidePopper:!0,popperModifiers:[],popperProps:{},popperPlacement:\"bottom-start\"}}}]),r}(de.default.Component),$r=\"react-datepicker-ignore-onclickoutside\",zr=lt.default(Hr);var Gr=\"Date input not valid.\",Jr=function(e){wt(r,e);var t=Ct(r);function r(e){var a;return ht(this,r),Dt(bt(a=t.call(this,e)),\"getPreSelection\",(function(){return a.props.openToDate?a.props.openToDate:a.props.selectsEnd&&a.props.startDate?a.props.startDate:a.props.selectsStart&&a.props.endDate?a.props.endDate:Yt()})),Dt(bt(a),\"calcInitialState\",(function(){var e,t=a.getPreSelection(),r=Dr(a.props),n=vr(a.props),o=r&&nt.default(t,Ve.default(r))?r:n&&at.default(t,Je.default(n))?n:t;return{open:a.props.startOpen||!1,preventFocus:!1,preSelection:null!==(e=a.props.selectsRange?a.props.startDate:a.props.selected)&&void 0!==e?e:o,highlightDates:wr(a.props.highlightDates),focused:!1,shouldFocusDayInline:!1}})),Dt(bt(a),\"clearPreventFocusTimeout\",(function(){a.preventFocusTimeout&&clearTimeout(a.preventFocusTimeout)})),Dt(bt(a),\"setFocus\",(function(){a.input&&a.input.focus&&a.input.focus({preventScroll:!0})})),Dt(bt(a),\"setBlur\",(function(){a.input&&a.input.blur&&a.input.blur(),a.cancelFocusInput()})),Dt(bt(a),\"setOpen\",(function(e){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];a.setState({open:e,preSelection:e&&a.state.open?a.state.preSelection:a.calcInitialState().preSelection,lastPreSelectChange:Zr},(function(){e||a.setState((function(e){return{focused:!!t&&e.focused}}),(function(){!t&&a.setBlur(),a.setState({inputValue:null})}))}))})),Dt(bt(a),\"inputOk\",(function(){return ue.default(a.state.preSelection)})),Dt(bt(a),\"isCalendarOpen\",(function(){return void 0===a.props.open?a.state.open&&!a.props.disabled&&!a.props.readOnly:a.props.open})),Dt(bt(a),\"handleFocus\",(function(e){a.state.preventFocus||(a.props.onFocus(e),a.props.preventOpenOnFocus||a.props.readOnly||a.setOpen(!0)),a.setState({focused:!0})})),Dt(bt(a),\"cancelFocusInput\",(function(){clearTimeout(a.inputFocusTimeout),a.inputFocusTimeout=null})),Dt(bt(a),\"deferFocusInput\",(function(){a.cancelFocusInput(),a.inputFocusTimeout=setTimeout((function(){return a.setFocus()}),1)})),Dt(bt(a),\"handleDropdownFocus\",(function(){a.cancelFocusInput()})),Dt(bt(a),\"handleBlur\",(function(e){(!a.state.open||a.props.withPortal||a.props.showTimeInput)&&a.props.onBlur(e),a.setState({focused:!1})})),Dt(bt(a),\"handleCalendarClickOutside\",(function(e){a.props.inline||a.setOpen(!1),a.props.onClickOutside(e),a.props.withPortal&&e.preventDefault()})),Dt(bt(a),\"handleChange\",(function(){for(var e=arguments.length,t=new Array(e),r=0;rb}return!1}function B(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var D={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){D[a]=new B(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];D[b]=new B(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){D[a]=new B(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){D[a]=new B(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){D[a]=new B(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){D[a]=new B(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){D[a]=new B(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){D[a]=new B(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){D[a]=new B(a,5,!1,a.toLowerCase(),null,!1,!1)});var oa=/[\\-:]([a-z])/g;function pa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(oa,\npa);D[b]=new B(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!1,!1)});\nD.xlinkHref=new B(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction qa(a,b,c,d){var e=D.hasOwnProperty(b)?D[b]:null;var f=null!==e?0===e.type:d?!1:!(2h||e[g]!==f[h])return\"\\n\"+e[g].replace(\" at new \",\" at \");while(1<=g&&0<=h)}break}}}finally{Oa=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Na(a):\"\"}\nfunction Qa(a){switch(a.tag){case 5:return Na(a.type);case 16:return Na(\"Lazy\");case 13:return Na(\"Suspense\");case 19:return Na(\"SuspenseList\");case 0:case 2:case 15:return a=Pa(a.type,!1),a;case 11:return a=Pa(a.type.render,!1),a;case 22:return a=Pa(a.type._render,!1),a;case 1:return a=Pa(a.type,!0),a;default:return\"\"}}\nfunction Ra(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ua:return\"Fragment\";case ta:return\"Portal\";case xa:return\"Profiler\";case wa:return\"StrictMode\";case Ba:return\"Suspense\";case Ca:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case za:return(a.displayName||\"Context\")+\".Consumer\";case ya:return(a._context.displayName||\"Context\")+\".Provider\";case Aa:var b=a.render;b=b.displayName||b.name||\"\";\nreturn a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\"ForwardRef\");case Da:return Ra(a.type);case Fa:return Ra(a._render);case Ea:b=a._payload;a=a._init;try{return Ra(a(b))}catch(c){}}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return m({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function $a(a,b){b=b.checked;null!=b&&qa(a,\"checked\",b,!1)}\nfunction ab(a,b){$a(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?bb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&bb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction cb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction bb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function db(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function eb(a,b){a=m({children:void 0},b);if(b=db(b.children))a.children=b;return a}\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e=c.length))throw Error(y(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var kb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction lb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function mb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?lb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar nb,ob=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==kb.svg||\"innerHTML\"in a)a.innerHTML=b;else{nb=nb||document.createElement(\"div\");nb.innerHTML=\"\"+b.valueOf().toString()+\"\";for(b=nb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction pb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar qb={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(qb).forEach(function(a){rb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);qb[b]=qb[a]})});function sb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||qb.hasOwnProperty(a)&&qb[a]?(\"\"+b).trim():b+\"px\"}\nfunction tb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=sb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var ub=m({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction vb(a,b){if(b){if(ub[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(y(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(y(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(y(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(y(62));}}\nfunction wb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(y(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;ad?0:1<c;c++)b.push(a);return b}\nfunction $c(a,b,c){a.pendingLanes|=b;var d=b-1;a.suspendedLanes&=d;a.pingedLanes&=d;a=a.eventTimes;b=31-Vc(b);a[b]=c}var Vc=Math.clz32?Math.clz32:ad,bd=Math.log,cd=Math.LN2;function ad(a){return 0===a?32:31-(bd(a)/cd|0)|0}var dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function gd(a,b,c,d){Kb||Ib();var e=hd,f=Kb;Kb=!0;try{Hb(e,a,b,c,d)}finally{(Kb=f)||Mb()}}function id(a,b,c,d){ed(dd,hd.bind(null,a,b,c,d))}\nfunction hd(a,b,c,d){if(fd){var e;if((e=0===(b&4))&&0=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Ke(c)}}function Me(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Me(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Ne(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Oe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nvar Pe=fa&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Oe(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Je(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0Af||(a.current=zf[Af],zf[Af]=null,Af--)}function I(a,b){Af++;zf[Af]=a.current;a.current=b}var Cf={},M=Bf(Cf),N=Bf(!1),Df=Cf;\nfunction Ef(a,b){var c=a.type.contextTypes;if(!c)return Cf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function Ff(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gf(){H(N);H(M)}function Hf(a,b,c){if(M.current!==Cf)throw Error(y(168));I(M,b);I(N,c)}\nfunction If(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(y(108,Ra(b)||\"Unknown\",e));return m({},c,d)}function Jf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Cf;Df=M.current;I(M,a);I(N,N.current);return!0}function Kf(a,b,c){var d=a.stateNode;if(!d)throw Error(y(169));c?(a=If(a,b,Df),d.__reactInternalMemoizedMergedChildContext=a,H(N),H(M),I(M,a)):H(N);I(N,c)}\nvar Lf=null,Mf=null,Nf=r.unstable_runWithPriority,Of=r.unstable_scheduleCallback,Pf=r.unstable_cancelCallback,Qf=r.unstable_shouldYield,Rf=r.unstable_requestPaint,Sf=r.unstable_now,Tf=r.unstable_getCurrentPriorityLevel,Uf=r.unstable_ImmediatePriority,Vf=r.unstable_UserBlockingPriority,Wf=r.unstable_NormalPriority,Xf=r.unstable_LowPriority,Yf=r.unstable_IdlePriority,Zf={},$f=void 0!==Rf?Rf:function(){},ag=null,bg=null,cg=!1,dg=Sf(),O=1E4>dg?Sf:function(){return Sf()-dg};\nfunction eg(){switch(Tf()){case Uf:return 99;case Vf:return 98;case Wf:return 97;case Xf:return 96;case Yf:return 95;default:throw Error(y(332));}}function fg(a){switch(a){case 99:return Uf;case 98:return Vf;case 97:return Wf;case 96:return Xf;case 95:return Yf;default:throw Error(y(332));}}function gg(a,b){a=fg(a);return Nf(a,b)}function hg(a,b,c){a=fg(a);return Of(a,b,c)}function ig(){if(null!==bg){var a=bg;bg=null;Pf(a)}jg()}\nfunction jg(){if(!cg&&null!==ag){cg=!0;var a=0;try{var b=ag;gg(99,function(){for(;az?(q=u,u=null):q=u.sibling;var n=p(e,u,h[z],k);if(null===n){null===u&&(u=q);break}a&&u&&null===\nn.alternate&&b(e,u);g=f(n,g,z);null===t?l=n:t.sibling=n;t=n;u=q}if(z===h.length)return c(e,u),l;if(null===u){for(;zz?(q=u,u=null):q=u.sibling;var w=p(e,u,n.value,k);if(null===w){null===u&&(u=q);break}a&&u&&null===w.alternate&&b(e,u);g=f(w,g,z);null===t?l=w:t.sibling=w;t=w;u=q}if(n.done)return c(e,u),l;if(null===u){for(;!n.done;z++,n=h.next())n=A(e,n.value,k),null!==n&&(g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);return l}for(u=d(e,u);!n.done;z++,n=h.next())n=C(u,e,z,n.value,k),null!==n&&(a&&null!==n.alternate&&\nu.delete(null===n.key?z:n.key),g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);a&&u.forEach(function(a){return b(e,a)});return l}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ua&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case sa:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ua){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,k.sibling);\nd=e(k,f.props);d.ref=Qg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ua?(d=Xg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Vg(f.type,f.key,f.props,null,a.mode,h),h.ref=Qg(a,d,f),h.return=a,a=h)}return g(a);case ta:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=\nWg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Ug(f,a.mode,h),d.return=a,a=d),g(a);if(Pg(f))return x(a,d,f,h);if(La(f))return w(a,d,f,h);l&&Rg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 22:case 0:case 11:case 15:throw Error(y(152,Ra(a.type)||\"Component\"));}return c(a,d)}}var Yg=Sg(!0),Zg=Sg(!1),$g={},ah=Bf($g),bh=Bf($g),ch=Bf($g);\nfunction dh(a){if(a===$g)throw Error(y(174));return a}function eh(a,b){I(ch,b);I(bh,a);I(ah,$g);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:mb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=mb(b,a)}H(ah);I(ah,b)}function fh(){H(ah);H(bh);H(ch)}function gh(a){dh(ch.current);var b=dh(ah.current);var c=mb(b,a.type);b!==c&&(I(bh,a),I(ah,c))}function hh(a){bh.current===a&&(H(ah),H(bh))}var P=Bf(0);\nfunction ih(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var jh=null,kh=null,lh=!1;\nfunction mh(a,b){var c=nh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.flags=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}function oh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction ph(a){if(lh){var b=kh;if(b){var c=b;if(!oh(a,b)){b=rf(c.nextSibling);if(!b||!oh(a,b)){a.flags=a.flags&-1025|2;lh=!1;jh=a;return}mh(jh,c)}jh=a;kh=rf(b.firstChild)}else a.flags=a.flags&-1025|2,lh=!1,jh=a}}function qh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;jh=a}\nfunction rh(a){if(a!==jh)return!1;if(!lh)return qh(a),lh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!nf(b,a.memoizedProps))for(b=kh;b;)mh(a,b),b=rf(b.nextSibling);qh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(y(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){kh=rf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}kh=null}}else kh=jh?rf(a.stateNode.nextSibling):null;return!0}\nfunction sh(){kh=jh=null;lh=!1}var th=[];function uh(){for(var a=0;af))throw Error(y(301));f+=1;T=S=null;b.updateQueue=null;vh.current=Fh;a=c(d,e)}while(zh)}vh.current=Gh;b=null!==S&&null!==S.next;xh=0;T=S=R=null;yh=!1;if(b)throw Error(y(300));return a}function Hh(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===T?R.memoizedState=T=a:T=T.next=a;return T}\nfunction Ih(){if(null===S){var a=R.alternate;a=null!==a?a.memoizedState:null}else a=S.next;var b=null===T?R.memoizedState:T.next;if(null!==b)T=b,S=a;else{if(null===a)throw Error(y(310));S=a;a={memoizedState:S.memoizedState,baseState:S.baseState,baseQueue:S.baseQueue,queue:S.queue,next:null};null===T?R.memoizedState=T=a:T=T.next=a}return T}function Jh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Kh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=S,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.lane;if((xh&l)===l)null!==h&&(h=h.next={lane:0,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),d=k.eagerReducer===a?k.eagerState:a(d,k.action);else{var n={lane:l,action:k.action,eagerReducer:k.eagerReducer,\neagerState:k.eagerState,next:null};null===h?(g=h=n,f=d):h=h.next=n;R.lanes|=l;Dg|=l}k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;He(d,b.memoizedState)||(ug=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction Lh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(ug=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction Mh(a,b,c){var d=b._getVersion;d=d(b._source);var e=b._workInProgressVersionPrimary;if(null!==e)a=e===d;else if(a=a.mutableReadLanes,a=(xh&a)===a)b._workInProgressVersionPrimary=d,th.push(b);if(a)return c(b._source);th.push(b);throw Error(y(350));}\nfunction Nh(a,b,c,d){var e=U;if(null===e)throw Error(y(349));var f=b._getVersion,g=f(b._source),h=vh.current,k=h.useState(function(){return Mh(e,b,c)}),l=k[1],n=k[0];k=T;var A=a.memoizedState,p=A.refs,C=p.getSnapshot,x=A.source;A=A.subscribe;var w=R;a.memoizedState={refs:p,source:b,subscribe:d};h.useEffect(function(){p.getSnapshot=c;p.setSnapshot=l;var a=f(b._source);if(!He(g,a)){a=c(b._source);He(n,a)||(l(a),a=Ig(w),e.mutableReadLanes|=a&e.pendingLanes);a=e.mutableReadLanes;e.entangledLanes|=a;for(var d=\ne.entanglements,h=a;0c?98:c,function(){a(!0)});gg(97\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[wf]=b;a[xf]=d;Bi(a,b,!1,!1);b.stateNode=a;g=wb(c,d);switch(c){case \"dialog\":G(\"cancel\",a);G(\"close\",a);\ne=d;break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;eJi&&(b.flags|=64,f=!0,Fi(d,!1),b.lanes=33554432)}else{if(!f)if(a=ih(g),null!==a){if(b.flags|=64,f=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Fi(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!g.alternate&&!lh)return b=b.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*O()-d.renderingStartTime>Ji&&1073741824!==c&&(b.flags|=\n64,f=!0,Fi(d,!1),b.lanes=33554432);d.isBackwards?(g.sibling=b.child,b.child=g):(c=d.last,null!==c?c.sibling=g:b.child=g,d.last=g)}return null!==d.tail?(c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=O(),c.sibling=null,b=P.current,I(P,f?b&1|2:b&1),c):null;case 23:case 24:return Ki(),null!==a&&null!==a.memoizedState!==(null!==b.memoizedState)&&\"unstable-defer-without-hiding\"!==d.mode&&(b.flags|=4),null}throw Error(y(156,b.tag));}\nfunction Li(a){switch(a.tag){case 1:Ff(a.type)&&Gf();var b=a.flags;return b&4096?(a.flags=b&-4097|64,a):null;case 3:fh();H(N);H(M);uh();b=a.flags;if(0!==(b&64))throw Error(y(285));a.flags=b&-4097|64;return a;case 5:return hh(a),null;case 13:return H(P),b=a.flags,b&4096?(a.flags=b&-4097|64,a):null;case 19:return H(P),null;case 4:return fh(),null;case 10:return rg(a),null;case 23:case 24:return Ki(),null;default:return null}}\nfunction Mi(a,b){try{var c=\"\",d=b;do c+=Qa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e}}function Ni(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Oi=\"function\"===typeof WeakMap?WeakMap:Map;function Pi(a,b,c){c=zg(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Qi||(Qi=!0,Ri=d);Ni(a,b)};return c}\nfunction Si(a,b,c){c=zg(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ni(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===Ti?Ti=new Set([this]):Ti.add(this),Ni(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}var Ui=\"function\"===typeof WeakSet?WeakSet:Set;\nfunction Vi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Wi(a,c)}else b.current=null}function Xi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.flags&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:lg(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:b.flags&256&&qf(b.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(y(163));}\nfunction Yi(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{if(3===(a.tag&3)){var d=a.create;a.destroy=d()}a=a.next}while(a!==b)}b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{var e=a;d=e.next;e=e.tag;0!==(e&4)&&0!==(e&1)&&(Zi(c,a),$i(c,a));a=d}while(a!==b)}return;case 1:a=c.stateNode;c.flags&4&&(null===b?a.componentDidMount():(d=c.elementType===c.type?b.memoizedProps:lg(c.type,b.memoizedProps),a.componentDidUpdate(d,\nb.memoizedState,a.__reactInternalSnapshotBeforeUpdate)));b=c.updateQueue;null!==b&&Eg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Eg(c,b,a)}return;case 5:a=c.stateNode;null===b&&c.flags&4&&mf(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Cc(c))));\nreturn;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(y(163));}\nfunction aj(a,b){for(var c=a;;){if(5===c.tag){var d=c.stateNode;if(b)d=d.style,\"function\"===typeof d.setProperty?d.setProperty(\"display\",\"none\",\"important\"):d.display=\"none\";else{d=c.stateNode;var e=c.memoizedProps.style;e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null;d.style.display=sb(\"display\",e)}}else if(6===c.tag)c.stateNode.nodeValue=b?\"\":c.memoizedProps;else if((23!==c.tag&&24!==c.tag||null===c.memoizedState||c===a)&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===\na)break;for(;null===c.sibling;){if(null===c.return||c.return===a)return;c=c.return}c.sibling.return=c.return;c=c.sibling}}\nfunction bj(a,b){if(Mf&&\"function\"===typeof Mf.onCommitFiberUnmount)try{Mf.onCommitFiberUnmount(Lf,b)}catch(f){}switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var c=a=a.next;do{var d=c,e=d.destroy;d=d.tag;if(void 0!==e)if(0!==(d&4))Zi(b,c);else{d=b;try{e()}catch(f){Wi(d,f)}}c=c.next}while(c!==a)}break;case 1:Vi(b);a=b.stateNode;if(\"function\"===typeof a.componentWillUnmount)try{a.props=b.memoizedProps,a.state=b.memoizedState,a.componentWillUnmount()}catch(f){Wi(b,\nf)}break;case 5:Vi(b);break;case 4:cj(a,b)}}function dj(a){a.alternate=null;a.child=null;a.dependencies=null;a.firstEffect=null;a.lastEffect=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.return=null;a.updateQueue=null}function ej(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction fj(a){a:{for(var b=a.return;null!==b;){if(ej(b))break a;b=b.return}throw Error(y(160));}var c=b;b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(y(161));}c.flags&16&&(pb(b,\"\"),c.flags&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||ej(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.flags&2)continue b;if(null===\nc.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.flags&2)){c=c.stateNode;break a}}d?gj(a,c,b):hj(a,c,b)}\nfunction gj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=jf));else if(4!==d&&(a=a.child,null!==a))for(gj(a,b,c),a=a.sibling;null!==a;)gj(a,b,c),a=a.sibling}\nfunction hj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(hj(a,b,c),a=a.sibling;null!==a;)hj(a,b,c),a=a.sibling}\nfunction cj(a,b){for(var c=b,d=!1,e,f;;){if(!d){d=c.return;a:for(;;){if(null===d)throw Error(y(160));e=d.stateNode;switch(d.tag){case 5:f=!1;break a;case 3:e=e.containerInfo;f=!0;break a;case 4:e=e.containerInfo;f=!0;break a}d=d.return}d=!0}if(5===c.tag||6===c.tag){a:for(var g=a,h=c,k=h;;)if(bj(g,k),null!==k.child&&4!==k.tag)k.child.return=k,k=k.child;else{if(k===h)break a;for(;null===k.sibling;){if(null===k.return||k.return===h)break a;k=k.return}k.sibling.return=k.return;k=k.sibling}f?(g=e,h=c.stateNode,\n8===g.nodeType?g.parentNode.removeChild(h):g.removeChild(h)):e.removeChild(c.stateNode)}else if(4===c.tag){if(null!==c.child){e=c.stateNode.containerInfo;f=!0;c.child.return=c;c=c.child;continue}}else if(bj(a,c),null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return;4===c.tag&&(d=!1)}c.sibling.return=c.return;c=c.sibling}}\nfunction ij(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:var c=b.updateQueue;c=null!==c?c.lastEffect:null;if(null!==c){var d=c=c.next;do 3===(d.tag&3)&&(a=d.destroy,d.destroy=void 0,void 0!==a&&a()),d=d.next;while(d!==c)}return;case 1:return;case 5:c=b.stateNode;if(null!=c){d=b.memoizedProps;var e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[xf]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&$a(c,d);wb(a,e);b=wb(a,d);for(e=0;ee&&(e=g);c&=~f}c=e;c=O()-c;c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3E3>c?3E3:4320>\nc?4320:1960*nj(c/1960))-c;if(10 component higher in the tree to provide a loading indicator or placeholder to display.\")}5!==V&&(V=2);k=Mi(k,h);p=\ng;do{switch(p.tag){case 3:f=k;p.flags|=4096;b&=-b;p.lanes|=b;var J=Pi(p,f,b);Bg(p,J);break a;case 1:f=k;var K=p.type,Q=p.stateNode;if(0===(p.flags&64)&&(\"function\"===typeof K.getDerivedStateFromError||null!==Q&&\"function\"===typeof Q.componentDidCatch&&(null===Ti||!Ti.has(Q)))){p.flags|=4096;b&=-b;p.lanes|=b;var L=Si(p,f,b);Bg(p,L);break a}}p=p.return}while(null!==p)}Zj(c)}catch(va){b=va;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}\nfunction Pj(){var a=oj.current;oj.current=Gh;return null===a?Gh:a}function Tj(a,b){var c=X;X|=16;var d=Pj();U===a&&W===b||Qj(a,b);do try{ak();break}catch(e){Sj(a,e)}while(1);qg();X=c;oj.current=d;if(null!==Y)throw Error(y(261));U=null;W=0;return V}function ak(){for(;null!==Y;)bk(Y)}function Rj(){for(;null!==Y&&!Qf();)bk(Y)}function bk(a){var b=ck(a.alternate,a,qj);a.memoizedProps=a.pendingProps;null===b?Zj(a):Y=b;pj.current=null}\nfunction Zj(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&2048)){c=Gi(c,b,qj);if(null!==c){Y=c;return}c=b;if(24!==c.tag&&23!==c.tag||null===c.memoizedState||0!==(qj&1073741824)||0===(c.mode&4)){for(var d=0,e=c.child;null!==e;)d|=e.lanes|e.childLanes,e=e.sibling;c.childLanes=d}null!==a&&0===(a.flags&2048)&&(null===a.firstEffect&&(a.firstEffect=b.firstEffect),null!==b.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=b.firstEffect),a.lastEffect=b.lastEffect),1g&&(h=g,g=J,J=h),h=Le(t,J),f=Le(t,g),h&&f&&(1!==v.rangeCount||v.anchorNode!==h.node||v.anchorOffset!==h.offset||v.focusNode!==f.node||v.focusOffset!==f.offset)&&(q=q.createRange(),q.setStart(h.node,h.offset),v.removeAllRanges(),J>g?(v.addRange(q),v.extend(f.node,f.offset)):(q.setEnd(f.node,f.offset),v.addRange(q))))));q=[];for(v=t;v=v.parentNode;)1===v.nodeType&&q.push({element:v,left:v.scrollLeft,top:v.scrollTop});\"function\"===typeof t.focus&&t.focus();for(t=\n0;tO()-jj?Qj(a,0):uj|=c);Mj(a,b)}function lj(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=a.mode,0===(b&2)?b=1:0===(b&4)?b=99===eg()?1:2:(0===Gj&&(Gj=tj),b=Yc(62914560&~Gj),0===b&&(b=4194304)));c=Hg();a=Kj(a,b);null!==a&&($c(a,b,c),Mj(a,c))}var ck;\nck=function(a,b,c){var d=b.lanes;if(null!==a)if(a.memoizedProps!==b.pendingProps||N.current)ug=!0;else if(0!==(c&d))ug=0!==(a.flags&16384)?!0:!1;else{ug=!1;switch(b.tag){case 3:ri(b);sh();break;case 5:gh(b);break;case 1:Ff(b.type)&&Jf(b);break;case 4:eh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;var e=b.type._context;I(mg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){if(0!==(c&b.child.childLanes))return ti(a,b,c);I(P,P.current&1);b=hi(a,b,c);return null!==\nb?b.sibling:null}I(P,P.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&64)){if(d)return Ai(a,b,c);b.flags|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);I(P,P.current);if(d)break;else return null;case 23:case 24:return b.lanes=0,mi(a,b,c)}return hi(a,b,c)}else ug=!1;b.lanes=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=Ef(b,M.current);tg(b,c);e=Ch(null,b,d,a,e,c);b.flags|=1;if(\"object\"===\ntypeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(Ff(d)){var f=!0;Jf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;xg(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Gg(b,d,g,a);e.updater=Kg;b.stateNode=e;e._reactInternals=b;Og(b,d,a,c);b=qi(null,b,d,!0,f,c)}else b.tag=0,fi(null,b,e,c),b=b.child;return b;case 16:e=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);\na=b.pendingProps;f=e._init;e=f(e._payload);b.type=e;f=b.tag=hk(e);a=lg(e,a);switch(f){case 0:b=li(null,b,e,a,c);break a;case 1:b=pi(null,b,e,a,c);break a;case 11:b=gi(null,b,e,a,c);break a;case 14:b=ii(null,b,e,lg(e.type,a),d,c);break a}throw Error(y(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),li(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),pi(a,b,d,e,c);case 3:ri(b);d=b.updateQueue;if(null===a||null===d)throw Error(y(282));\nd=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;yg(a,b);Cg(b,d,null,c);d=b.memoizedState.element;if(d===e)sh(),b=hi(a,b,c);else{e=b.stateNode;if(f=e.hydrate)kh=rf(b.stateNode.containerInfo.firstChild),jh=b,f=lh=!0;if(f){a=e.mutableSourceEagerHydrationData;if(null!=a)for(e=0;e &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","import {createElement,Component}from'react';import {findDOMNode}from'react-dom';function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n\n _setPrototypeOf(subClass, superClass);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}/**\n * Check whether some DOM node is our Component's node.\n */\nfunction isNodeFound(current, componentNode, ignoreClass) {\n if (current === componentNode) {\n return true;\n } // SVG elements do not technically reside in the rendered DOM, so\n // they do not have classList directly, but they offer a link to their\n // corresponding element, which can have classList. This extra check is for\n // that case.\n // See: http://www.w3.org/TR/SVG11/struct.html#InterfaceSVGUseElement\n // Discussion: https://github.com/Pomax/react-onclickoutside/pull/17\n\n\n if (current.correspondingElement) {\n return current.correspondingElement.classList.contains(ignoreClass);\n }\n\n return current.classList.contains(ignoreClass);\n}\n/**\n * Try to find our node in a hierarchy of nodes, returning the document\n * node as highest node if our node is not found in the path up.\n */\n\nfunction findHighest(current, componentNode, ignoreClass) {\n if (current === componentNode) {\n return true;\n } // If source=local then this event came from 'somewhere'\n // inside and should be ignored. We could handle this with\n // a layered approach, too, but that requires going back to\n // thinking in terms of Dom node nesting, running counter\n // to React's 'you shouldn't care about the DOM' philosophy.\n // Also cover shadowRoot node by checking current.host\n\n\n while (current.parentNode || current.host) {\n // Only check normal node without shadowRoot\n if (current.parentNode && isNodeFound(current, componentNode, ignoreClass)) {\n return true;\n }\n\n current = current.parentNode || current.host;\n }\n\n return current;\n}\n/**\n * Check if the browser scrollbar was clicked\n */\n\nfunction clickedScrollbar(evt) {\n return document.documentElement.clientWidth <= evt.clientX || document.documentElement.clientHeight <= evt.clientY;\n}// ideally will get replaced with external dep\n// when rafrex/detect-passive-events#4 and rafrex/detect-passive-events#5 get merged in\nvar testPassiveEventSupport = function testPassiveEventSupport() {\n if (typeof window === 'undefined' || typeof window.addEventListener !== 'function') {\n return;\n }\n\n var passive = false;\n var options = Object.defineProperty({}, 'passive', {\n get: function get() {\n passive = true;\n }\n });\n\n var noop = function noop() {};\n\n window.addEventListener('testPassiveEventSupport', noop, options);\n window.removeEventListener('testPassiveEventSupport', noop, options);\n return passive;\n};function autoInc(seed) {\n if (seed === void 0) {\n seed = 0;\n }\n\n return function () {\n return ++seed;\n };\n}\n\nvar uid = autoInc();var passiveEventSupport;\nvar handlersMap = {};\nvar enabledInstances = {};\nvar touchEvents = ['touchstart', 'touchmove'];\nvar IGNORE_CLASS_NAME = 'ignore-react-onclickoutside';\n/**\n * Options for addEventHandler and removeEventHandler\n */\n\nfunction getEventHandlerOptions(instance, eventName) {\n var handlerOptions = null;\n var isTouchEvent = touchEvents.indexOf(eventName) !== -1;\n\n if (isTouchEvent && passiveEventSupport) {\n handlerOptions = {\n passive: !instance.props.preventDefault\n };\n }\n\n return handlerOptions;\n}\n/**\n * This function generates the HOC function that you'll use\n * in order to impart onOutsideClick listening to an\n * arbitrary component. It gets called at the end of the\n * bootstrapping code to yield an instance of the\n * onClickOutsideHOC function defined inside setupHOC().\n */\n\n\nfunction onClickOutsideHOC(WrappedComponent, config) {\n var _class, _temp;\n\n var componentName = WrappedComponent.displayName || WrappedComponent.name || 'Component';\n return _temp = _class = /*#__PURE__*/function (_Component) {\n _inheritsLoose(onClickOutside, _Component);\n\n function onClickOutside(props) {\n var _this;\n\n _this = _Component.call(this, props) || this;\n\n _this.__outsideClickHandler = function (event) {\n if (typeof _this.__clickOutsideHandlerProp === 'function') {\n _this.__clickOutsideHandlerProp(event);\n\n return;\n }\n\n var instance = _this.getInstance();\n\n if (typeof instance.props.handleClickOutside === 'function') {\n instance.props.handleClickOutside(event);\n return;\n }\n\n if (typeof instance.handleClickOutside === 'function') {\n instance.handleClickOutside(event);\n return;\n }\n\n throw new Error(\"WrappedComponent: \" + componentName + \" lacks a handleClickOutside(event) function for processing outside click events.\");\n };\n\n _this.__getComponentNode = function () {\n var instance = _this.getInstance();\n\n if (config && typeof config.setClickOutsideRef === 'function') {\n return config.setClickOutsideRef()(instance);\n }\n\n if (typeof instance.setClickOutsideRef === 'function') {\n return instance.setClickOutsideRef();\n }\n\n return findDOMNode(instance);\n };\n\n _this.enableOnClickOutside = function () {\n if (typeof document === 'undefined' || enabledInstances[_this._uid]) {\n return;\n }\n\n if (typeof passiveEventSupport === 'undefined') {\n passiveEventSupport = testPassiveEventSupport();\n }\n\n enabledInstances[_this._uid] = true;\n var events = _this.props.eventTypes;\n\n if (!events.forEach) {\n events = [events];\n }\n\n handlersMap[_this._uid] = function (event) {\n if (_this.componentNode === null) return;\n\n if (_this.props.preventDefault) {\n event.preventDefault();\n }\n\n if (_this.props.stopPropagation) {\n event.stopPropagation();\n }\n\n if (_this.props.excludeScrollbar && clickedScrollbar(event)) return;\n var current = event.composed && event.composedPath && event.composedPath().shift() || event.target;\n\n if (findHighest(current, _this.componentNode, _this.props.outsideClickIgnoreClass) !== document) {\n return;\n }\n\n _this.__outsideClickHandler(event);\n };\n\n events.forEach(function (eventName) {\n document.addEventListener(eventName, handlersMap[_this._uid], getEventHandlerOptions(_assertThisInitialized(_this), eventName));\n });\n };\n\n _this.disableOnClickOutside = function () {\n delete enabledInstances[_this._uid];\n var fn = handlersMap[_this._uid];\n\n if (fn && typeof document !== 'undefined') {\n var events = _this.props.eventTypes;\n\n if (!events.forEach) {\n events = [events];\n }\n\n events.forEach(function (eventName) {\n return document.removeEventListener(eventName, fn, getEventHandlerOptions(_assertThisInitialized(_this), eventName));\n });\n delete handlersMap[_this._uid];\n }\n };\n\n _this.getRef = function (ref) {\n return _this.instanceRef = ref;\n };\n\n _this._uid = uid();\n return _this;\n }\n /**\n * Access the WrappedComponent's instance.\n */\n\n\n var _proto = onClickOutside.prototype;\n\n _proto.getInstance = function getInstance() {\n if (WrappedComponent.prototype && !WrappedComponent.prototype.isReactComponent) {\n return this;\n }\n\n var ref = this.instanceRef;\n return ref.getInstance ? ref.getInstance() : ref;\n };\n\n /**\n * Add click listeners to the current document,\n * linked to this component's state.\n */\n _proto.componentDidMount = function componentDidMount() {\n // If we are in an environment without a DOM such\n // as shallow rendering or snapshots then we exit\n // early to prevent any unhandled errors being thrown.\n if (typeof document === 'undefined' || !document.createElement) {\n return;\n }\n\n var instance = this.getInstance();\n\n if (config && typeof config.handleClickOutside === 'function') {\n this.__clickOutsideHandlerProp = config.handleClickOutside(instance);\n\n if (typeof this.__clickOutsideHandlerProp !== 'function') {\n throw new Error(\"WrappedComponent: \" + componentName + \" lacks a function for processing outside click events specified by the handleClickOutside config option.\");\n }\n }\n\n this.componentNode = this.__getComponentNode(); // return early so we dont initiate onClickOutside\n\n if (this.props.disableOnClickOutside) return;\n this.enableOnClickOutside();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n this.componentNode = this.__getComponentNode();\n }\n /**\n * Remove all document's event listeners for this component\n */\n ;\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.disableOnClickOutside();\n }\n /**\n * Can be called to explicitly enable event listening\n * for clicks and touches outside of this element.\n */\n ;\n\n /**\n * Pass-through render\n */\n _proto.render = function render() {\n // eslint-disable-next-line no-unused-vars\n var _this$props = this.props;\n _this$props.excludeScrollbar;\n var props = _objectWithoutPropertiesLoose(_this$props, [\"excludeScrollbar\"]);\n\n if (WrappedComponent.prototype && WrappedComponent.prototype.isReactComponent) {\n props.ref = this.getRef;\n } else {\n props.wrappedRef = this.getRef;\n }\n\n props.disableOnClickOutside = this.disableOnClickOutside;\n props.enableOnClickOutside = this.enableOnClickOutside;\n return createElement(WrappedComponent, props);\n };\n\n return onClickOutside;\n }(Component), _class.displayName = \"OnClickOutside(\" + componentName + \")\", _class.defaultProps = {\n eventTypes: ['mousedown', 'touchstart'],\n excludeScrollbar: config && config.excludeScrollbar || false,\n outsideClickIgnoreClass: IGNORE_CLASS_NAME,\n preventDefault: false,\n stopPropagation: false\n }, _class.getClass = function () {\n return WrappedComponent.getClass ? WrappedComponent.getClass() : WrappedComponent;\n }, _temp;\n}export default onClickOutsideHOC;export{IGNORE_CLASS_NAME};","import * as React from 'react';\nexport var ManagerReferenceNodeContext = React.createContext();\nexport var ManagerReferenceNodeSetterContext = React.createContext();\nexport function Manager(_ref) {\n var children = _ref.children;\n\n var _React$useState = React.useState(null),\n referenceNode = _React$useState[0],\n setReferenceNode = _React$useState[1];\n\n var hasUnmounted = React.useRef(false);\n React.useEffect(function () {\n return function () {\n hasUnmounted.current = true;\n };\n }, []);\n var handleSetReferenceNode = React.useCallback(function (node) {\n if (!hasUnmounted.current) {\n setReferenceNode(node);\n }\n }, []);\n return /*#__PURE__*/React.createElement(ManagerReferenceNodeContext.Provider, {\n value: referenceNode\n }, /*#__PURE__*/React.createElement(ManagerReferenceNodeSetterContext.Provider, {\n value: handleSetReferenceNode\n }, children));\n}","import * as React from 'react';\n\n/**\n * Takes an argument and if it's an array, returns the first item in the array,\n * otherwise returns the argument. Used for Preact compatibility.\n */\nexport var unwrapArray = function unwrapArray(arg) {\n return Array.isArray(arg) ? arg[0] : arg;\n};\n/**\n * Takes a maybe-undefined function and arbitrary args and invokes the function\n * only if it is defined.\n */\n\nexport var safeInvoke = function safeInvoke(fn) {\n if (typeof fn === 'function') {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return fn.apply(void 0, args);\n }\n};\n/**\n * Sets a ref using either a ref callback or a ref object\n */\n\nexport var setRef = function setRef(ref, node) {\n // if its a function call it\n if (typeof ref === 'function') {\n return safeInvoke(ref, node);\n } // otherwise we should treat it as a ref object\n else if (ref != null) {\n ref.current = node;\n }\n};\n/**\n * Simple ponyfill for Object.fromEntries\n */\n\nexport var fromEntries = function fromEntries(entries) {\n return entries.reduce(function (acc, _ref) {\n var key = _ref[0],\n value = _ref[1];\n acc[key] = value;\n return acc;\n }, {});\n};\n/**\n * Small wrapper around `useLayoutEffect` to get rid of the warning on SSR envs\n */\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && window.document && window.document.createElement ? React.useLayoutEffect : React.useEffect;","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","import { isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nexport default function getBoundingClientRect(element, includeScale) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n var rect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (isHTMLElement(element) && includeScale) {\n var offsetHeight = element.offsetHeight;\n var offsetWidth = element.offsetWidth; // Do not attempt to divide by 0, otherwise we get `Infinity` as scale\n // Fallback to 1 in case both values are `0`\n\n if (offsetWidth > 0) {\n scaleX = round(rect.width) / offsetWidth || 1;\n }\n\n if (offsetHeight > 0) {\n scaleY = round(rect.height) / offsetHeight || 1;\n }\n }\n\n return {\n width: rect.width / scaleX,\n height: rect.height / scaleY,\n top: rect.top / scaleY,\n right: rect.right / scaleX,\n bottom: rect.bottom / scaleY,\n left: rect.left / scaleX,\n x: rect.left / scaleX,\n y: rect.top / scaleY\n };\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = navigator.userAgent.toLowerCase().indexOf('firefox') !== -1;\n var isIE = navigator.userAgent.indexOf('Trident') !== -1;\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element) {\n var rect = getBoundingClientRect(element);\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nexport default function getViewportRect(element) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0; // NB: This isn't supported on iOS <= 12. If the keyboard is open, the popper\n // can be obscured underneath it.\n // Also, `html.clientHeight` adds the bottom bar height in Safari iOS, even\n // if it isn't open, so if this isn't available, the popper will be detected\n // to overflow the bottom of the screen too early.\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height; // Uses Layout Viewport (like Chrome; Safari does not currently)\n // In Chrome, it returns a value very close to 0 (+/-) but contains rounding\n // errors due to floating point numbers, so we need to check precision.\n // Safari returns a number <= 0, usually < -1 when pinch-zoomed\n // Feature detection fails in mobile emulation mode in Chrome.\n // Math.abs(win.innerWidth / visualViewport.scale - visualViewport.width) <\n // 0.001\n // Fallback here: \"Not Safari\" userAgent\n\n if (!/^((?!chrome|android).)*safari/i.test(navigator.userAgent)) {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import * as React from 'react';\nimport * as ReactDOM from 'react-dom';\nimport { createPopper as defaultCreatePopper } from '@popperjs/core';\nimport isEqual from 'react-fast-compare';\nimport { fromEntries, useIsomorphicLayoutEffect } from './utils';\nvar EMPTY_MODIFIERS = [];\nexport var usePopper = function usePopper(referenceElement, popperElement, options) {\n if (options === void 0) {\n options = {};\n }\n\n var prevOptions = React.useRef(null);\n var optionsWithDefaults = {\n onFirstUpdate: options.onFirstUpdate,\n placement: options.placement || 'bottom',\n strategy: options.strategy || 'absolute',\n modifiers: options.modifiers || EMPTY_MODIFIERS\n };\n\n var _React$useState = React.useState({\n styles: {\n popper: {\n position: optionsWithDefaults.strategy,\n left: '0',\n top: '0'\n },\n arrow: {\n position: 'absolute'\n }\n },\n attributes: {}\n }),\n state = _React$useState[0],\n setState = _React$useState[1];\n\n var updateStateModifier = React.useMemo(function () {\n return {\n name: 'updateState',\n enabled: true,\n phase: 'write',\n fn: function fn(_ref) {\n var state = _ref.state;\n var elements = Object.keys(state.elements);\n ReactDOM.flushSync(function () {\n setState({\n styles: fromEntries(elements.map(function (element) {\n return [element, state.styles[element] || {}];\n })),\n attributes: fromEntries(elements.map(function (element) {\n return [element, state.attributes[element]];\n }))\n });\n });\n },\n requires: ['computeStyles']\n };\n }, []);\n var popperOptions = React.useMemo(function () {\n var newOptions = {\n onFirstUpdate: optionsWithDefaults.onFirstUpdate,\n placement: optionsWithDefaults.placement,\n strategy: optionsWithDefaults.strategy,\n modifiers: [].concat(optionsWithDefaults.modifiers, [updateStateModifier, {\n name: 'applyStyles',\n enabled: false\n }])\n };\n\n if (isEqual(prevOptions.current, newOptions)) {\n return prevOptions.current || newOptions;\n } else {\n prevOptions.current = newOptions;\n return newOptions;\n }\n }, [optionsWithDefaults.onFirstUpdate, optionsWithDefaults.placement, optionsWithDefaults.strategy, optionsWithDefaults.modifiers, updateStateModifier]);\n var popperInstanceRef = React.useRef();\n useIsomorphicLayoutEffect(function () {\n if (popperInstanceRef.current) {\n popperInstanceRef.current.setOptions(popperOptions);\n }\n }, [popperOptions]);\n useIsomorphicLayoutEffect(function () {\n if (referenceElement == null || popperElement == null) {\n return;\n }\n\n var createPopper = options.createPopper || defaultCreatePopper;\n var popperInstance = createPopper(referenceElement, popperElement, popperOptions);\n popperInstanceRef.current = popperInstance;\n return function () {\n popperInstance.destroy();\n popperInstanceRef.current = null;\n };\n }, [referenceElement, popperElement, options.createPopper]);\n return {\n state: popperInstanceRef.current ? popperInstanceRef.current.state : null,\n styles: state.styles,\n attributes: state.attributes,\n update: popperInstanceRef.current ? popperInstanceRef.current.update : null,\n forceUpdate: popperInstanceRef.current ? popperInstanceRef.current.forceUpdate : null\n };\n};","import * as React from 'react';\nimport { ManagerReferenceNodeContext } from './Manager';\nimport { unwrapArray, setRef } from './utils';\nimport { usePopper } from './usePopper';\n\nvar NOOP = function NOOP() {\n return void 0;\n};\n\nvar NOOP_PROMISE = function NOOP_PROMISE() {\n return Promise.resolve(null);\n};\n\nvar EMPTY_MODIFIERS = [];\nexport function Popper(_ref) {\n var _ref$placement = _ref.placement,\n placement = _ref$placement === void 0 ? 'bottom' : _ref$placement,\n _ref$strategy = _ref.strategy,\n strategy = _ref$strategy === void 0 ? 'absolute' : _ref$strategy,\n _ref$modifiers = _ref.modifiers,\n modifiers = _ref$modifiers === void 0 ? EMPTY_MODIFIERS : _ref$modifiers,\n referenceElement = _ref.referenceElement,\n onFirstUpdate = _ref.onFirstUpdate,\n innerRef = _ref.innerRef,\n children = _ref.children;\n var referenceNode = React.useContext(ManagerReferenceNodeContext);\n\n var _React$useState = React.useState(null),\n popperElement = _React$useState[0],\n setPopperElement = _React$useState[1];\n\n var _React$useState2 = React.useState(null),\n arrowElement = _React$useState2[0],\n setArrowElement = _React$useState2[1];\n\n React.useEffect(function () {\n setRef(innerRef, popperElement);\n }, [innerRef, popperElement]);\n var options = React.useMemo(function () {\n return {\n placement: placement,\n strategy: strategy,\n onFirstUpdate: onFirstUpdate,\n modifiers: [].concat(modifiers, [{\n name: 'arrow',\n enabled: arrowElement != null,\n options: {\n element: arrowElement\n }\n }])\n };\n }, [placement, strategy, onFirstUpdate, modifiers, arrowElement]);\n\n var _usePopper = usePopper(referenceElement || referenceNode, popperElement, options),\n state = _usePopper.state,\n styles = _usePopper.styles,\n forceUpdate = _usePopper.forceUpdate,\n update = _usePopper.update;\n\n var childrenProps = React.useMemo(function () {\n return {\n ref: setPopperElement,\n style: styles.popper,\n placement: state ? state.placement : placement,\n hasPopperEscaped: state && state.modifiersData.hide ? state.modifiersData.hide.hasPopperEscaped : null,\n isReferenceHidden: state && state.modifiersData.hide ? state.modifiersData.hide.isReferenceHidden : null,\n arrowProps: {\n style: styles.arrow,\n ref: setArrowElement\n },\n forceUpdate: forceUpdate || NOOP,\n update: update || NOOP_PROMISE\n };\n }, [setPopperElement, setArrowElement, placement, state, styles, update, forceUpdate]);\n return unwrapArray(children)(childrenProps);\n}","import * as React from 'react';\nimport warning from 'warning';\nimport { ManagerReferenceNodeSetterContext } from './Manager';\nimport { safeInvoke, unwrapArray, setRef } from './utils';\nexport function Reference(_ref) {\n var children = _ref.children,\n innerRef = _ref.innerRef;\n var setReferenceNode = React.useContext(ManagerReferenceNodeSetterContext);\n var refHandler = React.useCallback(function (node) {\n setRef(innerRef, node);\n safeInvoke(setReferenceNode, node);\n }, [innerRef, setReferenceNode]); // ran on unmount\n // eslint-disable-next-line react-hooks/exhaustive-deps\n\n React.useEffect(function () {\n return function () {\n return setRef(innerRef, null);\n };\n }, []);\n React.useEffect(function () {\n warning(Boolean(setReferenceNode), '`Reference` should not be used outside of a `Manager` component.');\n }, [setReferenceNode]);\n return unwrapArray(children)({\n ref: refHandler\n });\n}","/** @license React v17.0.2\n * react-jsx-runtime.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';require(\"object-assign\");var f=require(\"react\"),g=60103;exports.Fragment=60107;if(\"function\"===typeof Symbol&&Symbol.for){var h=Symbol.for;g=h(\"react.element\");exports.Fragment=h(\"react.fragment\")}var m=f.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED.ReactCurrentOwner,n=Object.prototype.hasOwnProperty,p={key:!0,ref:!0,__self:!0,__source:!0};\nfunction q(c,a,k){var b,d={},e=null,l=null;void 0!==k&&(e=\"\"+k);void 0!==a.key&&(e=\"\"+a.key);void 0!==a.ref&&(l=a.ref);for(b in a)n.call(a,b)&&!p.hasOwnProperty(b)&&(d[b]=a[b]);if(c&&c.defaultProps)for(b in a=c.defaultProps,a)void 0===d[b]&&(d[b]=a[b]);return{$$typeof:g,type:c,key:e,ref:l,props:d,_owner:m.current}}exports.jsx=q;exports.jsxs=q;\n","/** @license React v17.0.2\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=require(\"object-assign\"),n=60103,p=60106;exports.Fragment=60107;exports.StrictMode=60108;exports.Profiler=60114;var q=60109,r=60110,t=60112;exports.Suspense=60113;var u=60115,v=60116;\nif(\"function\"===typeof Symbol&&Symbol.for){var w=Symbol.for;n=w(\"react.element\");p=w(\"react.portal\");exports.Fragment=w(\"react.fragment\");exports.StrictMode=w(\"react.strict_mode\");exports.Profiler=w(\"react.profiler\");q=w(\"react.provider\");r=w(\"react.context\");t=w(\"react.forward_ref\");exports.Suspense=w(\"react.suspense\");u=w(\"react.memo\");v=w(\"react.lazy\")}var x=\"function\"===typeof Symbol&&Symbol.iterator;\nfunction y(a){if(null===a||\"object\"!==typeof a)return null;a=x&&a[x]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}function z(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125>>1,e=a[d];if(void 0!==e&&0I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","'use strict';\n\nmodule.exports = (string, separator) => {\n\tif (!(typeof string === 'string' && typeof separator === 'string')) {\n\t\tthrow new TypeError('Expected the arguments to be of type `string`');\n\t}\n\n\tif (separator === '') {\n\t\treturn [string];\n\t}\n\n\tconst separatorIndex = string.indexOf(separator);\n\n\tif (separatorIndex === -1) {\n\t\treturn [string];\n\t}\n\n\treturn [\n\t\tstring.slice(0, separatorIndex),\n\t\tstring.slice(separatorIndex + separator.length)\n\t];\n};\n","'use strict';\nmodule.exports = str => encodeURIComponent(str).replace(/[!'()*]/g, x => `%${x.charCodeAt(0).toString(16).toUpperCase()}`);\n","/////////////////////////////////////////////////////////////////////////////////\n/* UAParser.js v1.0.35\n Copyright © 2012-2021 Faisal Salman \n MIT License *//*\n Detect Browser, Engine, OS, CPU, and Device type/model from User-Agent data.\n Supports browser & node.js environment. \n Demo : https://faisalman.github.io/ua-parser-js\n Source : https://github.com/faisalman/ua-parser-js */\n/////////////////////////////////////////////////////////////////////////////////\n\n(function (window, undefined) {\n\n 'use strict';\n\n //////////////\n // Constants\n /////////////\n\n\n var LIBVERSION = '1.0.35',\n EMPTY = '',\n UNKNOWN = '?',\n FUNC_TYPE = 'function',\n UNDEF_TYPE = 'undefined',\n OBJ_TYPE = 'object',\n STR_TYPE = 'string',\n MAJOR = 'major',\n MODEL = 'model',\n NAME = 'name',\n TYPE = 'type',\n VENDOR = 'vendor',\n VERSION = 'version',\n ARCHITECTURE= 'architecture',\n CONSOLE = 'console',\n MOBILE = 'mobile',\n TABLET = 'tablet',\n SMARTTV = 'smarttv',\n WEARABLE = 'wearable',\n EMBEDDED = 'embedded',\n UA_MAX_LENGTH = 350;\n\n var AMAZON = 'Amazon',\n APPLE = 'Apple',\n ASUS = 'ASUS',\n BLACKBERRY = 'BlackBerry',\n BROWSER = 'Browser',\n CHROME = 'Chrome',\n EDGE = 'Edge',\n FIREFOX = 'Firefox',\n GOOGLE = 'Google',\n HUAWEI = 'Huawei',\n LG = 'LG',\n MICROSOFT = 'Microsoft',\n MOTOROLA = 'Motorola',\n OPERA = 'Opera',\n SAMSUNG = 'Samsung',\n SHARP = 'Sharp',\n SONY = 'Sony',\n VIERA = 'Viera',\n XIAOMI = 'Xiaomi',\n ZEBRA = 'Zebra',\n FACEBOOK = 'Facebook',\n CHROMIUM_OS = 'Chromium OS',\n MAC_OS = 'Mac OS';\n\n ///////////\n // Helper\n //////////\n\n var extend = function (regexes, extensions) {\n var mergedRegexes = {};\n for (var i in regexes) {\n if (extensions[i] && extensions[i].length % 2 === 0) {\n mergedRegexes[i] = extensions[i].concat(regexes[i]);\n } else {\n mergedRegexes[i] = regexes[i];\n }\n }\n return mergedRegexes;\n },\n enumerize = function (arr) {\n var enums = {};\n for (var i=0; i 0) {\n if (q.length === 2) {\n if (typeof q[1] == FUNC_TYPE) {\n // assign modified match\n this[q[0]] = q[1].call(this, match);\n } else {\n // assign given value, ignore regex match\n this[q[0]] = q[1];\n }\n } else if (q.length === 3) {\n // check whether function or regex\n if (typeof q[1] === FUNC_TYPE && !(q[1].exec && q[1].test)) {\n // call function (usually string mapper)\n this[q[0]] = match ? q[1].call(this, match, q[2]) : undefined;\n } else {\n // sanitize match using given regex\n this[q[0]] = match ? match.replace(q[1], q[2]) : undefined;\n }\n } else if (q.length === 4) {\n this[q[0]] = match ? q[3].call(this, match.replace(q[1], q[2])) : undefined;\n }\n } else {\n this[q] = match ? match : undefined;\n }\n }\n }\n }\n i += 2;\n }\n },\n\n strMapper = function (str, map) {\n\n for (var i in map) {\n // check if current value is array\n if (typeof map[i] === OBJ_TYPE && map[i].length > 0) {\n for (var j = 0; j < map[i].length; j++) {\n if (has(map[i][j], str)) {\n return (i === UNKNOWN) ? undefined : i;\n }\n }\n } else if (has(map[i], str)) {\n return (i === UNKNOWN) ? undefined : i;\n }\n }\n return str;\n };\n\n ///////////////\n // String map\n //////////////\n\n // Safari < 3.0\n var oldSafariMap = {\n '1.0' : '/8',\n '1.2' : '/1',\n '1.3' : '/3',\n '2.0' : '/412',\n '2.0.2' : '/416',\n '2.0.3' : '/417',\n '2.0.4' : '/419',\n '?' : '/'\n },\n windowsVersionMap = {\n 'ME' : '4.90',\n 'NT 3.11' : 'NT3.51',\n 'NT 4.0' : 'NT4.0',\n '2000' : 'NT 5.0',\n 'XP' : ['NT 5.1', 'NT 5.2'],\n 'Vista' : 'NT 6.0',\n '7' : 'NT 6.1',\n '8' : 'NT 6.2',\n '8.1' : 'NT 6.3',\n '10' : ['NT 6.4', 'NT 10.0'],\n 'RT' : 'ARM'\n };\n\n //////////////\n // Regex map\n /////////////\n\n var regexes = {\n\n browser : [[\n\n /\\b(?:crmo|crios)\\/([\\w\\.]+)/i // Chrome for Android/iOS\n ], [VERSION, [NAME, 'Chrome']], [\n /edg(?:e|ios|a)?\\/([\\w\\.]+)/i // Microsoft Edge\n ], [VERSION, [NAME, 'Edge']], [\n\n // Presto based\n /(opera mini)\\/([-\\w\\.]+)/i, // Opera Mini\n /(opera [mobiletab]{3,6})\\b.+version\\/([-\\w\\.]+)/i, // Opera Mobi/Tablet\n /(opera)(?:.+version\\/|[\\/ ]+)([\\w\\.]+)/i // Opera\n ], [NAME, VERSION], [\n /opios[\\/ ]+([\\w\\.]+)/i // Opera mini on iphone >= 8.0\n ], [VERSION, [NAME, OPERA+' Mini']], [\n /\\bopr\\/([\\w\\.]+)/i // Opera Webkit\n ], [VERSION, [NAME, OPERA]], [\n\n // Mixed\n /(kindle)\\/([\\w\\.]+)/i, // Kindle\n /(lunascape|maxthon|netfront|jasmine|blazer)[\\/ ]?([\\w\\.]*)/i, // Lunascape/Maxthon/Netfront/Jasmine/Blazer\n // Trident based\n /(avant |iemobile|slim)(?:browser)?[\\/ ]?([\\w\\.]*)/i, // Avant/IEMobile/SlimBrowser\n /(ba?idubrowser)[\\/ ]?([\\w\\.]+)/i, // Baidu Browser\n /(?:ms|\\()(ie) ([\\w\\.]+)/i, // Internet Explorer\n\n // Webkit/KHTML based // Flock/RockMelt/Midori/Epiphany/Silk/Skyfire/Bolt/Iron/Iridium/PhantomJS/Bowser/QupZilla/Falkon\n /(flock|rockmelt|midori|epiphany|silk|skyfire|bolt|iron|vivaldi|iridium|phantomjs|bowser|quark|qupzilla|falkon|rekonq|puffin|brave|whale(?!.+naver)|qqbrowserlite|qq|duckduckgo)\\/([-\\w\\.]+)/i,\n // Rekonq/Puffin/Brave/Whale/QQBrowserLite/QQ, aka ShouQ\n /(heytap|ovi)browser\\/([\\d\\.]+)/i, // Heytap/Ovi\n /(weibo)__([\\d\\.]+)/i // Weibo\n ], [NAME, VERSION], [\n /(?:\\buc? ?browser|(?:juc.+)ucweb)[\\/ ]?([\\w\\.]+)/i // UCBrowser\n ], [VERSION, [NAME, 'UC'+BROWSER]], [\n /microm.+\\bqbcore\\/([\\w\\.]+)/i, // WeChat Desktop for Windows Built-in Browser\n /\\bqbcore\\/([\\w\\.]+).+microm/i\n ], [VERSION, [NAME, 'WeChat(Win) Desktop']], [\n /micromessenger\\/([\\w\\.]+)/i // WeChat\n ], [VERSION, [NAME, 'WeChat']], [\n /konqueror\\/([\\w\\.]+)/i // Konqueror\n ], [VERSION, [NAME, 'Konqueror']], [\n /trident.+rv[: ]([\\w\\.]{1,9})\\b.+like gecko/i // IE11\n ], [VERSION, [NAME, 'IE']], [\n /ya(?:search)?browser\\/([\\w\\.]+)/i // Yandex\n ], [VERSION, [NAME, 'Yandex']], [\n /(avast|avg)\\/([\\w\\.]+)/i // Avast/AVG Secure Browser\n ], [[NAME, /(.+)/, '$1 Secure '+BROWSER], VERSION], [\n /\\bfocus\\/([\\w\\.]+)/i // Firefox Focus\n ], [VERSION, [NAME, FIREFOX+' Focus']], [\n /\\bopt\\/([\\w\\.]+)/i // Opera Touch\n ], [VERSION, [NAME, OPERA+' Touch']], [\n /coc_coc\\w+\\/([\\w\\.]+)/i // Coc Coc Browser\n ], [VERSION, [NAME, 'Coc Coc']], [\n /dolfin\\/([\\w\\.]+)/i // Dolphin\n ], [VERSION, [NAME, 'Dolphin']], [\n /coast\\/([\\w\\.]+)/i // Opera Coast\n ], [VERSION, [NAME, OPERA+' Coast']], [\n /miuibrowser\\/([\\w\\.]+)/i // MIUI Browser\n ], [VERSION, [NAME, 'MIUI '+BROWSER]], [\n /fxios\\/([-\\w\\.]+)/i // Firefox for iOS\n ], [VERSION, [NAME, FIREFOX]], [\n /\\bqihu|(qi?ho?o?|360)browser/i // 360\n ], [[NAME, '360 '+BROWSER]], [\n /(oculus|samsung|sailfish|huawei)browser\\/([\\w\\.]+)/i\n ], [[NAME, /(.+)/, '$1 '+BROWSER], VERSION], [ // Oculus/Samsung/Sailfish/Huawei Browser\n /(comodo_dragon)\\/([\\w\\.]+)/i // Comodo Dragon\n ], [[NAME, /_/g, ' '], VERSION], [\n /(electron)\\/([\\w\\.]+) safari/i, // Electron-based App\n /(tesla)(?: qtcarbrowser|\\/(20\\d\\d\\.[-\\w\\.]+))/i, // Tesla\n /m?(qqbrowser|baiduboxapp|2345Explorer)[\\/ ]?([\\w\\.]+)/i // QQBrowser/Baidu App/2345 Browser\n ], [NAME, VERSION], [\n /(metasr)[\\/ ]?([\\w\\.]+)/i, // SouGouBrowser\n /(lbbrowser)/i, // LieBao Browser\n /\\[(linkedin)app\\]/i // LinkedIn App for iOS & Android\n ], [NAME], [\n\n // WebView\n /((?:fban\\/fbios|fb_iab\\/fb4a)(?!.+fbav)|;fbav\\/([\\w\\.]+);)/i // Facebook App for iOS & Android\n ], [[NAME, FACEBOOK], VERSION], [\n /(kakao(?:talk|story))[\\/ ]([\\w\\.]+)/i, // Kakao App\n /(naver)\\(.*?(\\d+\\.[\\w\\.]+).*\\)/i, // Naver InApp\n /safari (line)\\/([\\w\\.]+)/i, // Line App for iOS\n /\\b(line)\\/([\\w\\.]+)\\/iab/i, // Line App for Android\n /(chromium|instagram)[\\/ ]([-\\w\\.]+)/i // Chromium/Instagram\n ], [NAME, VERSION], [\n /\\bgsa\\/([\\w\\.]+) .*safari\\//i // Google Search Appliance on iOS\n ], [VERSION, [NAME, 'GSA']], [\n /musical_ly(?:.+app_?version\\/|_)([\\w\\.]+)/i // TikTok\n ], [VERSION, [NAME, 'TikTok']], [\n\n /headlesschrome(?:\\/([\\w\\.]+)| )/i // Chrome Headless\n ], [VERSION, [NAME, CHROME+' Headless']], [\n\n / wv\\).+(chrome)\\/([\\w\\.]+)/i // Chrome WebView\n ], [[NAME, CHROME+' WebView'], VERSION], [\n\n /droid.+ version\\/([\\w\\.]+)\\b.+(?:mobile safari|safari)/i // Android Browser\n ], [VERSION, [NAME, 'Android '+BROWSER]], [\n\n /(chrome|omniweb|arora|[tizenoka]{5} ?browser)\\/v?([\\w\\.]+)/i // Chrome/OmniWeb/Arora/Tizen/Nokia\n ], [NAME, VERSION], [\n\n /version\\/([\\w\\.\\,]+) .*mobile\\/\\w+ (safari)/i // Mobile Safari\n ], [VERSION, [NAME, 'Mobile Safari']], [\n /version\\/([\\w(\\.|\\,)]+) .*(mobile ?safari|safari)/i // Safari & Safari Mobile\n ], [VERSION, NAME], [\n /webkit.+?(mobile ?safari|safari)(\\/[\\w\\.]+)/i // Safari < 3.0\n ], [NAME, [VERSION, strMapper, oldSafariMap]], [\n\n /(webkit|khtml)\\/([\\w\\.]+)/i\n ], [NAME, VERSION], [\n\n // Gecko based\n /(navigator|netscape\\d?)\\/([-\\w\\.]+)/i // Netscape\n ], [[NAME, 'Netscape'], VERSION], [\n /mobile vr; rv:([\\w\\.]+)\\).+firefox/i // Firefox Reality\n ], [VERSION, [NAME, FIREFOX+' Reality']], [\n /ekiohf.+(flow)\\/([\\w\\.]+)/i, // Flow\n /(swiftfox)/i, // Swiftfox\n /(icedragon|iceweasel|camino|chimera|fennec|maemo browser|minimo|conkeror|klar)[\\/ ]?([\\w\\.\\+]+)/i,\n // IceDragon/Iceweasel/Camino/Chimera/Fennec/Maemo/Minimo/Conkeror/Klar\n /(seamonkey|k-meleon|icecat|iceape|firebird|phoenix|palemoon|basilisk|waterfox)\\/([-\\w\\.]+)$/i,\n // Firefox/SeaMonkey/K-Meleon/IceCat/IceApe/Firebird/Phoenix\n /(firefox)\\/([\\w\\.]+)/i, // Other Firefox-based\n /(mozilla)\\/([\\w\\.]+) .+rv\\:.+gecko\\/\\d+/i, // Mozilla\n\n // Other\n /(polaris|lynx|dillo|icab|doris|amaya|w3m|netsurf|sleipnir|obigo|mosaic|(?:go|ice|up)[\\. ]?browser)[-\\/ ]?v?([\\w\\.]+)/i,\n // Polaris/Lynx/Dillo/iCab/Doris/Amaya/w3m/NetSurf/Sleipnir/Obigo/Mosaic/Go/ICE/UP.Browser\n /(links) \\(([\\w\\.]+)/i, // Links\n /panasonic;(viera)/i // Panasonic Viera\n ], [NAME, VERSION], [\n \n /(cobalt)\\/([\\w\\.]+)/i // Cobalt\n ], [NAME, [VERSION, /master.|lts./, \"\"]]\n ],\n\n cpu : [[\n\n /(?:(amd|x(?:(?:86|64)[-_])?|wow|win)64)[;\\)]/i // AMD64 (x64)\n ], [[ARCHITECTURE, 'amd64']], [\n\n /(ia32(?=;))/i // IA32 (quicktime)\n ], [[ARCHITECTURE, lowerize]], [\n\n /((?:i[346]|x)86)[;\\)]/i // IA32 (x86)\n ], [[ARCHITECTURE, 'ia32']], [\n\n /\\b(aarch64|arm(v?8e?l?|_?64))\\b/i // ARM64\n ], [[ARCHITECTURE, 'arm64']], [\n\n /\\b(arm(?:v[67])?ht?n?[fl]p?)\\b/i // ARMHF\n ], [[ARCHITECTURE, 'armhf']], [\n\n // PocketPC mistakenly identified as PowerPC\n /windows (ce|mobile); ppc;/i\n ], [[ARCHITECTURE, 'arm']], [\n\n /((?:ppc|powerpc)(?:64)?)(?: mac|;|\\))/i // PowerPC\n ], [[ARCHITECTURE, /ower/, EMPTY, lowerize]], [\n\n /(sun4\\w)[;\\)]/i // SPARC\n ], [[ARCHITECTURE, 'sparc']], [\n\n /((?:avr32|ia64(?=;))|68k(?=\\))|\\barm(?=v(?:[1-7]|[5-7]1)l?|;|eabi)|(?=atmel )avr|(?:irix|mips|sparc)(?:64)?\\b|pa-risc)/i\n // IA64, 68K, ARM/64, AVR/32, IRIX/64, MIPS/64, SPARC/64, PA-RISC\n ], [[ARCHITECTURE, lowerize]]\n ],\n\n device : [[\n\n //////////////////////////\n // MOBILES & TABLETS\n /////////////////////////\n\n // Samsung\n /\\b(sch-i[89]0\\d|shw-m380s|sm-[ptx]\\w{2,4}|gt-[pn]\\d{2,4}|sgh-t8[56]9|nexus 10)/i\n ], [MODEL, [VENDOR, SAMSUNG], [TYPE, TABLET]], [\n /\\b((?:s[cgp]h|gt|sm)-\\w+|sc[g-]?[\\d]+a?|galaxy nexus)/i,\n /samsung[- ]([-\\w]+)/i,\n /sec-(sgh\\w+)/i\n ], [MODEL, [VENDOR, SAMSUNG], [TYPE, MOBILE]], [\n\n // Apple\n /(?:\\/|\\()(ip(?:hone|od)[\\w, ]*)(?:\\/|;)/i // iPod/iPhone\n ], [MODEL, [VENDOR, APPLE], [TYPE, MOBILE]], [\n /\\((ipad);[-\\w\\),; ]+apple/i, // iPad\n /applecoremedia\\/[\\w\\.]+ \\((ipad)/i,\n /\\b(ipad)\\d\\d?,\\d\\d?[;\\]].+ios/i\n ], [MODEL, [VENDOR, APPLE], [TYPE, TABLET]], [\n /(macintosh);/i\n ], [MODEL, [VENDOR, APPLE]], [\n\n // Sharp\n /\\b(sh-?[altvz]?\\d\\d[a-ekm]?)/i\n ], [MODEL, [VENDOR, SHARP], [TYPE, MOBILE]], [\n\n // Huawei\n /\\b((?:ag[rs][23]?|bah2?|sht?|btv)-a?[lw]\\d{2})\\b(?!.+d\\/s)/i\n ], [MODEL, [VENDOR, HUAWEI], [TYPE, TABLET]], [\n /(?:huawei|honor)([-\\w ]+)[;\\)]/i,\n /\\b(nexus 6p|\\w{2,4}e?-[atu]?[ln][\\dx][012359c][adn]?)\\b(?!.+d\\/s)/i\n ], [MODEL, [VENDOR, HUAWEI], [TYPE, MOBILE]], [\n\n // Xiaomi\n /\\b(poco[\\w ]+)(?: bui|\\))/i, // Xiaomi POCO\n /\\b; (\\w+) build\\/hm\\1/i, // Xiaomi Hongmi 'numeric' models\n /\\b(hm[-_ ]?note?[_ ]?(?:\\d\\w)?) bui/i, // Xiaomi Hongmi\n /\\b(redmi[\\-_ ]?(?:note|k)?[\\w_ ]+)(?: bui|\\))/i, // Xiaomi Redmi\n /\\b(mi[-_ ]?(?:a\\d|one|one[_ ]plus|note lte|max|cc)?[_ ]?(?:\\d?\\w?)[_ ]?(?:plus|se|lite)?)(?: bui|\\))/i // Xiaomi Mi\n ], [[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, MOBILE]], [\n /\\b(mi[-_ ]?(?:pad)(?:[\\w_ ]+))(?: bui|\\))/i // Mi Pad tablets\n ],[[MODEL, /_/g, ' '], [VENDOR, XIAOMI], [TYPE, TABLET]], [\n\n // OPPO\n /; (\\w+) bui.+ oppo/i,\n /\\b(cph[12]\\d{3}|p(?:af|c[al]|d\\w|e[ar])[mt]\\d0|x9007|a101op)\\b/i\n ], [MODEL, [VENDOR, 'OPPO'], [TYPE, MOBILE]], [\n\n // Vivo\n /vivo (\\w+)(?: bui|\\))/i,\n /\\b(v[12]\\d{3}\\w?[at])(?: bui|;)/i\n ], [MODEL, [VENDOR, 'Vivo'], [TYPE, MOBILE]], [\n\n // Realme\n /\\b(rmx[12]\\d{3})(?: bui|;|\\))/i\n ], [MODEL, [VENDOR, 'Realme'], [TYPE, MOBILE]], [\n\n // Motorola\n /\\b(milestone|droid(?:[2-4x]| (?:bionic|x2|pro|razr))?:?( 4g)?)\\b[\\w ]+build\\//i,\n /\\bmot(?:orola)?[- ](\\w*)/i,\n /((?:moto[\\w\\(\\) ]+|xt\\d{3,4}|nexus 6)(?= bui|\\)))/i\n ], [MODEL, [VENDOR, MOTOROLA], [TYPE, MOBILE]], [\n /\\b(mz60\\d|xoom[2 ]{0,2}) build\\//i\n ], [MODEL, [VENDOR, MOTOROLA], [TYPE, TABLET]], [\n\n // LG\n /((?=lg)?[vl]k\\-?\\d{3}) bui| 3\\.[-\\w; ]{10}lg?-([06cv9]{3,4})/i\n ], [MODEL, [VENDOR, LG], [TYPE, TABLET]], [\n /(lm(?:-?f100[nv]?|-[\\w\\.]+)(?= bui|\\))|nexus [45])/i,\n /\\blg[-e;\\/ ]+((?!browser|netcast|android tv)\\w+)/i,\n /\\blg-?([\\d\\w]+) bui/i\n ], [MODEL, [VENDOR, LG], [TYPE, MOBILE]], [\n\n // Lenovo\n /(ideatab[-\\w ]+)/i,\n /lenovo ?(s[56]000[-\\w]+|tab(?:[\\w ]+)|yt[-\\d\\w]{6}|tb[-\\d\\w]{6})/i\n ], [MODEL, [VENDOR, 'Lenovo'], [TYPE, TABLET]], [\n\n // Nokia\n /(?:maemo|nokia).*(n900|lumia \\d+)/i,\n /nokia[-_ ]?([-\\w\\.]*)/i\n ], [[MODEL, /_/g, ' '], [VENDOR, 'Nokia'], [TYPE, MOBILE]], [\n\n // Google\n /(pixel c)\\b/i // Google Pixel C\n ], [MODEL, [VENDOR, GOOGLE], [TYPE, TABLET]], [\n /droid.+; (pixel[\\daxl ]{0,6})(?: bui|\\))/i // Google Pixel\n ], [MODEL, [VENDOR, GOOGLE], [TYPE, MOBILE]], [\n\n // Sony\n /droid.+ (a?\\d[0-2]{2}so|[c-g]\\d{4}|so[-gl]\\w+|xq-a\\w[4-7][12])(?= bui|\\).+chrome\\/(?![1-6]{0,1}\\d\\.))/i\n ], [MODEL, [VENDOR, SONY], [TYPE, MOBILE]], [\n /sony tablet [ps]/i,\n /\\b(?:sony)?sgp\\w+(?: bui|\\))/i\n ], [[MODEL, 'Xperia Tablet'], [VENDOR, SONY], [TYPE, TABLET]], [\n\n // OnePlus\n / (kb2005|in20[12]5|be20[12][59])\\b/i,\n /(?:one)?(?:plus)? (a\\d0\\d\\d)(?: b|\\))/i\n ], [MODEL, [VENDOR, 'OnePlus'], [TYPE, MOBILE]], [\n\n // Amazon\n /(alexa)webm/i,\n /(kf[a-z]{2}wi|aeo[c-r]{2})( bui|\\))/i, // Kindle Fire without Silk / Echo Show\n /(kf[a-z]+)( bui|\\)).+silk\\//i // Kindle Fire HD\n ], [MODEL, [VENDOR, AMAZON], [TYPE, TABLET]], [\n /((?:sd|kf)[0349hijorstuw]+)( bui|\\)).+silk\\//i // Fire Phone\n ], [[MODEL, /(.+)/g, 'Fire Phone $1'], [VENDOR, AMAZON], [TYPE, MOBILE]], [\n\n // BlackBerry\n /(playbook);[-\\w\\),; ]+(rim)/i // BlackBerry PlayBook\n ], [MODEL, VENDOR, [TYPE, TABLET]], [\n /\\b((?:bb[a-f]|st[hv])100-\\d)/i,\n /\\(bb10; (\\w+)/i // BlackBerry 10\n ], [MODEL, [VENDOR, BLACKBERRY], [TYPE, MOBILE]], [\n\n // Asus\n /(?:\\b|asus_)(transfo[prime ]{4,10} \\w+|eeepc|slider \\w+|nexus 7|padfone|p00[cj])/i\n ], [MODEL, [VENDOR, ASUS], [TYPE, TABLET]], [\n / (z[bes]6[027][012][km][ls]|zenfone \\d\\w?)\\b/i\n ], [MODEL, [VENDOR, ASUS], [TYPE, MOBILE]], [\n\n // HTC\n /(nexus 9)/i // HTC Nexus 9\n ], [MODEL, [VENDOR, 'HTC'], [TYPE, TABLET]], [\n /(htc)[-;_ ]{1,2}([\\w ]+(?=\\)| bui)|\\w+)/i, // HTC\n\n // ZTE\n /(zte)[- ]([\\w ]+?)(?: bui|\\/|\\))/i,\n /(alcatel|geeksphone|nexian|panasonic(?!(?:;|\\.))|sony(?!-bra))[-_ ]?([-\\w]*)/i // Alcatel/GeeksPhone/Nexian/Panasonic/Sony\n ], [VENDOR, [MODEL, /_/g, ' '], [TYPE, MOBILE]], [\n\n // Acer\n /droid.+; ([ab][1-7]-?[0178a]\\d\\d?)/i\n ], [MODEL, [VENDOR, 'Acer'], [TYPE, TABLET]], [\n\n // Meizu\n /droid.+; (m[1-5] note) bui/i,\n /\\bmz-([-\\w]{2,})/i\n ], [MODEL, [VENDOR, 'Meizu'], [TYPE, MOBILE]], [\n\n // MIXED\n /(blackberry|benq|palm(?=\\-)|sonyericsson|acer|asus|dell|meizu|motorola|polytron)[-_ ]?([-\\w]*)/i,\n // BlackBerry/BenQ/Palm/Sony-Ericsson/Acer/Asus/Dell/Meizu/Motorola/Polytron\n /(hp) ([\\w ]+\\w)/i, // HP iPAQ\n /(asus)-?(\\w+)/i, // Asus\n /(microsoft); (lumia[\\w ]+)/i, // Microsoft Lumia\n /(lenovo)[-_ ]?([-\\w]+)/i, // Lenovo\n /(jolla)/i, // Jolla\n /(oppo) ?([\\w ]+) bui/i // OPPO\n ], [VENDOR, MODEL, [TYPE, MOBILE]], [\n\n /(kobo)\\s(ereader|touch)/i, // Kobo\n /(archos) (gamepad2?)/i, // Archos\n /(hp).+(touchpad(?!.+tablet)|tablet)/i, // HP TouchPad\n /(kindle)\\/([\\w\\.]+)/i, // Kindle\n /(nook)[\\w ]+build\\/(\\w+)/i, // Nook\n /(dell) (strea[kpr\\d ]*[\\dko])/i, // Dell Streak\n /(le[- ]+pan)[- ]+(\\w{1,9}) bui/i, // Le Pan Tablets\n /(trinity)[- ]*(t\\d{3}) bui/i, // Trinity Tablets\n /(gigaset)[- ]+(q\\w{1,9}) bui/i, // Gigaset Tablets\n /(vodafone) ([\\w ]+)(?:\\)| bui)/i // Vodafone\n ], [VENDOR, MODEL, [TYPE, TABLET]], [\n\n /(surface duo)/i // Surface Duo\n ], [MODEL, [VENDOR, MICROSOFT], [TYPE, TABLET]], [\n /droid [\\d\\.]+; (fp\\du?)(?: b|\\))/i // Fairphone\n ], [MODEL, [VENDOR, 'Fairphone'], [TYPE, MOBILE]], [\n /(u304aa)/i // AT&T\n ], [MODEL, [VENDOR, 'AT&T'], [TYPE, MOBILE]], [\n /\\bsie-(\\w*)/i // Siemens\n ], [MODEL, [VENDOR, 'Siemens'], [TYPE, MOBILE]], [\n /\\b(rct\\w+) b/i // RCA Tablets\n ], [MODEL, [VENDOR, 'RCA'], [TYPE, TABLET]], [\n /\\b(venue[\\d ]{2,7}) b/i // Dell Venue Tablets\n ], [MODEL, [VENDOR, 'Dell'], [TYPE, TABLET]], [\n /\\b(q(?:mv|ta)\\w+) b/i // Verizon Tablet\n ], [MODEL, [VENDOR, 'Verizon'], [TYPE, TABLET]], [\n /\\b(?:barnes[& ]+noble |bn[rt])([\\w\\+ ]*) b/i // Barnes & Noble Tablet\n ], [MODEL, [VENDOR, 'Barnes & Noble'], [TYPE, TABLET]], [\n /\\b(tm\\d{3}\\w+) b/i\n ], [MODEL, [VENDOR, 'NuVision'], [TYPE, TABLET]], [\n /\\b(k88) b/i // ZTE K Series Tablet\n ], [MODEL, [VENDOR, 'ZTE'], [TYPE, TABLET]], [\n /\\b(nx\\d{3}j) b/i // ZTE Nubia\n ], [MODEL, [VENDOR, 'ZTE'], [TYPE, MOBILE]], [\n /\\b(gen\\d{3}) b.+49h/i // Swiss GEN Mobile\n ], [MODEL, [VENDOR, 'Swiss'], [TYPE, MOBILE]], [\n /\\b(zur\\d{3}) b/i // Swiss ZUR Tablet\n ], [MODEL, [VENDOR, 'Swiss'], [TYPE, TABLET]], [\n /\\b((zeki)?tb.*\\b) b/i // Zeki Tablets\n ], [MODEL, [VENDOR, 'Zeki'], [TYPE, TABLET]], [\n /\\b([yr]\\d{2}) b/i,\n /\\b(dragon[- ]+touch |dt)(\\w{5}) b/i // Dragon Touch Tablet\n ], [[VENDOR, 'Dragon Touch'], MODEL, [TYPE, TABLET]], [\n /\\b(ns-?\\w{0,9}) b/i // Insignia Tablets\n ], [MODEL, [VENDOR, 'Insignia'], [TYPE, TABLET]], [\n /\\b((nxa|next)-?\\w{0,9}) b/i // NextBook Tablets\n ], [MODEL, [VENDOR, 'NextBook'], [TYPE, TABLET]], [\n /\\b(xtreme\\_)?(v(1[045]|2[015]|[3469]0|7[05])) b/i // Voice Xtreme Phones\n ], [[VENDOR, 'Voice'], MODEL, [TYPE, MOBILE]], [\n /\\b(lvtel\\-)?(v1[12]) b/i // LvTel Phones\n ], [[VENDOR, 'LvTel'], MODEL, [TYPE, MOBILE]], [\n /\\b(ph-1) /i // Essential PH-1\n ], [MODEL, [VENDOR, 'Essential'], [TYPE, MOBILE]], [\n /\\b(v(100md|700na|7011|917g).*\\b) b/i // Envizen Tablets\n ], [MODEL, [VENDOR, 'Envizen'], [TYPE, TABLET]], [\n /\\b(trio[-\\w\\. ]+) b/i // MachSpeed Tablets\n ], [MODEL, [VENDOR, 'MachSpeed'], [TYPE, TABLET]], [\n /\\btu_(1491) b/i // Rotor Tablets\n ], [MODEL, [VENDOR, 'Rotor'], [TYPE, TABLET]], [\n /(shield[\\w ]+) b/i // Nvidia Shield Tablets\n ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, TABLET]], [\n /(sprint) (\\w+)/i // Sprint Phones\n ], [VENDOR, MODEL, [TYPE, MOBILE]], [\n /(kin\\.[onetw]{3})/i // Microsoft Kin\n ], [[MODEL, /\\./g, ' '], [VENDOR, MICROSOFT], [TYPE, MOBILE]], [\n /droid.+; (cc6666?|et5[16]|mc[239][23]x?|vc8[03]x?)\\)/i // Zebra\n ], [MODEL, [VENDOR, ZEBRA], [TYPE, TABLET]], [\n /droid.+; (ec30|ps20|tc[2-8]\\d[kx])\\)/i\n ], [MODEL, [VENDOR, ZEBRA], [TYPE, MOBILE]], [\n\n ///////////////////\n // SMARTTVS\n ///////////////////\n\n /smart-tv.+(samsung)/i // Samsung\n ], [VENDOR, [TYPE, SMARTTV]], [\n /hbbtv.+maple;(\\d+)/i\n ], [[MODEL, /^/, 'SmartTV'], [VENDOR, SAMSUNG], [TYPE, SMARTTV]], [\n /(nux; netcast.+smarttv|lg (netcast\\.tv-201\\d|android tv))/i // LG SmartTV\n ], [[VENDOR, LG], [TYPE, SMARTTV]], [\n /(apple) ?tv/i // Apple TV\n ], [VENDOR, [MODEL, APPLE+' TV'], [TYPE, SMARTTV]], [\n /crkey/i // Google Chromecast\n ], [[MODEL, CHROME+'cast'], [VENDOR, GOOGLE], [TYPE, SMARTTV]], [\n /droid.+aft(\\w)( bui|\\))/i // Fire TV\n ], [MODEL, [VENDOR, AMAZON], [TYPE, SMARTTV]], [\n /\\(dtv[\\);].+(aquos)/i,\n /(aquos-tv[\\w ]+)\\)/i // Sharp\n ], [MODEL, [VENDOR, SHARP], [TYPE, SMARTTV]],[\n /(bravia[\\w ]+)( bui|\\))/i // Sony\n ], [MODEL, [VENDOR, SONY], [TYPE, SMARTTV]], [\n /(mitv-\\w{5}) bui/i // Xiaomi\n ], [MODEL, [VENDOR, XIAOMI], [TYPE, SMARTTV]], [\n /Hbbtv.*(technisat) (.*);/i // TechniSAT\n ], [VENDOR, MODEL, [TYPE, SMARTTV]], [\n /\\b(roku)[\\dx]*[\\)\\/]((?:dvp-)?[\\d\\.]*)/i, // Roku\n /hbbtv\\/\\d+\\.\\d+\\.\\d+ +\\([\\w\\+ ]*; *([\\w\\d][^;]*);([^;]*)/i // HbbTV devices\n ], [[VENDOR, trim], [MODEL, trim], [TYPE, SMARTTV]], [\n /\\b(android tv|smart[- ]?tv|opera tv|tv; rv:)\\b/i // SmartTV from Unidentified Vendors\n ], [[TYPE, SMARTTV]], [\n\n ///////////////////\n // CONSOLES\n ///////////////////\n\n /(ouya)/i, // Ouya\n /(nintendo) ([wids3utch]+)/i // Nintendo\n ], [VENDOR, MODEL, [TYPE, CONSOLE]], [\n /droid.+; (shield) bui/i // Nvidia\n ], [MODEL, [VENDOR, 'Nvidia'], [TYPE, CONSOLE]], [\n /(playstation [345portablevi]+)/i // Playstation\n ], [MODEL, [VENDOR, SONY], [TYPE, CONSOLE]], [\n /\\b(xbox(?: one)?(?!; xbox))[\\); ]/i // Microsoft Xbox\n ], [MODEL, [VENDOR, MICROSOFT], [TYPE, CONSOLE]], [\n\n ///////////////////\n // WEARABLES\n ///////////////////\n\n /((pebble))app/i // Pebble\n ], [VENDOR, MODEL, [TYPE, WEARABLE]], [\n /(watch)(?: ?os[,\\/]|\\d,\\d\\/)[\\d\\.]+/i // Apple Watch\n ], [MODEL, [VENDOR, APPLE], [TYPE, WEARABLE]], [\n /droid.+; (glass) \\d/i // Google Glass\n ], [MODEL, [VENDOR, GOOGLE], [TYPE, WEARABLE]], [\n /droid.+; (wt63?0{2,3})\\)/i\n ], [MODEL, [VENDOR, ZEBRA], [TYPE, WEARABLE]], [\n /(quest( 2| pro)?)/i // Oculus Quest\n ], [MODEL, [VENDOR, FACEBOOK], [TYPE, WEARABLE]], [\n\n ///////////////////\n // EMBEDDED\n ///////////////////\n\n /(tesla)(?: qtcarbrowser|\\/[-\\w\\.]+)/i // Tesla\n ], [VENDOR, [TYPE, EMBEDDED]], [\n /(aeobc)\\b/i // Echo Dot\n ], [MODEL, [VENDOR, AMAZON], [TYPE, EMBEDDED]], [\n\n ////////////////////\n // MIXED (GENERIC)\n ///////////////////\n\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+? mobile safari/i // Android Phones from Unidentified Vendors\n ], [MODEL, [TYPE, MOBILE]], [\n /droid .+?; ([^;]+?)(?: bui|\\) applew).+?(?! mobile) safari/i // Android Tablets from Unidentified Vendors\n ], [MODEL, [TYPE, TABLET]], [\n /\\b((tablet|tab)[;\\/]|focus\\/\\d(?!.+mobile))/i // Unidentifiable Tablet\n ], [[TYPE, TABLET]], [\n /(phone|mobile(?:[;\\/]| [ \\w\\/\\.]*safari)|pda(?=.+windows ce))/i // Unidentifiable Mobile\n ], [[TYPE, MOBILE]], [\n /(android[-\\w\\. ]{0,9});.+buil/i // Generic Android Device\n ], [MODEL, [VENDOR, 'Generic']]\n ],\n\n engine : [[\n\n /windows.+ edge\\/([\\w\\.]+)/i // EdgeHTML\n ], [VERSION, [NAME, EDGE+'HTML']], [\n\n /webkit\\/537\\.36.+chrome\\/(?!27)([\\w\\.]+)/i // Blink\n ], [VERSION, [NAME, 'Blink']], [\n\n /(presto)\\/([\\w\\.]+)/i, // Presto\n /(webkit|trident|netfront|netsurf|amaya|lynx|w3m|goanna)\\/([\\w\\.]+)/i, // WebKit/Trident/NetFront/NetSurf/Amaya/Lynx/w3m/Goanna\n /ekioh(flow)\\/([\\w\\.]+)/i, // Flow\n /(khtml|tasman|links)[\\/ ]\\(?([\\w\\.]+)/i, // KHTML/Tasman/Links\n /(icab)[\\/ ]([23]\\.[\\d\\.]+)/i, // iCab\n /\\b(libweb)/i\n ], [NAME, VERSION], [\n\n /rv\\:([\\w\\.]{1,9})\\b.+(gecko)/i // Gecko\n ], [VERSION, NAME]\n ],\n\n os : [[\n\n // Windows\n /microsoft (windows) (vista|xp)/i // Windows (iTunes)\n ], [NAME, VERSION], [\n /(windows) nt 6\\.2; (arm)/i, // Windows RT\n /(windows (?:phone(?: os)?|mobile))[\\/ ]?([\\d\\.\\w ]*)/i, // Windows Phone\n /(windows)[\\/ ]?([ntce\\d\\. ]+\\w)(?!.+xbox)/i\n ], [NAME, [VERSION, strMapper, windowsVersionMap]], [\n /(win(?=3|9|n)|win 9x )([nt\\d\\.]+)/i\n ], [[NAME, 'Windows'], [VERSION, strMapper, windowsVersionMap]], [\n\n // iOS/macOS\n /ip[honead]{2,4}\\b(?:.*os ([\\w]+) like mac|; opera)/i, // iOS\n /ios;fbsv\\/([\\d\\.]+)/i,\n /cfnetwork\\/.+darwin/i\n ], [[VERSION, /_/g, '.'], [NAME, 'iOS']], [\n /(mac os x) ?([\\w\\. ]*)/i,\n /(macintosh|mac_powerpc\\b)(?!.+haiku)/i // Mac OS\n ], [[NAME, MAC_OS], [VERSION, /_/g, '.']], [\n\n // Mobile OSes\n /droid ([\\w\\.]+)\\b.+(android[- ]x86|harmonyos)/i // Android-x86/HarmonyOS\n ], [VERSION, NAME], [ // Android/WebOS/QNX/Bada/RIM/Maemo/MeeGo/Sailfish OS\n /(android|webos|qnx|bada|rim tablet os|maemo|meego|sailfish)[-\\/ ]?([\\w\\.]*)/i,\n /(blackberry)\\w*\\/([\\w\\.]*)/i, // Blackberry\n /(tizen|kaios)[\\/ ]([\\w\\.]+)/i, // Tizen/KaiOS\n /\\((series40);/i // Series 40\n ], [NAME, VERSION], [\n /\\(bb(10);/i // BlackBerry 10\n ], [VERSION, [NAME, BLACKBERRY]], [\n /(?:symbian ?os|symbos|s60(?=;)|series60)[-\\/ ]?([\\w\\.]*)/i // Symbian\n ], [VERSION, [NAME, 'Symbian']], [\n /mozilla\\/[\\d\\.]+ \\((?:mobile|tablet|tv|mobile; [\\w ]+); rv:.+ gecko\\/([\\w\\.]+)/i // Firefox OS\n ], [VERSION, [NAME, FIREFOX+' OS']], [\n /web0s;.+rt(tv)/i,\n /\\b(?:hp)?wos(?:browser)?\\/([\\w\\.]+)/i // WebOS\n ], [VERSION, [NAME, 'webOS']], [\n /watch(?: ?os[,\\/]|\\d,\\d\\/)([\\d\\.]+)/i // watchOS\n ], [VERSION, [NAME, 'watchOS']], [\n\n // Google Chromecast\n /crkey\\/([\\d\\.]+)/i // Google Chromecast\n ], [VERSION, [NAME, CHROME+'cast']], [\n /(cros) [\\w]+(?:\\)| ([\\w\\.]+)\\b)/i // Chromium OS\n ], [[NAME, CHROMIUM_OS], VERSION],[\n\n // Smart TVs\n /panasonic;(viera)/i, // Panasonic Viera\n /(netrange)mmh/i, // Netrange\n /(nettv)\\/(\\d+\\.[\\w\\.]+)/i, // NetTV\n\n // Console\n /(nintendo|playstation) ([wids345portablevuch]+)/i, // Nintendo/Playstation\n /(xbox); +xbox ([^\\);]+)/i, // Microsoft Xbox (360, One, X, S, Series X, Series S)\n\n // Other\n /\\b(joli|palm)\\b ?(?:os)?\\/?([\\w\\.]*)/i, // Joli/Palm\n /(mint)[\\/\\(\\) ]?(\\w*)/i, // Mint\n /(mageia|vectorlinux)[; ]/i, // Mageia/VectorLinux\n /([kxln]?ubuntu|debian|suse|opensuse|gentoo|arch(?= linux)|slackware|fedora|mandriva|centos|pclinuxos|red ?hat|zenwalk|linpus|raspbian|plan 9|minix|risc os|contiki|deepin|manjaro|elementary os|sabayon|linspire)(?: gnu\\/linux)?(?: enterprise)?(?:[- ]linux)?(?:-gnu)?[-\\/ ]?(?!chrom|package)([-\\w\\.]*)/i,\n // Ubuntu/Debian/SUSE/Gentoo/Arch/Slackware/Fedora/Mandriva/CentOS/PCLinuxOS/RedHat/Zenwalk/Linpus/Raspbian/Plan9/Minix/RISCOS/Contiki/Deepin/Manjaro/elementary/Sabayon/Linspire\n /(hurd|linux) ?([\\w\\.]*)/i, // Hurd/Linux\n /(gnu) ?([\\w\\.]*)/i, // GNU\n /\\b([-frentopcghs]{0,5}bsd|dragonfly)[\\/ ]?(?!amd|[ix346]{1,2}86)([\\w\\.]*)/i, // FreeBSD/NetBSD/OpenBSD/PC-BSD/GhostBSD/DragonFly\n /(haiku) (\\w+)/i // Haiku\n ], [NAME, VERSION], [\n /(sunos) ?([\\w\\.\\d]*)/i // Solaris\n ], [[NAME, 'Solaris'], VERSION], [\n /((?:open)?solaris)[-\\/ ]?([\\w\\.]*)/i, // Solaris\n /(aix) ((\\d)(?=\\.|\\)| )[\\w\\.])*/i, // AIX\n /\\b(beos|os\\/2|amigaos|morphos|openvms|fuchsia|hp-ux|serenityos)/i, // BeOS/OS2/AmigaOS/MorphOS/OpenVMS/Fuchsia/HP-UX/SerenityOS\n /(unix) ?([\\w\\.]*)/i // UNIX\n ], [NAME, VERSION]\n ]\n };\n\n /////////////////\n // Constructor\n ////////////////\n\n var UAParser = function (ua, extensions) {\n\n if (typeof ua === OBJ_TYPE) {\n extensions = ua;\n ua = undefined;\n }\n\n if (!(this instanceof UAParser)) {\n return new UAParser(ua, extensions).getResult();\n }\n\n var _navigator = (typeof window !== UNDEF_TYPE && window.navigator) ? window.navigator : undefined;\n var _ua = ua || ((_navigator && _navigator.userAgent) ? _navigator.userAgent : EMPTY);\n var _uach = (_navigator && _navigator.userAgentData) ? _navigator.userAgentData : undefined;\n var _rgxmap = extensions ? extend(regexes, extensions) : regexes;\n var _isSelfNav = _navigator && _navigator.userAgent == _ua;\n\n this.getBrowser = function () {\n var _browser = {};\n _browser[NAME] = undefined;\n _browser[VERSION] = undefined;\n rgxMapper.call(_browser, _ua, _rgxmap.browser);\n _browser[MAJOR] = majorize(_browser[VERSION]);\n // Brave-specific detection\n if (_isSelfNav && _navigator && _navigator.brave && typeof _navigator.brave.isBrave == FUNC_TYPE) {\n _browser[NAME] = 'Brave';\n }\n return _browser;\n };\n this.getCPU = function () {\n var _cpu = {};\n _cpu[ARCHITECTURE] = undefined;\n rgxMapper.call(_cpu, _ua, _rgxmap.cpu);\n return _cpu;\n };\n this.getDevice = function () {\n var _device = {};\n _device[VENDOR] = undefined;\n _device[MODEL] = undefined;\n _device[TYPE] = undefined;\n rgxMapper.call(_device, _ua, _rgxmap.device);\n if (_isSelfNav && !_device[TYPE] && _uach && _uach.mobile) {\n _device[TYPE] = MOBILE;\n }\n // iPadOS-specific detection: identified as Mac, but has some iOS-only properties\n if (_isSelfNav && _device[MODEL] == 'Macintosh' && _navigator && typeof _navigator.standalone !== UNDEF_TYPE && _navigator.maxTouchPoints && _navigator.maxTouchPoints > 2) {\n _device[MODEL] = 'iPad';\n _device[TYPE] = TABLET;\n }\n return _device;\n };\n this.getEngine = function () {\n var _engine = {};\n _engine[NAME] = undefined;\n _engine[VERSION] = undefined;\n rgxMapper.call(_engine, _ua, _rgxmap.engine);\n return _engine;\n };\n this.getOS = function () {\n var _os = {};\n _os[NAME] = undefined;\n _os[VERSION] = undefined;\n rgxMapper.call(_os, _ua, _rgxmap.os);\n if (_isSelfNav && !_os[NAME] && _uach && _uach.platform != 'Unknown') {\n _os[NAME] = _uach.platform \n .replace(/chrome os/i, CHROMIUM_OS)\n .replace(/macos/i, MAC_OS); // backward compatibility\n }\n return _os;\n };\n this.getResult = function () {\n return {\n ua : this.getUA(),\n browser : this.getBrowser(),\n engine : this.getEngine(),\n os : this.getOS(),\n device : this.getDevice(),\n cpu : this.getCPU()\n };\n };\n this.getUA = function () {\n return _ua;\n };\n this.setUA = function (ua) {\n _ua = (typeof ua === STR_TYPE && ua.length > UA_MAX_LENGTH) ? trim(ua, UA_MAX_LENGTH) : ua;\n return this;\n };\n this.setUA(_ua);\n return this;\n };\n\n UAParser.VERSION = LIBVERSION;\n UAParser.BROWSER = enumerize([NAME, VERSION, MAJOR]);\n UAParser.CPU = enumerize([ARCHITECTURE]);\n UAParser.DEVICE = enumerize([MODEL, VENDOR, TYPE, CONSOLE, MOBILE, SMARTTV, TABLET, WEARABLE, EMBEDDED]);\n UAParser.ENGINE = UAParser.OS = enumerize([NAME, VERSION]);\n\n ///////////\n // Export\n //////////\n\n // check js environment\n if (typeof(exports) !== UNDEF_TYPE) {\n // nodejs env\n if (typeof module !== UNDEF_TYPE && module.exports) {\n exports = module.exports = UAParser;\n }\n exports.UAParser = UAParser;\n } else {\n // requirejs env (optional)\n if (typeof(define) === FUNC_TYPE && define.amd) {\n define(function () {\n return UAParser;\n });\n } else if (typeof window !== UNDEF_TYPE) {\n // browser env\n window.UAParser = UAParser;\n }\n }\n\n // jQuery/Zepto specific (optional)\n // Note:\n // In AMD env the global scope should be kept clean, but jQuery is an exception.\n // jQuery always exports to global scope, unless jQuery.noConflict(true) is used,\n // and we should catch that.\n var $ = typeof window !== UNDEF_TYPE && (window.jQuery || window.Zepto);\n if ($ && !$.ua) {\n var parser = new UAParser();\n $.ua = parser.getResult();\n $.ua.get = function () {\n return parser.getUA();\n };\n $.ua.set = function (ua) {\n parser.setUA(ua);\n var result = parser.getResult();\n for (var prop in result) {\n $.ua[prop] = result[prop];\n }\n };\n }\n\n})(typeof window === 'object' ? window : this);\n","/**\n * Copyright (c) 2014-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Similar to invariant but only logs a warning if the condition is not met.\n * This can be used to log issues in development environments in critical\n * paths. Removing the logging code for production environments will keep the\n * same logic and follow the same code paths.\n */\n\nvar __DEV__ = process.env.NODE_ENV !== 'production';\n\nvar warning = function() {};\n\nif (__DEV__) {\n var printWarning = function printWarning(format, args) {\n var len = arguments.length;\n args = new Array(len > 1 ? len - 1 : 0);\n for (var key = 1; key < len; key++) {\n args[key - 1] = arguments[key];\n }\n var argIndex = 0;\n var message = 'Warning: ' +\n format.replace(/%s/g, function() {\n return args[argIndex++];\n });\n if (typeof console !== 'undefined') {\n console.error(message);\n }\n try {\n // --- Welcome to debugging React ---\n // This error was thrown as a convenience so that you can use this stack\n // to find the callsite that caused this warning to fire.\n throw new Error(message);\n } catch (x) {}\n }\n\n warning = function(condition, format, args) {\n var len = arguments.length;\n args = new Array(len > 2 ? len - 2 : 0);\n for (var key = 2; key < len; key++) {\n args[key - 2] = arguments[key];\n }\n if (format === undefined) {\n throw new Error(\n '`warning(condition, format, ...args)` requires a warning ' +\n 'message argument'\n );\n }\n if (!condition) {\n printWarning.apply(null, [format].concat(args));\n }\n };\n}\n\nmodule.exports = warning;\n","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nexport default function _createForOfIteratorHelper(o, allowArrayLike) {\n var it = typeof Symbol !== \"undefined\" && o[Symbol.iterator] || o[\"@@iterator\"];\n\n if (!it) {\n if (Array.isArray(o) || (it = unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n\n var F = function F() {};\n\n return {\n s: F,\n n: function n() {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n },\n e: function e(_e) {\n throw _e;\n },\n f: F\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n var normalCompletion = true,\n didErr = false,\n err;\n return {\n s: function s() {\n it = it.call(o);\n },\n n: function n() {\n var step = it.next();\n normalCompletion = step.done;\n return step;\n },\n e: function e(_e2) {\n didErr = true;\n err = _e2;\n },\n f: function f() {\n try {\n if (!normalCompletion && it[\"return\"] != null) it[\"return\"]();\n } finally {\n if (didErr) throw err;\n }\n }\n };\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","// The module cache\nvar __webpack_module_cache__ = {};\n\n// The require function\nfunction __webpack_require__(moduleId) {\n\t// Check if module is in cache\n\tvar cachedModule = __webpack_module_cache__[moduleId];\n\tif (cachedModule !== undefined) {\n\t\treturn cachedModule.exports;\n\t}\n\t// Create a new module (and put it into the cache)\n\tvar module = __webpack_module_cache__[moduleId] = {\n\t\t// no module.id needed\n\t\t// no module.loaded needed\n\t\texports: {}\n\t};\n\n\t// Execute the module function\n\t__webpack_modules__[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n\t// Return the exports of the module\n\treturn module.exports;\n}\n\n// expose the modules object (__webpack_modules__)\n__webpack_require__.m = __webpack_modules__;\n\n","__webpack_require__.amdO = {};","// getDefaultExport function for compatibility with non-harmony modules\n__webpack_require__.n = function(module) {\n\tvar getter = module && module.__esModule ?\n\t\tfunction() { return module['default']; } :\n\t\tfunction() { return module; };\n\t__webpack_require__.d(getter, { a: getter });\n\treturn getter;\n};","// define getter functions for harmony exports\n__webpack_require__.d = function(exports, definition) {\n\tfor(var key in definition) {\n\t\tif(__webpack_require__.o(definition, key) && !__webpack_require__.o(exports, key)) {\n\t\t\tObject.defineProperty(exports, key, { enumerable: true, get: definition[key] });\n\t\t}\n\t}\n};","__webpack_require__.f = {};\n// This file contains only the entry chunk.\n// The chunk loading function for additional chunks\n__webpack_require__.e = function(chunkId) {\n\treturn Promise.all(Object.keys(__webpack_require__.f).reduce(function(promises, key) {\n\t\t__webpack_require__.f[key](chunkId, promises);\n\t\treturn promises;\n\t}, []));\n};","// This function allow to reference async chunks\n__webpack_require__.u = function(chunkId) {\n\t// return url for filenames based on template\n\treturn \"static/js/\" + chunkId + \".\" + \"3a2b595e\" + \".chunk.js\";\n};","// This function allow to reference async chunks\n__webpack_require__.miniCssF = function(chunkId) {\n\t// return url for filenames based on template\n\treturn undefined;\n};","__webpack_require__.o = function(obj, prop) { return Object.prototype.hasOwnProperty.call(obj, prop); }","var inProgress = {};\nvar dataWebpackPrefix = \"game:\";\n// loadScript function to load a script via script tag\n__webpack_require__.l = function(url, done, key, chunkId) {\n\tif(inProgress[url]) { inProgress[url].push(done); return; }\n\tvar script, needAttach;\n\tif(key !== undefined) {\n\t\tvar scripts = document.getElementsByTagName(\"script\");\n\t\tfor(var i = 0; i < scripts.length; i++) {\n\t\t\tvar s = scripts[i];\n\t\t\tif(s.getAttribute(\"src\") == url || s.getAttribute(\"data-webpack\") == dataWebpackPrefix + key) { script = s; break; }\n\t\t}\n\t}\n\tif(!script) {\n\t\tneedAttach = true;\n\t\tscript = document.createElement('script');\n\n\t\tscript.charset = 'utf-8';\n\t\tscript.timeout = 120;\n\t\tif (__webpack_require__.nc) {\n\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n\t\t}\n\t\tscript.setAttribute(\"data-webpack\", dataWebpackPrefix + key);\n\t\tscript.src = url;\n\t}\n\tinProgress[url] = [done];\n\tvar onScriptComplete = function(prev, event) {\n\t\t// avoid mem leaks in IE.\n\t\tscript.onerror = script.onload = null;\n\t\tclearTimeout(timeout);\n\t\tvar doneFns = inProgress[url];\n\t\tdelete inProgress[url];\n\t\tscript.parentNode && script.parentNode.removeChild(script);\n\t\tdoneFns && doneFns.forEach(function(fn) { return fn(event); });\n\t\tif(prev) return prev(event);\n\t}\n\t;\n\tvar timeout = setTimeout(onScriptComplete.bind(null, undefined, { type: 'timeout', target: script }), 120000);\n\tscript.onerror = onScriptComplete.bind(null, script.onerror);\n\tscript.onload = onScriptComplete.bind(null, script.onload);\n\tneedAttach && document.head.appendChild(script);\n};","// define __esModule on exports\n__webpack_require__.r = function(exports) {\n\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n\t}\n\tObject.defineProperty(exports, '__esModule', { value: true });\n};","__webpack_require__.p = \"/\";","// no baseURI\n\n// object to store loaded and loading chunks\n// undefined = chunk not loaded, null = chunk preloaded/prefetched\n// [resolve, reject, Promise] = chunk loading, 0 = chunk loaded\nvar installedChunks = {\n\t179: 0\n};\n\n__webpack_require__.f.j = function(chunkId, promises) {\n\t\t// JSONP chunk loading for javascript\n\t\tvar installedChunkData = __webpack_require__.o(installedChunks, chunkId) ? installedChunks[chunkId] : undefined;\n\t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n\t\t\t// a Promise means \"currently loading\".\n\t\t\tif(installedChunkData) {\n\t\t\t\tpromises.push(installedChunkData[2]);\n\t\t\t} else {\n\t\t\t\tif(true) { // all chunks have JS\n\t\t\t\t\t// setup Promise in chunk cache\n\t\t\t\t\tvar promise = new Promise(function(resolve, reject) { installedChunkData = installedChunks[chunkId] = [resolve, reject]; });\n\t\t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n\t\t\t\t\t// start chunk loading\n\t\t\t\t\tvar url = __webpack_require__.p + __webpack_require__.u(chunkId);\n\t\t\t\t\t// create error before stack unwound to get useful stacktrace later\n\t\t\t\t\tvar error = new Error();\n\t\t\t\t\tvar loadingEnded = function(event) {\n\t\t\t\t\t\tif(__webpack_require__.o(installedChunks, chunkId)) {\n\t\t\t\t\t\t\tinstalledChunkData = installedChunks[chunkId];\n\t\t\t\t\t\t\tif(installedChunkData !== 0) installedChunks[chunkId] = undefined;\n\t\t\t\t\t\t\tif(installedChunkData) {\n\t\t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n\t\t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n\t\t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n\t\t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n\t\t\t\t\t\t\t\terror.type = errorType;\n\t\t\t\t\t\t\t\terror.request = realSrc;\n\t\t\t\t\t\t\t\tinstalledChunkData[1](error);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t};\n\t\t\t\t\t__webpack_require__.l(url, loadingEnded, \"chunk-\" + chunkId, chunkId);\n\t\t\t\t} else installedChunks[chunkId] = 0;\n\t\t\t}\n\t\t}\n};\n\n// no prefetching\n\n// no preloaded\n\n// no HMR\n\n// no HMR manifest\n\n// no on chunks loaded\n\n// install a JSONP callback for chunk loading\nvar webpackJsonpCallback = function(parentChunkLoadingFunction, data) {\n\tvar chunkIds = data[0];\n\tvar moreModules = data[1];\n\tvar runtime = data[2];\n\t// add \"moreModules\" to the modules object,\n\t// then flag all \"chunkIds\" as loaded and fire callback\n\tvar moduleId, chunkId, i = 0;\n\tif(chunkIds.some(function(id) { return installedChunks[id] !== 0; })) {\n\t\tfor(moduleId in moreModules) {\n\t\t\tif(__webpack_require__.o(moreModules, moduleId)) {\n\t\t\t\t__webpack_require__.m[moduleId] = moreModules[moduleId];\n\t\t\t}\n\t\t}\n\t\tif(runtime) var result = runtime(__webpack_require__);\n\t}\n\tif(parentChunkLoadingFunction) parentChunkLoadingFunction(data);\n\tfor(;i < chunkIds.length; i++) {\n\t\tchunkId = chunkIds[i];\n\t\tif(__webpack_require__.o(installedChunks, chunkId) && installedChunks[chunkId]) {\n\t\t\tinstalledChunks[chunkId][0]();\n\t\t}\n\t\tinstalledChunks[chunkIds[i]] = 0;\n\t}\n\n}\n\nvar chunkLoadingGlobal = self[\"webpackChunkgame\"] = self[\"webpackChunkgame\"] || [];\nchunkLoadingGlobal.forEach(webpackJsonpCallback.bind(null, 0));\nchunkLoadingGlobal.push = webpackJsonpCallback.bind(null, chunkLoadingGlobal.push.bind(chunkLoadingGlobal));","import arrayWithoutHoles from \"./arrayWithoutHoles.js\";\nimport iterableToArray from \"./iterableToArray.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableSpread from \"./nonIterableSpread.js\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray.js\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import arrayWithHoles from \"./arrayWithHoles.js\";\nimport iterableToArrayLimit from \"./iterableToArrayLimit.js\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray.js\";\nimport nonIterableRest from \"./nonIterableRest.js\";\nexport default function _slicedToArray(arr, i) {\n return arrayWithHoles(arr) || iterableToArrayLimit(arr, i) || unsupportedIterableToArray(arr, i) || nonIterableRest();\n}","export default function _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}","export default function _iterableToArrayLimit(arr, i) {\n var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"];\n\n if (_i == null) return;\n var _arr = [];\n var _n = true;\n var _d = false;\n\n var _s, _e;\n\n try {\n for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {\n _arr.push(_s.value);\n\n if (i && _arr.length === i) break;\n }\n } catch (err) {\n _d = true;\n _e = err;\n } finally {\n try {\n if (!_n && _i[\"return\"] != null) _i[\"return\"]();\n } finally {\n if (_d) throw _e;\n }\n }\n\n return _arr;\n}","export default function _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","import * as React from \"react\";\n\nfunction ClockIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M12 8v4l3 3m6-3a9 9 0 11-18 0 9 9 0 0118 0z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(ClockIcon);\nexport default ForwardRef;","var __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nvar __rest = (this && this.__rest) || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\n t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\n t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport React, { forwardRef, useState, useEffect } from 'react';\nvar warned = false;\nvar Div100vh = forwardRef(function (_a, ref) {\n var style = _a.style, other = __rest(_a, [\"style\"]);\n var height = use100vh();\n // TODO: warn only in development\n if (!warned && (style === null || style === void 0 ? void 0 : style.height)) {\n warned = true;\n console.warn(' overrides the height property of the style prop');\n }\n var styleWithRealHeight = __assign(__assign({}, style), { height: height ? height + \"px\" : '100vh' });\n return React.createElement(\"div\", __assign({ ref: ref, style: styleWithRealHeight }, other));\n});\nDiv100vh.displayName = 'Div100vh';\nexport default Div100vh;\nexport function use100vh() {\n var _a = useState(measureHeight), height = _a[0], setHeight = _a[1];\n var wasRenderedOnClientAtLeastOnce = useWasRenderedOnClientAtLeastOnce();\n useEffect(function () {\n if (!wasRenderedOnClientAtLeastOnce)\n return;\n function setMeasuredHeight() {\n var measuredHeight = measureHeight();\n setHeight(measuredHeight);\n }\n window.addEventListener('resize', setMeasuredHeight);\n return function () { return window.removeEventListener('resize', setMeasuredHeight); };\n }, [wasRenderedOnClientAtLeastOnce]);\n return wasRenderedOnClientAtLeastOnce ? height : null;\n}\nexport function measureHeight() {\n if (!isClient())\n return null;\n return window.innerHeight;\n}\n// Once we ended up on the client, the first render must look the same as on\n// the server so hydration happens without problems. _Then_ we immediately\n// schedule a subsequent update and return the height measured on the client.\n// It's not needed for CSR-only apps, but is critical for SSR.\nfunction useWasRenderedOnClientAtLeastOnce() {\n var _a = useState(false), wasRenderedOnClientAtLeastOnce = _a[0], setWasRenderedOnClientAtLeastOnce = _a[1];\n useEffect(function () {\n if (isClient()) {\n setWasRenderedOnClientAtLeastOnce(true);\n }\n }, []);\n return wasRenderedOnClientAtLeastOnce;\n}\nfunction isClient() {\n return typeof window !== 'undefined' && typeof document !== 'undefined';\n}\n","import { enUS } from 'date-fns/locale'\n\nexport const MAX_CHALLENGES = 6\nexport const ALERT_TIME_MS = 2000\nexport const LONG_ALERT_TIME_MS = 10000\nexport const REVEAL_TIME_MS = 350\nexport const WELCOME_INFO_MODAL_MS = 350\nexport const DISCOURAGE_INAPP_BROWSERS = true\nexport const ENABLE_MIGRATE_STATS = true\nexport const BLOWFISH_KEY = 'xcQUAHsik#Thq&LG*8es2DsZ$3bw^e'\nexport const BLOWFISH_IV = '#45XmF^w'\nexport const ENABLE_ARCHIVED_GAMES = false\nexport const DATE_LOCALE = enUS\n","import {\n ReactNode,\n createContext,\n useCallback,\n useContext,\n useState,\n} from 'react'\n\nimport { ALERT_TIME_MS } from '../constants/settings'\n\ntype AlertStatus = 'success' | 'error' | undefined\n\ntype ShowOptions = {\n persist?: boolean\n delayMs?: number\n durationMs?: number\n onClose?: () => void\n}\n\ntype AlertContextValue = {\n status: AlertStatus\n message: string | null\n isVisible: boolean\n showSuccess: (message: string, options?: ShowOptions) => void\n showError: (message: string, options?: ShowOptions) => void\n}\n\nexport const AlertContext = createContext({\n status: 'success',\n message: null,\n isVisible: false,\n showSuccess: () => null,\n showError: () => null,\n})\nAlertContext.displayName = 'AlertContext'\n\nexport const useAlert = () => useContext(AlertContext) as AlertContextValue\n\ntype Props = {\n children?: ReactNode\n}\n\nexport const AlertProvider = ({ children }: Props) => {\n const [status, setStatus] = useState('success')\n const [message, setMessage] = useState(null)\n const [isVisible, setIsVisible] = useState(false)\n\n const show = useCallback(\n (showStatus: AlertStatus, newMessage: string, options?: ShowOptions) => {\n const {\n delayMs = 0,\n persist,\n onClose,\n durationMs = ALERT_TIME_MS,\n } = options || {}\n\n setTimeout(() => {\n setStatus(showStatus)\n setMessage(newMessage)\n setIsVisible(true)\n\n if (!persist) {\n setTimeout(() => {\n setIsVisible(false)\n if (onClose) {\n onClose()\n }\n }, durationMs)\n }\n }, delayMs)\n },\n [setStatus, setMessage, setIsVisible]\n )\n\n const showError = useCallback(\n (newMessage: string, options?: ShowOptions) => {\n show('error', newMessage, options)\n },\n [show]\n )\n\n const showSuccess = useCallback(\n (newMessage: string, options?: ShowOptions) => {\n show('success', newMessage, options)\n },\n [show]\n )\n\n return (\n \n {children}\n \n )\n}\n","import {\n Fragment,\n cloneElement,\n createElement,\n forwardRef,\n isValidElement,\n\n // Types\n ElementType,\n ReactElement,\n} from 'react'\nimport { Props, XOR, __, Expand } from '../types'\nimport { match } from './match'\n\nexport enum Features {\n /** No features at all */\n None = 0,\n\n /**\n * When used, this will allow us to use one of the render strategies.\n *\n * **The render strategies are:**\n * - **Unmount** _(Will unmount the component.)_\n * - **Hidden** _(Will hide the component using the [hidden] attribute.)_\n */\n RenderStrategy = 1,\n\n /**\n * When used, this will allow the user of our component to be in control. This can be used when\n * you want to transition based on some state.\n */\n Static = 2,\n}\n\nexport enum RenderStrategy {\n Unmount,\n Hidden,\n}\n\ntype PropsForFeature = {\n [P in TPassedInFeatures]: P extends TForFeature ? TProps : __\n}[TPassedInFeatures]\n\nexport type PropsForFeatures = XOR<\n PropsForFeature,\n PropsForFeature\n>\n\nexport function render({\n props,\n slot,\n defaultTag,\n features,\n visible = true,\n name,\n}: {\n props: Expand & PropsForFeatures>\n slot?: TSlot\n defaultTag: ElementType\n features?: TFeature\n visible?: boolean\n name: string\n}) {\n // Visible always render\n if (visible) return _render(props, slot, defaultTag, name)\n\n let featureFlags = features ?? Features.None\n\n if (featureFlags & Features.Static) {\n let { static: isStatic = false, ...rest } = props as PropsForFeatures\n\n // When the `static` prop is passed as `true`, then the user is in control, thus we don't care about anything else\n if (isStatic) return _render(rest, slot, defaultTag, name)\n }\n\n if (featureFlags & Features.RenderStrategy) {\n let { unmount = true, ...rest } = props as PropsForFeatures\n let strategy = unmount ? RenderStrategy.Unmount : RenderStrategy.Hidden\n\n return match(strategy, {\n [RenderStrategy.Unmount]() {\n return null\n },\n [RenderStrategy.Hidden]() {\n return _render(\n { ...rest, ...{ hidden: true, style: { display: 'none' } } },\n slot,\n defaultTag,\n name\n )\n },\n })\n }\n\n // No features enabled, just render\n return _render(props, slot, defaultTag, name)\n}\n\nfunction _render(\n props: Props & { ref?: unknown },\n slot: TSlot = {} as TSlot,\n tag: ElementType,\n name: string\n) {\n let { as: Component = tag, children, refName = 'ref', ...passThroughProps } = omit(props, [\n 'unmount',\n 'static',\n ])\n\n // This allows us to use ``\n let refRelatedProps = props.ref !== undefined ? { [refName]: props.ref } : {}\n\n let resolvedChildren = (typeof children === 'function' ? children(slot) : children) as\n | ReactElement\n | ReactElement[]\n\n // Allow for className to be a function with the slot as the contents\n if (passThroughProps.className && typeof passThroughProps.className === 'function') {\n ;(passThroughProps as any).className = passThroughProps.className(slot)\n }\n\n if (Component === Fragment) {\n if (Object.keys(passThroughProps).length > 0) {\n if (\n !isValidElement(resolvedChildren) ||\n (Array.isArray(resolvedChildren) && resolvedChildren.length > 1)\n ) {\n throw new Error(\n [\n 'Passing props on \"Fragment\"!',\n '',\n `The current component <${name} /> is rendering a \"Fragment\".`,\n `However we need to passthrough the following props:`,\n Object.keys(passThroughProps)\n .map(line => ` - ${line}`)\n .join('\\n'),\n '',\n 'You can apply a few solutions:',\n [\n 'Add an `as=\"...\"` prop, to ensure that we render an actual element instead of a \"Fragment\".',\n 'Render a single element as the child so that we can forward the props onto that element.',\n ]\n .map(line => ` - ${line}`)\n .join('\\n'),\n ].join('\\n')\n )\n }\n\n return cloneElement(\n resolvedChildren,\n Object.assign(\n {},\n // Filter out undefined values so that they don't override the existing values\n mergeEventFunctions(compact(omit(passThroughProps, ['ref'])), resolvedChildren.props, [\n 'onClick',\n ]),\n refRelatedProps\n )\n )\n }\n }\n\n return createElement(\n Component,\n Object.assign({}, omit(passThroughProps, ['ref']), Component !== Fragment && refRelatedProps),\n resolvedChildren\n )\n}\n\n/**\n * We can use this function for the following useCase:\n *\n * \n )\n}\n","import { useEffect } from 'react'\n\nimport { DELETE_TEXT, ENTER_TEXT } from '../../constants/strings'\nimport { getStatuses } from '../../lib/statuses'\nimport { localeAwareUpperCase } from '../../lib/words'\nimport { Key } from './Key'\n\ntype Props = {\n onChar: (value: string) => void\n onDelete: () => void\n onEnter: () => void\n solution: string\n guesses: string[]\n isRevealing?: boolean\n}\n\nexport const Keyboard = ({\n onChar,\n onDelete,\n onEnter,\n solution,\n guesses,\n isRevealing,\n}: Props) => {\n const charStatuses = getStatuses(solution, guesses)\n\n const onClick = (value: string) => {\n if (value === 'ENTER') {\n onEnter()\n } else if (value === 'DELETE') {\n onDelete()\n } else {\n onChar(value)\n }\n }\n\n useEffect(() => {\n const listener = (e: KeyboardEvent) => {\n if (e.code === 'Enter') {\n onEnter()\n } else if (e.code === 'Backspace') {\n onDelete()\n } else {\n const key = localeAwareUpperCase(e.key)\n // TODO: check this test if the range works with non-english letters\n if (key.length === 1 && key >= 'A' && key <= 'Z') {\n onChar(key)\n }\n }\n }\n window.addEventListener('keyup', listener)\n return () => {\n window.removeEventListener('keyup', listener)\n }\n }, [onEnter, onDelete, onChar])\n\n return (\n
\n
\n {['Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P'].map((key) => (\n \n ))}\n
\n
\n {['A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L'].map((key) => (\n \n ))}\n
\n
\n \n {ENTER_TEXT}\n \n {['Z', 'X', 'C', 'V', 'B', 'N', 'M'].map((key) => (\n \n ))}\n \n {DELETE_TEXT}\n \n
\n
\n )\n}\n","import * as React from \"react\";\n\nfunction ChevronLeftIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M15 19l-7-7 7-7\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(ChevronLeftIcon);\nexport default ForwardRef;","import * as React from \"react\";\n\nfunction ChevronRightIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M9 5l7 7-7 7\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(ChevronRightIcon);\nexport default ForwardRef;","// TODO: This must already exist somewhere, right? 🤔\n// Ref: https://www.w3.org/TR/uievents-key/#named-key-attribute-values\nexport enum Keys {\n Space = ' ',\n Enter = 'Enter',\n Escape = 'Escape',\n Backspace = 'Backspace',\n\n ArrowLeft = 'ArrowLeft',\n ArrowUp = 'ArrowUp',\n ArrowRight = 'ArrowRight',\n ArrowDown = 'ArrowDown',\n\n Home = 'Home',\n End = 'End',\n\n PageUp = 'PageUp',\n PageDown = 'PageDown',\n\n Tab = 'Tab',\n}\n","import { useRef, useEffect, useCallback } from 'react'\n\nexport function useSyncRefs(\n ...refs: (React.MutableRefObject | ((instance: TType) => void) | null)[]\n) {\n let cache = useRef(refs)\n\n useEffect(() => {\n cache.current = refs\n }, [refs])\n\n return useCallback(\n (value: TType) => {\n for (let ref of cache.current) {\n if (ref == null) continue\n if (typeof ref === 'function') ref(value)\n else ref.current = value\n }\n },\n [cache]\n )\n}\n","// See: https://github.com/facebook/react/issues/7711\n// See: https://github.com/facebook/react/pull/20612\n// See: https://html.spec.whatwg.org/multipage/form-control-infrastructure.html#concept-fe-disabled (2.)\nexport function isDisabledReactIssue7711(element: Element): boolean {\n let parent = element.parentElement\n let legend = null\n\n while (parent && !(parent instanceof HTMLFieldSetElement)) {\n if (parent instanceof HTMLLegendElement) legend = parent\n parent = parent.parentElement\n }\n\n let isParentDisabled = parent?.getAttribute('disabled') === '' ?? false\n if (isParentDisabled && isFirstLegend(legend)) return false\n\n return isParentDisabled\n}\n\nfunction isFirstLegend(element: HTMLLegendElement | null): boolean {\n if (!element) return false\n\n let previous = element.previousElementSibling\n\n while (previous !== null) {\n if (previous instanceof HTMLLegendElement) return false\n previous = previous.previousElementSibling\n }\n\n return true\n}\n","import { useEffect, useRef } from 'react'\n\nexport function useWindowEvent(\n type: TType,\n listener: (this: Window, ev: WindowEventMap[TType]) => any,\n options?: boolean | AddEventListenerOptions\n) {\n let listenerRef = useRef(listener)\n listenerRef.current = listener\n\n useEffect(() => {\n function handler(event: WindowEventMap[TType]) {\n listenerRef.current.call(window, event)\n }\n\n window.addEventListener(type, handler, options)\n return () => window.removeEventListener(type, handler, options)\n }, [type, options])\n}\n","import { match } from './match'\n\n// Credit:\n// - https://stackoverflow.com/a/30753870\nlet focusableSelector = [\n '[contentEditable=true]',\n '[tabindex]',\n 'a[href]',\n 'area[href]',\n 'button:not([disabled])',\n 'iframe',\n 'input:not([disabled])',\n 'select:not([disabled])',\n 'textarea:not([disabled])',\n]\n .map(\n process.env.NODE_ENV === 'test'\n ? // TODO: Remove this once JSDOM fixes the issue where an element that is\n // \"hidden\" can be the document.activeElement, because this is not possible\n // in real browsers.\n selector => `${selector}:not([tabindex='-1']):not([style*='display: none'])`\n : selector => `${selector}:not([tabindex='-1'])`\n )\n .join(',')\n\nexport enum Focus {\n /** Focus the first non-disabled element */\n First = 1 << 0,\n\n /** Focus the previous non-disabled element */\n Previous = 1 << 1,\n\n /** Focus the next non-disabled element */\n Next = 1 << 2,\n\n /** Focus the last non-disabled element */\n Last = 1 << 3,\n\n /** Wrap tab around */\n WrapAround = 1 << 4,\n\n /** Prevent scrolling the focusable elements into view */\n NoScroll = 1 << 5,\n}\n\nexport enum FocusResult {\n /** Something went wrong while trying to focus. */\n Error,\n\n /** When `Focus.WrapAround` is enabled, going from position `N` to `N+1` where `N` is the last index in the array, then we overflow. */\n Overflow,\n\n /** Focus was successful. */\n Success,\n\n /** When `Focus.WrapAround` is enabled, going from position `N` to `N-1` where `N` is the first index in the array, then we underflow. */\n Underflow,\n}\n\nenum Direction {\n Previous = -1,\n Next = 1,\n}\n\nexport function getFocusableElements(container: HTMLElement | null = document.body) {\n if (container == null) return []\n return Array.from(container.querySelectorAll(focusableSelector))\n}\n\nexport enum FocusableMode {\n /** The element itself must be focusable. */\n Strict,\n\n /** The element should be inside of a focusable element. */\n Loose,\n}\n\nexport function isFocusableElement(\n element: HTMLElement,\n mode: FocusableMode = FocusableMode.Strict\n) {\n if (element === document.body) return false\n\n return match(mode, {\n [FocusableMode.Strict]() {\n return element.matches(focusableSelector)\n },\n [FocusableMode.Loose]() {\n let next: HTMLElement | null = element\n\n while (next !== null) {\n if (next.matches(focusableSelector)) return true\n next = next.parentElement\n }\n\n return false\n },\n })\n}\n\nexport function focusElement(element: HTMLElement | null) {\n element?.focus({ preventScroll: true })\n}\n\nexport function focusIn(container: HTMLElement | HTMLElement[], focus: Focus) {\n let elements = Array.isArray(container) ? container : getFocusableElements(container)\n let active = document.activeElement as HTMLElement\n\n let direction = (() => {\n if (focus & (Focus.First | Focus.Next)) return Direction.Next\n if (focus & (Focus.Previous | Focus.Last)) return Direction.Previous\n\n throw new Error('Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last')\n })()\n\n let startIndex = (() => {\n if (focus & Focus.First) return 0\n if (focus & Focus.Previous) return Math.max(0, elements.indexOf(active)) - 1\n if (focus & Focus.Next) return Math.max(0, elements.indexOf(active)) + 1\n if (focus & Focus.Last) return elements.length - 1\n\n throw new Error('Missing Focus.First, Focus.Previous, Focus.Next or Focus.Last')\n })()\n\n let focusOptions = focus & Focus.NoScroll ? { preventScroll: true } : {}\n\n let offset = 0\n let total = elements.length\n let next = undefined\n do {\n // Guard against infinite loops\n if (offset >= total || offset + total <= 0) return FocusResult.Error\n\n let nextIdx = startIndex + offset\n\n if (focus & Focus.WrapAround) {\n nextIdx = (nextIdx + total) % total\n } else {\n if (nextIdx < 0) return FocusResult.Underflow\n if (nextIdx >= total) return FocusResult.Overflow\n }\n\n next = elements[nextIdx]\n\n // Try the focus the next element, might not work if it is \"hidden\" to the user.\n next?.focus(focusOptions)\n\n // Try the next one in line\n offset += direction\n } while (next !== document.activeElement)\n\n // This is a little weird, but let me try and explain: There are a few scenario's\n // in chrome for example where a focused `` tag does not get the default focus\n // styles and sometimes they do. This highly depends on whether you started by\n // clicking or by using your keyboard. When you programmatically add focus `anchor.focus()`\n // then the active element (document.activeElement) is this anchor, which is expected.\n // However in that case the default focus styles are not applied *unless* you\n // also add this tabindex.\n if (!next.hasAttribute('tabindex')) next.setAttribute('tabindex', '0')\n\n return FocusResult.Success\n}\n","import {\n useRef,\n // Types\n MutableRefObject,\n useEffect,\n} from 'react'\n\nimport { Keys } from '../components/keyboard'\nimport { focusElement, focusIn, Focus, FocusResult } from '../utils/focus-management'\nimport { useWindowEvent } from './use-window-event'\nimport { useIsMounted } from './use-is-mounted'\n\nexport enum Features {\n /** No features enabled for the `useFocusTrap` hook. */\n None = 1 << 0,\n\n /** Ensure that we move focus initially into the container. */\n InitialFocus = 1 << 1,\n\n /** Ensure that pressing `Tab` and `Shift+Tab` is trapped within the container. */\n TabLock = 1 << 2,\n\n /** Ensure that programmatically moving focus outside of the container is disallowed. */\n FocusLock = 1 << 3,\n\n /** Ensure that we restore the focus when unmounting the component that uses this `useFocusTrap` hook. */\n RestoreFocus = 1 << 4,\n\n /** Enable all features. */\n All = InitialFocus | TabLock | FocusLock | RestoreFocus,\n}\n\nexport function useFocusTrap(\n container: MutableRefObject,\n features: Features = Features.All,\n {\n initialFocus,\n containers,\n }: {\n initialFocus?: MutableRefObject\n containers?: MutableRefObject>>\n } = {}\n) {\n let restoreElement = useRef(\n typeof window !== 'undefined' ? (document.activeElement as HTMLElement) : null\n )\n let previousActiveElement = useRef(null)\n let mounted = useIsMounted()\n\n let featuresRestoreFocus = Boolean(features & Features.RestoreFocus)\n let featuresInitialFocus = Boolean(features & Features.InitialFocus)\n\n // Capture the currently focused element, before we enable the focus trap.\n useEffect(() => {\n if (!featuresRestoreFocus) return\n\n restoreElement.current = document.activeElement as HTMLElement\n }, [featuresRestoreFocus])\n\n // Restore the focus when we unmount the component.\n useEffect(() => {\n if (!featuresRestoreFocus) return\n\n return () => {\n focusElement(restoreElement.current)\n restoreElement.current = null\n }\n }, [featuresRestoreFocus])\n\n // Handle initial focus\n useEffect(() => {\n if (!featuresInitialFocus) return\n if (!container.current) return\n\n let activeElement = document.activeElement as HTMLElement\n\n if (initialFocus?.current) {\n if (initialFocus?.current === activeElement) {\n previousActiveElement.current = activeElement\n return // Initial focus ref is already the active element\n }\n } else if (container.current.contains(activeElement)) {\n previousActiveElement.current = activeElement\n return // Already focused within Dialog\n }\n\n // Try to focus the initialFocus ref\n if (initialFocus?.current) {\n focusElement(initialFocus.current)\n } else {\n if (focusIn(container.current, Focus.First) === FocusResult.Error) {\n console.warn('There are no focusable elements inside the ')\n }\n }\n\n previousActiveElement.current = document.activeElement as HTMLElement\n }, [container, initialFocus, featuresInitialFocus])\n\n // Handle `Tab` & `Shift+Tab` keyboard events\n useWindowEvent('keydown', event => {\n if (!(features & Features.TabLock)) return\n\n if (!container.current) return\n if (event.key !== Keys.Tab) return\n\n event.preventDefault()\n\n if (\n focusIn(\n container.current,\n (event.shiftKey ? Focus.Previous : Focus.Next) | Focus.WrapAround\n ) === FocusResult.Success\n ) {\n previousActiveElement.current = document.activeElement as HTMLElement\n }\n })\n\n // Prevent programmatically escaping the container\n useWindowEvent(\n 'focus',\n event => {\n if (!(features & Features.FocusLock)) return\n\n let allContainers = new Set(containers?.current)\n allContainers.add(container)\n\n if (!allContainers.size) return\n\n let previous = previousActiveElement.current\n if (!previous) return\n if (!mounted.current) return\n\n let toElement = event.target as HTMLElement | null\n\n if (toElement && toElement instanceof HTMLElement) {\n if (!contains(allContainers, toElement)) {\n event.preventDefault()\n event.stopPropagation()\n focusElement(previous)\n } else {\n previousActiveElement.current = toElement\n focusElement(toElement)\n }\n } else {\n focusElement(previousActiveElement.current)\n }\n },\n true\n )\n}\n\nfunction contains(containers: Set>, element: HTMLElement) {\n for (let container of containers) {\n if (container.current?.contains(element)) return true\n }\n\n return false\n}\n","import { MutableRefObject } from 'react'\nimport { useIsoMorphicEffect } from './use-iso-morphic-effect'\n\nlet interactables = new Set()\nlet originals = new Map()\n\nfunction inert(element: HTMLElement) {\n element.setAttribute('aria-hidden', 'true')\n // @ts-expect-error `inert` does not exist on HTMLElement (yet!)\n element.inert = true\n}\n\nfunction restore(element: HTMLElement) {\n let original = originals.get(element)\n if (!original) return\n\n if (original['aria-hidden'] === null) element.removeAttribute('aria-hidden')\n else element.setAttribute('aria-hidden', original['aria-hidden'])\n // @ts-expect-error `inert` does not exist on HTMLElement (yet!)\n element.inert = original.inert\n}\n\nexport function useInertOthers(\n container: MutableRefObject,\n enabled: boolean = true\n) {\n useIsoMorphicEffect(() => {\n if (!enabled) return\n if (!container.current) return\n\n let element = container.current\n\n // Mark myself as an interactable element\n interactables.add(element)\n\n // Restore elements that now contain an interactable child\n for (let original of originals.keys()) {\n if (original.contains(element)) {\n restore(original)\n originals.delete(original)\n }\n }\n\n // Collect direct children of the body\n document.querySelectorAll('body > *').forEach(child => {\n if (!(child instanceof HTMLElement)) return // Skip non-HTMLElements\n\n // Skip the interactables, and the parents of the interactables\n for (let interactable of interactables) {\n if (child.contains(interactable)) return\n }\n\n // Keep track of the elements\n if (interactables.size === 1) {\n originals.set(child, {\n 'aria-hidden': child.getAttribute('aria-hidden'),\n // @ts-expect-error `inert` does not exist on HTMLElement (yet!)\n inert: child.inert,\n })\n\n // Mutate the element\n inert(child)\n }\n })\n\n return () => {\n // Inert is disabled on the current element\n interactables.delete(element)\n\n // We still have interactable elements, therefore this one and its parent\n // will become inert as well.\n if (interactables.size > 0) {\n // Collect direct children of the body\n document.querySelectorAll('body > *').forEach(child => {\n if (!(child instanceof HTMLElement)) return // Skip non-HTMLElements\n\n // Skip already inert parents\n if (originals.has(child)) return\n\n // Skip the interactables, and the parents of the interactables\n for (let interactable of interactables) {\n if (child.contains(interactable)) return\n }\n\n originals.set(child, {\n 'aria-hidden': child.getAttribute('aria-hidden'),\n // @ts-expect-error `inert` does not exist on HTMLElement (yet!)\n inert: child.inert,\n })\n\n // Mutate the element\n inert(child)\n })\n } else {\n for (let element of originals.keys()) {\n // Restore\n restore(element)\n\n // Cleanup\n originals.delete(element)\n }\n }\n }\n }, [enabled])\n}\n","import React, {\n createContext,\n useContext,\n\n // Types\n ReactNode,\n} from 'react'\n\nlet ForcePortalRootContext = createContext(false)\n\nexport function usePortalRoot() {\n return useContext(ForcePortalRootContext)\n}\n\ninterface ForcePortalRootProps {\n force: boolean\n children: ReactNode\n}\n\nexport function ForcePortalRoot(props: ForcePortalRootProps) {\n return (\n \n {props.children}\n \n )\n}\n","import React, {\n Fragment,\n createContext,\n useContext,\n useEffect,\n useState,\n\n // Types\n ElementType,\n MutableRefObject,\n} from 'react'\nimport { createPortal } from 'react-dom'\n\nimport { Props } from '../../types'\nimport { render } from '../../utils/render'\nimport { useIsoMorphicEffect } from '../../hooks/use-iso-morphic-effect'\nimport { usePortalRoot } from '../../internal/portal-force-root'\nimport { useServerHandoffComplete } from '../../hooks/use-server-handoff-complete'\n\nfunction usePortalTarget(): HTMLElement | null {\n let forceInRoot = usePortalRoot()\n let groupTarget = useContext(PortalGroupContext)\n let [target, setTarget] = useState(() => {\n // Group context is used, but still null\n if (!forceInRoot && groupTarget !== null) return null\n\n // No group context is used, let's create a default portal root\n if (typeof window === 'undefined') return null\n let existingRoot = document.getElementById('headlessui-portal-root')\n if (existingRoot) return existingRoot\n\n let root = document.createElement('div')\n root.setAttribute('id', 'headlessui-portal-root')\n return document.body.appendChild(root)\n })\n\n useEffect(() => {\n if (forceInRoot) return\n if (groupTarget === null) return\n setTarget(groupTarget.current)\n }, [groupTarget, setTarget, forceInRoot])\n\n return target\n}\n\n// ---\n\nlet DEFAULT_PORTAL_TAG = Fragment\ninterface PortalRenderPropArg {}\n\nexport function Portal(\n props: Props\n) {\n let passthroughProps = props\n let target = usePortalTarget()\n let [element] = useState(() =>\n typeof window === 'undefined' ? null : document.createElement('div')\n )\n\n let ready = useServerHandoffComplete()\n\n useIsoMorphicEffect(() => {\n if (!target) return\n if (!element) return\n\n target.appendChild(element)\n\n return () => {\n if (!target) return\n if (!element) return\n\n target.removeChild(element)\n\n if (target.childNodes.length <= 0) {\n target.parentElement?.removeChild(target)\n }\n }\n }, [target, element])\n\n if (!ready) return null\n\n return !target || !element\n ? null\n : createPortal(\n render({ props: passthroughProps, defaultTag: DEFAULT_PORTAL_TAG, name: 'Portal' }),\n element\n )\n}\n\n// ---\n\nlet DEFAULT_GROUP_TAG = Fragment\ninterface GroupRenderPropArg {}\n\nlet PortalGroupContext = createContext | null>(null)\n\nfunction Group(\n props: Props & {\n target: MutableRefObject\n }\n) {\n let { target, ...passthroughProps } = props\n\n return (\n \n {render({\n props: passthroughProps,\n defaultTag: DEFAULT_GROUP_TAG,\n name: 'Popover.Group',\n })}\n \n )\n}\n\n// ---\n\nPortal.Group = Group\n","import React, {\n createContext,\n useCallback,\n useContext,\n useMemo,\n useState,\n\n // Types\n ElementType,\n ReactNode,\n} from 'react'\n\nimport { Props } from '../../types'\nimport { useId } from '../../hooks/use-id'\nimport { render } from '../../utils/render'\nimport { useIsoMorphicEffect } from '../../hooks/use-iso-morphic-effect'\n\n// ---\n\ninterface SharedData {\n slot?: {}\n name?: string\n props?: {}\n}\n\nlet DescriptionContext = createContext<\n ({ register(value: string): () => void } & SharedData) | null\n>(null)\n\nfunction useDescriptionContext() {\n let context = useContext(DescriptionContext)\n if (context === null) {\n let err = new Error(\n 'You used a component, but it is not inside a relevant parent.'\n )\n if (Error.captureStackTrace) Error.captureStackTrace(err, useDescriptionContext)\n throw err\n }\n return context\n}\n\ninterface DescriptionProviderProps extends SharedData {\n children: ReactNode\n}\n\nexport function useDescriptions(): [\n string | undefined,\n (props: DescriptionProviderProps) => JSX.Element\n] {\n let [descriptionIds, setDescriptionIds] = useState([])\n\n return [\n // The actual id's as string or undefined\n descriptionIds.length > 0 ? descriptionIds.join(' ') : undefined,\n\n // The provider component\n useMemo(() => {\n return function DescriptionProvider(props: DescriptionProviderProps) {\n let register = useCallback((value: string) => {\n setDescriptionIds(existing => [...existing, value])\n\n return () =>\n setDescriptionIds(existing => {\n let clone = existing.slice()\n let idx = clone.indexOf(value)\n if (idx !== -1) clone.splice(idx, 1)\n return clone\n })\n }, [])\n\n let contextBag = useMemo(\n () => ({ register, slot: props.slot, name: props.name, props: props.props }),\n [register, props.slot, props.name, props.props]\n )\n\n return (\n \n {props.children}\n \n )\n }\n }, [setDescriptionIds]),\n ]\n}\n\n// ---\n\nlet DEFAULT_DESCRIPTION_TAG = 'p' as const\ninterface DescriptionRenderPropArg {}\ntype DescriptionPropsWeControl = 'id'\n\nexport function Description(\n props: Props\n) {\n let context = useDescriptionContext()\n let id = `headlessui-description-${useId()}`\n\n useIsoMorphicEffect(() => context.register(id), [id, context.register])\n\n let passThroughProps = props\n let propsWeControl = { ...context.props, id }\n\n return render({\n props: { ...passThroughProps, ...propsWeControl },\n slot: context.slot || {},\n defaultTag: DEFAULT_DESCRIPTION_TAG,\n name: context.name || 'Description',\n })\n}\n","import React, {\n createContext,\n useCallback,\n useContext,\n\n // Types\n MutableRefObject,\n ReactNode,\n} from 'react'\nimport { useIsoMorphicEffect } from '../hooks/use-iso-morphic-effect'\n\ntype OnUpdate = (\n message: StackMessage,\n type: string,\n element: MutableRefObject\n) => void\n\nlet StackContext = createContext(() => {})\nStackContext.displayName = 'StackContext'\n\nexport enum StackMessage {\n Add,\n Remove,\n}\n\nexport function useStackContext() {\n return useContext(StackContext)\n}\n\nexport function StackProvider({\n children,\n onUpdate,\n type,\n element,\n}: {\n children: ReactNode\n onUpdate?: OnUpdate\n type: string\n element: MutableRefObject\n}) {\n let parentUpdate = useStackContext()\n\n let notify = useCallback(\n (...args: Parameters) => {\n // Notify our layer\n onUpdate?.(...args)\n\n // Notify the parent\n parentUpdate(...args)\n },\n [parentUpdate, onUpdate]\n )\n\n useIsoMorphicEffect(() => {\n notify(StackMessage.Add, type, element)\n return () => notify(StackMessage.Remove, type, element)\n }, [notify, type, element])\n\n return {children}\n}\n","// WAI-ARIA: https://www.w3.org/TR/wai-aria-practices-1.2/#dialog_modal\nimport React, {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useReducer,\n useRef,\n useState,\n\n // Types\n ContextType,\n ElementType,\n MouseEvent as ReactMouseEvent,\n MutableRefObject,\n Ref,\n} from 'react'\n\nimport { Props } from '../../types'\nimport { match } from '../../utils/match'\nimport { forwardRefWithAs, render, Features, PropsForFeatures } from '../../utils/render'\nimport { useSyncRefs } from '../../hooks/use-sync-refs'\nimport { Keys } from '../keyboard'\nimport { isDisabledReactIssue7711 } from '../../utils/bugs'\nimport { useId } from '../../hooks/use-id'\nimport { useFocusTrap, Features as FocusTrapFeatures } from '../../hooks/use-focus-trap'\nimport { useInertOthers } from '../../hooks/use-inert-others'\nimport { Portal } from '../../components/portal/portal'\nimport { ForcePortalRoot } from '../../internal/portal-force-root'\nimport { Description, useDescriptions } from '../description/description'\nimport { useWindowEvent } from '../../hooks/use-window-event'\nimport { useOpenClosed, State } from '../../internal/open-closed'\nimport { useServerHandoffComplete } from '../../hooks/use-server-handoff-complete'\nimport { StackProvider, StackMessage } from '../../internal/stack-context'\n\nenum DialogStates {\n Open,\n Closed,\n}\n\ninterface StateDefinition {\n titleId: string | null\n}\n\nenum ActionTypes {\n SetTitleId,\n}\n\ntype Actions = { type: ActionTypes.SetTitleId; id: string | null }\n\nlet reducers: {\n [P in ActionTypes]: (\n state: StateDefinition,\n action: Extract\n ) => StateDefinition\n} = {\n [ActionTypes.SetTitleId](state, action) {\n if (state.titleId === action.id) return state\n return { ...state, titleId: action.id }\n },\n}\n\nlet DialogContext = createContext<\n | [\n {\n dialogState: DialogStates\n close(): void\n setTitleId(id: string | null): void\n },\n StateDefinition\n ]\n | null\n>(null)\nDialogContext.displayName = 'DialogContext'\n\nfunction useDialogContext(component: string) {\n let context = useContext(DialogContext)\n if (context === null) {\n let err = new Error(`<${component} /> is missing a parent <${Dialog.displayName} /> component.`)\n if (Error.captureStackTrace) Error.captureStackTrace(err, useDialogContext)\n throw err\n }\n return context\n}\n\nfunction stateReducer(state: StateDefinition, action: Actions) {\n return match(action.type, reducers, state, action)\n}\n\n// ---\n\nlet DEFAULT_DIALOG_TAG = 'div' as const\ninterface DialogRenderPropArg {\n open: boolean\n}\ntype DialogPropsWeControl =\n | 'id'\n | 'role'\n | 'aria-modal'\n | 'aria-describedby'\n | 'aria-labelledby'\n | 'onClick'\n\nlet DialogRenderFeatures = Features.RenderStrategy | Features.Static\n\nlet DialogRoot = forwardRefWithAs(function Dialog<\n TTag extends ElementType = typeof DEFAULT_DIALOG_TAG\n>(\n props: Props &\n PropsForFeatures & {\n open?: boolean\n onClose(value: boolean): void\n initialFocus?: MutableRefObject\n },\n ref: Ref\n) {\n let { open, onClose, initialFocus, ...rest } = props\n let [nestedDialogCount, setNestedDialogCount] = useState(0)\n\n let usesOpenClosedState = useOpenClosed()\n if (open === undefined && usesOpenClosedState !== null) {\n // Update the `open` prop based on the open closed state\n open = match(usesOpenClosedState, {\n [State.Open]: true,\n [State.Closed]: false,\n })\n }\n\n let containers = useRef>>(new Set())\n let internalDialogRef = useRef(null)\n let dialogRef = useSyncRefs(internalDialogRef, ref)\n\n // Validations\n let hasOpen = props.hasOwnProperty('open') || usesOpenClosedState !== null\n let hasOnClose = props.hasOwnProperty('onClose')\n if (!hasOpen && !hasOnClose) {\n throw new Error(\n `You have to provide an \\`open\\` and an \\`onClose\\` prop to the \\`Dialog\\` component.`\n )\n }\n\n if (!hasOpen) {\n throw new Error(\n `You provided an \\`onClose\\` prop to the \\`Dialog\\`, but forgot an \\`open\\` prop.`\n )\n }\n\n if (!hasOnClose) {\n throw new Error(\n `You provided an \\`open\\` prop to the \\`Dialog\\`, but forgot an \\`onClose\\` prop.`\n )\n }\n\n if (typeof open !== 'boolean') {\n throw new Error(\n `You provided an \\`open\\` prop to the \\`Dialog\\`, but the value is not a boolean. Received: ${open}`\n )\n }\n\n if (typeof onClose !== 'function') {\n throw new Error(\n `You provided an \\`onClose\\` prop to the \\`Dialog\\`, but the value is not a function. Received: ${onClose}`\n )\n }\n let dialogState = open ? DialogStates.Open : DialogStates.Closed\n let visible = (() => {\n if (usesOpenClosedState !== null) {\n return usesOpenClosedState === State.Open\n }\n\n return dialogState === DialogStates.Open\n })()\n\n let [state, dispatch] = useReducer(stateReducer, {\n titleId: null,\n descriptionId: null,\n } as StateDefinition)\n\n let close = useCallback(() => onClose(false), [onClose])\n\n let setTitleId = useCallback(\n (id: string | null) => dispatch({ type: ActionTypes.SetTitleId, id }),\n [dispatch]\n )\n\n let ready = useServerHandoffComplete()\n let enabled = ready && dialogState === DialogStates.Open\n let hasNestedDialogs = nestedDialogCount > 1 // 1 is the current dialog\n let hasParentDialog = useContext(DialogContext) !== null\n\n // If there are multiple dialogs, then you can be the root, the leaf or one\n // in between. We only care abou whether you are the top most one or not.\n let position = !hasNestedDialogs ? 'leaf' : 'parent'\n\n useFocusTrap(\n internalDialogRef,\n enabled\n ? match(position, {\n parent: FocusTrapFeatures.RestoreFocus,\n leaf: FocusTrapFeatures.All,\n })\n : FocusTrapFeatures.None,\n { initialFocus, containers }\n )\n useInertOthers(internalDialogRef, hasNestedDialogs ? enabled : false)\n\n // Handle outside click\n useWindowEvent('mousedown', event => {\n let target = event.target as HTMLElement\n\n if (dialogState !== DialogStates.Open) return\n if (hasNestedDialogs) return\n if (internalDialogRef.current?.contains(target)) return\n\n close()\n })\n\n // Handle `Escape` to close\n useWindowEvent('keydown', event => {\n if (event.key !== Keys.Escape) return\n if (dialogState !== DialogStates.Open) return\n if (hasNestedDialogs) return\n event.preventDefault()\n event.stopPropagation()\n close()\n })\n\n // Scroll lock\n useEffect(() => {\n if (dialogState !== DialogStates.Open) return\n if (hasParentDialog) return\n\n let overflow = document.documentElement.style.overflow\n let paddingRight = document.documentElement.style.paddingRight\n\n let scrollbarWidth = window.innerWidth - document.documentElement.clientWidth\n\n document.documentElement.style.overflow = 'hidden'\n document.documentElement.style.paddingRight = `${scrollbarWidth}px`\n\n return () => {\n document.documentElement.style.overflow = overflow\n document.documentElement.style.paddingRight = paddingRight\n }\n }, [dialogState, hasParentDialog])\n\n // Trigger close when the FocusTrap gets hidden\n useEffect(() => {\n if (dialogState !== DialogStates.Open) return\n if (!internalDialogRef.current) return\n\n let observer = new IntersectionObserver(entries => {\n for (let entry of entries) {\n if (\n entry.boundingClientRect.x === 0 &&\n entry.boundingClientRect.y === 0 &&\n entry.boundingClientRect.width === 0 &&\n entry.boundingClientRect.height === 0\n ) {\n close()\n }\n }\n })\n\n observer.observe(internalDialogRef.current)\n\n return () => observer.disconnect()\n }, [dialogState, internalDialogRef, close])\n\n let [describedby, DescriptionProvider] = useDescriptions()\n\n let id = `headlessui-dialog-${useId()}`\n\n let contextBag = useMemo>(\n () => [{ dialogState, close, setTitleId }, state],\n [dialogState, state, close, setTitleId]\n )\n\n let slot = useMemo(() => ({ open: dialogState === DialogStates.Open }), [\n dialogState,\n ])\n\n let propsWeControl = {\n ref: dialogRef,\n id,\n role: 'dialog',\n 'aria-modal': dialogState === DialogStates.Open ? true : undefined,\n 'aria-labelledby': state.titleId,\n 'aria-describedby': describedby,\n onClick(event: ReactMouseEvent) {\n event.stopPropagation()\n },\n }\n let passthroughProps = rest\n\n return (\n {\n if (type !== 'Dialog') return\n\n match(message, {\n [StackMessage.Add]() {\n containers.current.add(element)\n setNestedDialogCount(count => count + 1)\n },\n [StackMessage.Remove]() {\n containers.current.add(element)\n setNestedDialogCount(count => count - 1)\n },\n })\n }, [])}\n >\n \n \n \n \n \n \n {render({\n props: { ...passthroughProps, ...propsWeControl },\n slot,\n defaultTag: DEFAULT_DIALOG_TAG,\n features: DialogRenderFeatures,\n visible,\n name: 'Dialog',\n })}\n \n \n \n \n \n \n \n )\n})\n\n// ---\n\nlet DEFAULT_OVERLAY_TAG = 'div' as const\ninterface OverlayRenderPropArg {\n open: boolean\n}\ntype OverlayPropsWeControl = 'id' | 'aria-hidden' | 'onClick'\n\nlet Overlay = forwardRefWithAs(function Overlay<\n TTag extends ElementType = typeof DEFAULT_OVERLAY_TAG\n>(props: Props, ref: Ref) {\n let [{ dialogState, close }] = useDialogContext([Dialog.displayName, Overlay.name].join('.'))\n let overlayRef = useSyncRefs(ref)\n\n let id = `headlessui-dialog-overlay-${useId()}`\n\n let handleClick = useCallback(\n (event: ReactMouseEvent) => {\n if (event.target !== event.currentTarget) return\n if (isDisabledReactIssue7711(event.currentTarget)) return event.preventDefault()\n event.preventDefault()\n event.stopPropagation()\n close()\n },\n [close]\n )\n\n let slot = useMemo(() => ({ open: dialogState === DialogStates.Open }), [\n dialogState,\n ])\n let propsWeControl = {\n ref: overlayRef,\n id,\n 'aria-hidden': true,\n onClick: handleClick,\n }\n let passthroughProps = props\n\n return render({\n props: { ...passthroughProps, ...propsWeControl },\n slot,\n defaultTag: DEFAULT_OVERLAY_TAG,\n name: 'Dialog.Overlay',\n })\n})\n\n// ---\n\nlet DEFAULT_TITLE_TAG = 'h2' as const\ninterface TitleRenderPropArg {\n open: boolean\n}\ntype TitlePropsWeControl = 'id'\n\nfunction Title(\n props: Props\n) {\n let [{ dialogState, setTitleId }] = useDialogContext([Dialog.displayName, Title.name].join('.'))\n\n let id = `headlessui-dialog-title-${useId()}`\n\n useEffect(() => {\n setTitleId(id)\n return () => setTitleId(null)\n }, [id, setTitleId])\n\n let slot = useMemo(() => ({ open: dialogState === DialogStates.Open }), [\n dialogState,\n ])\n let propsWeControl = { id }\n let passthroughProps = props\n\n return render({\n props: { ...passthroughProps, ...propsWeControl },\n slot,\n defaultTag: DEFAULT_TITLE_TAG,\n name: 'Dialog.Title',\n })\n}\n\n// ---\n\nexport let Dialog = Object.assign(DialogRoot, { Overlay, Title, Description })\n","import * as React from \"react\";\n\nfunction XCircleIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M10 14l2-2m0 0l2-2m-2 2l-2-2m2 2l2 2m7-2a9 9 0 11-18 0 9 9 0 0118 0z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(XCircleIcon);\nexport default ForwardRef;","import { Dialog, Transition } from '@headlessui/react'\nimport { XCircleIcon } from '@heroicons/react/outline'\nimport { Fragment } from 'react'\n\ntype Props = {\n title: string\n children: React.ReactNode\n isOpen: boolean\n handleClose: () => void\n}\n\nexport const BaseModal = ({ title, children, isOpen, handleClose }: Props) => {\n return (\n \n \n
\n \n \n \n \n
\n handleClose()}\n tabIndex={0}\n aria-pressed=\"false\"\n className=\"absolute right-4 top-4\"\n >\n \n \n
\n
\n \n {title}\n \n
{children}
\n
\n
\n
\n \n
\n \n
\n )\n}\n","import { ChevronLeftIcon, ChevronRightIcon } from '@heroicons/react/outline'\nimport { addDays, format, startOfDay } from 'date-fns'\nimport { useState } from 'react'\nimport DatePicker, { registerLocale } from 'react-datepicker'\n\nimport { DATE_LOCALE } from '../../constants/settings'\nimport {\n DATEPICKER_CHOOSE_TEXT,\n DATEPICKER_TITLE,\n DATEPICKER_TODAY_TEXT,\n} from '../../constants/strings'\nimport { getToday, getYesterday } from '../../lib/dateutils'\nimport {\n firstGameDate,\n getLastGameDate,\n isValidGameDate,\n periodInDays,\n} from '../../lib/words'\nimport { BaseModal } from './BaseModal'\n\ntype Props = {\n isOpen: boolean\n initialDate?: Date\n handleSelectDate: (date: Date) => void\n handleClose: () => void\n}\n\nexport const DatePickerModal = ({\n isOpen,\n initialDate,\n handleSelectDate,\n handleClose,\n}: Props) => {\n const lastGameDate = getLastGameDate(getYesterday())\n const [selectedDate, setSelectedDate] = useState(() => {\n if (initialDate == null || initialDate > lastGameDate) {\n return lastGameDate\n }\n return initialDate\n })\n\n const headingDateFormat = 'MMMM yyyy'\n const buttonDateFormat = 'd MMM yyyy'\n const formatOptions = { locale: DATE_LOCALE }\n\n registerLocale('locale', DATE_LOCALE)\n\n const excludedDates: Date[] = []\n if (periodInDays > 1) {\n let date = firstGameDate\n for (date = firstGameDate; date < getToday(); date = addDays(date, 1)) {\n if (!isValidGameDate(date)) {\n excludedDates.push(date)\n }\n }\n }\n\n return (\n \n
\n setSelectedDate(startOfDay(date))}\n inline\n popperClassName=\"react-datepicker-left\"\n renderCustomHeader={({\n date,\n decreaseMonth,\n increaseMonth,\n prevMonthButtonDisabled,\n nextMonthButtonDisabled,\n }) => (\n
\n \n {format(date, headingDateFormat, formatOptions)}\n \n\n
\n \n \n \n\n \n \n \n
\n
\n )}\n />\n
\n
\n handleSelectDate(getToday())}\n >\n {DATEPICKER_CHOOSE_TEXT} {DATEPICKER_TODAY_TEXT}\n \n = getToday()}\n onClick={() => handleSelectDate(selectedDate)}\n >\n {DATEPICKER_CHOOSE_TEXT}\n
\n {format(selectedDate, buttonDateFormat, formatOptions)}\n \n
\n \n )\n}\n","import { Cell } from '../grid/Cell'\nimport { BaseModal } from './BaseModal'\n\ntype Props = {\n isOpen: boolean\n handleClose: () => void\n}\n\nexport const InfoModal = ({ isOpen, handleClose }: Props) => {\n return (\n \n

\n Guess the word in 6 tries. After each guess, the color of the tiles will\n change to show how close your guess was to the word.\n

\n\n
\n \n \n \n \n \n
\n

\n The letter B is in the word and in the correct spot.\n

\n\n
\n \n \n \n \n \n
\n

\n The letter M is in the word but in the wrong spot.\n

\n\n
\n \n \n \n \n \n
\n

\n The letter O is not in the word in any spot.\n

\n\n

\n This is an open source version of the word guessing game we all know and\n love -{' '}\n \n check out the code here\n {' '}\n

\n \n )\n}\n","import * as React from \"react\";\n\nfunction DuplicateIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M8 16H6a2 2 0 01-2-2V6a2 2 0 012-2h8a2 2 0 012 2v2m-6 12h8a2 2 0 002-2v-8a2 2 0 00-2-2h-8a2 2 0 00-2 2v8a2 2 0 002 2z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(DuplicateIcon);\nexport default ForwardRef;","const fallbackCopyTextToClipboard = (text: string) => {\n var textArea = document.createElement('textarea')\n textArea.value = text\n textArea.style.top = '0'\n textArea.style.left = '0'\n textArea.style.position = 'fixed'\n document.body.appendChild(textArea)\n textArea.focus()\n textArea.select()\n try {\n document.execCommand('copy')\n } catch (err) {\n console.error('Fallback: Oops, unable to copy', err)\n }\n document.body.removeChild(textArea)\n}\n\nexport const copyTextToClipboard = (text: string) => {\n if (!navigator.clipboard) {\n fallbackCopyTextToClipboard(text)\n return\n }\n navigator.clipboard.writeText(text)\n}\n","import Blowfish from 'egoroof-blowfish'\n\nimport { BLOWFISH_IV, BLOWFISH_KEY } from '../constants/settings'\n\n// https://github.com/egoroof/blowfish/blob/master/README.md\nconst bf = new Blowfish(BLOWFISH_KEY, Blowfish.MODE.ECB, Blowfish.PADDING.NULL)\nbf.setIv(BLOWFISH_IV)\n\nexport const encrypt = (data: string) =>\n btoa(\n bf.encode(data).reduce((data, byte) => data + String.fromCharCode(byte), '')\n )\n\nexport const decrypt = (encoded: string) => {\n try {\n return bf.decode(\n Uint8Array.from(atob(encoded), (c) => c.charCodeAt(0)),\n Blowfish.TYPE.STRING\n )\n } catch (error) {\n return null\n }\n}\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n\n return target;\n}","import { MAX_CHALLENGES } from '../constants/settings'\nimport {\n GameStats,\n loadStatsFromLocalStorage,\n saveStatsToLocalStorage,\n} from './localStorage'\n\n// In stats array elements 0-5 are successes in 1-6 trys\n\nexport const addStatsForCompletedGame = (\n gameStats: GameStats,\n count: number\n) => {\n // Count is number of incorrect guesses before end.\n const stats = { ...gameStats }\n\n stats.totalGames += 1\n\n if (count >= MAX_CHALLENGES) {\n // A fail situation\n stats.currentStreak = 0\n stats.gamesFailed += 1\n } else {\n stats.winDistribution[count] += 1\n stats.currentStreak += 1\n\n if (stats.bestStreak < stats.currentStreak) {\n stats.bestStreak = stats.currentStreak\n }\n }\n\n stats.successRate = getSuccessRate(stats)\n\n saveStatsToLocalStorage(stats)\n return stats\n}\n\nconst defaultStats: GameStats = {\n winDistribution: Array.from(new Array(MAX_CHALLENGES), () => 0),\n gamesFailed: 0,\n currentStreak: 0,\n bestStreak: 0,\n totalGames: 0,\n successRate: 0,\n}\n\nexport const loadStats = () => {\n return loadStatsFromLocalStorage() || defaultStats\n}\n\nconst getSuccessRate = (gameStats: GameStats) => {\n const { totalGames, gamesFailed } = gameStats\n\n return Math.round(\n (100 * (totalGames - gamesFailed)) / Math.max(totalGames, 1)\n )\n}\n","import { DuplicateIcon } from '@heroicons/react/outline'\nimport { useState } from 'react'\n\nimport { copyTextToClipboard } from '../../lib/clipboard'\nimport { encrypt } from '../../lib/encryption'\nimport { loadGameStateFromLocalStorage } from '../../lib/localStorage'\nimport { loadStats } from '../../lib/stats'\nimport { MigrationStats } from '../modals/MigrateStatsModal'\n\nexport const EmigratePanel = () => {\n const [isCopyButtonEnabled, setIsCopyButtonEnabled] = useState(true)\n const [copyButtonText, setCopyButtonText] = useState('Copy')\n const stats = loadStats()\n const gameState = loadGameStateFromLocalStorage(true)\n\n const migrationStats: MigrationStats = {\n statistics: stats,\n gameState: gameState,\n }\n\n const emigrationCode = encrypt(JSON.stringify(migrationStats))\n\n const copyEmigrationCodeToClipboard = () => {\n copyTextToClipboard(emigrationCode)\n setCopyButtonText('Copied!')\n setIsCopyButtonEnabled(false)\n }\n\n return (\n
\n \n Copy your migration code:\n \n \n \n {isCopyButtonEnabled && (\n \n )}\n {copyButtonText}\n \n
\n )\n}\n","import * as React from \"react\";\n\nfunction SaveIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M8 7H5a2 2 0 00-2 2v9a2 2 0 002 2h14a2 2 0 002-2V9a2 2 0 00-2-2h-3m-1 4l-3 3m0 0l-3-3m3 3V4\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(SaveIcon);\nexport default ForwardRef;","import { SaveIcon } from '@heroicons/react/outline'\nimport { useState } from 'react'\n\nimport { decrypt } from '../../lib/encryption'\nimport {\n saveGameStateToLocalStorage,\n saveStatsToLocalStorage,\n} from '../../lib/localStorage'\nimport { MigrationStats } from '../modals/MigrateStatsModal'\n\nexport const ImmigratePanel = () => {\n const [isSaveButtonEnabled, setIsSaveButtonEnabled] = useState(false)\n\n const textareaClassNames = {\n valid: ['bg-gray-100', 'dark:bg-gray-700'],\n invalid: ['bg-red-400', 'dark:bg-red-900'],\n }\n const allClassNames = [\n ...textareaClassNames.valid,\n ...textareaClassNames.invalid,\n ]\n\n const handleImmigrationCodeChange = (event: any) => {\n if (event.target instanceof Element) {\n const textarea = event.target\n\n allClassNames.forEach((cn) => textarea.classList.remove(cn))\n\n setIsSaveButtonEnabled(false)\n\n const text = textarea.value\n\n try {\n const migrationStats = JSON.parse(decrypt(text) ?? '') as MigrationStats\n if (\n !migrationStats ||\n (!migrationStats.gameState && !migrationStats.statistics)\n ) {\n textareaClassNames.invalid.forEach((cn) => textarea.classList.add(cn))\n return\n }\n\n textareaClassNames.valid.forEach((cn) => textarea.classList.add(cn))\n setIsSaveButtonEnabled(true)\n } catch (error) {\n textareaClassNames.invalid.forEach((cn) => textarea.classList.add(cn))\n }\n }\n }\n\n const handleSaveButton = () => {\n const textarea = document.getElementById(\n 'immigration-code'\n ) as HTMLInputElement\n if (\n textarea &&\n window.confirm(\n 'Are you sure you want to override the statistics on this device? This action is not reversable.'\n )\n ) {\n var migrationStats = JSON.parse(\n decrypt(textarea.value) ?? ''\n ) as MigrationStats\n if (!migrationStats) return\n\n if (migrationStats.gameState) {\n saveGameStateToLocalStorage(true, migrationStats.gameState)\n }\n\n if (migrationStats.statistics) {\n saveStatsToLocalStorage(migrationStats.statistics)\n }\n\n alert('The site will now reload.')\n\n window.location.reload()\n }\n }\n\n return (\n
\n \n Paste your migration code:\n \n handleImmigrationCodeChange(e)}\n id=\"immigration-code\"\n rows={8}\n className=\"block w-full rounded-lg border border-gray-300 bg-gray-50 p-2.5 text-sm text-gray-900 focus:border-blue-500 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:text-white dark:placeholder-gray-400 dark:focus:border-blue-500 dark:focus:ring-blue-500\"\n >\n \n {isSaveButtonEnabled && (\n \n )}\n Save\n \n
\n )\n}\n","import { useState } from 'react'\n\nimport { GameStats, StoredGameState } from '../../lib/localStorage'\nimport { EmigratePanel } from '../stats/EmigratePanel'\nimport { ImmigratePanel } from '../stats/ImmigratePanel'\nimport { BaseModal } from './BaseModal'\n\ntype Props = {\n isOpen: boolean\n handleClose: () => void\n}\n\nexport type MigrationStats = {\n statistics: GameStats\n gameState: StoredGameState | null\n}\n\nexport const MigrateStatsModal = ({ isOpen, handleClose }: Props) => {\n const [isEmigrateVisible, setIsEmigrateVisible] = useState(true)\n\n return (\n \n

\n Copy the migration code on your old device and paste into the input on\n the new device.\n

\n\n
\n
\n

\n This is my:\n

\n
\n
\n setIsEmigrateVisible(true)}\n id=\"emigrate-radio-button\"\n radioGroup=\"migrate-radio-buttons\"\n type=\"radio\"\n value=\"\"\n name=\"emigrate-radio-button\"\n className=\"h-4 w-4 border-gray-300 bg-gray-100 text-blue-600 focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:bg-gray-700 dark:ring-offset-gray-800 dark:focus:ring-blue-600\"\n />\n \n old device\n \n
\n
\n setIsEmigrateVisible(false)}\n id=\"immigrate-radio-button\"\n radioGroup=\"migrate-radio-buttons\"\n type=\"radio\"\n value=\"\"\n name=\"immigrate-radio-button\"\n className=\"h-4 w-4 border-gray-300 bg-gray-100 text-blue-600 focus:ring-2 focus:ring-blue-500 dark:border-gray-600 dark:ring-offset-gray-800 dark:focus:ring-blue-600\"\n />\n \n new device\n \n
\n
\n\n {isEmigrateVisible && }\n {!isEmigrateVisible && }\n \n )\n}\n","import classnames from 'classnames'\n\ntype Props = {\n settingName: string\n flag: boolean\n handleFlag: Function\n description?: string\n}\n\nexport const SettingsToggle = ({\n settingName,\n flag,\n handleFlag,\n description,\n}: Props) => {\n const toggleHolder = classnames(\n 'w-14 h-8 flex shrink-0 items-center bg-gray-300 rounded-full p-1 duration-300 ease-in-out cursor-pointer',\n {\n 'bg-green-400': flag,\n }\n )\n const toggleButton = classnames(\n 'bg-white w-6 h-6 rounded-full shadow-md transform duration-300 ease-in-out cursor-pointer',\n {\n 'translate-x-6': flag,\n }\n )\n\n return (\n <>\n
\n
\n

{settingName}

\n {description && (\n

\n {description}\n

\n )}\n
\n
handleFlag(!flag)}>\n
\n
\n
\n \n )\n}\n","import {\n HARD_MODE_DESCRIPTION,\n HIGH_CONTRAST_MODE_DESCRIPTION,\n} from '../../constants/strings'\nimport { BaseModal } from './BaseModal'\nimport { SettingsToggle } from './SettingsToggle'\n\ntype Props = {\n isOpen: boolean\n handleClose: () => void\n isHardMode: boolean\n handleHardMode: Function\n isDarkMode: boolean\n handleDarkMode: Function\n isHighContrastMode: boolean\n handleHighContrastMode: Function\n}\n\nexport const SettingsModal = ({\n isOpen,\n handleClose,\n isHardMode,\n handleHardMode,\n isDarkMode,\n handleDarkMode,\n isHighContrastMode,\n handleHighContrastMode,\n}: Props) => {\n return (\n \n
\n \n \n \n
\n
\n )\n}\n","import * as React from \"react\";\n\nfunction ShareIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M8.684 13.342C8.886 12.938 9 12.482 9 12c0-.482-.114-.938-.316-1.342m0 2.684a3 3 0 110-2.684m0 2.684l6.632 3.316m-6.632-6l6.632-3.316m0 0a3 3 0 105.367-2.684 3 3 0 00-5.367 2.684zm0 9.316a3 3 0 105.368 2.684 3 3 0 00-5.368-2.684z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(ShareIcon);\nexport default ForwardRef;","import { cloneElement, Component, createRef, createElement } from 'react';\nimport { number, element, func, oneOfType, instanceOf, string, bool } from 'prop-types';\n\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\n\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\n\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\n\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\n\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\n\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n\n return _setPrototypeOf(o, p);\n}\n\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n\n try {\n Date.prototype.toString.call(Reflect.construct(Date, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\n\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n }\n\n return _assertThisInitialized(self);\n}\n\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n\n return _possibleConstructorReturn(this, result);\n };\n}\n\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\n\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\n\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}\n\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\n\nfunction zeroPad(value) {\n var length = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 2;\n var strValue = String(value);\n if (length === 0) return strValue;\n var match = strValue.match(/(.*?)([0-9]+)(.*)/);\n var prefix = match ? match[1] : '';\n var suffix = match ? match[3] : '';\n var strNo = match ? match[2] : strValue;\n var paddedNo = strNo.length >= length ? strNo : (_toConsumableArray(Array(length)).map(function () {\n return '0';\n }).join('') + strNo).slice(length * -1);\n return \"\".concat(prefix).concat(paddedNo).concat(suffix);\n}\nvar timeDeltaFormatOptionsDefaults = {\n daysInHours: false,\n zeroPadTime: 2\n};\nfunction calcTimeDelta(date) {\n var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var _options$now = options.now,\n now = _options$now === void 0 ? Date.now : _options$now,\n _options$precision = options.precision,\n precision = _options$precision === void 0 ? 0 : _options$precision,\n controlled = options.controlled,\n _options$offsetTime = options.offsetTime,\n offsetTime = _options$offsetTime === void 0 ? 0 : _options$offsetTime,\n overtime = options.overtime;\n var startTimestamp;\n\n if (typeof date === 'string') {\n startTimestamp = new Date(date).getTime();\n } else if (date instanceof Date) {\n startTimestamp = date.getTime();\n } else {\n startTimestamp = date;\n }\n\n if (!controlled) {\n startTimestamp += offsetTime;\n }\n\n var timeLeft = controlled ? startTimestamp : startTimestamp - now();\n var clampedPrecision = Math.min(20, Math.max(0, precision));\n var total = Math.round(parseFloat(((overtime ? timeLeft : Math.max(0, timeLeft)) / 1000).toFixed(clampedPrecision)) * 1000);\n var seconds = Math.abs(total) / 1000;\n return {\n total: total,\n days: Math.floor(seconds / (3600 * 24)),\n hours: Math.floor(seconds / 3600 % 24),\n minutes: Math.floor(seconds / 60 % 60),\n seconds: Math.floor(seconds % 60),\n milliseconds: Number((seconds % 1 * 1000).toFixed()),\n completed: total <= 0\n };\n}\nfunction formatTimeDelta(timeDelta, options) {\n var days = timeDelta.days,\n hours = timeDelta.hours,\n minutes = timeDelta.minutes,\n seconds = timeDelta.seconds;\n\n var _Object$assign = Object.assign(Object.assign({}, timeDeltaFormatOptionsDefaults), options),\n daysInHours = _Object$assign.daysInHours,\n zeroPadTime = _Object$assign.zeroPadTime,\n _Object$assign$zeroPa = _Object$assign.zeroPadDays,\n zeroPadDays = _Object$assign$zeroPa === void 0 ? zeroPadTime : _Object$assign$zeroPa;\n\n var zeroPadTimeLength = Math.min(2, zeroPadTime);\n var formattedHours = daysInHours ? zeroPad(hours + days * 24, zeroPadTime) : zeroPad(hours, zeroPadTimeLength);\n return {\n days: daysInHours ? '' : zeroPad(days, zeroPadDays),\n hours: formattedHours,\n minutes: zeroPad(minutes, zeroPadTimeLength),\n seconds: zeroPad(seconds, zeroPadTimeLength)\n };\n}\n\nvar Countdown = function (_React$Component) {\n _inherits(Countdown, _React$Component);\n\n var _super = _createSuper(Countdown);\n\n function Countdown() {\n var _this;\n\n _classCallCheck(this, Countdown);\n\n _this = _super.apply(this, arguments);\n _this.state = {\n count: _this.props.count || 3\n };\n\n _this.startCountdown = function () {\n _this.interval = window.setInterval(function () {\n var count = _this.state.count - 1;\n\n if (count === 0) {\n _this.stopCountdown();\n\n _this.props.onComplete && _this.props.onComplete();\n } else {\n _this.setState(function (prevState) {\n return {\n count: prevState.count - 1\n };\n });\n }\n }, 1000);\n };\n\n _this.stopCountdown = function () {\n clearInterval(_this.interval);\n };\n\n _this.addTime = function (seconds) {\n _this.stopCountdown();\n\n _this.setState(function (prevState) {\n return {\n count: prevState.count + seconds\n };\n }, _this.startCountdown);\n };\n\n return _this;\n }\n\n _createClass(Countdown, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.startCountdown();\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n clearInterval(this.interval);\n }\n }, {\n key: \"render\",\n value: function render() {\n return this.props.children ? cloneElement(this.props.children, {\n count: this.state.count\n }) : null;\n }\n }]);\n\n return Countdown;\n}(Component);\nCountdown.propTypes = {\n count: number,\n children: element,\n onComplete: func\n};\n\nvar Countdown$1 = function (_React$Component) {\n _inherits(Countdown$1, _React$Component);\n\n var _super = _createSuper(Countdown$1);\n\n function Countdown$1(props) {\n var _this;\n\n _classCallCheck(this, Countdown$1);\n\n _this = _super.call(this, props);\n _this.mounted = false;\n _this.initialTimestamp = _this.calcOffsetStartTimestamp();\n _this.offsetStartTimestamp = _this.props.autoStart ? 0 : _this.initialTimestamp;\n _this.offsetTime = 0;\n _this.legacyMode = false;\n _this.legacyCountdownRef = createRef();\n\n _this.tick = function () {\n var timeDelta = _this.calcTimeDelta();\n\n var callback = timeDelta.completed && !_this.props.overtime ? undefined : _this.props.onTick;\n\n _this.setTimeDeltaState(timeDelta, undefined, callback);\n };\n\n _this.start = function () {\n if (_this.isStarted()) return;\n var prevOffsetStartTimestamp = _this.offsetStartTimestamp;\n _this.offsetStartTimestamp = 0;\n _this.offsetTime += prevOffsetStartTimestamp ? _this.calcOffsetStartTimestamp() - prevOffsetStartTimestamp : 0;\n\n var timeDelta = _this.calcTimeDelta();\n\n _this.setTimeDeltaState(timeDelta, \"STARTED\", _this.props.onStart);\n\n if (!_this.props.controlled && (!timeDelta.completed || _this.props.overtime)) {\n _this.clearTimer();\n\n _this.interval = window.setInterval(_this.tick, _this.props.intervalDelay);\n }\n };\n\n _this.pause = function () {\n if (_this.isPaused()) return;\n\n _this.clearTimer();\n\n _this.offsetStartTimestamp = _this.calcOffsetStartTimestamp();\n\n _this.setTimeDeltaState(_this.state.timeDelta, \"PAUSED\", _this.props.onPause);\n };\n\n _this.stop = function () {\n if (_this.isStopped()) return;\n\n _this.clearTimer();\n\n _this.offsetStartTimestamp = _this.calcOffsetStartTimestamp();\n _this.offsetTime = _this.offsetStartTimestamp - _this.initialTimestamp;\n\n _this.setTimeDeltaState(_this.calcTimeDelta(), \"STOPPED\", _this.props.onStop);\n };\n\n _this.isStarted = function () {\n return _this.isStatus(\"STARTED\");\n };\n\n _this.isPaused = function () {\n return _this.isStatus(\"PAUSED\");\n };\n\n _this.isStopped = function () {\n return _this.isStatus(\"STOPPED\");\n };\n\n _this.isCompleted = function () {\n return _this.isStatus(\"COMPLETED\");\n };\n\n _this.handleOnComplete = function (timeDelta) {\n if (_this.props.onComplete) _this.props.onComplete(timeDelta);\n };\n\n if (props.date) {\n var timeDelta = _this.calcTimeDelta();\n\n _this.state = {\n timeDelta: timeDelta,\n status: timeDelta.completed ? \"COMPLETED\" : \"STOPPED\"\n };\n } else {\n _this.legacyMode = true;\n }\n\n return _this;\n }\n\n _createClass(Countdown$1, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.legacyMode) {\n return;\n }\n\n this.mounted = true;\n if (this.props.onMount) this.props.onMount(this.calcTimeDelta());\n if (this.props.autoStart) this.start();\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n if (this.legacyMode) {\n return;\n }\n\n if (this.props.date !== prevProps.date) {\n this.initialTimestamp = this.calcOffsetStartTimestamp();\n this.offsetStartTimestamp = this.initialTimestamp;\n this.offsetTime = 0;\n this.setTimeDeltaState(this.calcTimeDelta());\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.legacyMode) {\n return;\n }\n\n this.mounted = false;\n this.clearTimer();\n }\n }, {\n key: \"calcTimeDelta\",\n value: function calcTimeDelta$1() {\n var _this$props = this.props,\n date = _this$props.date,\n now = _this$props.now,\n precision = _this$props.precision,\n controlled = _this$props.controlled,\n overtime = _this$props.overtime;\n return calcTimeDelta(date, {\n now: now,\n precision: precision,\n controlled: controlled,\n offsetTime: this.offsetTime,\n overtime: overtime\n });\n }\n }, {\n key: \"calcOffsetStartTimestamp\",\n value: function calcOffsetStartTimestamp() {\n return Date.now();\n }\n }, {\n key: \"addTime\",\n value: function addTime(seconds) {\n this.legacyCountdownRef.current.addTime(seconds);\n }\n }, {\n key: \"clearTimer\",\n value: function clearTimer() {\n window.clearInterval(this.interval);\n }\n }, {\n key: \"isStatus\",\n value: function isStatus(status) {\n return this.state.status === status;\n }\n }, {\n key: \"setTimeDeltaState\",\n value: function setTimeDeltaState(timeDelta, status, callback) {\n var _this2 = this;\n\n if (!this.mounted) return;\n var completedCallback;\n\n if (!this.state.timeDelta.completed && timeDelta.completed) {\n if (!this.props.overtime) this.clearTimer();\n completedCallback = this.handleOnComplete;\n }\n\n var onDone = function onDone() {\n if (callback) callback(_this2.state.timeDelta);\n if (completedCallback) completedCallback(_this2.state.timeDelta);\n };\n\n return this.setState(function (prevState) {\n var newStatus = status || prevState.status;\n\n if (timeDelta.completed && !_this2.props.overtime) {\n newStatus = \"COMPLETED\";\n } else if (!status && newStatus === \"COMPLETED\") {\n newStatus = \"STOPPED\";\n }\n\n return {\n timeDelta: timeDelta,\n status: newStatus\n };\n }, onDone);\n }\n }, {\n key: \"getApi\",\n value: function getApi() {\n return this.api = this.api || {\n start: this.start,\n pause: this.pause,\n stop: this.stop,\n isStarted: this.isStarted,\n isPaused: this.isPaused,\n isStopped: this.isStopped,\n isCompleted: this.isCompleted\n };\n }\n }, {\n key: \"getRenderProps\",\n value: function getRenderProps() {\n var _this$props2 = this.props,\n daysInHours = _this$props2.daysInHours,\n zeroPadTime = _this$props2.zeroPadTime,\n zeroPadDays = _this$props2.zeroPadDays;\n var timeDelta = this.state.timeDelta;\n return Object.assign(Object.assign({}, timeDelta), {\n api: this.getApi(),\n props: this.props,\n formatted: formatTimeDelta(timeDelta, {\n daysInHours: daysInHours,\n zeroPadTime: zeroPadTime,\n zeroPadDays: zeroPadDays\n })\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n if (this.legacyMode) {\n var _this$props3 = this.props,\n count = _this$props3.count,\n _children = _this$props3.children,\n onComplete = _this$props3.onComplete;\n return createElement(Countdown, {\n ref: this.legacyCountdownRef,\n count: count,\n onComplete: onComplete\n }, _children);\n }\n\n var _this$props4 = this.props,\n className = _this$props4.className,\n overtime = _this$props4.overtime,\n children = _this$props4.children,\n renderer = _this$props4.renderer;\n var renderProps = this.getRenderProps();\n\n if (renderer) {\n return renderer(renderProps);\n }\n\n if (children && this.state.timeDelta.completed && !overtime) {\n return cloneElement(children, {\n countdown: renderProps\n });\n }\n\n var _renderProps$formatte = renderProps.formatted,\n days = _renderProps$formatte.days,\n hours = _renderProps$formatte.hours,\n minutes = _renderProps$formatte.minutes,\n seconds = _renderProps$formatte.seconds;\n return createElement(\"span\", {\n className: className\n }, renderProps.total < 0 ? '-' : '', days, days ? ':' : '', hours, \":\", minutes, \":\", seconds);\n }\n }]);\n\n return Countdown$1;\n}(Component);\nCountdown$1.defaultProps = Object.assign(Object.assign({}, timeDeltaFormatOptionsDefaults), {\n controlled: false,\n intervalDelay: 1000,\n precision: 0,\n autoStart: true\n});\nCountdown$1.propTypes = {\n date: oneOfType([instanceOf(Date), string, number]),\n daysInHours: bool,\n zeroPadTime: number,\n zeroPadDays: number,\n controlled: bool,\n intervalDelay: number,\n precision: number,\n autoStart: bool,\n overtime: bool,\n className: string,\n children: element,\n renderer: func,\n now: func,\n onMount: func,\n onStart: func,\n onPause: func,\n onStop: func,\n onTick: func,\n onComplete: func\n};\n\nexport default Countdown$1;\nexport { calcTimeDelta, formatTimeDelta, zeroPad };\n","import { UAParser } from 'ua-parser-js'\n\nimport { MAX_CHALLENGES } from '../constants/settings'\nimport { GAME_TITLE } from '../constants/strings'\nimport { GAME_URL } from '../constants/strings'\nimport { getGuessStatuses } from './statuses'\nimport { solutionIndex, unicodeSplit } from './words'\n\nconst webShareApiDeviceTypes: string[] = ['mobile', 'smarttv', 'wearable']\nconst parser = new UAParser()\nconst browser = parser.getBrowser()\nconst device = parser.getDevice()\n\nexport const shareStatus = (\n solution: string,\n guesses: string[],\n lost: boolean,\n isHardMode: boolean,\n isDarkMode: boolean,\n isHighContrastMode: boolean,\n handleShareToClipboard: () => void,\n handleShareFailure: () => void\n) => {\n const textToShare =\n `${GAME_TITLE} ${solutionIndex} ${\n lost ? 'X' : guesses.length\n }/${MAX_CHALLENGES} ${isHardMode ? '*' : ''} ${GAME_URL}\\n\\n` +\n generateEmojiGrid(\n solution,\n guesses,\n getEmojiTiles(isDarkMode, isHighContrastMode)\n )\n \n const shareData = { text: textToShare }\n\n let shareSuccess = false\n\n try {\n if (attemptShare(shareData)) {\n navigator.share(shareData)\n shareSuccess = true\n }\n } catch (error) {\n shareSuccess = false\n }\n\n try {\n if (!shareSuccess) {\n if (navigator.clipboard) {\n navigator.clipboard\n .writeText(textToShare)\n .then(handleShareToClipboard)\n .catch(handleShareFailure)\n } else {\n handleShareFailure()\n }\n }\n } catch (error) {\n handleShareFailure()\n }\n}\n\nexport const generateEmojiGrid = (\n solution: string,\n guesses: string[],\n tiles: string[]\n) => {\n return guesses\n .map((guess) => {\n const status = getGuessStatuses(solution, guess)\n const splitGuess = unicodeSplit(guess)\n\n return splitGuess\n .map((_, i) => {\n switch (status[i]) {\n case 'correct':\n return tiles[0]\n case 'present':\n return tiles[1]\n default:\n return tiles[2]\n }\n })\n .join('')\n })\n .join('\\n')\n}\n\nconst attemptShare = (shareData: object) => {\n return (\n // Deliberately exclude Firefox Mobile, because its Web Share API isn't working correctly\n browser.name?.toUpperCase().indexOf('FIREFOX') === -1 &&\n webShareApiDeviceTypes.indexOf(device.type ?? '') !== -1 &&\n navigator.canShare &&\n navigator.canShare(shareData) &&\n navigator.share\n )\n}\n\nconst getEmojiTiles = (isDarkMode: boolean, isHighContrastMode: boolean) => {\n let tiles: string[] = []\n tiles.push(isHighContrastMode ? '🟧' : '🟩')\n tiles.push(isHighContrastMode ? '🟦' : '🟨')\n tiles.push(isDarkMode ? '⬛' : '⬜')\n return tiles\n}\n","import classNames from 'classnames'\n\ntype Props = {\n index: number\n size: number\n label: string\n isCurrentDayStatRow: boolean\n}\n\nexport const Progress = ({\n index,\n size,\n label,\n isCurrentDayStatRow,\n}: Props) => {\n const currentRowClass = classNames(\n 'text-xs font-medium text-blue-100 text-center p-0.5',\n { 'bg-blue-600': isCurrentDayStatRow, 'bg-gray-600': !isCurrentDayStatRow }\n )\n return (\n
\n
{index + 1}
\n
\n
\n {label}\n
\n
\n
\n )\n}\n","import { GameStats } from '../../lib/localStorage'\nimport { Progress } from './Progress'\n\ntype Props = {\n gameStats: GameStats\n isLatestGame: boolean\n isGameWon: boolean\n numberOfGuessesMade: number\n}\n\nconst isCurrentDayStatRow = (\n isLatestGame: boolean,\n isGameWon: boolean,\n numberOfGuessesMade: number,\n i: number\n) => {\n return isLatestGame && isGameWon && numberOfGuessesMade === i + 1\n}\n\nexport const Histogram = ({\n gameStats,\n isLatestGame,\n isGameWon,\n numberOfGuessesMade,\n}: Props) => {\n const winDistribution = gameStats.winDistribution\n const maxValue = Math.max(...winDistribution, 1)\n\n return (\n
\n {winDistribution.map((value, i) => (\n \n ))}\n
\n )\n}\n","import * as React from \"react\";\n\nfunction LogoutIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M17 16l4-4m0 0l-4-4m4 4H7m6 4v1a3 3 0 01-3 3H6a3 3 0 01-3-3V7a3 3 0 013-3h4a3 3 0 013 3v1\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(LogoutIcon);\nexport default ForwardRef;","import { LogoutIcon } from '@heroicons/react/outline'\n\nimport {\n MIGRATE_BUTTON_TEXT,\n MIGRATE_DESCRIPTION_TEXT,\n} from '../../constants/strings'\n\ntype Props = {\n handleMigrateStatsButton: () => void\n}\n\nexport const MigrationIntro = ({ handleMigrateStatsButton }: Props) => {\n return (\n
\n
{MIGRATE_DESCRIPTION_TEXT}
\n \n \n {MIGRATE_BUTTON_TEXT}\n \n
\n )\n}\n","import {\n BEST_STREAK_TEXT,\n CURRENT_STREAK_TEXT,\n SUCCESS_RATE_TEXT,\n TOTAL_TRIES_TEXT,\n} from '../../constants/strings'\nimport { GameStats } from '../../lib/localStorage'\n\ntype Props = {\n gameStats: GameStats\n}\n\nconst StatItem = ({\n label,\n value,\n}: {\n label: string\n value: string | number\n}) => {\n return (\n
\n
{value}
\n
{label}
\n
\n )\n}\n\nexport const StatBar = ({ gameStats }: Props) => {\n return (\n
\n \n \n \n \n
\n )\n}\n","import { ClockIcon, ShareIcon } from '@heroicons/react/outline'\nimport { format } from 'date-fns'\nimport Countdown from 'react-countdown'\n\nimport {\n DATE_LOCALE,\n ENABLE_ARCHIVED_GAMES,\n ENABLE_MIGRATE_STATS,\n} from '../../constants/settings'\nimport {\n ARCHIVE_GAMEDATE_TEXT,\n GUESS_DISTRIBUTION_TEXT,\n NEW_WORD_TEXT,\n SHARE_TEXT,\n STATISTICS_TITLE,\n} from '../../constants/strings'\nimport { GameStats } from '../../lib/localStorage'\nimport { shareStatus } from '../../lib/share'\nimport { solutionGameDate, tomorrow } from '../../lib/words'\nimport { Histogram } from '../stats/Histogram'\nimport { MigrationIntro } from '../stats/MigrationIntro'\nimport { StatBar } from '../stats/StatBar'\nimport { BaseModal } from './BaseModal'\n\ntype Props = {\n isOpen: boolean\n handleClose: () => void\n solution: string\n guesses: string[]\n gameStats: GameStats\n isLatestGame: boolean\n isGameLost: boolean\n isGameWon: boolean\n handleShareToClipboard: () => void\n handleShareFailure: () => void\n handleMigrateStatsButton: () => void\n isHardMode: boolean\n isDarkMode: boolean\n isHighContrastMode: boolean\n numberOfGuessesMade: number\n}\n\nexport const StatsModal = ({\n isOpen,\n handleClose,\n solution,\n guesses,\n gameStats,\n isLatestGame,\n isGameLost,\n isGameWon,\n handleShareToClipboard,\n handleShareFailure,\n handleMigrateStatsButton,\n isHardMode,\n isDarkMode,\n isHighContrastMode,\n numberOfGuessesMade,\n}: Props) => {\n if (gameStats.totalGames <= 0) {\n return (\n \n \n {ENABLE_MIGRATE_STATS && (\n \n )}\n \n )\n }\n return (\n \n \n

\n {GUESS_DISTRIBUTION_TEXT}\n

\n \n {(isGameLost || isGameWon) && (\n
\n
\n {(!ENABLE_ARCHIVED_GAMES || isLatestGame) && (\n
\n
{NEW_WORD_TEXT}
\n \n
\n )}\n {ENABLE_ARCHIVED_GAMES && !isLatestGame && (\n
\n \n
\n {ARCHIVE_GAMEDATE_TEXT}:\n
\n {format(solutionGameDate, 'd MMMM yyyy', {\n locale: DATE_LOCALE,\n })}\n
\n
\n )}\n
\n
\n {\n shareStatus(\n solution,\n guesses,\n isGameLost,\n isHardMode,\n isDarkMode,\n isHighContrastMode,\n handleShareToClipboard,\n handleShareFailure\n )\n }}\n >\n \n {SHARE_TEXT}\n \n
\n
\n )}\n {ENABLE_MIGRATE_STATS && (\n
\n
\n \n
\n )}\n \n )\n}\n","import * as React from \"react\";\n\nfunction InformationCircleIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M13 16h-1v-4h-1m1-4h.01M21 12a9 9 0 11-18 0 9 9 0 0118 0z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(InformationCircleIcon);\nexport default ForwardRef;","import * as React from \"react\";\n\nfunction CalendarIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(CalendarIcon);\nexport default ForwardRef;","import * as React from \"react\";\n\nfunction ChartBarIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M9 19v-6a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2a2 2 0 002-2zm0 0V9a2 2 0 012-2h2a2 2 0 012 2v10m-6 0a2 2 0 002 2h2a2 2 0 002-2m0 0V5a2 2 0 012-2h2a2 2 0 012 2v14a2 2 0 01-2 2h-2a2 2 0 01-2-2z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(ChartBarIcon);\nexport default ForwardRef;","import * as React from \"react\";\n\nfunction CogIcon(props, svgRef) {\n return /*#__PURE__*/React.createElement(\"svg\", Object.assign({\n xmlns: \"http://www.w3.org/2000/svg\",\n fill: \"none\",\n viewBox: \"0 0 24 24\",\n strokeWidth: 2,\n stroke: \"currentColor\",\n \"aria-hidden\": \"true\",\n ref: svgRef\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M10.325 4.317c.426-1.756 2.924-1.756 3.35 0a1.724 1.724 0 002.573 1.066c1.543-.94 3.31.826 2.37 2.37a1.724 1.724 0 001.065 2.572c1.756.426 1.756 2.924 0 3.35a1.724 1.724 0 00-1.066 2.573c.94 1.543-.826 3.31-2.37 2.37a1.724 1.724 0 00-2.572 1.065c-.426 1.756-2.924 1.756-3.35 0a1.724 1.724 0 00-2.573-1.066c-1.543.94-3.31-.826-2.37-2.37a1.724 1.724 0 00-1.065-2.572c-1.756-.426-1.756-2.924 0-3.35a1.724 1.724 0 001.066-2.573c-.94-1.543.826-3.31 2.37-2.37.996.608 2.296.07 2.572-1.065z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n d: \"M15 12a3 3 0 11-6 0 3 3 0 016 0z\"\n }));\n}\n\nconst ForwardRef = React.forwardRef(CogIcon);\nexport default ForwardRef;","import {\n CalendarIcon,\n ChartBarIcon,\n CogIcon,\n InformationCircleIcon,\n} from '@heroicons/react/outline'\n\nimport { ENABLE_ARCHIVED_GAMES } from '../../constants/settings'\nimport { GAME_TITLE } from '../../constants/strings'\n\ntype Props = {\n setIsInfoModalOpen: (value: boolean) => void\n setIsStatsModalOpen: (value: boolean) => void\n setIsDatePickerModalOpen: (value: boolean) => void\n setIsSettingsModalOpen: (value: boolean) => void\n}\n\nexport const Navbar = ({\n setIsInfoModalOpen,\n setIsStatsModalOpen,\n setIsDatePickerModalOpen,\n setIsSettingsModalOpen,\n}: Props) => {\n return (\n
\n
\n
\n setIsInfoModalOpen(true)}\n />\n {ENABLE_ARCHIVED_GAMES && (\n setIsDatePickerModalOpen(true)}\n />\n )}\n
\n

{GAME_TITLE}

\n

Mississippi's Word Game

\n
\n setIsStatsModalOpen(true)}\n />\n setIsSettingsModalOpen(true)}\n />\n
\n\n
\n
\n
\n )\n}\n","import { UAParser } from 'ua-parser-js'\n\nconst inAppBrowserNames = [\n 'Facebook',\n 'Instagram',\n 'Line',\n 'Messenger',\n 'Puffin',\n 'Twitter',\n 'WeChat',\n]\n\nconst parser = new UAParser()\nconst browser = parser.getBrowser()\n\nexport const isInAppBrowser = () => {\n return inAppBrowserNames.indexOf(browser.name ?? '') > -1\n}\n","import './App.css'\n\nimport { ClockIcon } from '@heroicons/react/outline'\nimport { format } from 'date-fns'\nimport { default as GraphemeSplitter } from 'grapheme-splitter'\nimport { useEffect, useState } from 'react'\nimport Div100vh from 'react-div-100vh'\n\nimport { AlertContainer } from './components/alerts/AlertContainer'\nimport { Grid } from './components/grid/Grid'\nimport { Keyboard } from './components/keyboard/Keyboard'\nimport { DatePickerModal } from './components/modals/DatePickerModal'\nimport { InfoModal } from './components/modals/InfoModal'\nimport { MigrateStatsModal } from './components/modals/MigrateStatsModal'\nimport { SettingsModal } from './components/modals/SettingsModal'\nimport { StatsModal } from './components/modals/StatsModal'\nimport { Navbar } from './components/navbar/Navbar'\nimport {\n DATE_LOCALE,\n DISCOURAGE_INAPP_BROWSERS,\n LONG_ALERT_TIME_MS,\n MAX_CHALLENGES,\n REVEAL_TIME_MS,\n WELCOME_INFO_MODAL_MS,\n} from './constants/settings'\nimport {\n CORRECT_WORD_MESSAGE,\n DISCOURAGE_INAPP_BROWSER_TEXT,\n GAME_COPIED_MESSAGE,\n HARD_MODE_ALERT_MESSAGE,\n NOT_ENOUGH_LETTERS_MESSAGE,\n SHARE_FAILURE_TEXT,\n WIN_MESSAGES,\n WORD_NOT_FOUND_MESSAGE,\n} from './constants/strings'\nimport { useAlert } from './context/AlertContext'\nimport { isInAppBrowser } from './lib/browser'\nimport {\n getStoredIsHighContrastMode,\n loadGameStateFromLocalStorage,\n saveGameStateToLocalStorage,\n setStoredIsHighContrastMode,\n} from './lib/localStorage'\nimport { addStatsForCompletedGame, loadStats } from './lib/stats'\nimport {\n findFirstUnusedReveal,\n getGameDate,\n getIsLatestGame,\n isWinningWord,\n isWordInWordList,\n setGameDate,\n solution,\n solutionGameDate,\n unicodeLength,\n} from './lib/words'\n\nfunction App() {\n const isLatestGame = getIsLatestGame()\n const gameDate = getGameDate()\n const prefersDarkMode = window.matchMedia(\n '(prefers-color-scheme: dark)'\n ).matches\n\n const { showError: showErrorAlert, showSuccess: showSuccessAlert } =\n useAlert()\n const [currentGuess, setCurrentGuess] = useState('')\n const [isGameWon, setIsGameWon] = useState(false)\n const [isInfoModalOpen, setIsInfoModalOpen] = useState(false)\n const [isStatsModalOpen, setIsStatsModalOpen] = useState(false)\n const [isDatePickerModalOpen, setIsDatePickerModalOpen] = useState(false)\n const [isMigrateStatsModalOpen, setIsMigrateStatsModalOpen] = useState(false)\n const [isSettingsModalOpen, setIsSettingsModalOpen] = useState(false)\n const [currentRowClass, setCurrentRowClass] = useState('')\n const [isGameLost, setIsGameLost] = useState(false)\n const [isDarkMode, setIsDarkMode] = useState(\n localStorage.getItem('theme')\n ? localStorage.getItem('theme') === 'dark'\n : prefersDarkMode\n ? true\n : false\n )\n const [isHighContrastMode, setIsHighContrastMode] = useState(\n getStoredIsHighContrastMode()\n )\n const [isRevealing, setIsRevealing] = useState(false)\n const [guesses, setGuesses] = useState(() => {\n const loaded = loadGameStateFromLocalStorage(isLatestGame)\n if (loaded?.solution !== solution) {\n return []\n }\n const gameWasWon = loaded.guesses.includes(solution)\n if (gameWasWon) {\n setIsGameWon(true)\n }\n if (loaded.guesses.length === MAX_CHALLENGES && !gameWasWon) {\n setIsGameLost(true)\n showErrorAlert(CORRECT_WORD_MESSAGE(solution), {\n persist: true,\n })\n }\n return loaded.guesses\n })\n\n const [stats, setStats] = useState(() => loadStats())\n\n const [isHardMode, setIsHardMode] = useState(\n localStorage.getItem('gameMode')\n ? localStorage.getItem('gameMode') === 'hard'\n : false\n )\n\n useEffect(() => {\n // if no game state on load,\n // show the user the how-to info modal\n if (!loadGameStateFromLocalStorage(true)) {\n setTimeout(() => {\n setIsInfoModalOpen(true)\n }, WELCOME_INFO_MODAL_MS)\n }\n })\n\n useEffect(() => {\n DISCOURAGE_INAPP_BROWSERS &&\n isInAppBrowser() &&\n showErrorAlert(DISCOURAGE_INAPP_BROWSER_TEXT, {\n persist: false,\n durationMs: 7000,\n })\n }, [showErrorAlert])\n\n useEffect(() => {\n if (isDarkMode) {\n document.documentElement.classList.add('dark')\n } else {\n document.documentElement.classList.remove('dark')\n }\n\n if (isHighContrastMode) {\n document.documentElement.classList.add('high-contrast')\n } else {\n document.documentElement.classList.remove('high-contrast')\n }\n }, [isDarkMode, isHighContrastMode])\n\n const handleDarkMode = (isDark: boolean) => {\n setIsDarkMode(isDark)\n localStorage.setItem('theme', isDark ? 'dark' : 'light')\n }\n\n const handleHardMode = (isHard: boolean) => {\n if (guesses.length === 0 || localStorage.getItem('gameMode') === 'hard') {\n setIsHardMode(isHard)\n localStorage.setItem('gameMode', isHard ? 'hard' : 'normal')\n } else {\n showErrorAlert(HARD_MODE_ALERT_MESSAGE)\n }\n }\n\n const handleHighContrastMode = (isHighContrast: boolean) => {\n setIsHighContrastMode(isHighContrast)\n setStoredIsHighContrastMode(isHighContrast)\n }\n\n const clearCurrentRowClass = () => {\n setCurrentRowClass('')\n }\n\n useEffect(() => {\n saveGameStateToLocalStorage(getIsLatestGame(), { guesses, solution })\n }, [guesses])\n\n useEffect(() => {\n if (isGameWon) {\n const winMessage =\n WIN_MESSAGES[Math.floor(Math.random() * WIN_MESSAGES.length)]\n const delayMs = REVEAL_TIME_MS * solution.length\n\n showSuccessAlert(winMessage, {\n delayMs,\n onClose: () => setIsStatsModalOpen(true),\n })\n }\n\n if (isGameLost) {\n setTimeout(\n () => {\n setIsStatsModalOpen(true)\n },\n (solution.length + 1) * REVEAL_TIME_MS\n )\n }\n }, [isGameWon, isGameLost, showSuccessAlert])\n\n const onChar = (value: string) => {\n if (\n unicodeLength(`${currentGuess}${value}`) <= solution.length &&\n guesses.length < MAX_CHALLENGES &&\n !isGameWon\n ) {\n setCurrentGuess(`${currentGuess}${value}`)\n }\n }\n\n const onDelete = () => {\n setCurrentGuess(\n new GraphemeSplitter().splitGraphemes(currentGuess).slice(0, -1).join('')\n )\n }\n\n const onEnter = () => {\n if (isGameWon || isGameLost) {\n return\n }\n\n if (!(unicodeLength(currentGuess) === solution.length)) {\n setCurrentRowClass('jiggle')\n return showErrorAlert(NOT_ENOUGH_LETTERS_MESSAGE, {\n onClose: clearCurrentRowClass,\n })\n }\n\n if (!isWordInWordList(currentGuess)) {\n setCurrentRowClass('jiggle')\n return showErrorAlert(WORD_NOT_FOUND_MESSAGE, {\n onClose: clearCurrentRowClass,\n })\n }\n\n // enforce hard mode - all guesses must contain all previously revealed letters\n if (isHardMode) {\n const firstMissingReveal = findFirstUnusedReveal(currentGuess, guesses)\n if (firstMissingReveal) {\n setCurrentRowClass('jiggle')\n return showErrorAlert(firstMissingReveal, {\n onClose: clearCurrentRowClass,\n })\n }\n }\n\n setIsRevealing(true)\n // turn this back off after all\n // chars have been revealed\n setTimeout(() => {\n setIsRevealing(false)\n }, REVEAL_TIME_MS * solution.length)\n\n const winningWord = isWinningWord(currentGuess)\n\n if (\n unicodeLength(currentGuess) === solution.length &&\n guesses.length < MAX_CHALLENGES &&\n !isGameWon\n ) {\n setGuesses([...guesses, currentGuess])\n setCurrentGuess('')\n\n if (winningWord) {\n if (isLatestGame) {\n setStats(addStatsForCompletedGame(stats, guesses.length))\n }\n return setIsGameWon(true)\n }\n\n if (guesses.length === MAX_CHALLENGES - 1) {\n if (isLatestGame) {\n setStats(addStatsForCompletedGame(stats, guesses.length + 1))\n }\n setIsGameLost(true)\n showErrorAlert(CORRECT_WORD_MESSAGE(solution), {\n persist: true,\n delayMs: REVEAL_TIME_MS * solution.length + 1,\n })\n }\n }\n }\n\n return (\n \n
\n \n\n {!isLatestGame && (\n
\n \n

\n {format(gameDate, 'd MMMM yyyy', { locale: DATE_LOCALE })}\n

\n
\n )}\n\n
\n
\n \n
\n \n setIsInfoModalOpen(false)}\n />\n setIsStatsModalOpen(false)}\n solution={solution}\n guesses={guesses}\n gameStats={stats}\n isLatestGame={isLatestGame}\n isGameLost={isGameLost}\n isGameWon={isGameWon}\n handleShareToClipboard={() => showSuccessAlert(GAME_COPIED_MESSAGE)}\n handleShareFailure={() =>\n showErrorAlert(SHARE_FAILURE_TEXT, {\n durationMs: LONG_ALERT_TIME_MS,\n })\n }\n handleMigrateStatsButton={() => {\n setIsStatsModalOpen(false)\n setIsMigrateStatsModalOpen(true)\n }}\n isHardMode={isHardMode}\n isDarkMode={isDarkMode}\n isHighContrastMode={isHighContrastMode}\n numberOfGuessesMade={guesses.length}\n />\n {\n setIsDatePickerModalOpen(false)\n setGameDate(d)\n }}\n handleClose={() => setIsDatePickerModalOpen(false)}\n />\n setIsMigrateStatsModalOpen(false)}\n />\n setIsSettingsModalOpen(false)}\n isHardMode={isHardMode}\n handleHardMode={handleHardMode}\n isDarkMode={isDarkMode}\n handleDarkMode={handleDarkMode}\n isHighContrastMode={isHighContrastMode}\n handleHighContrastMode={handleHighContrastMode}\n />\n \n
\n
\n
\n )\n}\n\nexport default App\n","import { ReportHandler } from 'web-vitals'\n\nconst reportWebVitals = (onPerfEntry?: ReportHandler) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry)\n getFID(onPerfEntry)\n getFCP(onPerfEntry)\n getLCP(onPerfEntry)\n getTTFB(onPerfEntry)\n })\n }\n}\n\nexport default reportWebVitals\n","import './index.css'\n\nimport React from 'react'\nimport ReactDOM from 'react-dom'\n\nimport App from './App'\nimport { AlertProvider } from './context/AlertContext'\nimport reportWebVitals from './reportWebVitals'\n\nReactDOM.render(\n \n \n \n \n ,\n document.getElementById('root')\n)\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals()\n"],"names":["module","exports","arr","len","length","i","arr2","Array","__esModule","isArray","arrayLikeToArray","unsupportedIterableToArray","o","allowArrayLike","it","Symbol","iterator","F","s","n","done","value","e","_e","f","TypeError","err","normalCompletion","didErr","call","step","next","_e2","obj","key","Object","defineProperty","enumerable","configurable","writable","iter","from","_i","_s","_arr","_n","_d","push","arrayWithHoles","iterableToArrayLimit","nonIterableRest","arrayWithoutHoles","iterableToArray","nonIterableSpread","minLen","prototype","toString","slice","constructor","name","test","hasOwn","hasOwnProperty","classNames","classes","arguments","arg","argType","inner","apply","join","default","addLeadingZeros","number","targetLength","sign","output","Math","abs","defaultLocale","defaultOptions","getDefaultOptions","dateLongFormatter","pattern","formatLong","date","width","timeLongFormatter","time","longFormatters","p","P","dateTimeFormat","matchResult","match","datePattern","timePattern","dateTime","replace","getTimezoneOffsetInMilliseconds","utcDate","Date","UTC","getFullYear","getMonth","getDate","getHours","getMinutes","getSeconds","getMilliseconds","setUTCFullYear","getTime","startOfUTCISOWeekYear","dirtyDate","requiredArgs","year","getUTCISOWeekYear","fourthOfJanuary","setUTCHours","startOfUTCISOWeek","MILLISECONDS_IN_WEEK","getUTCISOWeek","toDate","diff","round","getUTCFullYear","fourthOfJanuaryOfNextYear","startOfNextYear","fourthOfJanuaryOfThisYear","startOfThisYear","startOfUTCWeekYear","options","_ref","_ref2","_ref3","_options$firstWeekCon","_options$locale","_options$locale$optio","_defaultOptions$local","_defaultOptions$local2","firstWeekContainsDate","toInteger","locale","getUTCWeekYear","firstWeek","startOfUTCWeek","getUTCWeek","RangeError","firstWeekOfNextYear","firstWeekOfThisYear","protectedDayOfYearTokens","protectedWeekYearTokens","isProtectedDayOfYearToken","token","indexOf","isProtectedWeekYearToken","throwProtectedError","format","input","concat","required","args","weekStartsOn","day","getUTCDay","setUTCDate","getUTCDate","_options$weekStartsOn","dirtyNumber","NaN","Number","isNaN","ceil","floor","addDays","dirtyAmount","amount","setDate","MILLISECONDS_IN_HOUR","addHours","addMilliseconds","timestamp","addMinutes","addMonths","dayOfMonth","endOfDesiredMonth","setMonth","daysInMonth","setFullYear","addWeeks","days","addYears","pow","millisecondsInMinute","millisecondsInHour","millisecondsInSecond","MILLISECONDS_IN_DAY","differenceInCalendarDays","dirtyDateLeft","dirtyDateRight","startOfDayLeft","startOfDay","startOfDayRight","timestampLeft","timestampRight","differenceInCalendarMonths","dateLeft","dateRight","yearDiff","monthDiff","differenceInCalendarWeeks","startOfWeekLeft","startOfWeek","startOfWeekRight","differenceInCalendarYears","endOfDay","setHours","endOfMonth","month","endOfWeek","getDay","y","signedYear","M","getUTCMonth","String","d","a","dayPeriodEnumValue","getUTCHours","toUpperCase","h","H","m","getUTCMinutes","getUTCSeconds","S","numberOfDigits","milliseconds","getUTCMilliseconds","fractionalSeconds","dayPeriodEnum","formatters","G","localize","era","ordinalNumber","unit","lightFormatters","Y","signedWeekYear","weekYear","twoDigitYear","R","isoWeekYear","u","Q","quarter","context","q","L","w","week","I","isoWeek","D","dayOfYear","setUTCMonth","startOfYearTimestamp","difference","getUTCDayOfYear","E","dayOfWeek","localDayOfWeek","c","isoDayOfWeek","dayPeriod","toLowerCase","b","hours","B","K","k","X","_localize","timezoneOffset","_originalDate","getTimezoneOffset","formatTimezoneWithOptionalMinutes","formatTimezone","x","O","formatTimezoneShort","z","t","originalDate","T","offset","dirtyDelimiter","absOffset","minutes","delimiter","formattingTokensRegExp","longFormattingTokensRegExp","escapedStringRegExp","doubleQuoteRegExp","unescapedLatinCharacterRegExp","dirtyFormatStr","_ref4","_options$locale2","_options$locale2$opti","_ref5","_ref6","_ref7","_options$locale3","_options$locale3$opti","_defaultOptions$local3","_defaultOptions$local4","formatStr","isValid","subMilliseconds","formatterOptions","result","map","substring","firstCharacter","longFormatter","cleanEscapedString","formatter","useAdditionalWeekYearTokens","useAdditionalDayOfYearTokens","matched","startOfISOWeek","getISOWeekYear","startOfISOWeekYear","getISOWeek","getQuarter","seconds","getYear","isAfter","dirtyDateToCompare","dateToCompare","isBefore","isDate","isEqual","dirtyLeftDate","dirtyRightDate","isSameDay","dateLeftStartOfDay","dateRightStartOfDay","isSameMonth","isSameQuarter","dateLeftStartOfQuarter","startOfQuarter","dateRightStartOfQuarter","isSameYear","isWithinInterval","interval","startTime","start","endTime","end","formatDistanceLocale","lessThanXSeconds","one","other","xSeconds","halfAMinute","lessThanXMinutes","xMinutes","aboutXHours","xHours","xDays","aboutXWeeks","xWeeks","aboutXMonths","xMonths","aboutXYears","xYears","overXYears","almostXYears","count","tokenValue","addSuffix","comparison","buildFormatLongFn","undefined","defaultWidth","formats","full","long","medium","short","formatRelativeLocale","lastWeek","yesterday","today","tomorrow","nextWeek","_date","_baseDate","_options","buildLocalizeFn","dirtyIndex","valuesArray","formattingValues","defaultFormattingWidth","_defaultWidth","_width","values","argumentCallback","rem100","narrow","abbreviated","wide","am","pm","midnight","noon","morning","afternoon","evening","night","buildMatchFn","string","matchPattern","matchPatterns","defaultMatchWidth","matchedString","parsePatterns","defaultParseWidth","findIndex","findKey","valueCallback","rest","object","predicate","array","parsePattern","parseInt","parseResult","any","index","code","formatDistance","formatRelative","max","dirtyDatesArray","datesArray","forEach","currentDate","min","assign","target","property","_assertThisInitialized","self","ReferenceError","_setPrototypeOf","setPrototypeOf","__proto__","_inherits","subClass","superClass","create","_getPrototypeOf","getPrototypeOf","_typeof","_possibleConstructorReturn","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","Super","NewTarget","this","_classCallCheck","instance","Constructor","_defineProperties","props","descriptor","_createClass","protoProps","staticProps","_defineProperty","Setter","_utcDate","ValueSetter","validateValue","setValue","priority","subPriority","flags","DateToSystemTimezoneSetter","timestampIsSet","convertedDate","Parser","dateString","parse","setter","validate","set","_value","EraParser","numericPatterns","timezonePatterns","mapValue","parseFnResult","mapFn","parseNumericPattern","parseTimezonePattern","parseAnyDigitsSigned","parseNDigits","RegExp","parseNDigitsSigned","dayPeriodEnumToHours","normalizeTwoDigitYear","currentYear","isCommonEra","absCurrentYear","rangeEnd","isLeapYearIndex","YearParser","isTwoDigitYear","normalizedTwoDigitYear","LocalWeekYearParser","ISOWeekYearParser","_flags","firstWeekOfYear","ExtendedYearParser","QuarterParser","StandAloneQuarterParser","MonthParser","StandAloneMonthParser","LocalWeekParser","dirtyWeek","setUTCWeek","ISOWeekParser","dirtyISOWeek","setUTCISOWeek","DAYS_IN_MONTH","DAYS_IN_MONTH_LEAP_YEAR","DateParser","isLeapYear","DayOfYearParser","setUTCDay","dirtyDay","currentDay","remainder","dayIndex","DayParser","LocalDayParser","wholeWeekDays","StandAloneLocalDayParser","ISODayParser","setUTCISODay","AMPMParser","AMPMMidnightParser","DayPeriodParser","Hour1to12Parser","isPM","Hour0to23Parser","Hour0To11Parser","Hour1To24Parser","MinuteParser","setUTCMinutes","SecondParser","setUTCSeconds","FractionOfSecondParser","setUTCMilliseconds","ISOTimezoneWithZParser","ISOTimezoneParser","TimestampSecondsParser","TimestampMillisecondsParser","parsers","notWhitespaceRegExp","dirtyDateString","dirtyFormatString","dirtyReferenceDate","formatString","subFnOptions","setters","tokens","usedTokens","_loop","_token","parser","incompatibleTokens","incompatibleToken","find","usedToken","includes","fullToken","run","v","_ret","uniquePrioritySetters","sort","filter","setterArray","parseISO","argument","_options$additionalDi","additionalDigits","dateStrings","splitDateString","parseYearResult","parseYear","parseDate","restDateString","parseTime","timezone","parseTimezone","patterns","dateTimeDelimiter","timeZoneDelimiter","dateRegex","timeRegex","timezoneRegex","timeString","split","substr","exec","regex","captures","century","isWeekDate","parseDateUnit","_year","validateWeekDate","fourthOfJanuaryDay","dayOfISOWeekYear","daysInMonths","validateDate","validateDayOfYearDate","parseTimeUnit","validateTime","parseFloat","timezoneString","_hours","validateTimezone","dirtyHours","setMinutes","dirtyMinutes","getDaysInMonth","monthIndex","lastDayOfMonth","dirtyMonth","dateWithDesiredMonth","setQuarter","dirtyQuarter","oldQuarter","setSeconds","dirtySeconds","setYear","dirtyYear","startOfMonth","currentMonth","startOfYear","cleanDate","subDays","subHours","subMinutes","subMonths","subWeeks","subYears","argStr","console","warn","Error","stack","singleMatcher","multiMatcher","decodeComponents","components","decodeURIComponent","left","right","decode","encodedURI","replaceMap","entries","keys","customDecodeURIComponent","r","ECB","CBC","PKCS5","ONE_AND_ZEROS","LAST_BYTE","NULL","SPACES","STRING","UINT8_ARRAY","g","C","_","A","Uint8Array","charCodeAt","error","subarray","mode","padding","iv","_encryptBlock","l","get","setIv","encode","_encodeECB","_encodeCBC","_decodeECB","_decodeCBC","fromCharCode","_f","_decryptBlock","ret","isArr","val","Extend","Regional_Indicator","Prepend","E_Base","Glue_After_Zwj","E_Base_GAZ","codePointAt","str","idx","hi","low","shouldBreak","mid","all","previous","eModifierIndex","lastIndexOf","every","rIIndex","previousNonExtendIndex","getGraphemeBreakProperty","nextBreak","pos","prev","splitGraphemes","brk","res","iterateGraphemes","bind","countGraphemes","getOwnPropertySymbols","propIsEnumerable","propertyIsEnumerable","toObject","test1","getOwnPropertyNames","test2","test3","letter","shouldUseNative","source","symbols","to","ReactPropTypesSecret","require","emptyFunction","emptyFunctionWithReset","resetWarningCache","shim","propName","componentName","location","propFullName","secret","getShim","isRequired","ReactPropTypes","bigint","bool","func","symbol","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","strictUriEncode","decodeComponent","splitOnFirst","filterObject","encodeFragmentIdentifier","validateArrayFormatSeparator","strict","encodeURIComponent","keysSorter","removeHash","hashStart","extract","queryStart","parseValue","parseNumbers","trim","parseBooleans","query","arrayFormat","arrayFormatSeparator","accumulator","isEncodedArray","newValue","item","arrayValue","parserForArrayFormat","param","reduce","stringify","shouldFilter","skipNull","skipEmptyString","keyValueSep","encoderForArrayFormat","objectCopy","parseUrl","url","url_","hash","parseFragmentIdentifier","fragmentIdentifier","stringifyUrl","queryFromUrl","parsedQueryFromUrl","queryString","getHash","pick","exclude","exclusionFilter","N","W","j","V","U","$","J","Z","ee","te","re","ae","ne","oe","se","ie","pe","le","de","ce","ue","fe","he","me","ye","De","ve","we","ge","ke","be","Se","Ce","Me","Pe","Ee","Ne","xe","Oe","Ye","Ie","Te","Le","Re","Fe","Ae","qe","We","Be","Ke","He","je","Qe","Ve","Ue","$e","ze","Ge","Je","Xe","Ze","et","tt","rt","at","nt","ot","st","pt","lt","dt","ct","getOwnPropertyDescriptor","ut","Dt","getOwnPropertyDescriptors","defineProperties","ft","ht","mt","yt","vt","wt","kt","gt","bt","St","Ct","_t","Mt","Pt","Et","Nt","xt","Ot","Yt","Tt","It","Xt","Jt","Lt","awareOfUnicodeTokens","Rt","dateFormat","Ft","hour","minute","second","At","qt","Wt","Bt","Kt","Ht","jt","Qt","Vt","Ut","$t","zt","Gt","window","globalThis","__localeId__","__localeData__","Zt","er","tr","rr","minDate","maxDate","excludeDates","excludeDateIntervals","includeDates","includeDateIntervals","filterDate","lr","some","ar","nr","or","sr","ir","pr","dr","cr","excludeTimes","includeTimes","filterTime","ur","minTime","maxTime","fr","hr","mr","yr","Dr","vr","wr","Map","gr","kr","br","startPeriod","endPeriod","Sr","Cr","state","yearsList","createElement","className","onClick","onChange","unshift","incrementYears","decrementYears","onCancel","setState","shiftYears","yearDropdownItemNumber","scrollableYearDropdown","dropdownRef","createRef","current","scrollTop","scrollHeight","clientHeight","ref","renderOptions","Component","_r","Mr","dropdownVisible","onSelectChange","renderSelectOptions","style","visibility","toggleDropdown","renderReadView","renderDropdown","adjustDateOnChange","handleYearChange","onSelect","setOpen","dropdownMode","renderScrollMode","renderSelectMode","Pr","monthNames","isSelectedMonth","Er","Nr","useShortMonthInDropdown","xr","Or","monthYearsList","scrollableMonthYearDropdown","Yr","Ir","Tr","isDisabled","onMouseEnter","preventDefault","handleOnKeyDown","disabledKeyboardNavigation","selected","preSelection","highlightDates","startDate","endDate","selectsStart","selectsEnd","selectsRange","selectsDisabledDaysInRange","selectingDate","isInSelectingRange","dayClassName","isExcluded","isSelected","isKeyboardSelected","isRangeStart","isRangeEnd","isInRange","isSelectingRangeStart","isSelectingRangeEnd","isCurrentDay","isWeekend","isAfterMonth","isBeforeMonth","getHighLightedClass","ariaLabelPrefixWhenEnabled","ariaLabelPrefixWhenDisabled","getTabIndex","isInputFocused","document","activeElement","body","inline","shouldFocusDayInline","containerRef","contains","classList","dayEl","focus","preventScroll","monthShowsDuplicateDaysEnd","monthShowsDuplicateDaysStart","renderDayContents","getClassNames","onKeyDown","handleClick","handleMouseEnter","tabIndex","getAriaLabel","role","handleFocusDay","Lr","weekNumber","ariaLabelPrefix","Rr","onDayClick","onDayMouseEnter","onWeekSelect","shouldCloseOnSelect","formatWeekNumber","calendarStartDay","showWeekNumber","handleWeekClick","chooseDayAriaLabelPrefix","disabledDayAriaLabelPrefix","handleDayClick","handleDayMouseEnter","renderDays","Fr","orderInDisplay","onMouseLeave","fixedHeight","weekAriaLabelPrefix","showWeekNumbers","isWeekInMonth","peekNextMonth","setPreSelection","MONTH_REFS","onMonthClick","handleMonthNavigation","monthClassName","isRangeStartMonth","isRangeEndMonth","isCurrentMonth","isSelectedQuarter","isRangeStartQuarter","isRangeEndQuarter","showFullMonthYearPicker","showTwoColumnMonthYearPicker","showFourColumnMonthYearPicker","onMonthKeyDown","getMonthClassNames","onQuarterClick","getQuarterClassNames","showMonthYearPicker","showQuarterYearPicker","handleMouseLeave","renderMonths","renderQuarters","renderWeeks","Ar","height","timeClassName","isSelectedTime","injectTimes","intervals","openToDate","liClasses","centerLi","list","calcCenterPosition","monthRef","header","todayButton","showTimeSelectOnly","timeCaption","renderTimes","onTimeChange","offsetTop","qr","yearItemNumber","YEAR_REFS","requestAnimationFrame","updateFocusOnPaginate","handleYearClick","onYearClick","handleYearNavigation","isCurrentYear","onYearKeyDown","getYearTabIndex","getYearClassNames","Wr","customTimeInput","cloneElement","type","placeholder","timeInputLabel","renderTimeInput","Br","children","showPopperArrow","arrowProps","Kr","Hr","onClickOutside","onDropdownFocus","handleMonthChange","onMonthMouseLeave","onYearChange","onMonthChange","handleMonthYearChange","weekLabel","formatWeekday","weekDayClassName","formatWeekDay","useWeekdaysShort","showYearPicker","renderCustomHeader","forceShowMonthNavigation","showDisabledMonthNavigation","decreaseMonth","decreaseYear","previousMonthButtonLabel","previousYearButtonLabel","previousMonthAriaLabel","previousYearAriaLabel","showTimeSelect","increaseMonth","increaseYear","nextMonthButtonLabel","nextYearButtonLabel","nextMonthAriaLabel","nextYearAriaLabel","showYearDropdown","showMonthDropdown","showMonthYearDropdown","changeYear","changeMonth","changeMonthYear","monthDate","renderCurrentMonth","onFocus","handleDropdownFocus","renderMonthDropdown","renderMonthYearDropdown","renderYearDropdown","monthContainer","customHeaderCount","prevMonthButtonDisabled","nextMonthButtonDisabled","prevYearButtonDisabled","nextYearButtonDisabled","renderYearHeader","renderDefaultHeader","showPreviousMonths","monthsShown","monthSelectedIn","renderHeader","monthAriaLabelPrefix","handleOnDayKeyDown","handleMonthMouseLeave","timeFormat","timeIntervals","withPortal","showTimeInput","getDateInView","assignMonthContainer","container","renderPreviousButton","renderNextButton","renderYears","renderTodayButton","renderTimeSection","renderInputTimeSection","jr","el","portalRoot","portalHost","getElementById","portalId","setAttribute","appendChild","removeChild","createPortal","Qr","disabled","Vr","tabLoopRef","querySelectorAll","getTabChildren","enableTabLoop","handleFocusStart","handleFocusEnd","Ur","wrapperClassName","hidePopper","popperComponent","popperModifiers","popperPlacement","popperProps","targetComponent","popperOnKeyDown","Popper","modifiers","placement","popperContainer","Manager","Reference","$r","zr","Gr","Jr","getPreSelection","open","startOpen","preventFocus","focused","preventFocusTimeout","clearTimeout","blur","cancelFocusInput","calcInitialState","lastPreSelectChange","Zr","setBlur","inputValue","readOnly","preventOpenOnFocus","inputFocusTimeout","setTimeout","setFocus","onBlur","onChangeRaw","isDefaultPrevented","Xr","strictParsing","setSelected","allowSameDay","focusSelectedMonth","onInputClick","calendar","componentNode","querySelector","inputOk","handleSelect","onInputError","msg","onClearClick","closeOnScroll","documentElement","isCalendarOpen","dateFormatCalendar","handleCalendarClickOutside","outsideClickIgnoreClass","handleTimeChange","calendarClassName","calendarContainer","excludeScrollbar","onDayKeyDown","customInput","customInputRef","handleBlur","handleChange","handleFocus","onInputKeyDown","id","autoFocus","placeholderText","autoComplete","title","ariaDescribedBy","ariaInvalid","ariaLabelledBy","ariaRequired","isClearable","clearButtonTitle","clearButtonClassName","ariaLabelClose","addEventListener","onScroll","onCalendarOpen","onCalendarClose","clearPreventFocusTimeout","removeEventListener","renderDateInput","renderClearButton","renderCalendar","renderInputContainer","popperClassName","onPopperKeyDown","CalendarContainer","getDefaultLocale","registerLocale","setDefaultLocale","aa","ba","Set","ca","da","ea","add","fa","ha","ia","ja","ka","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","oa","pa","qa","ma","na","la","removeAttribute","setAttributeNS","xlinkHref","ra","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","sa","ta","ua","wa","xa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","for","Ma","Ka","La","Na","Oa","Pa","prepareStackTrace","displayName","Qa","tag","render","_render","Ra","$$typeof","_context","_payload","_init","Sa","Ta","nodeName","Va","_valueTracker","getValue","stopTracking","Ua","Wa","checked","Xa","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","controlled","$a","ab","bb","cb","ownerDocument","eb","Children","db","fb","defaultSelected","gb","dangerouslySetInnerHTML","hb","ib","jb","textContent","kb","lb","mb","nb","ob","namespaceURI","innerHTML","firstChild","MSApp","execUnsafeLocalFunction","pb","lastChild","nodeType","nodeValue","qb","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","rb","sb","tb","setProperty","charAt","ub","menuitem","area","base","col","embed","img","keygen","link","meta","track","wbr","vb","wb","is","xb","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Ob","Pb","Qb","Rb","onError","Sb","Tb","Ub","Vb","Wb","Xb","Zb","alternate","return","$b","memoizedState","dehydrated","ac","cc","child","sibling","bc","dc","ec","fc","gc","hc","ic","jc","kc","lc","mc","nc","oc","pc","qc","rc","blockedOn","domEventName","eventSystemFlags","nativeEvent","targetContainers","sc","delete","pointerId","tc","vc","wc","lanePriority","unstable_runWithPriority","hydrate","containerInfo","xc","yc","shift","zc","Ac","Bc","unstable_scheduleCallback","unstable_NormalPriority","Cc","Dc","Ec","animationend","animationiteration","animationstart","transitionend","Fc","Gc","Hc","animation","transition","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","unstable_now","Rc","Uc","pendingLanes","expiredLanes","suspendedLanes","pingedLanes","Vc","entangledLanes","entanglements","Wc","Xc","Yc","Zc","$c","eventTimes","clz32","bd","cd","log","LN2","dd","unstable_UserBlockingPriority","ed","fd","gd","hd","uc","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","defaultPrevented","returnValue","isPropagationStopped","stopPropagation","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","now","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Id","clipboardData","Jd","Ld","data","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","Od","Alt","Control","Meta","Shift","Pd","Qd","repeat","which","Rd","Td","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Yd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","Zd","$d","documentMode","color","datetime","email","password","range","search","tel","text","event","listeners","oninput","detachEvent","attachEvent","nextSibling","compareDocumentPosition","HTMLIFrameElement","contentWindow","href","contentEditable","selectionStart","selectionEnd","anchorNode","defaultView","getSelection","anchorOffset","focusNode","focusOffset","Yb","listener","has","af","bf","random","cf","df","capture","passive","Nb","ef","ff","parentWindow","gf","hf","char","jf","kf","lf","mf","nf","__html","of","pf","qf","rf","sf","previousSibling","tf","vf","wf","xf","yf","zf","Af","Bf","Cf","Df","Ef","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Ff","childContextTypes","Gf","Hf","If","getChildContext","Jf","__reactInternalMemoizedMergedChildContext","Kf","Lf","Mf","Nf","Of","Pf","unstable_cancelCallback","Qf","unstable_shouldYield","Rf","unstable_requestPaint","Sf","Tf","unstable_getCurrentPriorityLevel","Uf","unstable_ImmediatePriority","Vf","Wf","Xf","unstable_LowPriority","Yf","unstable_IdlePriority","Zf","$f","ag","bg","cg","dg","eg","fg","gg","hg","ig","jg","kg","ReactCurrentBatchConfig","lg","defaultProps","mg","ng","og","pg","qg","rg","_currentValue","sg","childLanes","tg","dependencies","firstContext","lanes","ug","vg","observedBits","responders","wg","xg","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","yg","zg","eventTime","lane","payload","callback","Ag","Bg","Cg","Dg","Eg","Fg","refs","Gg","Kg","isMounted","_reactInternals","enqueueSetState","Hg","Ig","Jg","enqueueReplaceState","enqueueForceUpdate","Lg","shouldComponentUpdate","isPureReactComponent","Mg","contextType","updater","Ng","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Og","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Pg","Qg","_owner","_stringRef","Rg","Sg","lastEffect","nextEffect","firstEffect","Tg","Ug","Vg","implementation","Wg","Xg","Yg","Zg","$g","ah","bh","ch","dh","eh","tagName","fh","gh","hh","ih","memoizedProps","revealOrder","jh","kh","lh","mh","nh","oh","pendingProps","ph","qh","rh","sh","th","uh","_workInProgressVersionPrimary","vh","ReactCurrentDispatcher","wh","xh","yh","zh","Ah","Bh","Ch","Dh","Eh","Fh","Gh","Hh","baseQueue","queue","Ih","Jh","Kh","lastRenderedReducer","action","eagerReducer","eagerState","lastRenderedState","dispatch","Lh","Mh","_getVersion","_source","mutableReadLanes","Nh","useState","getSnapshot","subscribe","useEffect","setSnapshot","Oh","Ph","Qh","Rh","destroy","deps","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","readContext","useCallback","useContext","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useRef","useDebugValue","useDeferredValue","useTransition","useMutableSource","useOpaqueIdentifier","unstable_isNewReconciler","uf","ei","ReactCurrentOwner","fi","gi","ii","ji","compare","ki","li","mi","baseLanes","ni","oi","pi","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","qi","getDerivedStateFromError","ri","pendingContext","Bi","Di","Ei","si","retryLane","ti","fallback","unstable_avoidThisFallback","ui","unstable_expectedLoadTime","vi","wi","xi","yi","zi","isBackwards","rendering","renderingStartTime","last","tail","tailMode","Ai","Fi","Gi","wasMultiple","multiple","onclick","size","createElementNS","createTextNode","Hi","Ii","Ji","Ki","Li","Mi","message","Ni","Oi","WeakMap","Pi","Qi","Ri","Si","componentDidCatch","Ti","componentStack","Ui","WeakSet","Vi","Wi","Xi","__reactInternalSnapshotBeforeUpdate","Yi","Zi","$i","aj","display","bj","onCommitFiberUnmount","componentWillUnmount","cj","dj","ej","fj","gj","hj","insertBefore","_reactRootContainer","ij","jj","kj","lj","then","mj","nj","oj","pj","qj","rj","sj","tj","uj","vj","Infinity","wj","ck","xj","yj","zj","Aj","Bj","Cj","Dj","Ej","Fj","Gj","Hj","Ij","Jj","Sc","Kj","Lj","Mj","callbackNode","expirationTimes","callbackPriority","Tc","Nj","Oj","Pj","Qj","Rj","Sj","Tj","finishedWork","finishedLanes","Uj","timeoutHandle","Wj","Xj","pingCache","Yj","Zj","va","ak","bk","dk","rangeCount","focusedElem","selectionRange","ek","extend","createRange","setStart","removeAllRanges","addRange","setEnd","scrollLeft","top","onCommitFiberRoot","fk","gk","ik","isReactComponent","pendingChildren","jk","mutableSourceEagerHydrationData","kk","lk","mk","nk","ok","qk","hydrationOptions","mutableSources","_internalRoot","rk","tk","hasAttribute","sk","uk","hk","_calculateChangedBits","unstable_observedBits","unmount","JSON","form","Vj","vk","Events","wk","findFiberByHostInstance","bundleType","version","rendererPackageName","xk","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","__REACT_DEVTOOLS_GLOBAL_HOOK__","yk","supportsFiber","inject","findDOMNode","flushSync","unmountComponentAtNode","unstable_batchedUpdates","unstable_createPortal","unstable_renderSubtreeIntoContainer","checkDCE","hasElementType","Element","hasMap","hasSet","hasArrayBuffer","ArrayBuffer","isView","equal","isNodeFound","ignoreClass","correspondingElement","seed","passiveEventSupport","uid","handlersMap","enabledInstances","touchEvents","IGNORE_CLASS_NAME","getEventHandlerOptions","eventName","handlerOptions","WrappedComponent","config","_class","_temp","_Component","_this","__outsideClickHandler","__clickOutsideHandlerProp","getInstance","handleClickOutside","__getComponentNode","setClickOutsideRef","enableOnClickOutside","_uid","noop","testPassiveEventSupport","events","eventTypes","evt","clientWidth","host","findHighest","composed","composedPath","disableOnClickOutside","fn","getRef","instanceRef","_proto","_this$props","excluded","sourceKeys","_objectWithoutPropertiesLoose","wrappedRef","getClass","ManagerReferenceNodeContext","React","ManagerReferenceNodeSetterContext","_React$useState","referenceNode","setReferenceNode","hasUnmounted","handleSetReferenceNode","Provider","unwrapArray","safeInvoke","_len","_key","setRef","fromEntries","acc","useIsomorphicLayoutEffect","getWindow","isElement","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","getBoundingClientRect","includeScale","rect","scaleX","scaleY","offsetHeight","offsetWidth","bottom","getWindowScroll","win","pageXOffset","pageYOffset","getNodeName","getDocumentElement","getWindowScrollBarX","getComputedStyle","isScrollParent","_getComputedStyle","overflow","overflowX","overflowY","getCompositeRect","elementOrVirtualElement","offsetParent","isFixed","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","scroll","offsets","getNodeScroll","clientLeft","clientTop","getLayoutRect","clientRect","offsetLeft","getParentNode","assignedSlot","getScrollParent","listScrollParents","_element$ownerDocumen","scrollParent","isBody","visualViewport","updatedList","isTableElement","getTrueOffsetParent","position","getOffsetParent","isFirefox","navigator","userAgent","currentNode","css","transform","perspective","contain","willChange","getContainingBlock","auto","basePlacements","viewport","popper","variationPlacements","placements","modifierPhases","visited","modifier","requires","requiresIfExists","dep","depModifier","debounce","Promise","resolve","DEFAULT_OPTIONS","strategy","areValidElements","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","reference","orderedModifiers","modifiersData","elements","attributes","styles","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","scrollParents","contextElement","phase","orderModifiers","merged","existing","mergeByName","enabled","_ref3$options","effect","cleanupFn","noopFn","update","forceUpdate","_state$elements","rects","reset","_state$orderedModifie","_state$orderedModifie2","onFirstUpdate","getBasePlacement","getVariation","getMainAxisFromPlacement","computeOffsets","basePlacement","variation","commonX","commonY","mainAxis","unsetSides","mapToStyles","_Object$assign2","popperRect","gpuAcceleration","adaptive","roundOffsets","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","heightProp","widthProp","_Object$assign","commonStyles","dpr","devicePixelRatio","roundOffsetsByDPR","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","popperOffsets","getOppositePlacement","getOppositeVariationPlacement","parent","rootNode","getRootNode","isSameNode","rectToClientRect","getClientRectFromMixedType","clippingParent","html","getViewportRect","getInnerBoundingClientRect","winScroll","scrollWidth","direction","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","mergePaddingObject","paddingObject","expandToHashMap","hashMap","detectOverflow","_options$placement","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","axis","within","mathMax","mathMin","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","referenceRect","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","maxLen","arrowElement","arrow","arrowRect","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","arrowOffsetParent","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","withinMaxClamp","_state$modifiersData$","toPaddingObject","minProp","maxProp","endDiff","startDiff","clientSize","centerToReference","center","axisProp","centerOffset","_options$element","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","createPopper","_options$scroll","_options$resize","resize","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","initialStyles","margin","attribute","_skip","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","_options$allowedAutoP","allPlacements","allowedPlacements","overflows","computeAutoPlacement","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","check","fittingPlacement","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","EMPTY_MODIFIERS","usePopper","referenceElement","popperElement","prevOptions","optionsWithDefaults","updateStateModifier","ReactDOM","popperOptions","newOptions","popperInstanceRef","popperInstance","defaultCreatePopper","NOOP","NOOP_PROMISE","_ref$placement","_ref$strategy","_ref$modifiers","innerRef","setPopperElement","_React$useState2","setArrowElement","_usePopper","childrenProps","hide","refHandler","warning","Fragment","__self","__source","jsx","jsxs","StrictMode","Profiler","Suspense","escape","_status","_result","IsSomeRendererActing","toArray","only","PureComponent","createContext","_currentValue2","_threadCount","Consumer","createFactory","forwardRef","isValidElement","lazy","memo","performance","MessageChannel","unstable_forceFrameRate","cancelAnimationFrame","port2","port1","onmessage","postMessage","pop","sortIndex","expirationTime","priorityLevel","unstable_Profiling","unstable_continueExecution","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","delay","unstable_wrapCallback","separator","separatorIndex","FUNC_TYPE","UNDEF_TYPE","OBJ_TYPE","STR_TYPE","MAJOR","MODEL","NAME","TYPE","VENDOR","VERSION","ARCHITECTURE","CONSOLE","MOBILE","TABLET","SMARTTV","WEARABLE","EMBEDDED","AMAZON","APPLE","ASUS","BLACKBERRY","FIREFOX","GOOGLE","HUAWEI","LG","MICROSOFT","MOTOROLA","OPERA","SAMSUNG","SHARP","SONY","XIAOMI","ZEBRA","FACEBOOK","CHROMIUM_OS","MAC_OS","enumerize","enums","str1","str2","lowerize","rgxMapper","arrays","matches","strMapper","windowsVersionMap","regexes","browser","CHROME","cpu","device","engine","EDGE","os","UAParser","extensions","getResult","_navigator","_ua","_uach","userAgentData","_rgxmap","mergedRegexes","_isSelfNav","getBrowser","_browser","brave","isBrave","getCPU","_cpu","getDevice","_device","mobile","standalone","maxTouchPoints","getEngine","_engine","getOS","_os","platform","getUA","setUA","BROWSER","CPU","DEVICE","ENGINE","OS","define","jQuery","Zepto","prop","_arrayLikeToArray","_createForOfIteratorHelper","_unsupportedIterableToArray","__webpack_module_cache__","__webpack_require__","moduleId","cachedModule","__webpack_modules__","amdO","getter","definition","chunkId","promises","miniCssF","inProgress","dataWebpackPrefix","script","needAttach","scripts","getElementsByTagName","getAttribute","charset","timeout","src","onScriptComplete","onerror","onload","doneFns","head","toStringTag","installedChunks","installedChunkData","promise","reject","errorType","realSrc","request","webpackJsonpCallback","parentChunkLoadingFunction","chunkIds","moreModules","runtime","chunkLoadingGlobal","_toConsumableArray","_slicedToArray","svgRef","xmlns","fill","viewBox","stroke","strokeLinecap","strokeLinejoin","__assign","__rest","warned","Div100vh","_a","measureHeight","setHeight","wasRenderedOnClientAtLeastOnce","setWasRenderedOnClientAtLeastOnce","isClient","useWasRenderedOnClientAtLeastOnce","setMeasuredHeight","measuredHeight","use100vh","styleWithRealHeight","innerHeight","REVEAL_TIME_MS","ENABLE_ARCHIVED_GAMES","DATE_LOCALE","enUS","AlertContext","status","isVisible","showSuccess","showError","Features","RenderStrategy","useAlert","AlertProvider","setStatus","setMessage","setIsVisible","show","showStatus","newMessage","delayMs","onClose","durationMs","lookup","captureStackTrace","slot","defaultTag","features","visible","_ref$visible","featureFlags","None","Static","isStatic","Unmount","Hidden","hidden","omit","as","refName","_omit$refName","passThroughProps","refRelatedProps","resolvedChildren","line","existingProps","functionsToMerge","clone","mergeEventFunctions","compact","forwardRefWithAs","component","keysToOmit","useIsoMorphicEffect","serverHandoffComplete","useServerHandoffComplete","setServerHandoffComplete","generateId","useId","ready","setId","useIsMounted","mounted","State","Reason","Context","useOpenClosed","OpenClosedProvider","disposables","api","raf","nextFrame","timer","dispose","splice","addClasses","removeClasses","remove","entered","_done","called","once","transitionDuration","transitionDelay","resolvedValue","_value$split$filter$m2","delaysMs","Finished","Cancelled","waitForTransition","reason","useSplitClasses","TreeStates","TransitionContext","NestingContext","hasChildren","bag","Visible","useNesting","doneRef","transitionableChildren","unregister","childId","register","eventNames","ensureEventHooksExist","TransitionChildRenderFeatures","TransitionChild","beforeEnter","afterEnter","beforeLeave","afterLeave","enter","enterFrom","enterTo","leave","leaveFrom","leaveTo","useTransitionContext","appear","initial","useParentNesting","isTransitioning","nesting","enterClasses","enterFromClasses","enterToClasses","enteredClasses","leaveClasses","leaveFromClasses","leaveToClasses","eventsRef","useEvents","skip","propsWeControl","passthroughProps","Open","Closed","Transition","_props$appear","usesOpenClosedState","nestingBag","useIsInitialRender","transitionBag","sharedProps","Child","hasTransitionContext","hasOpenClosedContext","Root","Alert","isOpen","variant","topMost","AlertContainer","compareLocalAsc","differenceInDays","isLastDayNotFull","GAME_TITLE","process","WIN_MESSAGES","CORRECT_WORD_MESSAGE","solution","WRONG_SPOT_MESSAGE","guess","STATISTICS_TITLE","DATEPICKER_CHOOSE_TEXT","VALID_GUESSES","WORDS","getToday","getYesterday","startOfYesterday","firstGameDate","unicodeSplit","word","GraphemeSplitter","unicodeLength","localeAwareLowerCase","localeAwareUpperCase","getLastGameDate","daysSinceLastGame","isValidGameDate","getGameDate","getIsLatestGame","parsed","setGameDate","_options$format","_options$representati","representation","tzOffset","dateDelimiter","timeDelimiter","absoluteOffset","hourOffset","minuteOffset","formatISO","gameDate","nextGameDate","getIndex","wordOfTheDay","getWordOfDay","solutionGameDate","solutionIndex","getSolution","getGuessStatuses","splitSolution","splitGuess","solutionCharsTaken","statuses","indexOfPresentChar","gameStateKey","archiveGameStateKey","highContrastKey","saveGameStateToLocalStorage","isLatestGame","gameState","localStorage","setItem","loadGameStateFromLocalStorage","getItem","gameStatKey","saveStatsToLocalStorage","gameStats","getStoredIsHighContrastMode","Cell","isRevealing","isCompleted","isFilled","shouldReveal","animationDelay","isHighContrast","classnames","CompletedRow","CurrentRow","emptyCells","EmptyRow","Grid","guesses","currentGuess","currentRowClassName","empties","MAX_CHALLENGES","Key","keyDelayMs","Keyboard","onChar","onDelete","onEnter","charStatuses","charObj","getStatuses","Keys","useSyncRefs","cache","isDisabledReactIssue7711","parentElement","legend","HTMLFieldSetElement","HTMLLegendElement","isParentDisabled","previousElementSibling","isFirstLegend","useWindowEvent","listenerRef","handler","Focus","FocusResult","Direction","FocusableMode","focusableSelector","selector","focusElement","focusIn","getFocusableElements","active","First","Next","Previous","Last","startIndex","focusOptions","NoScroll","total","nextIdx","WrapAround","Underflow","Overflow","Success","useFocusTrap","All","initialFocus","containers","restoreElement","previousActiveElement","featuresRestoreFocus","RestoreFocus","featuresInitialFocus","InitialFocus","TabLock","Tab","FocusLock","allContainers","_container$current","interactables","originals","inert","restore","original","ForcePortalRootContext","ForcePortalRoot","force","usePortalTarget","forceInRoot","groupTarget","PortalGroupContext","existingRoot","root","setTarget","DEFAULT_PORTAL_TAG","Portal","childNodes","DEFAULT_GROUP_TAG","Group","DescriptionContext","useDescriptionContext","StackMessage","DialogStates","ActionTypes","StackContext","StackProvider","onUpdate","parentUpdate","notify","Add","Remove","reducers","SetTitleId","titleId","DialogContext","useDialogContext","Dialog","stateReducer","DialogRenderFeatures","DialogRoot","nestedDialogCount","setNestedDialogCount","internalDialogRef","dialogRef","hasOpen","hasOnClose","dialogState","descriptionId","close","setTitleId","hasNestedDialogs","hasParentDialog","FocusTrapFeatures","leaf","interactable","useInertOthers","_internalDialogRef$cu","Escape","paddingRight","scrollbarWidth","innerWidth","observer","IntersectionObserver","entry","boundingClientRect","observe","disconnect","descriptionIds","setDescriptionIds","contextBag","useDescriptions","describedby","DescriptionProvider","Overlay","overlayRef","Title","Description","BaseModal","handleClose","DatePickerModal","initialDate","handleSelectDate","lastGameDate","selectedDate","setSelectedDate","formatOptions","excludedDates","InfoModal","copyTextToClipboard","clipboard","writeText","textArea","select","execCommand","fallbackCopyTextToClipboard","Blowfish","decrypt","encoded","atob","ownKeys","enumerableOnly","sym","addStatsForCompletedGame","stats","totalGames","currentStreak","gamesFailed","winDistribution","bestStreak","successRate","getSuccessRate","defaultStats","loadStats","loadStatsFromLocalStorage","EmigratePanel","isCopyButtonEnabled","setIsCopyButtonEnabled","copyButtonText","setCopyButtonText","migrationStats","statistics","emigrationCode","btoa","byte","htmlFor","rows","ImmigratePanel","isSaveButtonEnabled","setIsSaveButtonEnabled","textareaClassNames","valid","invalid","allClassNames","textarea","cn","handleImmigrationCodeChange","confirm","alert","reload","MigrateStatsModal","isEmigrateVisible","setIsEmigrateVisible","radioGroup","SettingsToggle","settingName","flag","handleFlag","description","toggleHolder","toggleButton","SettingsModal","isHardMode","handleHardMode","isDarkMode","handleDarkMode","isHighContrastMode","handleHighContrastMode","_isNativeReflectConstruct","_arrayWithoutHoles","_iterableToArray","_nonIterableSpread","zeroPad","strValue","prefix","suffix","strNo","paddedNo","timeDeltaFormatOptionsDefaults","daysInHours","zeroPadTime","formatTimeDelta","timeDelta","_Object$assign$zeroPa","zeroPadDays","zeroPadTimeLength","formattedHours","Countdown","_React$Component","_super","startCountdown","setInterval","stopCountdown","onComplete","prevState","clearInterval","addTime","propTypes","Countdown$1","initialTimestamp","calcOffsetStartTimestamp","offsetStartTimestamp","autoStart","offsetTime","legacyMode","legacyCountdownRef","tick","calcTimeDelta","completed","overtime","onTick","setTimeDeltaState","isStarted","prevOffsetStartTimestamp","onStart","clearTimer","intervalDelay","pause","isPaused","onPause","stop","isStopped","onStop","isStatus","handleOnComplete","onMount","prevProps","precision","startTimestamp","_options$now","_options$precision","_options$offsetTime","timeLeft","clampedPrecision","toFixed","_this2","completedCallback","newStatus","_this$props2","getApi","formatted","_this$props3","_children","_this$props4","renderer","renderProps","getRenderProps","countdown","_renderProps$formatte","webShareApiDeviceTypes","generateEmojiGrid","tiles","attemptShare","shareData","canShare","share","getEmojiTiles","Progress","label","isCurrentDayStatRow","currentRowClass","isGameWon","numberOfGuessesMade","Histogram","maxValue","MigrationIntro","handleMigrateStatsButton","StatItem","StatBar","StatsModal","isGameLost","handleShareToClipboard","handleShareFailure","lost","textToShare","shareSuccess","catch","shareStatus","Navbar","setIsInfoModalOpen","setIsStatsModalOpen","setIsSettingsModalOpen","setIsDatePickerModalOpen","inAppBrowserNames","prefersDarkMode","matchMedia","showErrorAlert","showSuccessAlert","setCurrentGuess","setIsGameWon","isInfoModalOpen","isStatsModalOpen","isDatePickerModalOpen","isMigrateStatsModalOpen","setIsMigrateStatsModalOpen","isSettingsModalOpen","setCurrentRowClass","setIsGameLost","setIsDarkMode","setIsHighContrastMode","setIsRevealing","loaded","gameWasWon","setGuesses","setStats","setIsHardMode","isInAppBrowser","clearCurrentRowClass","winMessage","firstMissingReveal","lettersLeftArray","splitWord","NOT_CONTAINED_MESSAGE","findFirstUnusedReveal","winningWord","isWinningWord","isHard","isDark","removeItem","setStoredIsHighContrastMode","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","reportWebVitals"],"sourceRoot":""}