{"version":3,"file":"main.2b3926ae79d68339523e.js","mappings":"+FAAA,IAAIA,EAAM,CACT,0BAA2B,MAC3B,2BAA4B,MAC5B,qBAAsB,MACtB,6DAA8D,MAC9D,4CAA6C,MAC7C,8CAA+C,MAC/C,2DAA4D,MAC5D,2CAA4C,MAC5C,4CAA6C,MAC7C,6DAA8D,MAC9D,6CAA8C,MAC9C,+DAAgE,MAChE,mBAAoB,MACpB,0BAA2B,MAC3B,wBAAyB,MACzB,yBAA0B,MAC1B,4BAA6B,MAC7B,uBAAwB,MACxB,uBAAwB,MACxB,kCAAmC,MACnC,2BAA4B,MAC5B,4BAA6B,MAC7B,mCAAoC,MACpC,yCAA0C,MAC1C,kCAAmC,MACnC,2CAA4C,MAC5C,gCAAiC,MACjC,WAAY,MACZ,wBAAyB,MACzB,cAAe,MACf,iBAAkB,MAClB,uBAAwB,MACxB,kFAAmF,MACnF,uEAAwE,MACxE,sFAAuF,MACvF,2EAA4E,KAC5E,mFAAoF,MACpF,0FAA2F,MAC3F,uEAAwE,MACxE,4FAA6F,MAC7F,sGAAuG,MACvG,8FAA+F,MAC/F,qEAAsE,KACtE,qEAAsE,MACtE,+EAAgF,MAChF,kFAAmF,MACnF,6FAA8F,MAC9F,yEAA0E,MAC1E,mFAAoF,MACpF,4EAA6E,MAC7E,mEAAoE,MACpE,uEAAwE,KACxE,kFAAmF,MACnF,4FAA6F,MAC7F,wFAAyF,MACzF,kGAAmG,KACnG,yEAA0E,MAC1E,mFAAoF,MACpF,mEAAoE,MACpE,6EAA8E,MAC9E,uEAAwE,MACxE,iFAAkF,MAClF,qDAAsD,MACtD,sEAAuE,MACvE,kEAAmE,MACnE,oFAAqF,MACrF,gFAAiF,MACjF,uGAAwG,MACxG,4FAA6F,MAC7F,yFAA0F,MAC1F,8EAA+E,MAC/E,uGAAwG,MACxG,4FAA6F,MAC7F,iFAAkF,MAClF,sEAAuE,MACvE,qEAAsE,MACtE,0DAA2D,MAC3D,+CAAgD,MAChD,wDAAyD,MACzD,mEAAoE,MACpE,2EAA4E,KAC5E,sEAAuE,MACvE,yDAA0D,KAC1D,8DAA+D,MAC/D,yDAA0D,MAC1D,4DAA6D,KAC7D,8BAA+B,MAC/B,mCAAoC,MACpC,wCAAyC,MACzC,sCAAuC,KACvC,kCAAmC,MACnC,iCAAkC,MAClC,kCAAmC,KACnC,gCAAiC,KACjC,oCAAqC,MACrC,iCAAkC,MAClC,mCAAoC,MACpC,oCAAqC,MACrC,iCAAkC,MAClC,mCAAoC,MACpC,iDAAkD,KAClD,6CAA8C,MAC9C,2CAA4C,MAC5C,+CAAgD,KAChD,8CAA+C,MAC/C,8CAA+C,MAC/C,4BAA6B,MAC7B,+BAAgC,MAChC,2CAA4C,MAC5C,2BAA4B,MAC5B,2BAA4B,MAC5B,kCAAmC,MACnC,gCAAiC,MACjC,6BAA8B,MAC9B,0BAA2B,MAC3B,4BAA6B,MAC7B,sCAAuC,MACvC,4BAA6B,MAC7B,6BAA8B,KAC9B,2BAA4B,MAC5B,0BAA2B,MAC3B,4BAA6B,MAC7B,yBAA0B,MAC1B,0BAA2B,MAC3B,0BAA2B,MAC3B,6BAA8B,MAC9B,wBAAyB,KACzB,yBAA0B,MAC1B,2BAA4B,MAC5B,wBAAyB,MACzB,0BAA2B,IAC3B,qCAAsC,MACtC,kCAAmC,MACnC,0BAA2B,MAC3B,2BAA4B,MAC5B,yBAA0B,MAC1B,0BAA2B,MAC3B,kCAAmC,MACnC,wBAAyB,KACzB,0BAA2B,MAC3B,oCAAqC,MACrC,qCAAsC,MACtC,wCAAyC,MACzC,mCAAoC,KACpC,oCAAqC,MACrC,sCAAuC,MACvC,mCAAoC,MACpC,qCAAsC,MACtC,qCAAsC,MACtC,sCAAuC,MACvC,oCAAqC,MACrC,qCAAsC,MACtC,mCAAoC,MACpC,qCAAsC,MACtC,8CAA+C,MAC/C,0DAA2D,MAC3D,kDAAmD,MACnD,kEAAmE,MACnE,gEAAiE,MACjE,wDAAyD,MACzD,kEAAmE,MACnE,4DAA6D,MAC7D,8DAA+D,MAC/D,kDAAmD,MACnD,2FAA4F,MAC5F,wDAAyD,MACzD,4CAA6C,MAC7C,wEAAyE,MACzE,6DAA8D,MAC9D,8CAA+C,MAC/C,mCAAoC,MACpC,sDAAuD,MACvD,gDAAiD,MACjD,4CAA6C,MAC7C,wDAAyD,MACzD,4DAA6D,IAC7D,gDAAiD,MACjD,+DAAgE,MAChE,oDAAqD,MACrD,oEAAqE,MACrE,yDAA0D,MAC1D,qDAAsD,MACtD,+DAAgE,MAChE,0DAA2D,MAC3D,kDAAmD,MACnD,8CAA+C,MAC/C,4DAA6D,MAC7D,oDAAqD,KACrD,wDAAyD,MACzD,gDAAiD,MACjD,0CAA2C,KAC3C,+DAAgE,MAChE,8CAA+C,MAC/C,kDAAmD,MACnD,0DAA2D,MAC3D,0DAA2D,MAC3D,kDAAmD,MACnD,8CAA+C,KAC/C,qBAAsB,MACtB,6FAA8F,MAC9F,4DAA6D,MAC7D,kDAAmD,MACnD,2DAA4D,IAC5D,2CAA4C,MAC5C,oFAAqF,MACrF,wDAAyD,MACzD,iDAAkD,MAClD,iEAAkE,GAClE,4FAA6F,MAC7F,4DAA6D,MAC7D,mEAAoE,IACpE,+CAAgD,MAChD,mDAAoD,MACpD,wEAAyE,MACzE,kDAAmD,MACnD,sDAAuD,MACvD,wCAAyC,MACzC,kEAAmE,KACnE,8CAA+C,MAC/C,6BAA8B,MAC9B,kCAAmC,MACnC,2BAA4B,KAC5B,6BAA8B,MAC9B,gCAAiC,MACjC,gCAAiC,IACjC,8BAA+B,MAC/B,gCAAiC,MACjC,mCAAoC,MACpC,gFAAiF,MACjF,wDAAyD,MACzD,sEAAuE,MACvE,mDAAoD,MACpD,4EAA6E,MAC7E,sDAAuD,MACvD,0EAA2E,KAC3E,oDAAqD,MACrD,sDAAuD,MACvD,0CAA2C,KAC3C,gEAAiE,MACjE,+CAAgD,MAChD,oFAAqF,MACrF,yEAA0E,MAC1E,qGAAsG,MACtG,4EAA6E,MAC7E,wDAAyD,MACzD,gFAAiF,MACjF,2EAA4E,MAC5E,mGAAoG,MACpG,uEAAwE,MACxE,2FAA4F,MAC5F,sEAAuE,MACvE,mDAAoD,MACpD,4EAA6E,MAC7E,sDAAuD,MACvD,oCAAqC,KACrC,aAAc,IACd,2BAA4B,MAC5B,6FAA8F,MAC9F,iHAAkH,MAClH,sGAAuG,KACvG,8FAA+F,MAC/F,qFAAsF,MACtF,+FAAgG,MAChG,gGAAiG,MACjG,0GAA2G,MAC3G,kGAAmG,MACnG,4GAA6G,MAC7G,yFAA0F,MAC1F,mGAAoG,MACpG,yEAA0E,MAC1E,0GAA2G,MAC3G,8FAA+F,MAC/F,wGAAyG,KACzG,uEAAwE,MACxE,+GAAgH,MAChH,yHAA0H,MAC1H,wFAAyF,MACzF,kGAAmG,MACnG,2EAA4E,MAC5E,qFAAsF,MACtF,oGAAqG,MACrG,yFAA0F,MAC1F,uHAAwH,MACxH,oGAAqG,MACrG,yFAA0F,MAC1F,2EAA4E,MAC5E,gEAAiE,MACjE,4FAA6F,MAC7F,iFAAkF,KAClF,oEAAqE,MACrE,yDAA0D,MAC1D,uFAAwF,KACxF,iGAAkG,MAClG,sEAAuE,MACvE,gFAAiF,MACjF,sDAAuD,MACvD,0DAA2D,MAC3D,oEAAqE,MACrE,yCAA0C,MAC1C,uCAAwC,MACxC,2CAA4C,MAC5C,uCAAwC,MACxC,wCAAyC,MACzC,mCAAoC,MACpC,uCAAwC,KACxC,mDAAoD,MACpD,0CAA2C,MAC3C,2CAA4C,MAC5C,oCAAqC,MACrC,qCAAsC,MACtC,yCAA0C,MAC1C,0CAA2C,MAC3C,oCAAqC,MACrC,yCAA0C,MAC1C,0EAA2E,KAC3E,gHAAiH,KACjH,oEAAqE,MACrE,oGAAqG,MACrG,wEAAyE,MACzE,4GAA6G,MAC7G,qCAAsC,MACtC,kCAAmC,KACnC,gCAAiC,MACjC,mCAAoC,KACpC,6CAA8C,MAC9C,+CAAgD,MAChD,uCAAwC,MACxC,kCAAmC,MACnC,4BAA6B,MAC7B,+BAAgC,MAChC,4CAA6C,MAC7C,+CAAgD,MAChD,uCAAwC,MACxC,0CAA2C,MAC3C,8CAA+C,MAC/C,sCAAuC,MACvC,+CAAgD,MAChD,4CAA6C,MAC7C,6CAA8C,MAC9C,wCAAyC,MACzC,8CAA+C,MAC/C,0CAA2C,KAC3C,8CAA+C,MAC/C,oDAAqD,MACrD,wCAAyC,MACzC,sCAAuC,MACvC,2CAA4C,MAC5C,uCAAwC,MACxC,uDAAwD,MACxD,oDAAqD,KACrD,oDAAqD,MACrD,qDAAsD,MACtD,kDAAmD,MACnD,qDAAsD,MACtD,oCAAqC,MACrC,oCAAqC,MACrC,iCAAkC,KAClC,iCAAkC,MAClC,mCAAoC,MACpC,+BAAgC,MAChC,kCAAmC,MACnC,kCAAmC,MACnC,+BAAgC,MAChC,gDAAiD,MACjD,sDAAuD,MACvD,kDAAmD,KACnD,8CAA+C,MAC/C,uCAAwC,MACxC,yCAA0C,MAC1C,2CAA4C,MAC5C,6CAA8C,MAC9C,kDAAmD,MACnD,8CAA+C,MAC/C,2CAA4C,MAC5C,6CAA8C,MAC9C,gCAAiC,KACjC,2CAA4C,MAC5C,6CAA8C,MAC9C,sCAAuC,MACvC,wCAAyC,MACzC,0CAA2C,MAC3C,4CAA6C,MAC7C,6CAA8C,MAC9C,qCAAsC,MACtC,kDAAmD,MACnD,8CAA+C,MAC/C,+CAAgD,MAChD,iDAAkD,MAClD,qDAAsD,MACtD,+CAAgD,MAChD,uCAAwC,MACxC,yCAA0C,MAC1C,wCAAyC,MACzC,0CAA2C,MAC3C,sCAAuC,MACvC,6CAA8C,MAC9C,+CAAgD,MAChD,8CAA+C,MAC/C,+CAAgD,MAChD,uCAAwC,MACxC,yCAA0C,MAC1C,iCAAkC,MAClC,+BAAgC,MAChC,kCAAmC,KACnC,8BAA+B,MAC/B,8BAA+B,MAC/B,+BAAgC,MAChC,4BAA6B,KAC7B,+BAAgC,KAChC,gCAAiC,MACjC,8BAA+B,MAC/B,wCAAyC,MACzC,mCAAoC,MACpC,0CAA2C,MAC3C,sCAAuC,MACvC,8BAA+B,MAC/B,mCAAoC,MACpC,6DAA8D,MAC9D,4FAA6F,MAC7F,iCAAkC,MAClC,0CAA2C,MAC3C,iCAAkC,MAClC,kCAAmC,MACnC,gCAAiC,MACjC,6BAA8B,MAC9B,8BAA+B,MAC/B,iCAAkC,MAClC,mCAAoC,MACpC,2BAA4B,MAC5B,6CAA8C,MAC9C,2BAA4B,MAC5B,2CAA4C,MAC5C,kCAAmC,MACnC,qCAAsC,MACtC,0CAA2C,MAC3C,8BAA+B,MAC/B,+BAAgC,MAChC,mCAAoC,MACpC,+BAAgC,MAChC,8CAA+C,MAC/C,4CAA6C,MAC7C,gDAAiD,MACjD,qDAAsD,MACtD,4CAA6C,MAC7C,6CAA8C,MAC9C,wCAAyC,KACzC,yCAA0C,MAC1C,0CAA2C,MAC3C,4CAA6C,MAC7C,8CAA+C,MAC/C,sCAAuC,MACvC,wDAAyD,MACzD,6CAA8C,MAC9C,+CAAgD,MAChD,gDAAiD,MACjD,yCAA0C,MAC1C,0CAA2C,KAC3C,wCAAyC,KACzC,8CAA+C,KAC/C,0CAA2C,MAC3C,yCAA0C,MAC1C,kCAAmC,MACnC,kDAAmD,MACnD,4DAA6D,MAC7D,qDAAsD,MACtD,+DAAgE,MAChE,8DAA+D,MAC/D,wEAAyE,KACzE,sDAAuD,MACvD,gEAAiE,MACjE,4FAA6F,MAC7F,iFAAkF,MAClF,qFAAsF,MACtF,gFAAiF,MACjF,mFAAoF,MACpF,0DAA2D,MAC3D,gDAAiD,KACjD,+CAAgD,MAChD,yDAA0D,MAC1D,iDAAkD,MAClD,2DAA4D,MAC5D,wCAAyC,MACzC,kDAAmD,MACnD,0CAA2C,MAC3C,oDAAqD,MACrD,iDAAkD,MAClD,2DAA4D,KAC5D,sDAAuD,MACvD,gEAAiE,MACjE,kEAAmE,KACnE,4EAA6E,MAC7E,0DAA2D,MAC3D,oEAAqE,MACrE,sDAAuD,MACvD,4CAA6C,MAC7C,sDAAuD,MACvD,sCAAuC,MACvC,gDAAiD,MACjD,iEAAkE,MAClE,2EAA4E,MAC5E,6EAA8E,MAC9E,uGAAwG,MACxG,iEAAkE,MAClE,2EAA4E,MAC5E,sFAAuF,MACvF,iFAAkF,MAClF,yDAA0D,MAC1D,mEAAoE,MACpE,qDAAsD,KACtD,+DAAgE,MAChE,kEAAmE,MACnE,uDAAwD,MACxD,yCAA0C,KAC1C,mDAAoD,MACpD,+DAAgE,MAChE,iEAAkE,KAClE,kDAAmD,MACnD,6DAA8D,MAC9D,wCAAyC,MACzC,kDAAmD,MACnD,iFAAkF,MAClF,4EAA6E,KAC7E,4CAA6C,MAC7C,sDAAuD,MACvD,wCAAyC,MACzC,kDAAmD,MACnD,oBAAqB,MACrB,uBAAwB,KACxB,iCAAkC,KAClC,oDAAqD,MACrD,4DAA6D,MAC7D,mBAAoB,MACpB,0BAA2B,MAC3B,qEAAsE,MACtE,6DAA8D,MAC9D,uEAAwE,MACxE,sDAAuD,MACvD,sEAAuE,KACvE,6EAA8E,MAC9E,wEAAyE,MACzE,mDAAoD,MACpD,wFAAyF,MACzF,mEAAoE,MACpE,2EAA4E,MAC5E,sFAAuF,IACvF,gGAAiG,MACjG,sCAAuC,MACvC,iDAAkD,MAClD,0CAA2C,MAC3C,oDAAqD,MACrD,6DAA8D,MAC9D,+DAAgE,MAChE,oDAAqD,MACrD,qCAAsC,MACtC,+FAAgG,MAChG,gEAAiE,MACjE,yFAA0F,MAC1F,2DAA4D,MAC5D,gFAAiF,MACjF,wDAAyD,KACzD,kGAAmG,MACnG,uFAAwF,MACxF,4GAA6G,MAC7G,0EAA2E,MAC3E,8EAA+E,MAC/E,wFAAyF,IACzF,0EAA2E,MAC3E,oDAAqD,MACrD,kEAAmE,MACnE,wEAAyE,MACzE,6CAA8C,MAC9C,wDAAyD,MACzD,gFAAiF,MACjF,0FAA2F,MAC3F,gFAAiF,MACjF,uDAAwD,MACxD,wEAAyE,MACzE,kFAAmF,MACnF,+DAAgE,MAChE,oEAAqE,MACrE,sEAAuE,MACvE,sDAAuD,MACvD,sEAAuE,MACvE,gFAAiF,MACjF,oEAAqE,MACrE,gEAAiE,MACjE,oDAAqD,MACrD,qFAAsF,MACtF,yDAA0D,MAC1D,gEAAiE,MACjE,yEAA0E,MAC1E,mEAAoE,MACpE,2EAA4E,MAC5E,sEAAuE,MACvE,+FAAgG,MAChG,mLAAoL,MACpL,uIAAwI,MACxI,uIAAwI,MACxI,gGAAiG,MACjG,8DAA+D,KAC/D,oCAAqC,MACrC,mEAAoE,MACpE,kDAAmD,MACnD,kEAAmE,MACnE,uFAAwF,MACxF,kJAAmJ,MACnJ,+GAAgH,MAChH,sHAAuH,MACvH,iFAAkF,KAClF,oGAAqG,MACrG,wEAAyE,MACzE,kHAAmH,MACnH,+EAAgF,MAChF,6EAA8E,MAC9E,qEAAsE,MACtE,oEAAqE,MACrE,oEAAqE,KACrE,+DAAgE,MAChE,oDAAqD,MACrD,iDAAkD,KAClD,wDAAyD,MACzD,iEAAkE,MAClE,6FAA8F,MAC9F,kFAAmF,MACnF,+GAAgH,MAChH,oGAAqG,KACrG,0EAA2E,MAC3E,0EAA2E,MAC3E,4EAA6E,KAC7E,kFAAmF,KACnF,yGAA0G,MAC1G,mHAAoH,MACpH,4EAA6E,MAC7E,4EAA6E,MAC7E,wEAAyE,MACzE,iEAAkE,MAClE,gEAAiE,KACjE,6FAA8F,MAC9F,4EAA6E,MAC7E,kCAAmC,MACnC,8EAA+E,MAC/E,wFAAyF,KACzF,2CAA4C,MAC5C,uCAAwC,MACxC,+CAAgD,MAChD,iEAAkE,MAClE,mEAAoE,MACpE,sDAAuD,MACvD,mDAAoD,MACpD,gEAAiE,MACjE,gDAAiD,MACjD,0CAA2C,MAC3C,oDAAqD,MACrD,qFAAsF,MACtF,0EAA2E,MAC3E,mDAAoD,MACpD,sEAAuE,MACvE,mEAAoE,MACpE,wDAAyD,MACzD,4CAA6C,MAC7C,4DAA6D,MAC7D,iDAAkD,MAClD,sDAAuD,MACvD,+EAAgF,MAChF,qDAAsD,MACtD,6EAA8E,KAC9E,0EAA2E,MAC3E,iCAAkC,MAClC,+BAAgC,KAChC,wCAAyC,MACzC,kCAAmC,MACnC,oCAAqC,MACrC,uCAAwC,MACxC,uCAAwC,MACxC,oCAAqC,MACrC,+CAAgD,MAChD,qCAAsC,MACtC,mCAAoC,MACpC,wCAAyC,MACzC,mCAAoC,MACpC,uCAAwC,KACxC,wDAAyD,MACzD,iFAAkF,MAClF,sEAAuE,MACvE,2DAA4D,MAC5D,yEAA0E,MAC1E,sFAAuF,MACvF,wGAAyG,MACzG,4FAA6F,KAC7F,0CAA2C,KAC3C,wDAAyD,MACzD,qEAAsE,MACtE,uFAAwF,MACxF,2EAA4E,MAC5E,2EAA4E,MAC5E,gEAAiE,MACjE,+BAAgC,MAChC,kCAAmC,MACnC,4CAA6C,IAC7C,wCAAyC,MACzC,uCAAwC,MACxC,8BAA+B,MAC/B,iCAAkC,MAClC,2CAA4C,MAC5C,sCAAuC,MACvC,qEAAsE,MACtE,2EAA4E,KAC5E,iCAAkC,MAClC,iCAAkC,MAClC,8BAA+B,MAC/B,+BAAgC,MAChC,4BAA6B,MAC7B,6BAA8B,MAC9B,uCAAwC,KACxC,iCAAkC,MAClC,6BAA8B,MAC9B,gCAAiC,MACjC,gCAAiC,MACjC,iEAAkE,MAClE,8FAA+F,KAC/F,uDAAwD,MACxD,2EAA4E,MAC5E,2DAA4D,MAC5D,2CAA4C,MAC5C,6EAA8E,KAC9E,wEAAyE,MACzE,qDAAsD,MACtD,uDAAwD,MACxD,4EAA6E,MAC7E,+CAAgD,MAChD,uDAAwD,MACxD,sDAAuD,MACvD,4BAA6B,MAC7B,oCAAqC,MACrC,kCAAmC,MACnC,gCAAiC,MACjC,yCAA0C,MAC1C,4CAA6C,MAC7C,wCAAyC,MACzC,mDAAoD,MACpD,kDAAmD,MACnD,gHAAiH,MACjH,0HAA2H,MAC3H,uHAAwH,MACxH,iIAAkI,KAClI,iEAAkE,KAClE,2CAA4C,MAC5C,2DAA4D,MAC5D,iEAAkE,MAClE,+DAAgE,MAChE,+DAAgE,MAChE,0DAA2D,MAC3D,kDAAmD,MACnD,yDAA0D,MAC1D,+CAAgD,MAChD,0EAA2E,MAC3E,oEAAqE,MACrE,oEAAqE,MACrE,sEAAuE,KACvE,gEAAiE,MACjE,gEAAiE,MACjE,2DAA4D,MAC5D,mEAAoE,MACpE,wEAAyE,MACzE,qFAAsF,MACtF,8DAA+D,MAC/D,uEAAwE,MACxE,kEAAmE,MACnE,2BAA4B,MAC5B,6BAA8B,MAC9B,qCAAsC,MACtC,0BAA2B,MAC3B,+BAAgC,MAChC,6BAA8B,MAC9B,4BAA6B,MAC7B,+BAAgC,MAChC,sCAAuC,KACvC,+BAAgC,MAChC,0BAA2B,MAC3B,4BAA6B,MAC7B,6BAA8B,KAC9B,8BAA+B,KAC/B,0BAA2B,MAC3B,2BAA4B,MAC5B,qCAAsC,MACtC,+BAAgC,MAChC,uDAAwD,MACxD,sDAAuD,MACvD,2BAA4B,MAC5B,+BAAgC,KAChC,qCAAsC,MACtC,4CAA6C,MAC7C,4CAA6C,MAC7C,6CAA8C,MAC9C,+CAAgD,MAChD,8CAA+C,MAC/C,2CAA4C,MAC5C,8CAA+C,MAC/C,qDAAsD,MACtD,8CAA+C,MAC/C,yCAA0C,MAC1C,2CAA4C,MAC5C,4CAA6C,MAC7C,6CAA8C,MAC9C,yCAA0C,MAC1C,oDAAqD,MACrD,0CAA2C,MAC3C,8CAA+C,MAC/C,0CAA2C,MAC3C,6CAA8C,MAC9C,gCAAiC,MACjC,yCAA0C,MAC1C,uCAAwC,MACxC,qCAAsC,MACtC,2CAA4C,MAC5C,2CAA4C,MAC5C,qCAAsC,MACtC,wCAAyC,MACzC,uCAAwC,MACxC,wCAAyC,MACzC,qCAAsC,MACtC,6CAA8C,MAC9C,gDAAiD,MACjD,+CAAgD,MAChD,0CAA2C,MAC3C,uCAAwC,MACxC,uCAAwC,MACxC,+DAAgE,MAChE,6DAA8D,MAC9D,0EAA2E,MAC3E,+CAAgD,MAChD,iFAAkF,MAClF,gEAAiE,MACjE,oDAAqD,MACrD,4EAA6E,MAC7E,4EAA6E,MAC7E,yGAA0G,MAC1G,6EAA8E,KAC9E,2GAA4G,MAC5G,4EAA6E,KAC7E,yGAA0G,MAC1G,2EAA4E,MAC5E,uGAAwG,MACxG,sEAAuE,MACvE,6FAA8F,MAC9F,0EAA2E,MAC3E,yEAA0E,MAC1E,mGAAoG,MACpG,6EAA8E,IAC9E,2GAA4G,MAC5G,mFAAoF,MACpF,uHAAwH,MACxH,2EAA4E,MAC5E,uGAAwG,MACxG,2EAA4E,MAC5E,6EAA8E,MAC9E,2GAA4G,MAC5G,kEAAmE,MACnE,kEAAmE,MACnE,qFAAsF,MACtF,0EAA2E,MAC3E,qGAAsG,MACtG,qEAAsE,MACtE,2FAA4F,MAC5F,yEAA0E,MAC1E,wDAAyD,MACzD,2DAA4D,MAC5D,yEAA0E,MAC1E,wCAAyC,KACzC,wDAAyD,MACzD,6EAA8E,MAC9E,gCAAiC,MACjC,6GAA8G,MAC9G,gFAAiF,MACjF,gFAAiF,MACjF,qEAAsE,MACtE,wDAAyD,KACzD,iGAAkG,MAClG,wEAAyE,MACzE,wEAAyE,MACzE,6DAA8D,KAC9D,oDAAqD,MACrD,qCAAsC,MACtC,kDAAmD,KACnD,qDAAsD,MACtD,iDAAkD,MAClD,4FAA6F,KAC7F,8DAA+D,MAC/D,2CAA4C,MAC5C,uGAAwG,MACxG,0EAA2E,MAC3E,4FAA6F,MAC7F,oEAAqE,MACrE,mGAAoG,MACpG,wEAAyE,MACzE,6DAA8D,MAC9D,iEAAkE,MAClE,kDAAmD,MACnD,mEAAoE,MACpE,mDAAoD,MACpD,sDAAuD,MACvD,gEAAiE,MACjE,iEAAkE,MAClE,yDAA0D,MAC1D,qDAAsD,MACtD,yCAA0C,MAC1C,2DAA4D,MAC5D,2CAA4C,MAC5C,2DAA4D,MAC5D,2DAA4D,KAC5D,mDAAoD,KACpD,+CAAgD,MAChD,sDAAuD,MACvD,4DAA6D,MAC7D,oDAAqD,MACrD,2EAA4E,MAC5E,4DAA6D,MAC7D,+CAAgD,MAChD,2CAA4C,MAC5C,wDAAyD,MACzD,kEAAmE,MACnE,gDAAiD,MACjD,0DAA2D,MAC3D,uDAAwD,KACxD,gFAAiF,MACjF,mDAAoD,MACpD,2EAA4E,MAC5E,mDAAoD,MACpD,2DAA4D,KAC5D,mDAAoD,MACpD,+CAAgD,MAChD,2CAA4C,MAC5C,iDAAkD,MAClD,6CAA8C,MAC9C,qDAAsD,MACtD,iDAAkD,MAClD,6CAA8C,MAC9C,iDAAkD,KAClD,gCAAiC,MACjC,eAAgB,OAIjB,SAASC,EAAeC,GACvB,IAAIC,EAAKC,EAAsBF,GAC/B,OAAOG,EAAoBF,GAE5B,SAASC,EAAsBF,GAC9B,IAAIG,EAAoBC,EAAEN,EAAKE,GAAM,CACpC,IAAIK,EAAI,IAAIC,MAAM,uBAAyBN,EAAM,KAEjD,MADAK,EAAEE,KAAO,mBACHF,EAEP,OAAOP,EAAIE,GAEZD,EAAeS,KAAO,WACrB,OAAOC,OAAOD,KAAKV,IAEpBC,EAAeW,QAAUR,EACzBS,EAAOC,QAAUb,EACjBA,EAAeE,GAAK,O,uCCj8BhBY,E,WAEJ,SAASC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAiBtU,IAba,SAAgBS,GAC3B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,goBACHF,KAAM,gB,uCCfNnB,E,WAEJ,SAASC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAiBtU,IAbc,SAAiBS,GAC7B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,yUACHF,KAAM,gB,uCCfNnB,EAAOsB,E,WAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAsBtU,IAlBc,SAAiBS,GAC7B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,uJACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEC,SAAU,UACVC,SAAU,UACVH,EAAG,s3BACHF,KAAM,gB,uCCpBNnB,EAAOsB,E,WAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAsBtU,IAlBkB,SAAqBS,GACrC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,uJACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEC,SAAU,UACVC,SAAU,UACVH,EAAG,ovBACHF,KAAM,gB,uCCpBNnB,EAAOsB,E,WAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAsBtU,IAlB0B,SAA6BS,GACrD,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,uJACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEC,SAAU,UACVC,SAAU,UACVH,EAAG,ioCACHF,KAAM,gB,uCCpBNnB,EAAOsB,E,WAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAsBtU,IAlBmB,SAAsBS,GACvC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,uJACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEC,SAAU,UACVC,SAAU,UACVH,EAAG,6pCACHF,KAAM,gB,uCCpBNM,EAAQzB,EAAOsB,E,WAEnB,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA+BtU,IA3Ba,SAAgBS,GAC3B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDb,GAAI,mBACJgC,MAAO,6BACPM,EAAG,EACHC,EAAG,EACHT,QAAS,cACTU,MAAO,CACLC,iBAAkB,mBAEpBC,SAAU,WACVd,MAAO,MACPC,OAAQ,OACPF,GAAQU,IAAWA,EAAsB,gBAAoB,QAAS,KAAM,iEAA+E,gBAAoB,OAAQ,CACxLJ,EAAG,srEACHO,MAAO,CACLT,KAAM,aAENnB,IAAUA,EAAqB,gBAAoB,OAAQ,CAC7D+B,UAAW,eACXV,EAAG,0LACAC,IAAWA,EAAsB,gBAAoB,OAAQ,CAChES,UAAW,eACXV,EAAG,0K,uCC7BHrB,EAAOsB,EAAQU,EAAQC,EAAQC,E,WAEnC,SAASjC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAuEtU,IAnEe,SAAkBS,GAC/B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,8OACHF,KAAM,wBACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,+HACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,ySACHF,KAAM,wBACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,sQACHF,KAAM,wBACHe,IAAUA,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,iBAAkB,CACvH9C,GAAI,eACJ+C,GAAI,OACJC,GAAI,MACJC,GAAI,MACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CC,UAAW,YACI,gBAAoB,OAAQ,CAC3CC,OAAQ,EACRD,UAAW,aACK,gBAAoB,iBAAkB,CACtDpD,GAAI,eACJ+C,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CG,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,MACE,gBAAoB,OAAQ,CAC3CD,OAAQ,EACRC,YAAa,KACG,gBAAoB,iBAAkB,CACtDtD,GAAI,eACJ+C,GAAI,OACJC,GAAI,MACJC,GAAI,OACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CC,UAAW,YACI,gBAAoB,OAAQ,CAC3CC,OAAQ,EACRD,UAAW,kB,uCCrEXG,E,WAEJ,SAAS1C,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAkBtU,IAdc,SAAiBS,GAC7B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDmB,MAAO,6BACPJ,MAAO,MACPC,OAAQ,MACRC,QAAS,sBACTY,SAAU,YACTf,GAAQ4B,IAAOA,EAAkB,gBAAoB,IAAK,CAC3DxB,KAAM,WACQ,gBAAoB,OAAQ,CAC1CE,EAAG,69C,uCChBHsB,E,WAEJ,SAAS1C,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAoBtU,IAhBsB,SAAyBS,GAC7C,OAAoB,gBAAoB,MAAOd,EAAS,CACtDgB,OAAQ,MACRD,MAAO,MACPI,MAAO,6BACPF,QAAS,0BACRH,GAAQ4B,IAAOA,EAAkB,gBAAoB,IAAK,CAC3DxB,KAAM,UACNI,SAAU,WACI,gBAAoB,OAAQ,CAC1CF,EAAG,6OACY,gBAAoB,OAAQ,CAC3CA,EAAG,sG,uCClBHsB,EAAIT,E,WAER,SAASjC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA2HtU,IAvHuB,SAA0BS,GAC/C,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ4B,IAAOA,EAAkB,gBAAoB,IAAK,CAC3DC,SAAU,+BACI,gBAAoB,OAAQ,CAC1CvB,EAAG,mwDACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,6tBACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,2oBACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,04BACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,q7BACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,iQACHF,KAAM,SACS,gBAAoB,OAAQ,CAC3CE,EAAG,8XACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wQACHF,KAAM,SACS,gBAAoB,OAAQ,CAC3CE,EAAG,kRACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,uJACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wKACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,qLACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,+7DACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,6hBACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,8fACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,2VACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,ibACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wgBACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,ylCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,+SACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,0LACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,6KACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,gLACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,k7DACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,+NACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,oNACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,uMACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,oMACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,0UACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,yMACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,kMACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,yKACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,qMACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,kyHACHF,KAAM,cACFe,IAAUA,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH9C,GAAI,yBACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACNE,EAAG,+B,uCCzHHrB,EAAOsB,E,WAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAoBtU,IAhBgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,gjBACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,orCACHF,KAAM,gB,uCClBNwB,EAAIT,E,WAER,SAASjC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAkFtU,IA9Ea,SAAgBS,GAC3B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ4B,IAAOA,EAAkB,gBAAoB,IAAK,CAC3DC,SAAU,oBACI,gBAAoB,OAAQ,CAC1CvB,EAAG,wJACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wJACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,0TACHF,KAAM,SACS,gBAAoB,OAAQ,CAC3CE,EAAG,yUACHF,KAAM,SACS,gBAAoB,OAAQ,CAC3CE,EAAG,wCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,0CACHF,KAAM,SACS,gBAAoB,OAAQ,CAC3CE,EAAG,sCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,2EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,uCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,2EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,2EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,4EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,4EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,uCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,4EACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,wCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,4EACHF,KAAM,cACFe,IAAUA,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH9C,GAAI,cACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACN0B,UAAW,qBACXxB,EAAG,gC,uCChFHrB,E,WAEJ,SAASC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAmBtU,IAfgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,gBACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEuB,SAAU,UACVC,SAAU,UACVH,EAAG,i0BACHF,KAAM,gB,uCCjBNnB,EAAOsB,EAAQU,EAAQC,EAAQa,EAAQC,EAAQC,E,WAEnD,SAAS/C,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAmCtU,IA/BgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,8CACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,+CACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,iFACHF,KAAM,aACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,mEACHF,KAAM,aACH2B,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEzB,EAAG,6CACHF,KAAM,aACH4B,IAAWA,EAAsB,gBAAoB,OAAQ,CAChE1B,EAAG,mFACHF,KAAM,aACH6B,IAAWA,EAAsB,gBAAoB,OAAQ,CAChE3B,EAAG,mEACHF,KAAM,gB,uCCjCNnB,EAAOsB,EAAQU,EAAQC,E,WAE3B,SAAShC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAyBtU,IArBgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDiB,QAAS,YACTF,MAAO,MACPC,OAAQ,MACRG,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEmB,KAAM,UACNE,EAAG,8HACAC,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEH,KAAM,UACNE,EAAG,qJACAW,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEb,KAAM,UACNE,EAAG,8GACAY,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEd,KAAM,UACNE,EAAG,uJ,sCCvBHrB,EAAOsB,EAAQU,EAAQC,E,WAE3B,SAAShC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA0BtU,IAtBqB,SAAwBS,GAC3C,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTE,MAAO,6BACP6B,oBAAqB,YACpBlC,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,kNACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,2SACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,mJACHF,KAAM,aACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,qQACHF,KAAM,gB,uCCxBNwB,EAAIT,E,WAER,SAASjC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA2BtU,IAvBc,SAAiBS,GAC7B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ4B,IAAOA,EAAkB,gBAAoB,IAAK,CAC3DC,SAAU,qBACI,gBAAoB,OAAQ,CAC1CvB,EAAG,qhBACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,YACXlB,IAAUA,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH9C,GAAI,eACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACN0B,UAAW,mBACXxB,EAAG,wB,uCCzBHrB,EAAOsB,EAAQU,E,WAEnB,SAAS/B,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAuBtU,IAnBoB,SAAuBS,GACzC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,k8DACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,08FACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,0hDACHF,KAAM,gB,uCCrBNnB,EAAOsB,EAAQU,E,WAEnB,SAAS/B,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAsBtU,IAlBgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDmB,MAAO,6BACPJ,MAAO,MACPC,OAAQ,MACRC,QAAS,aACRH,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,gfACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,6QACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,+6EACHF,KAAM,gB,uCCpBNnB,EAAOsB,EAAQU,EAAQC,E,WAE3B,SAAShC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA0BtU,IAtBmB,SAAsBS,GACvC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,sCACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,2CACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,wCACHF,KAAM,aACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,6CACHF,KAAM,gB,uCCxBNnB,E,WAEJ,SAASC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAiBtU,IAbe,SAAkBS,GAC/B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,2LACHF,KAAM,gB,kDCfV,SAASlB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA4WtU,IAxWkB,SAAqBS,GACrC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDmB,MAAO,6BACPF,QAAS,oBACTF,MAAO,MACPC,OAAQ,OACPF,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,iBAAkB,CAC3G3B,GAAI,kBACJkD,GAAI,OACJC,cAAe,iBACfF,GAAI,OACJgB,kBAAmB,0CACnBjB,GAAI,OACJD,GAAI,QACU,gBAAoB,OAAQ,CAC1CP,MAAO,CACLY,UAAW,QAEbC,OAAQ,IACO,gBAAoB,OAAQ,CAC3Cb,MAAO,CACLY,UAAW,OACXE,YAAa,GAEfD,OAAQ,KACQ,gBAAoB,iBAAkB,CACtDrD,GAAI,kBACJkD,GAAI,OACJC,cAAe,iBACfF,GAAI,OACJgB,kBAAmB,0CACnBjB,GAAI,OACJD,GAAI,QACU,gBAAoB,OAAQ,CAC1CP,MAAO,CACLY,UAAW,QAEbC,OAAQ,IACO,gBAAoB,OAAQ,CAC3Cb,MAAO,CACLY,UAAW,OACXE,YAAa,GAEfD,OAAQ,KACQ,gBAAoB,iBAAkB,CACtDrD,GAAI,kBACJkD,GAAI,OACJC,cAAe,iBACfF,GAAI,OACJgB,kBAAmB,0CACnBjB,GAAI,OACJD,GAAI,OACU,gBAAoB,OAAQ,CAC1CP,MAAO,CACLY,UAAW,WAEbC,OAAQ,IACO,gBAAoB,OAAQ,CAC3Cb,MAAO,CACLY,UAAW,UACXE,YAAa,GAEfD,OAAQ,KACQ,gBAAoB,iBAAkB,CACtDrD,GAAI,kBACJkD,GAAI,OACJC,cAAe,iBACfF,GAAI,OACJgB,kBAAmB,0CACnBjB,GAAI,OACJD,IAAK,QACS,gBAAoB,OAAQ,CAC1CP,MAAO,CACLY,UAAW,WAEbC,OAAQ,IACO,gBAAoB,OAAQ,CAC3Cb,MAAO,CACLY,UAAW,UACXE,YAAa,GAEfD,OAAQ,KACQ,gBAAoB,iBAAkB,CACtDrD,GAAI,kBACJkD,GAAI,OACJC,cAAe,iBACfF,GAAI,OACJD,GAAI,OACJD,GAAI,QACU,gBAAoB,OAAQ,CAC1CP,MAAO,CACLY,UAAW,WAEbC,OAAQ,IACO,gBAAoB,OAAQ,CAC3Cb,MAAO,CACLY,UAAW,UACXE,YAAa,GAEfD,OAAQ,MACS,gBAAoB,OAAQ,CAC7CpB,EAAG,olCACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,UAEO,gBAAoB,IAAK,CACxCS,MAAO,CACLsB,OAAQ,YAEI,gBAAoB,OAAQ,CAC1C7B,EAAG,gDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,GACbhC,KAAM,QAER0B,UAAW,6CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,iDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,qDACI,gBAAoB,OAAQ,CAC3CxB,EAAG,kDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,4DACI,gBAAoB,OAAQ,CAC3CxB,EAAG,mDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,yDACI,gBAAoB,OAAQ,CAC3CxB,EAAG,gDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,2DACI,gBAAoB,OAAQ,CAC3CxB,EAAG,kDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,+CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,gDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,KACbhC,KAAM,QAER0B,UAAW,+CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,6WACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,GACbhC,KAAM,QAER0B,UAAW,4CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,iDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,mDACI,gBAAoB,OAAQ,CAC3CxB,EAAG,kDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,6CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,kDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,QAER0B,UAAW,6CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,mDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,GACbhC,KAAM,QAER0B,UAAW,mDACK,gBAAoB,OAAQ,CAC5CxB,EAAG,w+EACHO,MAAO,CACLT,KAAM,2BAEO,gBAAoB,OAAQ,CAC3CE,EAAG,q+GACHO,MAAO,CACLT,KAAM,2BAEO,gBAAoB,IAAK,CACxCS,MAAO,CACLsB,OAAQ,YAEI,gBAAoB,OAAQ,CAC1C7B,EAAG,yDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,EACbhC,KAAM,QAER0B,UAAW,4CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,gDACHO,MAAO,CACLsB,OAAQ,UACR/B,KAAM,QAER0B,UAAW,8CACI,gBAAoB,OAAQ,CAC3CxB,EAAG,iDACHO,MAAO,CACLsB,OAAQ,UACR/B,KAAM,QAER0B,UAAW,8CACK,gBAAoB,OAAQ,CAC5CxB,EAAG,kDACHO,MAAO,CACLsB,OAAQ,OACRC,YAAa,MACbhC,KAAM,2BAEO,gBAAoB,OAAQ,CAC3CE,EAAG,uJACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,UAEO,gBAAoB,IAAK,CACxCS,MAAO,CACL0B,QAAS,IACTJ,OAAQ,YAEI,gBAAoB,OAAQ,CAC1C7B,EAAG,4EACHO,MAAO,CACL0B,QAAS,IACTJ,OAAQ,UACR/B,KAAM,QAER0B,UAAW,2DACI,gBAAoB,OAAQ,CAC3CxB,EAAG,gGACHO,MAAO,CACL0B,QAAS,IACTJ,OAAQ,UACR/B,KAAM,QAER0B,UAAW,6CACK,gBAAoB,OAAQ,CAC5CxB,EAAG,6VACHO,MAAO,CACL0B,QAAS,MACTJ,OAAQ,UACRC,YAAa,OACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,2KACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,4EACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,MACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,kUACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,UAEO,gBAAoB,OAAQ,CAC3CE,EAAG,wEACHO,MAAO,CACLsB,OAAQ,wBACRC,YAAa,OACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,o6BACHO,MAAO,CACL0B,QAAS,IACTC,cAAe,OACfL,OAAQ,UACRC,YAAa,OACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,miDACHO,MAAO,CACL0B,QAAS,IACTnC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,wyDACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,UAEO,gBAAoB,OAAQ,CAC3CE,EAAG,sLACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,OACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,mFACHO,MAAO,CACLsB,OAAQ,UACRC,YAAa,MACbhC,KAAM,aAEO,gBAAoB,OAAQ,CAC3CE,EAAG,uEACHO,MAAO,CACLsB,OAAQ,wBACRC,YAAa,OACbhC,KAAM,gB,uCCvWRnB,EAAOsB,EAAQU,EAAQC,EAAQa,E,WAEnC,SAAS7C,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WA6BtU,IAzBgB,SAAmBS,GACjC,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,oPACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,yNACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEX,EAAG,oGACHF,KAAM,aACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,mHACHF,KAAM,aACH2B,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEzB,EAAG,oGACHF,KAAM,gB,uCC3BNnB,EAAOsB,EAAQU,EAAQC,E,WAE3B,SAAShC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAkCtU,IA9Bc,SAAiBS,GAC7B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEuB,SAAU,UACVC,SAAU,UACVH,EAAG,4EACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEC,SAAU,UACVC,SAAU,UACVH,EAAG,4EACHF,KAAM,aACHa,IAAWA,EAAsB,gBAAoB,OAAQ,CAChET,SAAU,UACVC,SAAU,UACVH,EAAG,mHACHF,KAAM,aACHc,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEV,SAAU,UACVC,SAAU,UACVH,EAAG,sEACHF,KAAM,gB,siBC5BV,IASKqC,EATCC,EAAa,CACjB,SACA,aACA,MACA,YACA,QAkBK,SAASC,EAAmBC,EAAoBC,GACrDC,EAAmBL,EAAgBM,oBAAqBH,GACxDE,EAAmBL,EAAgBO,iBAAkBH,GAGhD,SAASI,EAAYC,GAC1BJ,EAAmBL,EAAgBU,kBAAmBD,GAGjD,SAASE,IACdC,EAAsBZ,EAAgBU,mBAGjC,SAASG,EAAoBJ,GAClCJ,EAAmBL,EAAgBc,0BAA2BL,GAGzD,SAASM,IACdH,EAAsBZ,EAAgBc,2BAGxC,SAAST,EAAmBW,EAAqBC,GAC/CC,EAAK,qBAAsBF,EAAaC,GAG1C,SAASL,EAAsBI,GAC7BE,EAAK,wBAAyBF,EAAYG,YAGrC,SAASD,EACdE,GAGA,GAAsB,oBAAXC,OAAwB,4BAFhCC,EAEgC,iCAFhCA,EAEgC,kBACjCD,OAAOE,KAAKL,KAAZ,CAAkBE,GAAlB,OAA2BE,KAIxB,SAASE,IACd,IAAMC,GAAiBC,EAAAA,EAAAA,IAAkB,CACvCC,OAAQ,SAACC,GAAD,OAAcA,EAASC,mBAGjC,MAAO,CAAEC,WAET,WACML,EAAeM,MACjBD,EAAU,WAAV,eAKC,SAASA,EAAWE,EAAgBC,GAWzC,IAAMhB,EAAUgB,EAAVhB,MACEiB,EAAmCD,EAAnCC,SAAUC,EAAyBF,EAAzBE,WAAYC,EAAaH,EAAbG,SAE9B,GAAInB,EAAO,CACT,IAAMoB,EAASC,SAASrB,EAAME,WAAY,IAC1CF,EAAQsB,OAAOC,MAAMH,GAAU,EAAIA,EAGrC,IAAKD,EACH,MAAM,IAAInG,MAAM,oBAGlB,IAAKgE,EAAWwC,SAASL,GACvB,MAAM,IAAInG,MAAM,wBAGlB,IAAIyG,EAAiB,GACrB,GAAIR,EAAU,CACZ,IAAMS,EAAqBvG,OAAOwG,YAChCxG,OAAOyG,QAAQX,GAAUzG,KAAI,gB,IAAA,G,EAAA,E,4CAAA,I,gxBAAEwB,EAAF,KAAOgE,EAAP,WAAkB,CAAC,IAAYhE,GAAMgE,OAEpEyB,EAAiBI,KAAKC,UAAUJ,GAAoBK,cAGtD9B,EACE,aACAkB,EACAJ,EAAOgB,cACPN,EACAzB,GAAS,GACTkB,GAA+B,K,SA3G9BnC,GAAAA,EAAAA,EAAAA,iBAAAA,GAAAA,mBAAAA,EAAAA,EAAAA,oBAAAA,GAAAA,sBAAAA,EAAAA,EAAAA,kBAAAA,GAAAA,oBAAAA,EAAAA,EAAAA,0BAAAA,GAAAA,4B,CAAAA,IAAAA,EAAAA,M,2FCXE,SAASiD,EAAQC,GACtB,OAAKA,EAGgC,IAAjCA,EAAUC,QAAQ,WACbD,EAAUE,UAAU,EAAG,IAEzB,IAAQF,EAAW,WAAW,GAL5B,K,sgBCKJ,WAA0BG,GAA1B,iHAEoBC,EAAAA,GAAAA,IACrBC,EAASF,EAAe,YAHvB,uBAEKtB,EAFL,EAEKA,KAFL,kBAKIA,GALJ,uCAOGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAe,8BAPjC,0D,uEAkBA,WAAuBH,GAAvB,iHAEoBC,EAAAA,GAAAA,IACrBC,EAASF,EAAe,SAHvB,uBAEKtB,EAFL,EAEKA,KAFL,kBAKIA,GALJ,uCAOGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAe,8BAPjC,0D,sBAWA,SAASC,EACdJ,EACA1B,GAEA,OAAO+B,EAAAA,EAAAA,UACL,CAAC,cAAeL,EAAe,SAAU,SACzC,kBAjBG,SAAP,kCAiBUM,CAAQN,KACd,CACE1B,OAAAA,IAIC,SAASiC,EACdP,EACA1B,GAEA,OAAO+B,EAAAA,EAAAA,UACL,CAAC,cAAeL,EAAe,SAAU,YACzC,kBA/CG,SAAP,kCA+CUQ,CAAWR,KACjB,CACE1B,OAAAA,IAKN,SAAS4B,EACPF,EACArB,GAEA,IADA8B,EACA,uDADY,GAERC,EAAM,cAAH,OAAiBV,EAAjB,mBAAyCrB,GAMhD,OAJI8B,IACFC,GAAO,IAAJ,OAAQD,IAGNC,I,0+BCjEF,IAAMC,GAAmC,EAQnCC,EAAmB,CAC9B,CAAEC,MAAO,uBAAwBjD,OAAQ,EAAGkD,WAAW,GACvD,CACElD,MAAO,EACPiD,MAAO,YAET,CACEjD,MAAO,GACPiD,MAAO,YAET,CACEjD,MAAO,KACPiD,MAAO,UAET,CACEjD,MAAO,MACPiD,MAAO,SAET,CACEjD,MAAO,OACPiD,MAAO,WAILE,EAAuB,CAC3BC,KAAM,CACJH,MAAO,gBACPI,QACE,4EAEJC,SAAU,CACRL,MAAO,oBACPI,QAAS,gEAEXE,QAAS,CACPN,MAAO,mBACPI,QACE,mFAYC,SAASG,EAAT,GAMG,IALRC,EAKQ,EALRA,SACAC,EAIQ,EAJRA,OAIQ,IAHRC,gBAAAA,OAGQ,aAFRC,SAAAA,OAEQ,aADRC,cAAAA,OACQ,MADQV,EACR,EACFW,GAAsBC,EAAAA,EAAAA,GAC1B,oBACAf,EACAW,GAGIK,GAA0BD,EAAAA,EAAAA,GAC9B,wBACAf,EACAW,GAGIM,GAAyBF,EAAAA,EAAAA,GAC7B,uBACAf,EACAW,GAGF,OACE,iCACE,SAAC,IAAD,CACEO,QAAQ,oBACRjB,MAAOY,EAAcT,KAAKH,MAC1BI,QAASQ,EAAcT,KAAKC,QAH9B,UAKE,SAAC,IAAD,CACErD,MAAO0D,EAAOS,aACdhE,KAAK,eACLsD,SAAUW,EACVpB,QAASc,EACTO,SAAUT,OAId,SAAC,IAAD,CACEM,QAAQ,wBACRjB,MAAOY,EAAcP,SAASL,MAC9BI,QAASQ,EAAcP,SAASD,QAHlC,UAKE,SAAC,IAAD,CACErD,MAAO0D,EAAOY,iBACdnE,KAAK,mBACLsD,SAAUW,EACVpB,QAASgB,EACTK,SAAUT,OAId,SAAC,IAAD,CACEM,QAAQ,uBACRjB,MAAOY,EAAcN,QAAQN,MAC7BI,QAASQ,EAAcN,QAAQF,QAHjC,UAKE,SAAC,IAAD,CACErD,MAAO0D,EAAOa,gBACdpE,KAAK,kBACLsD,SAAUW,EACVpB,QAASiB,EACTI,SAAUT,SAMlB,SAASQ,EAAarJ,GACpB0I,EAAS,EAAD,KAAMC,GAAN,QAAe3I,EAAEY,OAAOwE,KAAOkB,SAAStG,EAAEY,OAAOqE,MAAO,QAIpE,IAAMwE,EAAYxB,EAAQxI,KAAI,SAACiK,GAAD,OAAYA,EAAOzE,SAE1C,SAAS0E,IACd,OAAOC,EAAAA,EAAAA,IAAO,CACZR,cAAcS,EAAAA,EAAAA,MAASC,SAAS,2BAA2BC,MAAMN,GACjEF,kBAAkBM,EAAAA,EAAAA,MACfC,SAAS,2BACTC,MAAMN,GACTD,iBAAiBK,EAAAA,EAAAA,MACdC,SAAS,2BACTC,MAAMN,KAIN,IAAMO,GAAgCC,EAAAA,EAAAA,GAAIxB,EAAwB,CACvE,SACA,WACA,kBACA,WACA,mB,uKCjJWyB,EAAkC,CAC7C,CAAEhC,MAAO,uBAAwBjD,MAAO,EAAGkD,WAAW,GACtD,CACED,MAAO,YACPjD,MAAO,GAET,CACEiD,MAAO,aACPjD,MAAO,IAET,CACEiD,MAAO,aACPjD,MAAO,IAET,CAAEiD,MAAO,YAAajD,MAAO,KAC7B,CAAEiD,MAAO,SAAUjD,MAAO,MAC1B,CAAEiD,MAAO,QAASjD,MAAO,QAGpB,SAASkF,EAAT,GAOG,IANRlF,EAMQ,EANRA,MACA4D,EAKQ,EALRA,SACAH,EAIQ,EAJRA,SAIQ,IAHRE,gBAAAA,OAGQ,aAFRV,MAAAA,OAEQ,MAFA,iBAEA,MADRI,QAAAA,OACQ,MADE,2IACF,EACFL,GAAUe,EAAAA,EAAAA,GACd,2BACAkB,EACAtB,GAGF,OACE,SAAC,IAAD,CAAaO,QAAQ,eAAejB,MAAOA,EAAOI,QAASA,EAA3D,UACE,SAAC,IAAD,CACErD,MAAOA,EACPyD,SAAQ,+GAAE,SAAC1I,GACT0I,EAASpC,SAAStG,EAAEoK,cAAcnF,MAAO,QAE3CgD,QAASA,EACTqB,SAAUT,MAMX,IAAMwB,GAAkCJ,EAAAA,EAAAA,GAAIE,EAA0B,CAC3E,QACA,WACA,kBACA,UACA,QACA,c,wqCCvDK,SAASnB,EACdsB,EAKAC,EACA3B,GAEA,IAAgB4B,EAAhB,EAAkCD,EAAlC,MAAStF,MACT,KAA8BwF,EAAAA,EAAAA,UAAmBF,GAAjD,GAAOtC,EAAP,KAAgByC,EAAhB,KAEMC,GAAgBC,EAAAA,EAAAA,KACpB,SAAChF,GAAD,OAAc,IAAMA,EAAU0E,EAAW,MACxC1B,GAqCH,OAlCAiC,EAAAA,EAAAA,YAAU,WACJjC,GACF8B,EAAWH,EAAeO,MAAM,IAI/BlC,QAC6B,IAAvB+B,EAAc5E,MACrB4E,EAAc5E,OAASyE,GAEvBE,GAAW,SAACzC,GACV,I,EAAIC,EAAQ,GAAH,OAAMyC,EAAc5E,KAApB,YACH2D,EAASzB,EAAQ8C,MAAK,SAAChL,GAAD,OAAOA,EAAEkF,QAAU0F,EAAc5E,QAK7D,OAJI2D,IACFxB,EAAQwB,EAAOxB,OAGjB,CACE,CACEjD,MAAOuF,EACPtC,MAAO,yBAAF,OAA2BA,EAA3B,OAHT,O,+CAKKD,EAAQ6C,MAAM,K,2SAItB,CACDH,EAAc5E,KACd2E,EACA9B,EACA2B,EACAC,IAGKvC,I,mCCjEF,IAAK+C,E,yCAAAA,GAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,MAAAA,GAAAA,Q,CAAAA,IAAAA,EAAAA,M,icCML,SAASC,EAAoBC,GAAkC,M,EAC9DC,GAAqD,OACxDC,EAAAA,GAAAA,kBAAoC,CAACJ,EAAAA,EAAAA,UADmB,IAExDI,EAAAA,GAAAA,sBAAwC,CACvCJ,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,aAJuD,IAMxDI,EAAAA,GAAAA,iBAAmC,CAACJ,EAAAA,EAAAA,QANoB,GAS3D,OAAOE,EAAcnK,OACjB,iB,+CAAkBmK,EAAczL,KAAI,SAAC4L,GAAD,OAAUF,EAAME,Q,ikBACpD,CAACL,EAAAA,EAAAA,QAAoBA,EAAAA,EAAAA,WAAuBA,EAAAA,EAAAA,S,+GCd3C,SAASM,EAAiBC,GAC/B,OAAO3B,EAAAA,EAAAA,MACJ4B,MAAM,CACLC,WAAWC,EAAAA,EAAAA,MACR3B,MAAM3J,OAAOuI,OAAOgD,EAAAA,IACpB7B,WACH8B,iBAAiBC,EAAAA,EAAAA,KAAMhC,EAAAA,EAAAA,OACvBiC,iBAAiBD,EAAAA,EAAAA,KAAMhC,EAAAA,EAAAA,SAExBkC,KACC,gBACAR,EACI,8CACA,uCACJ,YAAqD,IAAlDE,EAAkD,EAAlDA,UAAWK,EAAuC,EAAvCA,gBAAiBF,EAAsB,EAAtBA,gBAC7B,OAAIH,IAAcE,EAAAA,EAAAA,aAIbJ,IAKDO,KACAF,IACDE,EAAgB/K,OAAS,GAAK6K,EAAgB7K,OAAS,KAN/C+K,GAAmBA,EAAgB/K,OAAS,Q,waCCxD,SAASiL,EAAT,GAGG,IAsKkBC,EAfAC,EAzJ1BC,EAEQ,EAFRA,gBAGMC,EAiER,SACEC,EACAF,GAEA,IAAKA,GAAmBA,EAAgBG,OAASD,EAC/C,OAAO,KAGT,IAAME,EAAaJ,EAAgBG,KAC7BE,EAAaL,EAAgBM,WAEnC,OACEJ,IAAiBK,EAAAA,EAAAA,WACjBH,IAAeG,EAAAA,EAAAA,SAGb,UAACC,EAAD,CAAoBrE,QAAQ,yFAA5B,sFAEE,SAACsE,EAAA,EAAD,CAAMC,GAAG,0BAA0BC,OAAQ,CAAElN,GAAI4M,GAAjD,UACGO,EAAAA,EAAAA,UAASP,QAOhBH,IAAiBK,EAAAA,EAAAA,QACjBH,IAAeG,EAAAA,EAAAA,WAGb,UAACC,EAAD,CAAoBrE,QAAQ,6HAA5B,wFAGE,SAACsE,EAAA,EAAD,CAAMC,GAAG,8BAA8BC,OAAQ,CAAElN,GAAI4M,GAArD,UACGO,EAAAA,EAAAA,UAASP,QAMdD,IAAeG,EAAAA,EAAAA,OAEf,UAACC,EAAD,CAAoBrE,QAAQ,mFAA5B,WACE,iBAAM/F,UAAU,cAAhB,oFAGCyK,EAAoCR,MAKpC,KApHoBS,CADnB,EADRZ,aAIEF,GAGF,EAIIA,GAAmB,GAJvB,IACEe,UAAWzB,OADb,MACyBE,EAAAA,EAAAA,eADzB,MAEEwB,aAAcC,OAFhB,MAEoC,GAFpC,MAGEC,aAAcC,OAHhB,MAGoC,GAHpC,EAMMC,GA0JoBtB,EA1JOmB,EAAkB3N,KAAI,SAAC+N,GAAD,OAAQA,EAAGC,WA2J3DC,EAAAA,EAAAA,KAAS,EAAOzB,EAAkBlL,OAAS,GAAG,SAACwM,GACpD,OAAiC,IAA7BtB,EAAkBlL,OACb,GAGF,IACLkL,EAAkBxM,KAAI,SAACG,GACrB,IAAM+N,EAAOJ,EAAMxC,MAAK,SAAC6C,GAAD,OAAOA,EAAEC,KAAOjO,KACxC,OAAO+N,MAAAA,OAAP,EAAOA,EAAMG,iBAlKbC,GA0IoB7B,EA1IOoB,EAAkB7N,KAAI,SAAC+N,GAAD,OAAQA,EAAGQ,WA2I3DC,EAAAA,EAAAA,GAAS/B,EAAkBnL,OAAS,GAAG,SAACgN,GAC7C,OAAiC,IAA7B7B,EAAkBnL,OACb,GAGF,IACLmL,EAAkBzM,KAAI,SAACG,GACrB,IAAMsO,EAAOH,EAAMhD,MAAK,SAAC6C,GAAD,OAAOA,EAAEC,KAAOjO,KACxC,OAAOsO,MAAAA,OAAP,EAAOA,EAAMC,aAjJnB,OACE,kBAAO5L,UAAU,QAAjB,UACE,8BACE,gBAAI,UAAQ,mBAAZ,WACE,uCACA,2BACE,cACEA,WAAW6L,EAAAA,EAAAA,IAAKC,EAAAA,EAAAA,eAAc5C,GAAY,eAC1C,cAAY,OACZ,aAAW,oBAEb,iBAAM,aAAW,YAAjB,SAA8BA,KAC9B,SAAC6C,EAAA,EAAD,CAASC,QAASC,EAAoB/C,WAGzCW,EACAgB,EAAkBrM,OAAS,IAC1B,gBAAI,UAAQ,yBAAZ,WACE,8CACA,eAAI,aAAW,mBAAf,SACGwM,EAAMxH,MAAQwH,EAAMxH,KAAK0I,KAAK,WAIpCnB,EAAkBvM,OAAS,IAC1B,gBAAI,UAAQ,yBAAZ,WACE,8CACA,eAAI,aAAW,mBAAf,SACGgN,EAAMhI,MAAQgI,EAAMhI,KAAK0I,KAAK,gBAS7C,SAASD,EAAoB/C,GAC3B,OAAQA,GACN,KAAKE,EAAAA,EAAAA,QACH,MAAO,8DACT,KAAKA,EAAAA,EAAAA,WACH,MAAO,0EACT,KAAKA,EAAAA,EAAAA,OACH,MAAO,4EACT,KAAKA,EAAAA,EAAAA,eACL,QACE,MAAO,wDA0Db,SAASqB,EAAoC0B,GAC3C,IAAKA,GAAkC,iBAAdA,EACvB,OAAOA,EAGT,IAAMC,EAAsBD,EAAUvH,QAAQ,KAC9C,OAAIwH,EAAsB,EACjBD,EAEFA,EAAUtH,UAAUuH,EAAsB,GAOnD,SAAShC,EAAT,GAG+C,IAF7CiC,EAE6C,EAF7CA,SACAtG,EAC6C,EAD7CA,QAEA,OACE,yBACE,gBAAIuG,QAAS,EAAG,aAAW,sBAA3B,WACE,cAAGtM,UAAU,gCAAgC,cAAY,SACxDqM,GACD,SAACN,EAAA,EAAD,CAASC,QAASjG,S,8aC5InB,SAASwG,EAAT,GAMG,IALRtC,EAKQ,EALRA,WACAH,EAIQ,EAJRA,aACAF,EAGQ,EAHRA,gBACA4C,EAEQ,EAFRA,cACAC,EACQ,EADRA,gBAEQzD,GAAY0D,EAAAA,EAAAA,MAAZ1D,QAEF2D,GAAeC,EAAAA,EAAAA,cACnB,SAACC,GAAD,OACEC,EAAAA,EAAAA,GACEhD,EACAG,EACA4C,EACAjD,KAEJ,CACEmD,KAAM,CACJC,MAAO,CAAEC,MAAO,UAAWjB,QAAS,oCAEtCkB,UAJF,WAKI,OAAOT,OAKPU,EAAgB,CACpBC,eAAeC,EAAAA,EAAAA,GAA2BrE,EAASY,IAGrD,OACE,SAAC,KAAD,CACEuD,cAAeA,EACfG,SA5BI,4CA6BJC,iBAAe,EACfC,kBAAgB,EAChBzE,iBAAkB,kBAChB1B,EAAAA,EAAAA,IAAO,CAAE+F,eAAerE,EAAAA,EAAAA,GAAiBC,MAN7C,SASG,gBAAGyE,EAAH,EAAGA,cAAerH,EAAlB,EAAkBA,OAAQsH,EAA1B,EAA0BA,aAAcC,EAAxC,EAAwCA,QAASC,EAAjD,EAAiDA,OAAjD,OACC,UAAC,KAAD,CAAM5N,WAAW6L,EAAAA,EAAAA,GAAK,kBC1EP,uFD0Ef,WACE,SAACgC,EAAA,EAAD,CACE1H,SAAU,SAACiH,GAAD,OACRK,EAAc,gBAAiBL,IAEjChH,OAAQA,EAAOgH,cACfU,iBAAe,EACfF,OAAQA,EAAOR,iBAGjB,gBAAKpN,UAAU,aAAf,UACE,iBAAKA,UAAU,YAAf,WACE,SAAC,KAAD,CAAQ+N,KAAK,QAAQC,MAAM,UAAUC,QAASzB,EAA9C,qBAGA,SAAC0B,EAAA,EAAD,CACEH,KAAK,QACLC,MAAM,UACNlF,KAAK,SACLqF,UAAWT,EACX3G,UAAW4G,EACXS,YAAY,qBANd,yCAnDJ,iDAoER,2GACEhB,EADF,EACEA,cADF,SAK0BiB,IAL1B,kEAUE1B,EAAa2B,OAAOlB,EAAe,CACjCF,UADiC,YAE/BqB,EAAAA,EAAAA,IAAc,UAAW,0CAZ/B,4CApEQ,uBAsFV,SAASF,IACP,OAAOG,EAAAA,EAAAA,IAAa,CAClBvB,MAAO,gBACPjB,QACE,kGACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,mBACP3F,UAAW,kB,saE5GZ,SAAS2O,EAAT,GAMG,I,IALR/E,EAKQ,EALRA,gBACAE,EAIQ,EAJRA,aACA8E,EAGQ,EAHRA,uBACA3E,EAEQ,EAFRA,WACAwC,EACQ,EADRA,gBAEA,G,GAAqCoC,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAYA,KAAO,G,EAAnE,E,8zBAAOC,EAAP,KAAmBC,EAAnB,KACQhG,GAAY0D,EAAAA,EAAAA,MAAZ1D,QAEFiG,EAkDN,WACE,IAAKrF,EACH,OAAO,EAGT,IAAMsF,EACJtF,EAAgBG,OAASI,EAAAA,EAAAA,WACzBL,IAAiBK,EAAAA,EAAAA,OACbgF,EACJvF,EAAgBG,OAASI,EAAAA,EAAAA,SACzBL,IAAiBK,EAAAA,EAAAA,UACbiF,EACJxF,EAAgBG,OAASI,EAAAA,EAAAA,OACzBL,IAAiBK,EAAAA,EAAAA,MAEnB,OAAO+E,GAAmBC,GAAsBC,EAjE9BC,GAEpB,EAmEF,SAAyBzF,GACvB,OAA0B8C,EAAAA,EAAAA,MAAlBtB,EAAR,EAAQA,KAAMpC,EAAd,EAAcA,QAERsG,GAAcC,EAAAA,EAAAA,IAAkBnE,EAAKE,IAE3C,IAAK1B,GAAmBZ,EACtB,MAAO,CACLwG,yBAAyB,EACzBC,8BAA8B,GAIlC,GAAI7F,EAAgBgB,aAAa8E,MAAK,SAACC,GAAD,OAAQA,EAAGzE,SAAWE,EAAKE,MAC/D,MAAO,CACLkE,yBAAyB,EACzBC,8BAA8B,GAIlC,IAAMG,EACJN,EAAYO,WAUhB,SACEC,EACAlG,GAEA,OAAOkG,EAAgBJ,MACrB,SAACK,GAAD,OACEA,EAAWC,OAASA,EAAAA,EAAAA,YACpBpG,EAAgBkB,aAAa4E,MAAK,SAACO,GAAD,OAAQA,EAAGxE,SAAWsE,EAAWG,aAhBrET,CAA6BH,EAAY9L,KAAMoG,GAEjD,MAAO,CACL4F,yBAAyB,EACzBC,6BAA8BG,GA3F9BO,CAAgBvG,GADV4F,EAAR,EAAQA,wBAAyBC,EAAjC,EAAiCA,6BAG3BW,EACJxB,GACAK,IACEjG,IAAYwG,IAA4BC,EAE5C,OACE,gBAAKzP,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAAC,KAAD,YACE,SAAC,KAAD,CAAY2F,MAAM,iBAAiB0K,KAAK,MAAMC,aAAW,KACzD,SAAC7G,EAAD,CACEK,aAAcA,EACdF,gBAAiBA,KAGjBwG,IAAmBrB,IACnB,gBAAK/O,UAAU,MAAf,UACE,0BACE,UAAC,KAAD,CAAQgO,MAAM,OAAOC,QAASe,EAA9B,WACE,SAACuB,EAAA,EAAD,CAAMF,KAAK,OAAOrQ,UAAU,cAAcwQ,SAAO,IADnD,0BAQLzB,IACC,SAACxC,EAAD,CACE3C,gBAAiBA,EACjB4C,cAAe,kBAAMwC,KACrB/E,WAAYA,EACZH,aAAcA,EACd2C,gBAzCJ,qGAiDR,6GACQA,IADR,OAEEuC,IAFF,4CAjDQ,uBAkHH,IAAMyB,GAA4B/I,EAAAA,EAAAA,GAAIiH,EAAoB,CAC/D,kBACA,eACA,yBACA,aACA,qB,8QCxIK,SAAS+B,EAAT,GAAqE,IAA/C7N,EAA+C,EAA/CA,KAAMmI,EAAyC,EAAzCA,MAAOtI,EAAkC,EAAlCA,MAAOyD,EAA2B,EAA3BA,SAAUyH,EAAiB,EAAjBA,OACzD,OACE,SAAC+C,EAAA,EAAD,CACEhL,MAAM,mBACNI,QACEiF,EAAMxM,OAAS,EACX,0EACAoS,EAENhK,QAAQ,iBACRgH,OAAQA,EARV,SAUG5C,EAAMxM,OAAS,GACd,SAACqS,EAAA,EAAD,CACEhO,KAAMA,EACNmI,MAAOA,EACP7E,SAAUA,EACVzD,MAAOA,EACPkE,QAAQ,oBAGV,kBAAM5G,UAAU,mBAAhB,kEAEE,SAACqK,EAAA,EAAD,CAAMC,GAAG,kBAAT,wBAFF,yB,kDCrBD,SAASwG,EAAT,GAQG,IAPRjO,EAOQ,EAPRA,KACAH,EAMQ,EANRA,MACAyD,EAKQ,EALRA,SACAqF,EAIQ,EAJRA,MACAuF,EAGQ,EAHRA,OACAnK,EAEQ,EAFRA,QACAoK,EACQ,EADRA,YAEA,OACE,SAAC,IAAD,CACEnO,KAAMA,EACNoO,SAAO,EACPC,eAAgB,SAACvF,GAAD,OAAUA,EAAKC,MAC/BuF,eAAgB,SAACxF,GAAD,OAAUyF,OAAOzF,EAAKL,KACtC5F,QAAS8F,EACT9I,MAAO8I,EAAM6F,QAAO,SAAC1F,GAAD,OAAUjJ,EAAMwB,SAASyH,EAAKL,OAClDgG,mBAAmB,EACnBnL,SAAQ,+GAAE,SAACoL,GAAD,OACRpL,EAASoL,EAAcrU,KAAI,SAACyO,GAAD,OAAUA,EAAKL,UAE5C,UAASyF,EACTnK,QAASA,EACToK,YAAaA,ICtBZ,SAASQ,EAAT,GAOG,IANR3O,EAMQ,EANRA,KACA2I,EAKQ,EALRA,MACA9I,EAIQ,EAJRA,MACA+O,EAGQ,EAHRA,gBACAtL,EAEQ,EAFRA,SACAyH,EACQ,EADRA,OAEA,OACE,SAAC+C,EAAA,EAAD,CACEhL,MAAM,mBACNI,QACEyF,EAAMhN,OAAS,EACXiT,GACA,0EACAb,EAENhK,QAAQ,iBACRgH,OAAQA,EATV,SAWGpC,EAAMhN,OAAS,GACd,SAACsS,EAAD,CACEjO,KAAMA,EACN2I,MAAOA,EACPrF,SAAUA,EACVzD,MAAOA,EACPkE,QAAQ,oBAGV,kBAAM5G,UAAU,mBAAhB,kEAEE,SAACqK,EAAA,EAAD,CAAMC,GAAG,kBAAT,wBAFF,yB,q7CChCR,IAAMoH,EAA4D,CAChEhP,MAAO0G,EAAAA,EAAAA,OACPzD,MAAO,SACPtI,GAAI,gBACJsU,YACE,qFACFtB,MAAM,SAACuB,EAAA,EAAD,CAAWvB,MAAMvE,EAAAA,EAAAA,eAAc,aAqBvC,SAAS+F,IACP,MAAO,EACLC,EAAAA,EAAAA,GACE,yBACA,SAACF,EAAA,EAAD,CAAWvB,MAAMvE,EAAAA,EAAAA,eAAc,oBAC/B,iBACA,4EACA1C,EAAAA,EAAAA,iBAEF0I,EAAAA,EAAAA,GACE,qBACA,SAACF,EAAA,EAAD,CAAWvB,MAAMvE,EAAAA,EAAAA,eAAc,gBAC/B,aACA,oFACA1C,EAAAA,EAAAA,aAIN,SAAS2I,EAAgBvG,GACvB,OAAO,IAAU,EACfsG,EAAAA,EAAAA,GACE,kBACA,SAACF,EAAA,EAAD,CAAWvB,MAAMvE,EAAAA,EAAAA,eAAc,aAC/B,UACA,0DACA1C,EAAAA,EAAAA,SAEFoC,GACEA,EAAMhN,OAAS,IACfsT,EAAAA,EAAAA,GACE,qBACA,SAACF,EAAA,EAAD,CAAWvB,MAAMvE,EAAAA,EAAAA,eAAc,gBAC/B,aACiB,IAAjBN,EAAMhN,OAAN,wCACqCgN,EAAM,GAAGI,KAD9C,yCAEI,gFACJxC,EAAAA,EAAAA,c,urBCpDD,SAASyE,EAAT,GAMG,IALRzH,EAKQ,EALRA,OACAD,EAIQ,EAJRA,SAIQ,IAHR2H,gBAAAA,OAGQ,SAFRF,EAEQ,EAFRA,OACAoE,EACQ,EADRA,cAEA,GAA0BtF,EAAAA,EAAAA,MAAlBtB,EAAR,EAAQA,KAAMpC,EAAd,EAAcA,QAEd,EC7BK,WACL,IAAMwC,GAAQE,EAAAA,EAAAA,KAERV,GAAQG,EAAAA,EAAAA,KAAS,GAEvB,MAAO,CACLK,MAAOA,EAAMhI,KACbwH,MAAOA,EAAMxH,KACb2K,UAAW3C,EAAM2C,WAAanD,EAAMmD,WDqBF8D,GAA5BjH,EAAR,EAAQA,MAAOQ,EAAf,EAAeA,MAAO2C,EAAtB,EAAsBA,UAChBzI,EDZD,SACLsD,EACAwC,GAEA,IADAsC,EACA,wDACA,KAA8B5F,EAAAA,EAAAA,UAE5B,IAFF,GAAOxC,EAAP,KAAgByC,EAAhB,KAUA,OANAG,EAAAA,EAAAA,YAAU,WACR,IAAM5C,EAAUsD,EAAU6I,IAAiBE,EAAgBvG,GAE3DrD,EAAW2F,EAAkB,GAAH,SAAOpI,GAAP,CAAgBgM,IAAgBhM,KACzD,CAACsD,EAASwC,EAAOsC,IAEbpI,ECHSwM,CAAWlJ,EAASwC,EAAOsC,GAErChH,GAAeqL,EAAAA,EAAAA,cACnB,SAACC,GACCjM,EAAS,EAAD,KAAMC,GAAWgM,MAG3B,CAAChM,EAAQD,IAGX,OAAIgI,GAAc3C,GAAUR,GAK1B,iCACE,SAACqH,EAAA,EAAD,CACEC,UAAWC,EAAc,aACzB7P,MAAO0D,EAAO8C,UACdxD,QAASA,EACTS,SAAU,SAAC+C,GAAD,OA4ChB,SAA+BA,GAC7B,IAAMK,EAAqCnD,EAArCmD,gBAAiBF,EAAoBjD,EAApBiD,gBAEnBH,IAAcE,EAAAA,EAAAA,SAAoCgC,IACpD/B,EAAkB,CAAC+B,EAAKE,IACxB/B,EAAkB,IAGhBL,IAAcE,EAAAA,EAAAA,aAChBC,EAAkB,GAClBE,EAAkB,IAGpBzC,EAAa,CAAEoC,UAAAA,EAAWK,gBAAAA,EAAiBF,gBAAAA,IAzDdmJ,CAAsBtJ,MAGhD9C,EAAO8C,YAAcE,EAAAA,EAAAA,aACpB,iBAAK,aAAW,gBAAhB,UACGJ,IACC,SAAC0H,EAAD,CACE7N,KAAM0P,EAAc,mBACpBvH,MAAOA,EACP7E,SAAU,SAACkD,GAAD,OAAqBvC,EAAa,CAAEuC,gBAAAA,KAC9C3G,MAAO0D,EAAOiD,gBACduE,OAAQA,MAAAA,OAAF,EAAEA,EAAQvE,mBAIlBL,GAAWwC,EAAMhN,OAAS,KAC1B,SAACgT,EAAD,CACE3O,KAAM0P,EAAc,mBACpB/G,MAAOA,EACPiG,iBACGzI,GAAWwC,EAAMhN,OAAS,EACvB,kHACAoS,EAENzK,SAAU,SAACoD,GAAD,OAAqBzC,EAAa,CAAEyC,gBAAAA,KAC9C7G,MAAO0D,EAAOmD,gBACdqE,OAAQA,MAAAA,OAAF,EAAEA,EAAQrE,kBAID,iBAAXqE,IACN,gBAAK5N,UAAU,uBAAf,UACE,SAACyS,EAAA,EAAD,UAAY7E,YAzCf,KAiDT,SAAS2E,EAAc1P,GACrB,OAAOmP,EAAgB,GAAH,OAAMA,EAAN,YAAuBnP,GAASA,K,urCE1EjD,SAASiK,EACdhD,EACAG,EACAyI,EACA9I,GAEA,IAAM+I,GAAsBC,EAAAA,EAAAA,GAAyBF,GACrD,OAAI9I,EACKiJ,EAAsBjJ,EAAgB0B,GAAIqH,G,SA6ChB,EAAtBG,EAAAA,G,+BA3CNA,CAAsBhJ,EAAcG,EAAY0I,GASlD,SAASI,EACdC,EACApJ,GAEA,IADAqJ,EACA,uDADuC,GAEjCN,GAAsBC,EAAAA,EAAAA,GAC1BI,EACAC,GAEF,OAAOJ,EAAsBjJ,EAAgB0B,GAAIqH,G,SAQpCE,EAAsB,EAAtBA,G,gFAAf,WACEK,EACAP,GAFF,yGAKU5N,EAAAA,GAAAA,IAAUC,EAASkO,GAAoBP,GALjD,6DAOU1N,EAAAA,EAAAA,IAAgB,EAAD,IAPzB,yD,uEAiBA,WACE6E,EACAG,EACA0I,GAHF,yGAMU5N,EAAAA,GAAAA,KAAWC,IAAX,OACD2N,GADC,IAEJ7J,KAAMgB,EACNG,WAAAA,KATN,6DAYUhF,EAAAA,EAAAA,IAAgB,EAAD,IAZzB,yD,sBAgBA,SAASD,EAAS3H,GAChB,IAAImI,EAAM,qBAMV,OAJInI,IACFmI,GAAO,IAAJ,OAAQnI,IAGNmI,I,2XCtFF,IAAM2N,EAAb,GAiBE,WAAY3P,I,4FAA+B,SACzCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKgL,KAAOvG,EAAKuG,KACjBhL,KAAKmL,WAAa1G,EAAK0G,WACvBnL,KAAK6L,aAAepH,EAAKoH,aACzB7L,KAAK+L,aAAetH,EAAKsH,aACzB/L,KAAKqU,OAAS5P,EAAK4P,OACnBrU,KAAKsU,OAAS7P,EAAK6P,OACnBtU,KAAK4L,UAAY2I,EAAmB9P,MAIjC,SAAS8P,EAAmB1J,GACjC,OAAIA,EAAgBwJ,OACXhK,EAAAA,EAAAA,OAIiC,IAAxCQ,EAAgBgB,aAAapM,QACW,IAAxCoL,EAAgBkB,aAAatM,OAEtB4K,EAAAA,EAAAA,QAIPQ,EAAgBgB,aAAapM,OAAS,GACtCoL,EAAgBkB,aAAatM,OAAS,EAE/B4K,EAAAA,EAAAA,WAGFA,EAAAA,EAAAA,iB,mCCnDF,IAAKA,EAkBAe,EAqBPoJ,E,gEAvCOnK,GAAAA,EAAAA,OAAAA,SAAAA,EAAAA,QAAAA,UAAAA,EAAAA,WAAAA,aAAAA,EAAAA,eAAAA,iB,CAAAA,IAAAA,EAAAA,K,SAkBAe,GAAAA,EAAAA,EAAAA,UAAAA,GAAAA,YAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,eAAAA,GAAAA,iBAAAA,EAAAA,EAAAA,eAAAA,GAAAA,iB,CAAAA,IAAAA,EAAAA,K,SAqBPoJ,GAAAA,EAAAA,EAAAA,qBAAAA,GAAAA,uB,CAAAA,IAAAA,EAAAA,M,mIC7BE,SAASX,EACdF,GAEqB,IADrBO,EACqB,uDADW,GAExB/J,EAAgDwJ,EAAhDxJ,UAAWK,EAAqCmJ,EAArCnJ,gBAAiBF,EAAoBqJ,EAApBrJ,gBAE9BmK,EAAYtK,IAAcE,EAAAA,EAAAA,eAC1BqK,EAAavK,IAAcE,EAAAA,EAAAA,OAE7B4B,EAAQ3B,EACRmC,EAAQjC,EAWZ,MATE,CACEH,EAAAA,EAAAA,eACAA,EAAAA,EAAAA,QACAlF,SAASgF,KAEX8B,EAAQ,GACRQ,EAAQ,IAGH,CACLkI,mBAAoBF,EACpBG,OAAQF,EACRzI,MAAAA,EACAQ,MAAAA,EACAyH,gBAAAA,GAIG,SAAS5F,EACdrE,EACAY,GAEA,IAAIV,GACFU,MAAAA,OAAA,EAAAA,EAAiBe,YAAavB,EAAAA,EAAAA,QAC5BJ,IACGY,EAEMV,IAAcE,EAAAA,EAAAA,UACvBF,EAAYE,EAAAA,EAAAA,YAFZF,EAAYE,EAAAA,EAAAA,gBAMhB,IAAIG,EAA4B,GAC5BF,EAA4B,GAYhC,OAVEO,GACA,CACER,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,YACAlF,SAASgF,KAEXK,EAAkBK,EAAgBkB,aAAa5N,KAAI,SAAC+N,GAAD,OAAQA,EAAGQ,UAC9DpC,EAAkBO,EAAgBgB,aAAa1N,KAAI,SAAC+N,GAAD,OAAQA,EAAGC,WAGzD,CAAEhC,UAAAA,EAAWG,gBAAAA,EAAiBE,gBAAAA,K,2TC3C1BqK,EAAwC,CACnDC,SAAU,4KAMVC,SAAU,CACRpR,MAAO,IACPyD,SAAU,IACVT,QAAS,IACT4M,UAAW,KAEbyB,QAAS,CACPC,SAAU,SAEZC,WAxCIC,WAUJ,WAAYC,I,4FAAgB,SAC1BpV,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAE3CA,KAAKoV,OAASA,E,sEAGhB,SAAazR,EAAwB0R,GAAsB,WACzDrV,KAAKoV,OAAOE,YAAW,WACrB,EAAKL,SAASM,aAAa,EAAKhC,WAAY8B,EAAa,EAAKJ,UAC9D,EAAK7N,SAASzD,W,sEAnBdwR,ICFC,SAASpC,EACdzU,EACAgT,EACA1K,EACAgM,EACAjP,EACA6R,EACAjE,GAEA,MAAO,CAAEjT,GAAAA,EAAIgT,KAAAA,EAAM1K,MAAAA,EAAOgM,YAAAA,EAAajP,MAAAA,EAAO6R,QAAAA,EAASjE,YAAAA,GCLzD,IAAMkE,GAAmBC,EAAAA,EAAAA,GAAcpC,EAAAA,EAAa,CAClD,QACA,WACA,UACA,cAGWqC,EAAoBC,IAAAA,OACvB,uCAAwC,IAC/CC,UAAU,mBAAoBJ,GAC9BI,UAAU,cAAehB,GAAoB/Q,M,8bCNzC,SAAegS,IAAtB,+B,iDAAO,8HAE4B9P,EAAAA,GAAAA,IAA8BC,KAF1D,uBAEW8P,EAFX,EAEKtR,KAFL,kBAGIsR,GAHJ,uCAKG7P,EAAAA,EAAAA,IAAgB,EAAD,GAAa,IAL/B,0D,sBASP,SAASD,EAAS3H,EAAyBoG,GACzC,IAAI+B,EAAM,mBAUV,OARInI,IACFmI,GAAO,IAAJ,OAAQnI,IAGToG,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,EC1BF,SAASuP,IACd,OAAO5P,EAAAA,EAAAA,UAA6B,CAAC,sBAAuB0P,K,81CC8BvD,SAAeG,IAAtB,+B,iDAAO,yKAMuB,CAAEC,MAAO,IAJnCC,EAFG,EAEHA,MACAC,EAHG,EAGHA,MAHG,IAIHC,KAAAA,OAJG,MAII,CAAEC,GAAI,GAAIC,MAAO,OAJrB,MAKHL,QAAAA,OALG,MAKK,GALL,GAQKM,QAAkC,IAAxBN,EAAMM,OAAO/W,OAR5B,yCASI,CAAEgX,WAAY,EAAG9S,MAAsB,KAT3C,cAYC8C,GAAMR,EAAAA,EAAAA,MAENuF,EAdD,GAeH2K,MAAAA,EACAC,MAAAA,EACAC,KAAMA,EAAKC,GACXC,MAAOF,EAAKE,OACTL,GAnBA,kBAuBoBlQ,EAAAA,GAAAA,IAAyBS,EAAK,CAAE+E,OAAAA,IAvBpD,cAuBGkL,EAvBH,OAwBGD,EAAaC,EAASC,QAAQ,iBAC9BC,EAAiBF,EAASC,QAAQ,qBAzBrC,kBA2BI,CACLF,WAAYzR,SAASyR,EAAY,IACjC9S,MAAO+S,EAASjS,KAChBmS,eAAgB5R,SAAS4R,EAAgB,MA9BxC,yCAiCG1Q,EAAAA,EAAAA,IAAgB,EAAD,IAjClB,0D,wBAqCA,SAAe2Q,IAAtB,+B,iDAAO,4HAEoB7Q,EAAAA,GAAAA,KACrBC,EAAAA,EAAAA,SAAS4L,EAAW,mBAHnB,cAEG6E,EAFH,yBAKIA,EAASjS,MALb,uCAOGyB,EAAAA,EAAAA,IAAgB,EAAD,IAPlB,0D,sBAWA,SAAe4Q,EAAtB,kC,iDAAO,WAA2BxY,GAA3B,iHAE8B0H,EAAAA,GAAAA,KAAuBC,EAAAA,EAAAA,IAAS3H,IAF9D,uBAEWyY,EAFX,EAEKtS,KAFL,kBAGIsS,GAHJ,uCAKG7Q,EAAAA,EAAAA,IAAgB,EAAD,IALlB,0D,sBASA,SAAe8Q,IAAtB,+B,iDAAO,sHAEGhR,EAAAA,GAAAA,MAAiBC,EAAAA,EAAAA,SAAS4L,EAAW,aAFxC,6DAIG3L,EAAAA,EAAAA,IAAgB,EAAD,IAJlB,yD,sBAQA,SAAe+Q,EAAtB,kC,iDAAO,WAAgC3Y,GAAhC,yGAEG0H,EAAAA,GAAAA,MAAiBC,EAAAA,EAAAA,IAAS3H,EAAI,aAFjC,6DAIG4H,EAAAA,EAAAA,IAAgB,EAAD,IAJlB,yD,sBAQA,SAAegR,EAAtB,wC,iDAAO,WACLC,EACAhB,EACAC,EACAF,GAJK,yGAMED,EAAgB,CACrBE,MAAAA,EACAC,MAAAA,EACAF,MAAO,EAAF,CAAIkB,SAAU,CAACD,IAAajB,MAT9B,4C,sBA0FA,SAAemB,EAAtB,kC,iDAAO,WAA8B/Y,GAA9B,yGAEG0H,EAAAA,GAAAA,QAAaC,EAAAA,EAAAA,IAAS3H,IAFzB,6DAIG4H,EAAAA,EAAAA,IAAgB,EAAD,IAJlB,yD,qKCvMA,SAASD,EAAS3H,EAAoBoG,GAC3C,IAAI4S,EAAU,YASd,OARIhZ,IACFgZ,GAAW,IAAJ,OAAQhZ,IAGboG,IACF4S,GAAW,IAAJ,OAAQ5S,IAGV4S,EAGF,SAASC,EAAeC,GAC7B,OAAKA,EAIEhS,KAAKC,UAAU+R,GAHb,GAMJ,SAASC,EAAcC,GAC5B,IAAMC,EAAW,IAAIC,SAUrB,OARA9Y,OAAOyG,QAAQmS,GAAMG,SAAQ,YAAkB,I,IAAA,G,EAAA,E,4CAAA,I,gxBAAhBlY,EAAgB,KAAXgE,EAAW,KACzC,MAAOA,GAIXgU,EAASG,OAAOnY,EAAKgE,MAGhBgU,E,oZC/BF,SAASI,IACd,IAAM1O,GAAgBC,EAAAA,EAAAA,MAEhB0O,GAAeC,EAAAA,EAAAA,KAAU,SAACC,GAAD,OAAYA,EAAOC,WAElD,OAAKH,EAAalH,WAAczH,EAAcyH,UAMvC,CACLsH,aAHmBJ,EAAavT,KAIhC4T,YAAahP,EAAc5E,KAAK6T,YAChCC,iBAAkBlP,EAAc5E,KAAK+T,KAAKC,WARnC,O,81BCHJ,SAASC,EAAepa,GAC7B,OAAO8H,EAAAA,EAAAA,UAAS,CAAC,eAAgB9H,IAAK,kBAAOA,GAAKwY,EAAAA,EAAAA,IAAYxY,GAAM,OAArD,QACVqa,EAAAA,EAAAA,IAAU,+BADA,IAEbC,UAAW,GACXC,UAAWva,O,2oDCAR,IAAMwa,EAAgC,IAWtC,SAASC,EAAoBtU,GAClC,QAAKA,KAIyBA,EAAKd,MAAMgN,MACvC,SAACqI,GAAD,OAASA,EAAIC,SAAWC,EAAAA,GAAAA,SAOnBJ,EAGF,SAASK,IAQd,6DAP8D,GAO9D,IAPEC,KAAAA,OAOF,MAPS,EAOT,MAPYC,UAAAA,OAOZ,MAPwB,IAOxB,EAP6BhD,EAO7B,EAP6BA,KAAME,EAOnC,EAPmCA,MAAUL,EAO7C,OANAoD,EAMA,uCAFAV,EAEA,uDAFY,EACZC,IACA,yDACA,GAA4BzS,EAAAA,EAAAA,UAC1B,CACE,eADF,GAGIgT,KAAAA,EACAC,UAAAA,EACAhD,KAAAA,EACAE,MAAAA,GACGL,IAR2B,2BAWlC,0GACQC,GAASiD,EAAO,GAAKC,EAAY,EADzC,mBAESpD,EAAAA,EAAAA,IAAgB,CACrBE,MAAAA,EACAC,MAAOiD,EACPhD,KAAM,CAAEC,GAAID,EAAME,MAAAA,GAClBL,MAAAA,KANJ,2CAXkC,GAqBhC0C,UAAAA,EACAW,kBAAkB,EAClBD,gBAAAA,EACAT,QAAAA,IACGF,EAAAA,EAAAA,IAAU,qCAzBTvJ,EAAR,EAAQA,UAAW3K,EAAnB,EAAmBA,KA6BnB,MAAO,CACL2K,UAAAA,EACAoK,aAAc/U,EAAOA,EAAKd,MAAQ,GAClC8S,WAAYhS,EAAOA,EAAKgS,WAAa,EACrCG,eAAgBnS,EAAOA,EAAKmS,eAAiB,K,mCCzE1C,IAAK9M,E,0IAAAA,GAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,cAAAA,GAAAA,gBAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,kBAAAA,GAAAA,oBAAAA,EAAAA,EAAAA,gBAAAA,GAAAA,kBAAAA,EAAAA,EAAAA,kBAAAA,GAAAA,oBAAAA,EAAAA,EAAAA,sBAAAA,GAAAA,wBAAAA,EAAAA,EAAAA,iBAAAA,GAAAA,mB,CAAAA,IAAAA,EAAAA,KAmBL,IAMKoP,EA2GAO,EASAC,EA1HCC,EAAY,CACvB7P,EAAgB8P,kBAChB9P,EAAgB+P,sBAChB/P,EAAgBgQ,mB,SAGNZ,GAAAA,EAAAA,EAAAA,GAAAA,GAAAA,KAAAA,EAAAA,EAAAA,KAAAA,GAAAA,O,CAAAA,IAAAA,EAAAA,K,SA2GAO,GAAAA,EAAAA,EAAAA,uBAAAA,GAAAA,yBAAAA,EAAAA,EAAAA,iBAAAA,GAAAA,mBAAAA,EAAAA,EAAAA,iBAAAA,GAAAA,mBAAAA,EAAAA,EAAAA,qBAAAA,GAAAA,uBAAAA,EAAAA,EAAAA,2BAAAA,GAAAA,6BAAAA,EAAAA,EAAAA,sBAAAA,GAAAA,wB,CAAAA,IAAAA,EAAAA,K,SASAC,GAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,MAAAA,GAAAA,Q,CAAAA,IAAAA,EAAAA,M,oSCjJL,SAASK,EAAgBC,GAC9B,OAAQA,GACN,KAAKlQ,EAAAA,GAAAA,gBACL,KAAKA,EAAAA,GAAAA,kBACL,KAAKA,EAAAA,GAAAA,sBACH,OAAO4P,EAAAA,GAAAA,WACT,KAAK5P,EAAAA,GAAAA,OACL,KAAKA,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,kBACH,OAAO4P,EAAAA,GAAAA,OACT,KAAK5P,EAAAA,GAAAA,MACH,OAAO4P,EAAAA,GAAAA,MACT,KAAK5P,EAAAA,GAAAA,iBACH,OAAO4P,EAAAA,GAAAA,MACT,QACE,MAAM,IAAI/a,MAAJ,2BAA8Bqb,EAA9B,uBAIL,SAASC,EAAoBD,GAClC,OAAOD,EAAgBC,KAAaN,EAAAA,GAAAA,OAG/B,SAASQ,EAAwBF,GACtC,OAAOD,EAAgBC,KAAaN,EAAAA,GAAAA,WAG/B,SAASS,EAAoBH,GAClC,OAAON,EAAAA,GAAaK,EAAgBC,IAG/B,SAASI,EAAmBJ,GACjC,OAAOD,EAAgBC,KAAaN,EAAAA,GAAAA,MAG/B,SAASW,EAAmBL,GACjC,OACEM,EAAkBN,IAClB,CAAClQ,EAAAA,GAAAA,cAA+BA,EAAAA,GAAAA,mBAAmC3E,SACjE6U,GAKC,SAASM,EAAkBN,GAChC,MAAO,CACLlQ,EAAAA,GAAAA,kBACAA,EAAAA,GAAAA,sBACAA,EAAAA,GAAAA,kBACA3E,SAAS6U,GAGN,SAASO,EAA8BvB,GAC5C,OAAOsB,EAAkBtB,EAAIhO,QAAUgO,EAAIwB,OAGtC,SAASC,EAAkBC,GAChC,GAAIJ,EAAkBI,EAAY1P,QAAU0P,EAAYF,OACtD,MAAO,+BAGT,IAAMG,EAAWZ,EAAgBW,EAAY1P,MAE7C,OAAQ2P,GACN,KAAKjB,EAAAA,GAAAA,MACH,MAAO,kBACT,KAAKA,EAAAA,GAAAA,OACH,MAAO,mBACT,KAAKA,EAAAA,GAAAA,WACH,MAAO,uBACT,KAAKA,EAAAA,GAAAA,MACH,MAAO,kBACT,QACE,MAAM,IAAI/a,MAAJ,+BAAkCgc,O,80DC3EzBC,EAAAA,SAAAA,I,ybAGnB,WAAYC,EAAaC,GAAa,a,4FAAA,UACpC,cAAMD,IACDC,IAAMA,EAFyB,E,gEAHnBF,C,EAAuBjc,S,mCCArC,IAAKoc,EAKAC,EAMAC,E,0FAXAF,GAAAA,EAAAA,EAAAA,GAAAA,GAAAA,KAAAA,EAAAA,EAAAA,GAAAA,GAAAA,K,CAAAA,IAAAA,EAAAA,K,SAKAC,GAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,WAAAA,GAAAA,a,CAAAA,IAAAA,EAAAA,K,SAMAC,GAAAA,EAAAA,2BAAAA,2BAAAA,EAAAA,gCAAAA,gCAAAA,EAAAA,2BAAAA,6BAAAA,EAAAA,kBAAAA,oBAAAA,EAAAA,MAAAA,QAAAA,EAAAA,WAAAA,aAAAA,EAAAA,oBAAAA,sBAAAA,EAAAA,kBAAAA,oBAAAA,EAAAA,kBAAAA,oBAAAA,EAAAA,oCAAAA,sCAAAA,EAAAA,gBAAAA,kBAAAA,EAAAA,mBAAAA,qBAAAA,EAAAA,mBAAAA,qBAAAA,EAAAA,eAAAA,iBAAAA,EAAAA,mBAAAA,qBAAAA,EAAAA,wBAAAA,0BAAAA,EAAAA,iBAAAA,mBAAAA,EAAAA,cAAAA,gBAAAA,EAAAA,kBAAAA,oBAAAA,EAAAA,+BAAAA,iCAAAA,EAAAA,0BAAAA,4B,CAAAA,IAAAA,EAAAA,M,0mBCTL,IAAMC,GAAOC,EAMdpL,EAAsB,CAC1BqL,eAAgBL,EAAAA,GAAAA,GAChBM,SAAsC,IAGjC,SAAeC,EAAtB,kC,iDAAO,WAAoBC,GAApB,0FAECH,EAAiBG,EAFlB,OAIFN,EAAAA,GAAAA,2BAAuCF,EAAAA,GAAAA,IAJrC,IAKFE,EAAAA,GAAAA,gCAA4CF,EAAAA,GAAAA,IAL1C,IAMFE,EAAAA,GAAAA,2BAAuCF,EAAAA,GAAAA,IANrC,IAOFE,EAAAA,GAAAA,kBAA8BF,EAAAA,GAAAA,IAP5B,IAQFE,EAAAA,GAAAA,MAAkBF,EAAAA,GAAAA,IARhB,IASFE,EAAAA,GAAAA,eAA2BF,EAAAA,GAAAA,IATzB,IAUFE,EAAAA,GAAAA,mBAA+BF,EAAAA,GAAAA,IAV7B,IAWFE,EAAAA,GAAAA,mBAA+BF,EAAAA,GAAAA,IAX7B,IAYFE,EAAAA,GAAAA,oCAAgDF,EAAAA,GAAAA,IAZ9C,IAaFE,EAAAA,GAAAA,kBAA8BF,EAAAA,GAAAA,IAb5B,IAcFE,EAAAA,GAAAA,WAAuBF,EAAAA,GAAAA,IAdrB,IAeFE,EAAAA,GAAAA,oBAAgCF,EAAAA,GAAAA,IAf9B,IAgBFE,EAAAA,GAAAA,kBAA8BF,EAAAA,GAAAA,IAhB5B,IAiBFE,EAAAA,GAAAA,gBAA4BF,EAAAA,GAAAA,IAjB1B,IAkBFE,EAAAA,GAAAA,mBAA+BF,EAAAA,GAAAA,IAlB7B,IAmBFE,EAAAA,GAAAA,wBAAoCF,EAAAA,GAAAA,IAnBlC,IAoBFE,EAAAA,GAAAA,iBAA6BF,EAAAA,GAAAA,IApB3B,IAqBFE,EAAAA,GAAAA,cAA0BF,EAAAA,GAAAA,IArBxB,IAsBFE,EAAAA,GAAAA,kBAA8BF,EAAAA,GAAAA,IAtB5B,IAuBFE,EAAAA,GAAAA,+BAA2CF,EAAAA,GAAAA,IAvBzC,IAwBFE,EAAAA,GAAAA,0BAAsCF,EAAAA,GAAAA,IArBnCM,EAHD,EA2BLtL,EAAMqL,eAAiBA,EACvBrL,EAAMsL,SAAWA,EA5BZ,4C,sBA+BA,SAASG,EAAWC,GACzB,OAAKA,EAIA1L,EAAMsL,SAASI,GAIhB1L,EAAMsL,SAASI,IAAc1L,EAAMqL,eAC9BJ,EAAAA,GAAAA,QAGLjL,EAAMsL,SAASI,KAAeV,EAAAA,GAAAA,GACzBC,EAAAA,GAAAA,WAGFA,EAAAA,GAAAA,OAXEA,EAAAA,GAAAA,OAJAA,EAAAA,GAAAA,QAkBJ,SAASU,EAAcD,GAC5B,OAAOD,EAAWC,KAAeT,EAAAA,GAAAA,a,mCC5D5B,SAASW,EAAmBC,GACjC,OAAOA,EAASC,QACd,SAACC,EAASC,GAAV,OAA0BD,EAAQE,MAAK,kBAAMD,SAC7CE,QAAQld,aAAW8S,I,sFCRhB,SAASqK,EAAUC,EAAaC,GAAmC,IAArBC,EAAqB,iEAATD,EAAS,KACxE,MAAO,CAAC,GAAI,GAAGjX,SAASF,OAAOkX,IAAQC,EAAOC,EAGzC,SAASC,EAAU3Y,EAAeyY,GAAmC,IAArBC,EAAqB,iEAATD,EAAS,KAC1E,gBAAUzY,EAAV,YAAmBuY,EAAUvY,EAAOyY,EAAMC,I,2ZCOrC,SAASE,EAAT,GAIG,IAHR7B,EAGQ,EAHRA,YAGQ,IADR8B,oBAAAA,OACQ,SACFC,IAAe/B,EAAYF,OAE3B5L,EAwCR,SAAyB8L,EAA0B+B,GACjD,IAAMpT,GAAgBjF,EAAAA,EAAAA,IAAkB,CAAEyU,QAAS4D,IAEnD,IAAKA,EACH,OAAO,EAGT,IAAQC,EAA+BhC,EAA/BgC,gBAAiBC,EAAcjC,EAAdiC,UAEnBrY,EAAW+E,EAAc5E,KAE/B,IAAKH,EACH,OAAO,KAGT,IAAMsY,EASR,SACElC,EACApW,GAIA,GAFkBoW,EAAYlC,KAAKC,UAEpB,CACb,IAAMtQ,EAAY,CAChBuS,EAAYlC,KAAK1Q,aAAe,EAC5B4S,EAAYlC,KAAK1Q,aACjBxD,EAASkU,KAAK1Q,aAClB4S,EAAYlC,KAAKvQ,iBAAmB,EAChCyS,EAAYlC,KAAKvQ,iBACjB3D,EAASkU,KAAKvQ,iBAClByS,EAAYlC,KAAKtQ,gBAAkB,EAC/BwS,EAAYlC,KAAKtQ,gBACjB5D,EAASkU,KAAKtQ,iBAClBoK,QAAO,SAACuK,GAAD,OAAOA,EAAI,KAEpB,OAAO1U,EAAU1I,OAAS,EAAIqd,KAAKC,IAAL,MAAAD,K,+CAAY3U,I,ikBAAa,G,MAGzD,OACGuS,EAAYsC,qBACuB,IAApCtC,EAAYsC,oBAKPtC,EAAYsC,oBAHV1Y,EAASkU,KAAKyE,gBAnCCC,CAAmBxC,EAAapW,GAExD,SAAIsY,GAAmBD,GAAaD,IAC3BC,EAAYD,GAAqC,EAAlBE,EAAsB,GA1D9CO,CAAgBzC,EAAa+B,GAE7C,OAAgB,OAAZ7N,EACK,KAGJ6N,GAWH,kBAAMtZ,KAAK,SAAS,aAAW,cAA/B,WACE,iBACElC,WAAW6L,EAAAA,EAAAA,GAAK,QAAS,CACvB,gBAAiB8B,EACjB,gBAAiBA,IAEnB,aAAW,iBALb,uBAUC4N,KAAyB9B,EAAYgC,kBACpC,iBACEzb,UAAU,8BACV,aAAW,oBAFb,UAIGmc,EAAAA,EAAAA,sBAAqB1C,EAAYgC,uBAzBtC,iBAAMvZ,KAAK,SAAS,aAAW,cAA/B,UACE,iBAAMlC,UAAU,sBAAsB,aAAW,eAAjD,UACE,4C,8HClBJoc,GAAUC,EAAAA,EAAAA,eAAqC,MAE9C,SAASC,IACd,IAAMC,GAAUC,EAAAA,EAAAA,YAAWJ,GAE3B,GAAe,MAAXG,EACF,MAAM,IAAI7e,MAAM,sDAGlB,OAAO6e,EAGF,SAASE,EAAT,GAAmE,IAAxCpQ,EAAwC,EAAxCA,SAC1BqQ,GAAUC,EAAAA,EAAAA,GAAyB,WAAY,IAErD,OAAO,SAACP,EAAQQ,SAAT,CAAkBla,MAAOga,EAAzB,SAAmCrQ,M,mnCCxBrC,SAASwQ,EAAena,GAA0B,IAAhBoa,EAAgB,uDAAR,IAC/C,GAA4C5U,EAAAA,EAAAA,UAAYxF,GAAxD,SAAOqa,EAAP,KAAuBC,EAAvB,KAUA,OARA1U,EAAAA,EAAAA,YAAU,WACR,IAAM2U,EAAQC,YAAW,kBAAMF,EAAkBta,KAAQoa,GAEzD,OAAO,WACLK,aAAaF,MAEd,CAACva,EAAOoa,IAEJC,I,kFCTF,SAASK,IACd,IACwBtY,GACpBuY,EAAAA,EAAAA,4BADF9S,OAAU+S,WAGZ,IAAKxY,EACH,MAAM,IAAIpH,MAAM,oCAGlB,OAAOqG,SAASe,EAAe,M,mqCCT1B,SAASyY,EAAW7e,GACzB,gBAHyB,YAGzB,YAAgCA,GAG3B,SAASie,EACdje,EACAuJ,GAEyB,IADzBuV,EACyB,uDADfC,aAEV,GAA0BvV,EAAAA,EAAAA,UAASwV,EAAOhf,EAAKuJ,EAAcuV,IAA7D,SAAO9a,EAAP,KAAcib,EAAd,KAEM7W,GAAeqL,EAAAA,EAAAA,cACnB,SAACzP,GACCib,EAASjb,GACTkb,EAAOlf,EAAKgE,EAAO8a,KAErB,CAAC9e,EAAK8e,IAGR,OAAOK,EAAAA,EAAAA,UAAQ,iBAAM,CAACnb,EAAOoE,KAAe,CAACpE,EAAOoE,IAG/C,SAAS4W,EACdhf,EACAuJ,GAEG,IADHuV,EACG,uDADOC,aAEJ/a,EAAQ8a,EAAQM,QAAQP,EAAW7e,IACzC,IAAKgE,EACH,OAAOuF,EAGT,IACE,OAAO1D,KAAKwZ,MAAMrb,GAClB,MAAOjF,GACP,OAAOwK,GAIJ,SAAS2V,EAAOlf,EAAagE,GAAkC,IAAxB8a,EAAwB,uDAAdC,aACtDD,EAAQQ,QAAQT,EAAW7e,GAAM6F,KAAKC,UAAU9B,M,0nDCpB3C,IAAMub,GAAc5B,EAAAA,EAAAA,eAA4B,MAEhD,SAAS3P,IACd,IAAM6P,GAAUC,EAAAA,EAAAA,YAAWyB,GAE3B,GAAgB,OAAZ1B,EACF,MAAM,IAAI7e,MAAM,uCAGlB,IAAQ0N,EAASmR,EAATnR,KACR,QAAoB,IAATA,EACT,MAAM,IAAI1N,MAAM,2BAGlB,OAAOmgB,EAAAA,EAAAA,UACL,iBAAO,CACLzS,KAAAA,EACApC,SAASA,EAAAA,EAAAA,GAAQoC,MAEnB,CAACA,IAIE,SAAS8S,EACdC,EACAC,GAEA,IACA,EAAiB1R,IAATtB,EAAR,EAAQA,KACR,GAEIiS,EAAAA,EAAAA,4BADQC,EADZ,EACE/S,OAAU+S,WAGZ,QAAKlS,GAIEiT,EACLjT,EACA+S,EACAC,GAAsBd,GAKnB,SAASgB,EACdlT,EACAtG,GAGA,OAAOuZ,EACLjT,EACA,CAAC,2BACDtG,GAKG,SAASuZ,EACdjT,EACA+S,EACArZ,GAEA,IACMyZ,EACsB,iBAAnBJ,EAA8B,CAACA,GAAkBA,EAE1D,GAAmC,IAA/BI,EAAoB/f,OACtB,OAAO,EAOT,IAAKsG,EACH,OAAO,EAGT,IAAIkE,EAAAA,EAAAA,GAAQoC,GACV,OAAO,EAGT,IACGA,EAAKoT,yBACLpT,EAAKoT,uBAAuB1Z,GAE7B,OAAO,EAGT,IAAM2Z,EAA6BrT,EAAKoT,uBAAuB1Z,GAC/D,OAAOyZ,EAAoB7O,MACzB,SAACgP,GAAD,OAAmBD,EAA2BC,MAU3C,SAASC,EAAT,GAKgC,IAJrCR,EAIqC,EAJrCA,eACArZ,EAGqC,EAHrCA,cAGqC,IAFrC8Z,YAAAA,OAEqC,SADrCvS,EACqC,EADrCA,SAQA,OANkB6R,EAChBC,EACArZ,EACA8Z,IAGiB,8BAAGvS,IAAe,KAOhC,SAASwS,EAAT,GAAuD,IAA/BxS,EAA+B,EAA/BA,SACtByS,EAAP,GAAcnC,EAAAA,EAAAA,GAAgB,MAAO,IAArC,MACA,KAAwBzU,EAAAA,EAAAA,YAAxB,GAAOkD,EAAP,KAAa2T,EAAb,MAEAzW,EAAAA,EAAAA,YAAU,WACI,KAARwW,GALsD,oCAQxDE,EAFqBC,EAAAA,EAAAA,GAAUH,GAETzhB,MAEvB,CAACyhB,IAEJ,IAAMI,GAAgBrB,EAAAA,EAAAA,UAAQ,iBAAO,CAAEzS,KAAAA,KAAS,CAACA,IAEjD,MAAY,KAAR0T,EACK,KAGJI,EAAc9T,MAKjB,SAAC6S,EAAYrB,SAAb,CAAsBla,MAAOwc,EAA7B,SACG7S,IALI,KAnBmD,iDA4B5D,WAAwBhP,GAAxB,uGACqB8hB,EAAAA,EAAAA,IAAQ9hB,GAD7B,OACQ+N,EADR,OAEE2T,EAAQ3T,GAFV,2CA5B4D,yBAkCvD,SAASgU,IACd,IAAQhU,EAASsB,IAATtB,KACR,QAASA,IAAQpC,EAAAA,EAAAA,GAAQoC,K,ilBCjL3B,IAAMiU,EAAW,OAEV,SAAeC,EAAtB,kC,iDAAO,WAA4B5M,GAA5B,yGAEG3N,EAAAA,GAAAA,KAAA,UAAcsa,EAAd,cAAoC3M,GAFvC,6DAIGzN,EAAAA,EAAAA,IAAgB,EAAD,GAAa,2BAJ/B,yD,sBAQA,SAAesa,EAAtB,oC,iDAAO,WACLC,EACAC,GAFK,yGAKG1a,EAAAA,GAAAA,KAAA,UAAcsa,EAAd,sBAAoCG,GAAYC,GALnD,6DAOGxa,EAAAA,EAAAA,IAAgB,EAAD,GAAa,8BAP/B,yD,sBAWA,SAAeya,EAAtB,sC,iDAAO,WACL7c,EACA8c,EACAC,GAHK,6FAKCC,EAAU,CACdhd,KAAAA,EACA+c,mBAAAA,GAPG,kBAUG7a,EAAAA,GAAAA,KAAA,UAAcsa,EAAd,aAAmCQ,EAAS,CAChDtV,OAAQ,CAAEoV,OAAAA,KAXT,6DAcG1a,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAd/B,yD,sBAkBA,SAAe6a,IAAtB,+B,iDAAO,8HAE8B/a,EAAAA,GAAAA,IAAA,UAC5Bsa,EAD4B,cAF9B,uBAEWU,EAFX,EAEKvc,KAFL,kBAKIuc,GALJ,uCAOG9a,EAAAA,EAAAA,IAAgB,EAAD,GAAa,mCAP/B,0D,sBAWA,SAAe+a,EAAtB,kC,iDAAO,WAA0BC,GAA1B,iHAE6Blb,EAAAA,GAAAA,IAAA,UAC3Bsa,EAD2B,qBACNY,IAHvB,uBAEWC,EAFX,EAEK1c,KAFL,kBAKI0c,GALJ,uCAOGjb,EAAAA,EAAAA,IAAgB,EAAD,GAAa,8BAP/B,0D,sBAWA,SAAekb,EAAtB,kC,iDAAO,WAA6BF,GAA7B,yGAEGlb,EAAAA,GAAAA,OAAA,UAAgBsa,EAAhB,qBAAqCY,IAFxC,6DAIGhb,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAJ/B,yD,sBAQA,SAAemb,EAAtB,sC,iDAAO,WACL/iB,EACAwF,EACA+c,GAHK,6FAKCC,EAAU,CACdhd,KAAAA,EACA+c,mBAAAA,GAPG,kBAUG7a,EAAAA,GAAAA,IAAA,UAAasa,EAAb,qBAAkChiB,GAAMwiB,GAV3C,6DAYG5a,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAZ/B,yD,sBAgBA,SAAeob,EAAtB,kC,iDAAO,WAAgChjB,GAAhC,iHAE6B0H,EAAAA,GAAAA,KAAA,UAC3Bsa,EAD2B,qBACNhiB,EADM,eAF7B,uBAEW6iB,EAFX,EAEK1c,KAFL,kBAKI0c,GALJ,uCAOGjb,EAAAA,EAAAA,IAAgB,EAAD,GAAa,+BAP/B,0D,kkBC7EP,IAAMoa,EAAW,YAEV,SAAeiB,EAAtB,kC,iDAAO,WAA4B5N,GAA5B,yGAEG3N,EAAAA,GAAAA,KAAA,UAAcsa,EAAd,cAAoC3M,GAFvC,6DAIGzN,EAAAA,EAAAA,IAAgB,EAAD,GAAa,2BAJ/B,yD,sBAQA,SAAesb,EAAtB,kC,iDAAO,WAA0Bzb,GAA1B,iHAEoCC,EAAAA,GAAAA,IAAA,UAClCsa,EADkC,YACtBva,EADsB,UAFpC,uBAEW0b,EAFX,EAEKhd,KAFL,kBAMIgd,GANJ,uCAQGvb,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,8CAVC,0D,sBAeA,SAAewb,EAAtB,kC,iDAAO,WAA8B3b,GAA9B,yGAEGC,EAAAA,GAAAA,KAAA,UAAcsa,EAAd,YAA0Bva,EAA1B,cAFH,6DAIGG,EAAAA,EAAAA,IAAgB,EAAD,GAAa,6BAJ/B,yD,sBAQA,SAAeyb,EAAtB,kC,iDAAO,WAA0B5b,GAA1B,iHAE6BC,EAAAA,GAAAA,IAAA,UAC3Bsa,EAD2B,YACfva,EADe,aAF7B,uBAEW6b,EAFX,EAEKnd,KAFL,kBAMImd,GANJ,uCAQG1b,EAAAA,EAAAA,IAAgB,EAAD,GAAa,yCAR/B,0D,sBAYA,SAAe2b,EAAtB,sC,iDAAO,WACL9b,EACA+b,EACApd,GAHK,sGAMGqd,EAAgB,CAAErd,OAAAA,GANrB,SAOGsB,EAAAA,GAAAA,KAAA,UACDsa,EADC,YACWva,EADX,oBACoC+b,EADpC,WAEJC,GATC,6DAYG7b,EAAAA,EAAAA,IAAgB,EAAD,GAAa,mCAZ/B,yD,sBAgBA,SAAe8b,EAAtB,sC,iDAAO,WACLjc,EACA+b,EACAzG,GAHK,0GAMG4G,EAAkB,CAAE5G,SAAAA,GANvB,SAQKrV,EAAAA,GAAAA,KAAA,UACDsa,EADC,YACWva,EADX,oBACoC+b,EADpC,aAEJG,GAVD,uBAOWC,EAPX,EAOKzd,KAPL,kBAYIyd,GAZJ,uCAcGhc,EAAAA,EAAAA,IAAgB,EAAD,GAAa,oCAd/B,0D,igBCzDP,IAAMic,EAAe,CACnBC,UAAW,GACXC,aAAa,GAGR,SAAeC,IAAtB,+B,iDAAO,kIAEoBtc,EAAAA,GAAAA,IAAqBC,KAFzC,uBAEKxB,EAFL,EAEKA,KAFL,kBAIIA,GAJJ,sCAMG8d,EANH,KAOG,IAAI5jB,MAAJ,UAAU4jB,EAAW7L,gBAArB,aAAU,EAAqBjS,KAAKwI,SAPvC,0D,sBAgBA,SAAeuV,EAAtB,kC,iDAAO,WAA6BC,GAA7B,uHAEoBzc,EAAAA,GAAAA,KAA2BC,IAAY,CAC5Dwc,YAAAA,IAHC,mBAEKhe,EAFL,EAEKA,KAIJ3F,OAAOD,KAAK4F,EAAKie,YAAYjjB,SAAWgjB,EAAYhjB,OANrD,yCAOMgF,GAPN,cAUH0d,EAAME,aAAc,EACpBM,IAXG,kBAYIle,GAZJ,qCAcG8d,EAdH,KAeiC,OAAhC,UAAAA,EAAW7L,gBAAX,eAAqBwB,QAftB,uBAgBK,IAAIvZ,MACR,0EAjBD,cAoBG,IAAIA,MAAJ,UAAU4jB,EAAW7L,gBAArB,aAAU,EAAqBjS,KAAKwI,SApBvC,2D,sBA4BA,SAAe2V,EAAtB,kC,iDAAO,WAA6BH,GAA7B,qHAEoBzc,EAAAA,GAAAA,KAA2BC,EAAS,UAAW,CACpEwc,YAAAA,IAHC,mBAEKhe,EAFL,EAEKA,KAGJ3F,OAAOD,KAAK4F,EAAKie,YAAYjjB,SAAWgjB,EAAYhjB,OALrD,yCAMMgF,GANN,cASH0d,EAAME,aAAc,EACpBM,IAVG,kBAWIle,GAXJ,wCAaG8d,EAbH,KAcG,IAAI5jB,MAAJ,UAAU4jB,EAAW7L,gBAArB,aAAU,EAAqBjS,KAAKwI,SAdvC,2D,sBAkBA,SAAS4V,IACdV,EAAME,aAAc,EACpBF,EAAM1d,UAAOoN,EAGR,SAAe8Q,IAAtB,+B,iDAAO,uHAGDR,EAAM1d,OACL0d,EAAME,aACPF,EAAMW,YACNhG,KAAKiG,IAAIZ,EAAMW,WAAaE,KAAKC,OAAS,KANzC,yCAQMd,EAAM1d,MARZ,uBAW0BuB,EAAAA,GAAAA,IAAuBC,EAAS,SAX1D,uBAWWid,EAXX,EAWKze,KACR0d,EAAM1d,KAAOye,EACbf,EAAMW,WAAaE,KAAKC,MACxBd,EAAME,aAAc,EACpBF,EAAMC,UAAUvK,SAAQ,SAACsL,GAAD,OAAcA,EAASD,MAf5C,kBAiBIA,GAjBJ,wCAmBGX,EAnBH,KAoBG,IAAI5jB,MAAJ,UAAU4jB,EAAW7L,gBAArB,aAAU,EAAqBjS,KAAKwI,SApBvC,2D,sBAwBA,SAASmW,EAAUD,GACxBhB,EAAMC,UAAUxe,KAAKuf,GAGhB,SAASE,EAAYF,GAC1B,IAAmBhB,EAAMC,UAAWe,GAI/B,SAASG,IACd,MAAO,CACLC,SAAUjB,EACVkB,OAAQhB,EACRiB,OAAQb,EACRM,KAAMP,EACNS,UAAAA,EACAC,YAAAA,EACAR,WAAAA,GAIJ,SAAS5c,IAAsB,IAAbvB,EAAa,uDAAJ,GACrB+B,EAAM,WAKV,OAHI/B,IACF+B,GAAO,IAAJ,OAAQ/B,IAEN+B,I,mCC1IF,IAAKsU,EAQA2I,E,yCARA3I,GAAAA,EAAAA,EAAAA,GAAAA,GAAAA,KAAAA,EAAAA,EAAAA,GAAAA,GAAAA,KAAAA,EAAAA,EAAAA,GAAAA,GAAAA,K,CAAAA,IAAAA,EAAAA,K,SAQA2I,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,aAAAA,GAAAA,eAAAA,EAAAA,EAAAA,WAAAA,GAAAA,a,CAAAA,IAAAA,EAAAA,M,oJCAL,SAASC,IACd,OAAkCvd,EAAAA,EAAAA,UAChC,eACA,kBAAMuc,EAAAA,EAAAA,QACN,CACEiB,QADF,SACU3V,IACN4V,EAAAA,EAAAA,IAAY,UAAW5V,EAAgB,iCAK7C,MAAO,CAAEmB,UAVT,EAAQA,UAUY8T,KAVpB,EAAmBze,MA2Bd,SAASqf,IACd,IAdA,EAAQ1U,EAcR,GAdQA,GAAR,GAA4BhJ,EAAAA,EAAAA,UAC1B,CAAC,SAAU,UACX,kBAAM2d,EAAAA,EAAAA,QACN,CACEH,QADF,SACU3V,IACN4V,EAAAA,EAAAA,IAAY,UAAW5V,EAAgB,iCALrCmB,UAUD,CAAE4U,WAVT,EAAmBvf,MAUU,EAAG2K,UAAAA,IAIb6U,EAAnB,EAAQ7U,UAA2B4U,EAAnC,EAAmCA,WAEnC,EAA8CL,IAA3BO,EAAnB,EAAQ9U,UAA6B8T,EAArC,EAAqCA,KACrC,OACEgB,GACAD,IACCf,GACDA,EAAKnZ,OAAS2Z,EAAAA,EAAAA,MAEP,KAGF,CAAES,YAAajB,EAAqBkB,UAAWJ,K,2fC1CjD,SAAeD,IAAtB,+B,iDAAO,8HAEoB/d,EAAAA,GAAAA,IAA8BC,EAAS,UAF3D,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,EAAK4f,OAHT,uCAKGne,EAAAA,EAAAA,IAAgB,EAAD,IALlB,0D,uEAeA,8HAEoBF,EAAAA,GAAAA,IAA0BC,KAF9C,wBAEKxB,EAFL,EAEKA,MAEHsW,QAAU,mBAJZ,kBAMItW,GANJ,uCAQGyB,EAAAA,EAAAA,IAAgB,EAAD,IARlB,0D,sBAYA,SAAS+R,EACd5T,GAEA,OAAO+B,EAAAA,EAAAA,UAAS,CAAC,WAAW,kBAfvB,WAAP,+BAeoCke,KAAa,CAAEjgB,OAAAA,IAoB5C,SAAekgB,IAAtB,+B,iDAAO,8HAEoBve,EAAAA,GAAAA,IAA2BC,EAAS,YAFxD,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,EAAAA,IAAgB,EAAD,IALlB,0D,sBASA,SAASse,IACd,OAAOpe,EAAAA,EAAAA,UAAS,CAAC,YAAY,kBAAMme,OAGrC,SAASte,EAASvB,GAChB,IAAI+B,EAAM,UAMV,OAJI/B,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,I,0jCClET,IAAMT,EAAQye,IAAAA,OAAmB,CAAEC,QAAS,QAiBrC,SAASC,EAAiBC,GAC/B,IAAKA,EAAOne,MAAQme,EAAOne,IAAItB,SAAS,YACtC,OAAOyf,EAGT,IAAMC,EAAY,EAAH,CAAKlO,QAASiO,EAAOjO,SAAW,IAAOiO,GAChDtlB,GAASwlB,EAAAA,EAAAA,MASf,OARIxlB,IACFulB,EAAUlO,QAAQ,2BAA6BrX,IAG7CylB,EAAAA,EAAAA,QACFF,EAAUlO,QAAQ,qCAAuC,KAGpDkO,EAKF,SAAS3e,EACd4U,GAGA,IAFAD,EAEA,uDAFM,GACNmK,EACA,uDADaC,EAETC,EAAYpK,EACZqK,EAAYtK,EAEhB,GAAI,iBAAkBC,EAAK,CACzB,MAA2BkK,EAAWlK,GAA9B7M,EAAR,EAAQA,MAAOmX,EAAf,EAAeA,QACfF,EAAYjX,EAEVkX,EADEtK,GAAOuK,EACG,GAAH,OAAMvK,EAAN,aAAcuK,GAEXvK,GAAOuK,EAIvB,OAAO,IAAIxK,EAAAA,EAAeuK,EAAWD,GAGvC,SAASD,EAAmB1C,GAAwB,QAC5CtV,GAAU,UAAAsV,EAAW7L,gBAAX,eAAqBjS,KAAKwI,UAAW,GAC/CmY,GAAU,UAAA7C,EAAW7L,gBAAX,eAAqBjS,KAAK2gB,UAAWnY,EAErD,MAAO,CAAEgB,MADK,IAAItP,MAAMsO,GACRmY,QAAAA,GA5DlB,QAEAC,EAAAA,EAAAA,sBAAgBxT,EAAW7L,GAE3BA,EAAMsf,aAAaC,QAAQC,IAA3B,e,EAAA,G,EAAA,yBAA+B,WAAOZ,GAAP,+FACvBC,EADuB,GACTlO,QAASiO,EAAOjO,SAAW,IAAOiO,IAEhD7E,GAAM0F,EAAAA,EAAAA,IAAgB,MAAO,OAEjCZ,EAAUlO,QAAQ+O,cAAlB,iBAA4C3F,IALjB,kBAQtB8E,GARsB,0C,+KAA/B,uDA6BA7e,EAAMsf,aAAaC,QAAQC,IAAIb,I,yVCxC/B,IAAMhO,EAAmB,CACvBgP,iBAAkB,GAClBC,uBAAuB,EACvBC,qBAAsB,IAGjB,SAASC,IACd,OAAOnP,EAAQoP,uBAGV,SAASC,EAAgCC,GAC9CtP,EAAQoP,uBAAyBE,EAU5B,SAASnB,IACd,GAAwC,IAApCnO,EAAQgP,iBAAiBlmB,OAC3B,OAAOkX,EAAQkP,qBAGjB,GAAwC,IAApClP,EAAQgP,iBAAiBlmB,OAAc,CACzC,IAAOymB,G,EAAavP,EAAQgP,iB,EAA5B,E,8zBAAA,GACAhP,EAAQkP,qBAAuBK,E,QAGjC,OAAOvP,EAAQgP,iBAAiBQ,SAAW,GAGtC,SAASC,EAA8BH,GACxCA,GACFtP,EAAQgP,iBAAiB/hB,KAAKqiB,GAI3B,SAASI,EAAkCxH,GAChDlI,EAAQiP,sBAAwB/G,EAG3B,SAASkG,IACd,OAAOpO,EAAQiP,sBAGV,SAASU,IACd3P,EAAQgP,iBAAmB,GAC3BhP,EAAQkP,qBAAuB,GAC/BlP,EAAQiP,uBAAwB,SACzBjP,EAAQoP,uBAIV,SAASQ,IACd,MAAO,CACLT,6BAAAA,EACAE,gCAAAA,EACAlB,2BAAAA,EACAsB,8BAAAA,EACAC,kCAAAA,EACAtB,+BAAAA,EACAuB,kBAAAA,K,kxCChDG,SAASE,IACd,IAAM7f,EAAU,CACduH,OAAOuY,EAAAA,EAAAA,IAAW,iBAClBxZ,QACE,oFACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,MACP3F,UAAW,gBAIjB,OAAO,IAAIgb,SAAQ,SAACld,GAClB4Q,EAAQ,EAAD,KACFhJ,GADE,IAEL+f,SAAU,SAACC,GAAD,OAAe5nB,EAAQ4nB,UAKhC,SAASlX,EAAa9I,GAC3B,OAAO,IAAIsV,SAAQ,SAACld,GAClB4Q,EAAQ,EAAD,KACFhJ,GADE,IAELuH,OAAOuY,EAAAA,EAAAA,IAAW9f,EAAQuH,OAC1BwY,SAAU,SAACC,GAAD,OAAe5nB,EAAQ4nB,UAKhC,SAASC,EAAwBjgB,GACtC,OAAO,IAAIsV,SAAQ,SAACld,GAClB4Q,EAAQ,EAAD,KACFhJ,GADE,IAELuH,OAAOuY,EAAAA,EAAAA,IAAW9f,EAAQuH,MAAO2Y,EAAAA,GAAAA,aACjCH,SAAU,SAACC,GAAD,OAAe5nB,EAAQ4nB,UAKhC,SAAShX,EAAQhJ,GACtB,IAAMmgB,EAAMC,IAAAA,QAAgB,CAC1B7Y,MAAOvH,EAAQuH,MACfjB,QAAStG,EAAQsG,QACjByC,SAASsX,EAAAA,EAAAA,IAAergB,EAAQ+I,SAChCgX,SAAU/f,EAAQ+f,YAGpBO,EAAAA,EAAAA,IAAYH,GAGP,SAASI,EAAYvgB,GAC1BgJ,EAAQ,EAAD,KAAMhJ,GAAN,IAAeuH,OAAOuY,EAAAA,EAAAA,IAAW9f,EAAQuH,MAAO2Y,EAAAA,GAAAA,SAGlD,SAASM,EAAmBxgB,GACjCgJ,EAAQ,EAAD,KACFhJ,GADE,IAELuH,OAAOuY,EAAAA,EAAAA,IAAW9f,EAAQuH,MAAO2Y,EAAAA,GAAAA,gBAI9B,SAASO,EAAyBV,GACvC/W,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,gBAAiBI,EAAAA,GAAAA,aACnC5Z,QACE,8HACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,mBACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASW,EAA+BX,GAC7C/W,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,gBAAiBI,EAAAA,GAAAA,aACnC5Z,QACE,qIACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,OACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASY,EAAgBra,EAAiByZ,GAC/C,IAAMa,EAAmBC,GAAAA,CAASva,GAClC0C,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,gBAAiBI,EAAAA,GAAAA,aACnC5Z,QAASsa,EACT7X,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASe,EACdvZ,EACAjB,EACAyZ,GAEA,IAAMa,EAAmBC,GAAAA,CAASva,GAClC0C,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAWvY,EAAO2Y,EAAAA,GAAAA,aACzB5Z,QAASsa,EACT7X,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASgB,EAAkBza,EAAiByZ,GACjD,IAAMa,EAAmBC,GAAAA,CAASva,GAClC0C,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,iBAClBxZ,QAASsa,EACT7X,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASiB,EAAoBjB,GAKlC/W,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,wBAClBxZ,QAASua,GAAAA,CALT,oYAMA9X,QAAS,CACPC,QAAS,CACP/I,MAAO,eACP3F,UAAW,gBAGfylB,SAAAA,IAIG,SAASkB,EAAc3a,EAAiByZ,GAC7C,IAAMa,EAAmBC,GAAAA,CAASva,GAElC0C,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,iBAClBxZ,QAASsa,EACT7X,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,gBAGfylB,SAAAA,IAIG,SAASmB,EAAgB5a,EAAiByZ,GAG/C/W,EAAQ,CACNzB,MAAO,GACPjB,QAJuBua,GAAAA,CAASva,GAKhCyC,QAAS,CACPC,QAAS,CACP/I,MAAO,4BACP3F,UAAW,eAEb6mB,OAAQ,CACNlhB,MAAO,qBAGX8f,SAAAA,IAIG,SAASqB,EAAqB9a,GACnC,OAAO,IAAIgP,SAAQ,SAACld,GAClBuoB,EAAgBra,GAAS,SAAC0Z,GAAD,OAAe5nB,EAAQ4nB,SAI7C,SAASqB,EAAmBtB,GACjC/W,EAAQ,CACNzB,OAAOuY,EAAAA,EAAAA,IAAW,WAClBxZ,QACE,8FACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,WACP3F,UAAW,gBAGfylB,SAAAA,IAIG,SAASuB,IACd,OAAOxY,EAAa,CAClBvB,OAAOuY,EAAAA,EAAAA,IAAW,iBAClBxZ,QACE,yFACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,kBAMZ,SAASinB,IACd,IAAMpB,EAAMC,IAAAA,OAAe,CACzB9Z,QACE,iFACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,KACP3F,UAAW,mBAKjBgmB,EAAAA,EAAAA,IAAYH,K,g0CClOP,SAAeqB,EAAtB,kC,iDAAO,WAA2BxhB,GAA3B,yGACE,IAAIsV,SAAQ,SAACld,GAClBqpB,EAAO,EAAD,KACDzhB,GADC,IAEJ+f,SAAU,SAAC2B,GAAD,OAA+BtpB,EAAQspB,WAJhD,4C,sBASA,SAASD,EAAOzhB,GACrB,IAAMmgB,EAAMC,IAAAA,OAAe,CACzB7Y,MAAOvH,EAAQuH,MACfoa,UAAW3hB,EAAQ2hB,UACnBC,aAAc5hB,EAAQ4hB,aACtB7Y,QAAS/I,EAAQ+I,SAAUsX,EAAAA,EAAAA,IAAergB,EAAQ+I,cAAWmC,EAE7D6U,SAAU/f,EAAQ+f,SAClB/iB,MAAOgD,EAAQhD,QAKjB,OAFAsjB,EAAAA,EAAAA,IAAYH,GAELA,EAGF,SAAS0B,EACdta,EACAwY,GAEA0B,EAAO,CACLla,OAAOuY,EAAAA,EAAAA,IAAWvY,EAAO2Y,EAAAA,GAAAA,aACzByB,UAAW,WACXC,aAAc,CACZ,CACEE,KAAM,qDACN9kB,MAAO,MAGX+L,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,eAGfylB,SAAAA,IAIG,SAASgC,EAAe/hB,GAC7ByhB,EAAOzhB,GAGF,SAASgiB,EACdC,EACAlC,GAEA,IAAMI,EAAMsB,EAAO,CACjBla,OAAOuY,EAAAA,EAAAA,IAAW,gBAAiBI,EAAAA,GAAAA,aAEnCyB,UAAW,WACXC,aAAc,CACZ,CACEE,KAAM,2BACN9kB,MAAO,MAGX+L,QAAS,CACPC,QAAS,CACP/I,MAAO,WACP3F,UAAW,eAGfylB,SAAAA,IAIFI,EAAIrd,KAAK,iBAAiBof,QAA1B,aADgB,gLAChB,SACA,IAAMjiB,EAAQkgB,EAAIrd,KAAK,qBAIvB,GAHA7C,EAAMkiB,IAAI,eAAgB,OAC1BliB,EAAMkiB,IAAI,gBAAiB,QAEvBF,EAAiB,CACnBhiB,EAAMkiB,IAAI,SAAU,eACpBliB,EAAM6C,KAAK,KAAKqf,IAAI,SAAU,eACbhC,EAAIrd,KAAK,2BACjBsf,KAAK,YAAY,GAC1B,IAAMC,EAAYlC,EAAIrd,KAAK,eAC3Buf,EAAUD,KAAK,QAAS,iBAMxBC,EAAUlR,OAAV,UAL+B,sTAS5B,SAASmR,EACdhc,EACAyZ,GAEA,IAAMwC,EAAmB1B,GAAAA,CAASva,GAoBlCkc,EAlBYf,EAAO,CACjBla,OAAOuY,EAAAA,EAAAA,IAAW,iBAClB6B,UAAW,WACXC,aAAc,CACZ,CACEE,KAAM,mCACN9kB,MAAO,MAGX+L,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,gBAGfylB,SAAAA,IAG2BwC,GAGxB,SAASE,EACdnc,EACAoc,EACAC,EACA5C,GAEA,IAAMwC,EAAmB1B,GAAAA,CAASva,GAoBlCkc,EAlBYf,EAAO,CACjBla,OAAOuY,EAAAA,EAAAA,IAAW,iBAClB6B,UAAW,WACXC,aAAc,CACZ,CACEE,KAAM,oCACN9kB,MAAO,MAGX+L,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,gBAGfylB,SAAAA,IAG2BwC,EAAkBG,GAGjD,SAASF,EACPrC,EACA7Z,GAGA,IAFAsc,EAEA,wDADAC,EACA,wDACA1C,EAAIrd,KAAK,iBAAiBof,QAA1B,aAAwC5b,EAAxC,SACA,IAAMwc,EAAW3C,EAAIrd,KAAK,2BAC1BggB,EAASV,KAAK,UAAWQ,GAErBC,GACFC,EAASC,SAAS,a,yJC9LV7C,E,oBAKL,SAASG,EAAergB,GAC7B,MAAO,CACLgJ,QAAS,CACP/I,MAAO4gB,GAAAA,CAAS7gB,EAAQgJ,QAAQ/I,OAChC3F,UACE0F,EAAQgJ,QAAQ1O,WAAaumB,GAAAA,CAAS7gB,EAAQgJ,QAAQ1O,YAE1D6mB,OAAQ,CACNlhB,MACED,EAAQmhB,QAAUnhB,EAAQmhB,OAAOlhB,MAC7B4gB,GAAAA,CAAS7gB,EAAQmhB,OAAOlhB,OACxB,SACN3F,UAAW,gBAKV,SAASwlB,EACdvY,GAEA,IADAyb,EACA,uDAD2B9C,EAAc+C,KAEzC,6CAC2BD,EAD3B,6CAE8BnC,GAAAA,CAAStZ,GAFvC,yBAOK,SAAS+Y,EAAYH,GAC1BA,EAAIgC,IAAI,CACN,iBAAkB,Y,SAnCVjC,GAAAA,EAAAA,KAAAA,UAAAA,EAAAA,YAAAA,Q,CAAAA,IAAAA,EAAAA,M,wRCcL,SAASrX,EAActB,EAAeua,GAC3CoB,IAAAA,QAAerC,GAAAA,CAAS,IAASiB,IAAQjB,GAAAA,CAAS,IAAStZ,KAGtD,SAAS4b,EAAc5b,EAAeua,GAC3CoB,IAAAA,QAAerC,GAAAA,CAAS,IAASiB,IAAQjB,GAAAA,CAAStZ,GAAQ,CAAE6b,QAAS,MAGhE,SAASlG,EAAY3V,EAAexP,GAA8B,IAAnBsrB,EAAmB,uDAAJ,GAC7DnP,EAAMoP,EAAavrB,IAAMsrB,EAG/BE,QAAQjc,MAAMvP,GAEF,sBAARmc,GACFgP,IAAAA,MAAarC,GAAAA,CAAS,IAAS3M,IAAO2M,GAAAA,CAAStZ,GAAQ,CAAE6b,QAAS,MArCtEF,IAAAA,QAAiB,CACfE,QAAS,IACTI,aAAa,EACbC,aAAa,EACbC,cAAc,EAEdC,UAAW,iVAmCN,IAAMC,EAAU/a,EACVvB,EAAQ4V,EACR2G,EAAUV,EAGhB,SAASW,IACd,MAAO,CACLF,QAAS/a,EACTgb,QAASV,EACT7b,MAAO4V,GAIX,SAASoG,EAAavrB,GACpB,IAAKA,EACH,MAAO,GAGT,IAcImc,EAAM,GASV,MAvBc,CACZ,mBACA,mBACA,eACA,eACA,eACA,aACA,UACA,sBACA,eACA,WACA,OAKIhD,SAAQ,SAACkR,GACb,IAAM5M,EAAM,IAAMzd,EAAGqqB,GACF,iBAAR5M,IACTtB,EAAMA,GAAOsB,MAIVtB,I,yOC3DF,SAAS6P,EAAT,GAAsE,MAA3CC,EAA2C,EAA3CA,iBAAkBC,EAAyB,EAAzBA,eAC5CC,GAASC,EAAAA,EAAAA,aAETC,EAoDR,SAAiBC,GACf,OAAQA,GACN,KAAKC,EAAAA,GAAAA,aACH,OAAOC,EAAAA,EAET,KAAKD,EAAAA,GAAAA,IACH,OAAOE,EAAAA,EAET,KAAKF,EAAAA,GAAAA,MACH,OAAOG,EAAAA,EAET,KAAKH,EAAAA,GAAAA,KACL,KAAKA,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,OACL,QACE,OAAOI,EAAAA,GAnEEC,CAAQX,GACfzc,EAAQqd,EAAAA,GAAeZ,GACvBa,EAAWC,EAAAA,GAAkBd,GAE7Be,GAA2BC,EAAAA,EAAAA,MAE3BC,GACJ,WAF4BC,EAAAA,EAAAA,MAENpnB,YAAtB,eACI6N,QAAO,SAACwZ,GAAD,OAAOA,EAAEd,WAAaL,KAC9BxsB,KAAI,SAAC2tB,GAAD,OAAgCA,EAAEhoB,UAAS,GAEpD,OACE,iCACE,SAAC,IAAD,kCACA,UAAC,IAAD,CAASmL,MAAM,OAAf,oBACU,KACR,eACEhO,UAAU,YACV8qB,KAAMP,EACNlsB,OAAO,SACP0sB,IAAI,aAJN,yCAM+B9d,EAN/B,mBAOK,IATP,oEAUoE,IAVpE,gEAaA,SAAC6c,EAAD,CACEJ,iBAAkBA,EAClBvb,UAAWsc,EAAyBtc,UACpCb,SAMN,SAAkBlH,GAChB,IAAMyZ,EAAmC,CACvCkK,SAAUL,EACV7mB,KAAMuD,EAAOvD,KAAKmoB,OAClBC,aAAaC,EAAAA,EAAAA,IAAW9kB,EAAO6kB,cAEjCR,EAAyBnc,OAAOuR,EAAS,CACvC3S,UAAW,WACLyc,GACFC,EAAOuB,aAAaC,GAAGzB,OAdzBgB,gBAAiBA,S,wiBClDlB,SAAeU,EAAtB,kC,iDAAO,WAAgCC,GAAhC,yGAEGvmB,EAAAA,GAAAA,KAAWC,IAAYsmB,GAF1B,6DAIGrmB,EAAAA,EAAAA,IAAgB,EAAD,GAAa,+BAJ/B,yD,uEAQA,8HAEoBF,EAAAA,GAAAA,IAAwBC,KAF5C,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAa,6BAL/B,0D,sBASA,SAAesmB,EAAtB,kC,iDAAO,WAAgCD,GAAhC,yGAEGvmB,EAAAA,GAAAA,OAA2BC,EAASsmB,EAAWjuB,KAFlD,6DAIG4H,EAAAA,EAAAA,IAAgB,EAAD,GAAa,+BAJ/B,yD,uEAQA,WAAkC5H,GAAlC,iHAEoB0H,EAAAA,GAAAA,IAAsBC,EAAS3H,IAFnD,uBAEKmG,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAL/B,0D,uEASA,WACLqmB,EACAjuB,GAFK,iHAKoB0H,EAAAA,GAAAA,IAAUC,EAAS3H,GAAKiuB,GAL5C,uBAKK9nB,EALL,EAKKA,KALL,kBAMIA,GANJ,uCAQGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAa,+BAR/B,0D,sBAYA,SAASumB,IACd,IAAMC,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,cACL,mBAhBG,SAAP,oCAsBU+e,CANN,EACEL,WADF,EAEEjuB,MAKF,CACE6P,UAAW,SAAC0e,EAAGpoB,GAKb,OAJA+K,EAAAA,EAAAA,IACE,mCACA/K,EAAK8nB,WAAWzoB,MAAQ,IAEnB4oB,EAAYI,kBAAkB,CAAC,sBAExC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,kCAOZ,SAAS8f,IACd,IAAML,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,aAAY2e,EAAkB,CACnCre,UAAW,SAAC0e,EAAGN,GAEb,OADA/c,EAAAA,EAAAA,IAAc,mCAAoC+c,EAAWzoB,MACtD4oB,EAAYI,kBAAkB,CAAC,sBAExC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,kCAMV,SAAS+f,EAAmB1uB,GACjC,OAAO8H,EAAAA,EAAAA,UAAS,CAAC,mBAAoB9H,IAAK,kBApErC,SAAP,kCAoEkD2uB,CAAmB3uB,KAAK,CACtE0P,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,0CAMV,SAAS4e,IACd,OAAOzlB,EAAAA,EAAAA,UAAS,oBAAoB,kBAhG/B,WAAP,+BAgG4C8mB,KAAuB,CAC/DtU,UAAW,GACX5K,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,2CAMV,SAAS0e,IACd,IAAMe,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,aAAYye,EAAkB,CACnCne,UAAW,SAAC0e,EAAG/L,GAEb,OADAtR,EAAAA,EAAAA,IAAc,mCAAoCsR,EAAQhd,MACnD4oB,EAAYI,kBAAkB,CAAC,sBAExC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,kCAMjB,SAAShH,EAASknB,GAChB,IAAI1mB,EAAM,mBAIV,OAHI0mB,IACF1mB,GAAO,IAAJ,OAAQ0mB,IAEN1mB,I,2MCxIH2mB,EAAwD,CAC5DC,KAAM,gDACNC,OAAQ,mEACRC,aACE,2EAGEC,EAAuB,CAC3B1pB,KAAM,GACNooB,YAAa,CACXuB,OAAQ,KAcL,SAASpC,EAAT,GAQG,IAPRV,EAOQ,EAPRA,iBAOQ,IANR+C,UAAAA,OAMQ,SALRte,EAKQ,EALRA,UACAb,EAIQ,EAJRA,SACAqd,EAGQ,EAHRA,gBAGQ,IAFRxd,cAAAA,OAEQ,MAFQof,EAER,MADRG,gBAAAA,OACQ,qBADkBP,EAAezC,IACjC,EACFE,GAASC,EAAAA,EAAAA,aACf,OACE,SAAC,KAAD,CACE1c,cAAeA,EACfwf,oBAAkB,EAClB5jB,iBAAkB,kBAAMA,EAAAA,EAAAA,GAAiB4hB,EAAiB8B,IAC1Dnf,SAAU,SAAClH,GAAD,OAAYkH,EAASlH,IAC/BmH,iBAAe,EALjB,SAOG,kBAAGnH,EAAH,EAAGA,OAAQwH,EAAX,EAAWA,OAAQgf,EAAnB,EAAmBA,aAAcjf,EAAjC,EAAiCA,QAASkf,EAA1C,EAA0CA,MAA1C,OACC,UAAC,KAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAAcE,YAAU,EAApE,UACGL,IACC,SAAC,IAAD,CAAa7lB,QAAQ,WAAWjB,MAAM,WAAtC,UACE,SAAC,KAAD,CACEonB,GAAIC,EAAAA,EACJjmB,UAAQ,EACRlE,KAAK,WACLoqB,aAAa,MACb5vB,GAAG,WACHqF,MAAO4nB,EAAAA,GAAeZ,GACtB,UAAQ,8BAId,SAAC,IAAD,CACE9iB,QAAQ,OACRjB,MAAM,mBACNiI,OAAQA,EAAO/K,KAHjB,UAKE,SAAC,KAAD,CACEkqB,GAAIC,EAAAA,EACJnqB,KAAK,OACLxF,GAAG,OACHqF,MAAO0D,EAAOvD,KACdmO,YAAW,eAAUsZ,EAAAA,GAAeZ,GAAzB,YACX,UAAQ,gCAGZ,SAAC,IAAD,CACE9iB,QAAQ,UACRjB,MAAM,UACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBuB,OAH9B,UAKE,SAAC,KAAD,CACEO,GAAIC,EAAAA,EAEJnqB,KAAK,qBACLoqB,aAAa,MACb5vB,GAAG,UACHqF,MAAO0D,EAAO6kB,YAAYuB,OAC1Bxb,YAAa0b,EACb,UAAQ,4BAIZ,gBAAK1sB,UAAU,aAAf,UACE,iBAAKA,UAAU,iBAAf,WACE,SAAC,IAAD,CACE+G,UAAW4G,IAAYkf,EACvB,UAAQ,+BACR1e,UAAWA,EACXC,YAAY,wBAJd,SAMGqe,EAAY,qBAAuB,oBAErCA,IACC,SAAC,KAAD,CACEze,MAAM,UACNC,QAAS,kBACP2b,EAAOuB,aAAaC,GAAG,6BAH3B,iC,2HC7GT,SAAS8B,EAAuBC,GACrC,OAAOhkB,EAAAA,EAAAA,MACJ5B,SAAS,oBACTiC,KAAK,oBAAqB,0BAA0B,SAAC4jB,GAAD,OACnDD,EAAME,OAAM,SAACxqB,GAAD,OAAUA,IAASuqB,QAI9B,SAASrkB,EAAiBokB,GAAoC,IAAnBV,EAAmB,wDACnE,OAAIA,GACKplB,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,KAAMqqB,EAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLujB,QAAQrjB,EAAAA,EAAAA,QAET5B,cAGAF,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,KAAMqqB,EAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLujB,QAAQrjB,EAAAA,EAAAA,MAAS5B,SAAS,yBAE3BA,e,uNCLDglB,EAAuB,CAC3B1pB,KAAM,GACNooB,YAAa,CACXqC,YAAa,GACbC,gBAAiB,KAId,SAASrD,EAAT,GAQG,IAPRR,EAOQ,EAPRA,iBAOQ,IANR+C,UAAAA,OAMQ,SALRte,EAKQ,EALRA,UACAb,EAIQ,EAJRA,SACAqd,EAGQ,EAHRA,gBAGQ,IAFRxd,cAAAA,OAEQ,MAFQof,EAER,MADRG,gBAAAA,OACQ,MADU,gDACV,EACF9C,GAASC,EAAAA,EAAAA,aACf,OACE,SAAC,KAAD,CACE1c,cAAeA,EACfwf,oBAAkB,EAClB5jB,iBAAkB,kBCxCjB,SAA0BokB,GAC/B,OADmE,yDAE1D9lB,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLqkB,aAAankB,EAAAA,EAAAA,MAAS5B,SAAS,6BAC/BgmB,iBAAiBpkB,EAAAA,EAAAA,QAElB5B,cAGAF,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLqkB,aAAankB,EAAAA,EAAAA,MAAS5B,SAAS,6BAC/BgmB,iBAAiBpkB,EAAAA,EAAAA,MAAS5B,SAAS,mCAEpCA,aDqBuBwB,CAAiB4hB,EAAiB8B,IAC1Dnf,SAAU,SAAClH,GAAD,OAAYkH,EAASlH,IAC/BmH,iBAAe,EALjB,SAOG,oBAAGnH,EAAH,EAAGA,OAAQwH,EAAX,EAAWA,OAAQgf,EAAnB,EAAmBA,aAAcjf,EAAjC,EAAiCA,QAASkf,EAA1C,EAA0CA,MAA1C,OACC,UAAC,KAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAAcE,YAAU,EAApE,UACGL,IACC,SAAC9b,EAAA,EAAD,CAAa/J,QAAQ,WAAWjB,MAAM,WAAtC,UACE,SAAC,KAAD,CACEonB,GAAIC,EAAAA,EACJjmB,UAAQ,EACRlE,KAAK,WACLoqB,aAAa,MACb5vB,GAAG,WACHqF,MAAO4nB,EAAAA,GAAeZ,GACtB,UAAQ,8BAId,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,OACRjB,MAAM,mBACNiI,OAAQA,EAAO/K,KAHjB,UAKE,SAAC,KAAD,CACEkqB,GAAIC,EAAAA,EACJnqB,KAAK,OACLxF,GAAG,OACHqF,MAAO0D,EAAOvD,KACdmO,YAAW,eAAUsZ,EAAAA,GAAeZ,GAAzB,YACX,UAAQ,gCAIZ,iCACE,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,gBACRjB,MAAM,gBACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBqC,YAH9B,UAKE,SAAC,KAAD,CACEP,GAAIC,EAAAA,EACJnqB,KAAK,0BACLoqB,aAAa,MACb5vB,GAAG,gBACHqF,MAAO0D,EAAO6kB,YAAYqC,YAC1Btc,YAAY,4BACZ,UAAQ,iCAGZ,SAACL,EAAA,EAAD,CACE/J,QAAQ,oBACRjB,MAAM,oBACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBsC,gBAH9B,UAKE,SAAC,KAAD,CACER,GAAIC,EAAAA,EACJnqB,KAAK,8BACLoqB,aAAa,MACb5vB,GAAG,oBACHqF,MAAO0D,EAAO6kB,YAAYsC,gBAC1Bvc,YAAa0b,EACb,UAAQ,wCAKd,gBAAK1sB,UAAU,aAAf,UACE,iBAAKA,UAAU,iBAAf,WACE,SAACkO,EAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,+BACR1e,UAAWA,EACXC,YAAY,wBAJd,SAMGqe,EAAY,qBAAuB,oBAErCA,IACC,SAAC,KAAD,CACEze,MAAM,UACNC,QAAS,kBACP2b,EAAOuB,aAAaC,GAAG,6BAH3B,iC,uNEpGVmB,EAAuB,CAC3B1pB,KAAM,GACNooB,YAAa,CACXuC,SAAU,GACVC,aAAc,GACdC,SAAU,GACVC,eAAgB,KAIb,SAASxD,EAAT,GAQG,IAPRT,EAOQ,EAPRA,iBAOQ,IANR+C,UAAAA,OAMQ,SALRte,EAKQ,EALRA,UACAb,EAIQ,EAJRA,SACAqd,EAGQ,EAHRA,gBAGQ,IAFRxd,cAAAA,OAEQ,MAFQof,EAER,MADRG,gBAAAA,OACQ,MADU,gDACV,EACF9C,GAASC,EAAAA,EAAAA,aAEf,OACE,SAAC,KAAD,CACE1c,cAAeA,EACfwf,oBAAkB,EAClB5jB,iBAAkB,kBC3CjB,SAA0BokB,GAC/B,OADmE,yDAE1D9lB,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLukB,UAAUrkB,EAAAA,EAAAA,MAAS5B,SAAS,yBAC5BkmB,cAActkB,EAAAA,EAAAA,MACdukB,UAAUvkB,EAAAA,EAAAA,MAAS5B,SAAS,6BAC5BomB,gBAAgBxkB,EAAAA,EAAAA,MAAS5B,SAAS,iCAEnCA,cAGAF,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLukB,UAAUrkB,EAAAA,EAAAA,MAAS5B,SAAS,yBAC5BkmB,cAActkB,EAAAA,EAAAA,MAAS5B,SAAS,6BAChCmmB,UAAUvkB,EAAAA,EAAAA,MAAS5B,SAAS,6BAC5BomB,gBAAgBxkB,EAAAA,EAAAA,MAAS5B,SAAS,iCAEnCA,aDoBuBwB,CAAiB4hB,EAAiB8B,IAC1Dnf,SAAU,SAAClH,GAAD,OAAYkH,EAASlH,IAC/BmH,iBAAe,EALjB,SAOG,wBAAGnH,EAAH,EAAGA,OAAQwH,EAAX,EAAWA,OAAQgf,EAAnB,EAAmBA,aAAcjf,EAAjC,EAAiCA,QAASkf,EAA1C,EAA0CA,MAA1C,OACC,UAAC,KAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAAcE,YAAU,EAApE,UACGL,IACC,SAAC9b,EAAA,EAAD,CAAa/J,QAAQ,WAAWjB,MAAM,WAAtC,UACE,SAAC,KAAD,CACEonB,GAAIC,EAAAA,EACJjmB,UAAQ,EACRlE,KAAK,WACLoqB,aAAa,MACb5vB,GAAG,WACHqF,MAAO4nB,EAAAA,GAAeZ,GACtB,UAAQ,8BAId,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,OACRjB,MAAM,mBACNiI,OAAQA,EAAO/K,KAHjB,UAKE,SAAC,KAAD,CACEkqB,GAAIC,EAAAA,EACJnqB,KAAK,OACLxF,GAAG,OACHqF,MAAO0D,EAAOvD,KACdmO,YAAW,eAAUsZ,EAAAA,GAAeZ,GAAzB,YACX,UAAQ,gCAGZ,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,kBACRjB,MAAM,kBACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoB0C,eAH9B,UAKE,SAAC,KAAD,CACEZ,GAAIC,EAAAA,EACJnqB,KAAK,6BACLH,MAAO0D,EAAO6kB,YAAY0C,eAC1BV,aAAa,MACb5vB,GAAG,kBACH2T,YAAY,4CACZ,UAAQ,oCAGZ,SAACL,EAAA,EAAD,CACE/J,QAAQ,YACRjB,MAAM,YACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoByC,SAH9B,UAKE,SAAC,KAAD,CACEX,GAAIC,EAAAA,EACJnqB,KAAK,uBACLH,MAAO0D,EAAO6kB,YAAYyC,SAC1BT,aAAa,MACb5vB,GAAG,YACH2T,YAAY,4CACZ,UAAQ,8BAGZ,SAACL,EAAA,EAAD,CACE/J,QAAQ,YACRjB,MAAM,YACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBuC,SAH9B,UAKE,SAAC,KAAD,CACET,GAAIC,EAAAA,EACJnqB,KAAK,uBACLH,MAAO0D,EAAO6kB,YAAYuC,SAC1BP,aAAa,MACb5vB,GAAG,YACH2T,YAAY,4CACZ,UAAQ,8BAGZ,SAACL,EAAA,EAAD,CACE/J,QAAQ,gBACRjB,MAAM,gBACNiI,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBwC,aAH9B,UAKE,SAAC,KAAD,CACEV,GAAIC,EAAAA,EACJnqB,KAAK,2BACLoqB,aAAa,MACb5vB,GAAG,gBACHqF,MAAO0D,EAAO6kB,YAAYwC,aAC1Bzc,YAAa0b,EACb,UAAQ,kCAIZ,gBAAK1sB,UAAU,aAAf,UACE,iBAAKA,UAAU,iBAAf,WACE,SAACkO,EAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,+BACR1e,UAAWA,EACXC,YAAY,wBAJd,SAMGqe,EAAY,qBAAuB,oBAErCA,IACC,SAAC,KAAD,CACEze,MAAM,UACNC,QAAS,kBACP2b,EAAOuB,aAAaC,GAAG,6BAH3B,iC,ucExJT,SAASwC,EACdC,GAEA,OAAO,IAAI7S,SAAQ,SAACld,EAASgwB,GAC3B,IAAMC,EAAS,IAAIC,WACnBD,EAAOE,kBAAkBJ,GACzBE,EAAOG,OAAS,WACdpwB,EAAQiwB,EAAO3G,SAEjB2G,EAAOI,QAAU,SAACnhB,GAAD,OAAW8gB,EAAO9gB,O,2gBCqBvC,IAAMuf,EAAuB,CAC3B1pB,KAAM,GACNooB,YAAa,CACXmD,cAAe,KAIZ,SAASnE,EAAT,GAOG,I,IANRP,EAMQ,EANRA,iBAMQ,IALR+C,UAAAA,OAKQ,SAJRte,EAIQ,EAJRA,UACAb,EAGQ,EAHRA,SACAqd,EAEQ,EAFRA,gBAEQ,IADRxd,cAAAA,OACQ,MADQof,EACR,EACR,G,GAA4CrkB,EAAAA,EAAAA,Y,EAA5C,E,8zBAAOmmB,EAAP,KAAuBC,EAAvB,KACM1E,GAASC,EAAAA,EAAAA,aAEf,OACE,SAAC,KAAD,CACE1c,cAAeA,EACfwf,oBAAkB,EAClB5jB,iBAAkB,kBChDjB,SAA0BokB,GAW/B,OAXmE,0DAEjE9lB,EAAAA,EAAAA,MAAS4B,MAAM,CACbpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLmlB,eAAejlB,EAAAA,EAAAA,QAEhB5B,cAGAF,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMqqB,EAAAA,EAAAA,GAAuBC,GAC7BlC,aAAa5jB,EAAAA,EAAAA,MACV4B,MAAM,CACLmlB,eAAejlB,EAAAA,EAAAA,MAAS5B,SAAS,qCAElCA,aD+BuBwB,CAAiB4hB,EAAiB8B,IAC1Dnf,SAAU,SAAClH,GAAD,OAAYkH,EAASlH,IAC/BmH,iBAAe,EALjB,SAOG,kBAAGnH,EAAH,EAAGA,OAAQwH,EAAX,EAAWA,OAAQgf,EAAnB,EAAmBA,aAAcnf,EAAjC,EAAiCA,cAAeE,EAAhD,EAAgDA,QAASkf,EAAzD,EAAyDA,MAAzD,OACC,UAAC,KAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAAcE,YAAU,EAApE,UACGL,IACC,SAAC9b,EAAA,EAAD,CAAa/J,QAAQ,WAAWjB,MAAM,WAAtC,UACE,SAAC,KAAD,CACEonB,GAAIC,EAAAA,EACJjmB,UAAQ,EACRlE,KAAK,WACLoqB,aAAa,MACb5vB,GAAG,WACHqF,MAAO4nB,EAAAA,GAAeZ,GACtB,UAAQ,8BAId,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,OACRjB,MAAM,mBACNiI,OAAQA,EAAO/K,KAHjB,UAKE,SAAC,KAAD,CACEkqB,GAAIC,EAAAA,EACJnqB,KAAK,OACLxF,GAAG,OACHqF,MAAO0D,EAAOvD,KACdmO,YAAW,eAAUsZ,EAAAA,GAAeZ,GAAzB,YACX,UAAQ,gCAIZ,SAAC/Y,EAAA,EAAD,CACE/J,QAAQ,4BACRjB,MAAM,8BACNI,QAAQ,6FACR6H,OAAM,UAAEA,EAAOqd,mBAAT,aAAE,EAAoBmD,cAJ9B,UAME,SAACG,EAAA,EAAD,CACE3nB,QAAQ,4BACRqG,MAAM,cACNuhB,OAAO,QACP9rB,MAAO2rB,EACPloB,SAAU,SAAC0nB,GAAD,OArDd,6CAqDwBY,CAAiBZ,EAAMpgB,SAI/C,gBAAKzN,UAAU,aAAf,UACE,iBAAKA,UAAU,iBAAf,WACE,SAACkO,EAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,+BACR1e,UAAWA,EACXC,YAAY,wBAJd,SAMGqe,EAAY,qBAAuB,oBAErCA,IACC,SAAC,KAAD,CACEze,MAAM,UACNC,QAAS,kBACP2b,EAAOuB,aAAaC,GAAG,6BAH3B,+BApEN,iDAoFR,WACEyC,EACApgB,GAFF,4FAQMogB,EARN,wBASIS,EAAkBT,GATtB,kBAWuCD,EAAsBC,GAX7D,QAWYa,EAXZ,SAY8D,iBAAvBA,GACzBC,EAAgBC,EAAoBF,GAC1CjhB,EAAc,4BAA6BkhB,KAE3C/L,EAAAA,EAAAA,IAAY,oCAhBpB,iDAmBMA,EAAAA,EAAAA,IAAY,oCAnBlB,0DApFQ,uBA6GV,SAASgM,EAAoBC,GAI3B,IAHA,IAAIC,EAAS,GACPC,EAAQ,IAAIC,WAAWH,GACvBI,EAAMF,EAAMG,WACT5wB,EAAI,EAAGA,EAAI2wB,EAAK3wB,GAAK,EAC5BwwB,GAAU1d,OAAO+d,aAAaJ,EAAMzwB,IAEtC,OAAOwE,OAAOssB,KAAKN,K,kCEvJd,IAAK9E,E,0FAAAA,GAAAA,EAAAA,KAAAA,OAAAA,EAAAA,OAAAA,SAAAA,EAAAA,cAAAA,eAAAA,EAAAA,aAAAA,MAAAA,EAAAA,IAAAA,SAAAA,EAAAA,MAAAA,Q,CAAAA,IAAAA,EAAAA,KASL,IAAMM,EAA+C,CAC1D8B,KAAM,OACNC,OAAQ,SACRC,aAAc,eACd+C,IAAK,eACLC,OAAQ,MACRC,MAAO,SAGI/E,EAAkD,CAC7D4B,KAAM,sDACNC,OAAQ,wDACRC,aAAc,8DACd+C,IAAK,qDACLC,OAAQ,qDACRC,MAAO,uD,gKC5BF,SAASrE,EAA8CsE,GAC5D,OAAO,IAAYA,GAAK,SAAC9sB,GACvB,MAAqB,iBAAVA,EACFA,EAAMsoB,OAERtoB,K,2BAIJ,IAAM+sB,EAAkB,CAC7B,gBACA,SACA,kBACA,gBAGK,SAASC,EAAsBzE,GACpC,IAAM0E,EAA0B,IAAO1E,EAAawE,GAEpD,OAAO5xB,OAAOuI,OAAOupB,GAAyBjgB,MAAK,SAACkgB,GAClD,OAAqC,IAAjCA,EAAe5E,OAAOxsB,Y,0kBCnBvB,SAAeqxB,IAAtB,+B,iDAAO,8HAEoB9qB,EAAAA,GAAAA,IACrBC,EAAS,WAHR,uBAEKxB,EAFL,EAEKA,KAFL,kBAKI,IAAIssB,EAAAA,wBAAwBtsB,IALhC,uCAOGyB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,2CATC,0D,sBAcA,SAAe8qB,IAAtB,+B,iDAAO,8HAEoBhrB,EAAAA,GAAAA,IAAoBC,KAFxC,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,2CAPC,0D,sBAYA,SAAe+qB,EAAtB,kC,iDAAO,WAA8B3sB,GAA9B,yGAEG0B,EAAAA,GAAAA,IAAUC,IAAY3B,GAFzB,6DAIG4B,EAAAA,EAAAA,IAAgB,EAAD,GAAa,yCAJ/B,wD,yEAQA,WACLgrB,GADK,yGAIGlrB,EAAAA,GAAAA,IAAUC,EAAS,oBAAqBirB,GAJ3C,6DAMGhrB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,8CARC,yD,sBAaP,SAASD,EAASkrB,EAAsBzsB,GACtC,IAAI+B,EAAM,WASV,OARI0qB,IACF1qB,GAAO,IAAJ,OAAQ0qB,IAGTzsB,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,E,urBC7CF,SAASrC,IAMR,6DAAJ,GALFyU,EAKM,EALNA,QACAxU,EAIM,EAJNA,OAKA,OAAO+B,EAAAA,EAAAA,UAAS,CAAC,WAAY,WAAW,kBAAM0qB,MAA/B,KACbzsB,OAAAA,IACGsU,EAAAA,EAAAA,IAAU,uCAFA,IAGbE,QAAAA,KAIG,SAASvP,EACdjF,GAEA,IADAwU,IACA,yDACA,OAAOzS,EAAAA,EAAAA,UAAS,CAAC,YAAa4qB,EAAf,GACb3sB,OAAAA,EACAwU,QAAAA,EACAD,UAAW,KACRD,EAAAA,EAAAA,IAAU,iCAIV,SAASyY,IACd,IAAM1E,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,aACLojB,GACAI,EAAAA,EAAAA,KACEC,EAAAA,EAAAA,IAAe5E,EAAa,CAAC,CAAC,YAAa,CAAC,YAC5C/T,EAAAA,EAAAA,IAAU,+BAKT,SAAS4Y,IACd,IAAM7E,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,cACL,SAACiT,GAAD,ODpBG,SAAP,kCCoB2C0Q,CAAsB1Q,MAC7DuQ,EAAAA,EAAAA,KACEC,EAAAA,EAAAA,IAAe5E,EAAa,CAAC,CAAC,eAC9B/T,EAAAA,EAAAA,IAAU,kD,qbC3DT,SAAe8Y,IAAtB,+B,iDAAO,8HAEoBzrB,EAAAA,GAAAA,IAAkBC,KAFtC,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,EAAAA,IAAgB,EAAD,IALlB,0D,sBASP,SAASD,EAAS3H,GAChB,IAAImI,EAAM,SAMV,OAJInI,IACFmI,GAAO,IAAJ,OAAQnI,IAGNmI,ECfF,SAASkG,IAGd,IAFAkM,IAEA,yDADAxU,EACA,uDAD8B,SAACI,GAAD,OAAUA,GAElCgI,GAAQrG,EAAAA,EAAAA,UAAS,CAAC,UAAU,kBAAMqrB,MAAY,CAClDzjB,KAAM,CACJC,MAAO,CAAEC,MAAO,UAAWjB,QAAS,yBAEtC4L,QAAAA,EACAxU,OAAAA,IAGF,OAAOoI,I,mCCbF,IAAKwE,E,yCAAAA,GAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,WAAAA,GAAAA,a,CAAAA,IAAAA,EAAAA,M,6KCSL,SAAST,EACdkhB,GAEA,6DADyD,GAAvD7Y,EACF,EADEA,QAASxU,EACX,EADWA,OAEX,OAAO+B,EAAAA,EAAAA,UACL,CAAC,QAASsrB,EAAQ,gBAClB,kBAAMC,EAAAA,EAAAA,IAAmBD,KACzB,CAAErtB,OAAAA,EAAQwU,QAAAA,IAIP,SAAS+Y,EAAgBvlB,GAC9B,IAAM6J,EAAQ1F,EAAkBnE,EAAKE,GAAI,CACvCsM,UAAU5O,EAAAA,EAAAA,GAAQoC,GAClBhI,OAAQ,SAACkM,GAAD,OACNA,EAAYI,MAAK,SAACK,GAAD,OAAgBA,EAAWC,OAAS4gB,EAAAA,EAAAA,iBAGzD,SAAO5nB,EAAAA,EAAAA,GAAQoC,IAAe6J,EAAMzR,KAG/B,SAAS2H,EACd0lB,GAGA,IAFAjZ,IAEA,yDADAxU,EACA,uDAD8B,SAACI,GAAD,OAAUA,GAElCwH,GAAQ7F,EAAAA,EAAAA,UAAS,CAAC,UAAU,kBAAM2rB,EAAAA,EAAAA,IAASD,KAAuB,CACtE9jB,KAAM,CACJC,MAAO,CAAEC,MAAO,UAAWjB,QAAS,yBAEtC4L,QAAAA,EACAxU,OAAAA,IAGF,OAAO4H,I,uCC3CGgF,ECFL,SAAS+gB,EAA4B/lB,GAC1C,OAAOA,EAAMqG,QAAO,SAACjG,GAAD,OAAUA,EAAK4E,OAASA,EAAKghB,SAG5C,SAAShoB,EAAQoC,GACtB,QAASA,GAAsB,IAAdA,EAAK4E,K,kFDHZA,GAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,SAAAA,GAAAA,W,CAAAA,IAAAA,EAAAA,M,oeEGL,SAAe8gB,IAAtB,+B,iDAAO,0HAAwBG,EAAxB,kDAEoBlsB,EAAAA,GAAAA,IAAkBC,KAFtC,uBAEKxB,EAFL,EAEKA,KAFL,kBAIIytB,EAAwBztB,GAAOutB,EAAAA,EAAAA,GAA4BvtB,IAJ/D,uCAMGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAN/B,yD,wBAUA,SAAeka,EAAtB,kC,iDAAO,WAAuB9hB,GAAvB,iHAE0B0H,EAAAA,GAAAA,IAAgBC,EAAS3H,IAFnD,uBAEW+N,EAFX,EAEK5H,KAFL,kBAII4H,GAJJ,uCAMGnG,EAAAA,EAAAA,IAAgB,EAAD,GAAa,mCAN/B,0D,sBAUA,SAAeyrB,EAAtB,kC,iDAAO,WAAkCrzB,GAAlC,iHAEoB0H,EAAAA,GAAAA,IACrBC,EAAS3H,EAAI,gBAHZ,uBAEKmG,EAFL,EAEKA,KAFL,kBAKIA,GALJ,uCAOGyB,EAAAA,EAAAA,IAAgB,EAAD,GAAe,uCAPjC,0D,sBAWP,SAASD,EAAS3H,EAAa6zB,GAC7B,IAAI1rB,EAAM,SAUV,OARInI,IACFmI,GAAO,IAAJ,OAAQnI,IAGT6zB,IACF1rB,GAAO,IAAJ,OAAQ0rB,IAGN1rB,I,isCCtCF,SAASkS,EAAUyZ,GAA6C,IAAnBlkB,EAAmB,uDAAX,UAC1D,MAAO,CACL0V,QADK,SACG3V,IACN4V,EAAAA,EAAAA,IAAY3V,EAAOD,EAAgBmkB,KAelC,SAASd,EACd5E,EACA2F,GAEA,MAAO,CACLlkB,UADK,WAEH,OAAO8N,QAAQqW,IACbD,EAAsBl0B,KAAI,SAACU,GAAD,OAAU6tB,EAAYI,kBAAkBjuB,SAMnE,SAASwyB,IAKsD,2BAAjE1qB,EAAiE,yBAAjEA,EAAiE,gBACpE,OAAO4rB,EAAa5rB,GAYtB,SAAS4rB,EAAgB5rB,GACvB,OAAOA,EAAQkV,QACb,SAAC2W,EAAKpqB,GAAN,cACKoqB,GACApqB,KAEL,IAIG,SAASqqB,IACd,OAAO,IAAIC,EAAAA,YAAY,CACrBC,eAAgB,CACdC,QAAS,CACPha,UAAW,KAGfia,cAAe,IAAIC,EAAAA,cAAc,CAC/BlP,QAAS,SAAC3V,EAAO8kB,EAAUvV,EAASwV,GAAa,MAC/CC,EAAYhlB,EAAD,UAAQ+kB,EAAShlB,YAAjB,aAAQ,EAAeC,UAGtCilB,WAAY,IAAIC,EAAAA,WAAW,CACzBvP,QAAS,SAAC3V,EAAO+kB,GAAa,MAC5BC,EAAYhlB,EAAD,UAAQ+kB,EAAShlB,YAAjB,aAAQ,EAAeC,YAM1C,SAASglB,EAAYhlB,EAAgBmlB,GACnC,GAAIA,GAAkC,WAArB,EAAOA,GAAwB,CAC9C,MAAuCA,EAAvC,IAAQllB,MAAAA,OAAR,MAAgB,UAAhB,EAA2BjB,EAA3B,EAA2BA,SAK3B4W,EAAAA,EAAAA,IAAY3V,EAAOD,EAAgBhB,M,8SCxFjCyf,GAAc+F,EAAAA,EAAAA,MAEb,SAASY,EAAT,GAAgE,IAAxC/lB,EAAwC,EAAxCA,SAC7B,OACE,SAAC,EAAAgmB,WAAD,WACE,SAAC,EAAAC,oBAAD,CAAqBC,OAAQ9G,EAA7B,UACE,SAAChP,EAAA,EAAD,WACE,SAAC,KAAD,WACE,SAAC,KAAD,UAAepQ,Y,urBCqBpB,SAASoI,EACd+d,EACAC,GAIA,OAHsC,4BAG/B,CACL3e,SAHejW,OAAOwG,YAAYouB,EAAUv1B,KAAI,SAACwB,GAAD,MAAS,CAACA,EAAK,SAI/DuV,WAAYye,EACZ7vB,KAAM,IAAY2vB,EAAUG,aAAeH,EAAU3vB,OAIvD,SAAS6vB,EAEPE,EACAC,GACA,WACMC,EAAKF,EAAS,GACpB7zB,KAAKg0B,WAAa,WAChB,IAAM/zB,EAnDZ,SACEyzB,EACAxe,EACA4e,GAEA,OAAOh1B,OAAOwG,YACZouB,EAAUv1B,KAAI,SAACwB,GACb,IAAMopB,EAAO7T,EAAWvV,GACxB,MAAoB,mBAATopB,EACF,CAACppB,EAAKopB,GAGR,CACLppB,EACA,sCAAIqE,EAAJ,yBAAIA,EAAJ,uBACE8vB,GAAG,SAAC/0B,GAAD,OAAaA,EAAQmW,EAAWvV,GAAX,MAAAuV,EAAmBlR,aAoCjCiwB,CAAQP,EAAW,EAAMI,GACvCI,EAAAA,QACE,SAAC,EAAAC,SAAD,CAAUC,SAAS,uBAAnB,UACE,SAACf,EAAD,WAEE,SAACI,EAAD,KAAgBxzB,QAGpB8zB,IAGJ/zB,KAAKq0B,WAAa,kBAAMH,EAAAA,uBAAgCH,KAIrD,IAAMprB,EAAM+M,G,uGC1DZ,SAAS4e,EAAT,GAKsB,IAJ3B7Y,EAI2B,EAJ3BA,UACAnO,EAG2B,EAH3BA,SAG2B,IAF3BinB,SAAAA,OAE2B,aAD3BtzB,UAAAA,OAC2B,MADf,GACe,EAC3B,GAA6BuzB,EAAAA,EAAAA,GAAkB/Y,GAAvChV,EAAR,EAAQA,IAER,OAFA,EAAa4O,aAOX,eACEpU,WAAW6L,EAAAA,EAAAA,GAAK,eAAgB7L,GAChC8qB,KAAMtlB,EACNnH,OAAO,SACP0sB,IAAI,sBAJN,UAMG1e,EACAinB,IACC,cAAGtzB,UAAU,oDAEf,iBAAMA,UAAU,iCAAhB,yCAdK,O,kFCnBJ,SAASuzB,EAAkB/Y,GAChC,OAAKA,EAOE,CAAEhV,IAJG,GAAH,OANI,kDAMJ,OAAegV,GAIVpG,aAFMqG,EAAAA,EAAAA,IAAcD,IAJzB,K,4FCHJ,SAAS5I,EAAT,GAAiD,IAA5BvB,EAA4B,EAA5BA,KAAMC,EAAsB,EAAtBA,YAChC,OACE,gBACEtQ,UAAS,wKADX,UASE,SAAC,IAAD,CAAMqQ,KAAMA,EAAMG,QAASF,EAAatQ,UAAU,sB,oPCR3CwzB,EAAsC,CACjDn2B,GAAI,gBACJgT,MAAM,SAAC,IAAD,CAAWA,KAAMojB,EAAAA,IACvB9tB,MAAO,aACPgM,YAAa,qBACbjP,MAAO,UAEIgxB,EAAsC,CACjDr2B,GAAI,gBACJgT,MAAM,SAAC,IAAD,CAAWA,KAAMsjB,EAAAA,IACvBhuB,MAAO,SACPgM,YAAa,4BACbjP,MAAO,UAEIkxB,EAAuC,CAClDv2B,GAAI,oBACJgT,MAAM,SAAC,IAAD,IACN1K,MAAO,aACPgM,YAAa,uBACbjP,MAAO,cAGImR,EAA0C,CACrDxW,GAAI,kBACJgT,MAAM,SAAC,IAAD,CAAWA,KAAMwjB,EAAAA,IACvBluB,MAAO,WACPgM,YAAa,6BACbjP,MAAO,YAGI8C,EAAgC,CAC3CnI,GAAI,aACJgT,MAAM,SAAC,IAAD,CAAWA,KAAMyjB,EAAAA,IACvBnuB,MAAO,MACPgM,YAAa,0BACbjP,MAAO,Q,oHCrCIqxB,EAA8C,CACzD12B,GAAI,oBACJgT,KAAM2jB,EAAAA,EACNruB,MAAO,aACPgM,YAAa,6BACbjP,MAAO,cAGIuxB,EAAwC,CACnD52B,GAAI,iBACJgT,KAAM6jB,EAAAA,EACNvuB,MAAO,UACPgM,YAAa,wBACbjP,MAAO,Y,yMCXF,SAASyxB,EAAT,GAAoD,IAApBC,EAAoB,EAApBA,UACrC,OACE,iCACE,gBAAKp0B,UAAU,+BAAf,UACE,iBAAKA,UAAU,wFAAf,WACE,iBAAMA,UAAU,iBAAhB,0BACA,SAAC,IAAD,CACEA,UAAU,0BACV,cACA,WAAUo0B,EACV,yBAAuB,OACvB,oBAAkB,MAClB,gBAAc,4BAIpB,UAAC,IAAD,CACEp0B,UAAU,oBACV3C,GAAI+2B,EACJC,MAAM,MACNC,UAAW,IAJb,wCAM4B,kBAN5B,0ECJC,SAASC,EAAT,GAUyB,IAT9BjiB,EAS8B,EAT9BA,UACAnL,EAQ8B,EAR9BA,OAQ8B,IAP9BhB,SAAAA,OAO8B,MAPnB,aAOmB,EAN9BquB,EAM8B,EAN9BA,cACAztB,EAK8B,EAL9BA,SACAhB,EAI8B,EAJ9BA,QACA/F,EAG8B,EAH9BA,UAG8B,IAF9B8I,KAAAA,OAE8B,MAFvB,QAEuB,EAD9BuD,EAC8B,EAD9BA,SAEM+nB,EAAY,cAAH,OAAiB9hB,EAAjB,YAA8BnL,EAAO9J,IACpD,OACE,iBACE2C,WAAW6L,EAAAA,EAAAA,GAAK,oBAAqB7L,GACrC,cACA,WAAUo0B,EACV,yBAAuB,OACvB,oBAAkB,SAClB,gBAAc,oBANhB,WAQE,kBACEtrB,KAAMA,EACNjG,KAAMyP,EACNjV,GAAI8J,EAAO9J,GACXo3B,QAASttB,EAAOzE,QAAU8xB,EAC1B9xB,MAAOyE,EAAOzE,MACdqE,SAAUA,EACVZ,SAAQ,8GAAE,kBAAMA,EAASgB,EAAOzE,aAGlC,kBAAOgyB,QAASvtB,EAAO9J,GAAI,oBAAYiV,EAAZ,YAAyBnL,EAAOzE,OAA3D,SACG2J,IAEFtG,IACC,SAAC,IAAD,CACEsuB,MAAM,SACNr0B,UAAU,oBACV3C,GAAI+2B,EAHN,SAKGruB,OCvCJ,SAAS4uB,EAAT,GAOM,IANXriB,EAMW,EANXA,UACAnL,EAKW,EALXA,OAKW,IAJXhB,SAAAA,OAIW,MAJA,aAIA,EAHXquB,EAGW,EAHXA,cACAztB,EAEW,EAFXA,SACAhB,EACW,EADXA,QAEMqO,GAAcqG,EAAAA,EAAAA,IAActT,EAAOoN,SAEnCqgB,EAAuB,qBAAH,OAAwBtiB,EAAxB,YAAqCnL,EAAO9J,GAA5C,YAC1B,OACE,SAACk3B,EAAD,CACEv0B,WAAW6L,EAAAA,EAAAA,GAAK,CACdgpB,SAAUzgB,EACV0gB,QAAS1gB,IAEX9B,UAAWA,EACXnL,OAAQA,EACRqtB,cAAeA,EACfztB,SAAUA,EACVZ,SAAQ,+GAAE,SAACzD,GAAD,OAAWyD,EAASzD,EAAO0R,MACrCrO,QAASA,EAVX,UAYE,gCACGqO,IACC,SAAC+f,EAAD,CAAsBC,UAAWQ,KAEnC,iBAAK50B,WAAW6L,EAAAA,EAAAA,GAAK,CAAE,aAAcuI,IAArC,WACE,gBAAKpU,UAAU,4BAAf,WACKmH,EAAOkJ,OACR,SAACE,EAAA,EAAD,CACEF,KAAMlJ,EAAOkJ,KACbG,QAASrJ,EAAOmJ,YAChBtQ,UAAU,2CAIhB,gBAAKA,UAAU,qBAAf,SAAqCmH,EAAOxB,SAC5C,cAAG3F,UAAU,gCAAb,SAA8CmH,EAAOwK,sBC7CxD,SAASU,EAAT,GAKM,IAJXC,EAIW,EAJXA,UACA5P,EAGW,EAHXA,MACAgD,EAEW,EAFXA,QACAS,EACW,EADXA,SAEA,OACE,gBAAKnG,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,gBACEA,WAAW6L,EAAAA,EAAAA,GAAK,sBCvBH,6DDwBb3J,KAAK,aAFP,SAIGwD,EACE2L,QAAO,SAAClK,GAAD,OAAaA,EAAO4tB,QAC3B73B,KAAI,SAACiK,GAAD,OACH,SAACwtB,EAAD,CAEEriB,UAAWA,EACXnL,OAAQA,EACRhB,SAAUA,EACVquB,cAAe9xB,EACfqE,SAAUI,EAAOJ,UAAYI,EAAOJ,WACpChB,QAASoB,EAAOpB,SAAWoB,EAAOpB,WAN7BoB,EAAO9J,e,kHEnBrB,SAAS23B,EAAT,GAAmD,IAAnC3oB,EAAmC,EAAnCA,SAAU4oB,EAAyB,EAAzBA,eAC/B,GAA2CC,EAAAA,EAAAA,GAAQ7oB,GAA3C8oB,EAAR,EAAQA,WAAYC,EAApB,EAAoBA,mBAEpB,OACE,iBAAKp1B,UCfmE,8CDexE,WACE,iBAAMA,UChBW,8CDgBjB,SAA+BqM,IAE9B4oB,IACC,SAAC,KAAD,CAAQjnB,MAAM,OAAOhO,UCnB0G,qDDmB5EiO,QAASknB,EAA5D,UACE,cACEn1B,WAAW6L,EAAAA,EAAAA,GACT,KACAupB,EAAqB,sBAAwB,YAE/C,cAAY,gB,iFEtBjB,SAASC,EAAT,GAAiE,IAAxChpB,EAAwC,EAAxCA,SAC9B,OAAO,gBAAKrM,UAAU,iBAAf,SAAiCqM,M,kHCOnC,SAASipB,EAAT,GAMG,IALR5yB,EAKQ,EALRA,MACA2N,EAIQ,EAJRA,KACAvH,EAGQ,EAHRA,KACAuD,EAEQ,EAFRA,SACAiE,EACQ,EADRA,YAEA,OACE,gBACEtQ,WAAW6L,EAAAA,EAAAA,GACT,qCACA,8DACA,6GACA,8HALJ,UAQE,iBAAK7L,UAAU,oBAAoB,aAAY8I,EAA/C,WACE,gBACE9I,WAAW6L,EAAAA,EAAAA,GACT,gCACA,wBACA,wCACA,yDALJ,UAQE,SAAC0E,EAAA,EAAD,CAAMF,KAAMA,EAAMG,QAASF,EAAatQ,UAAU,eAGpD,iBAAKA,UAAU,+BAAf,WACE,gBACEA,WAAW6L,EAAAA,EAAAA,GACT,uBACA,cACA,qBACA,8BAEF,aAAW,QAPb,cASoB,IAAVnJ,EAAwBA,EAAQ,OAE1C,gBACE1C,WAAW6L,EAAAA,EAAAA,GACT,UACA,cACA,2BACA,oCAEF,aAAW,eAPb,UASGoP,EAAAA,EAAAA,GAAUvY,GAAS,EAAGoG,SAI3B,gBAAK9I,UAAU,UAAf,SAA0BqM,W,iFC1D3B,SAASkpB,EAAT,GAAgD,IAA1B5vB,EAA0B,EAA1BA,MAAO0G,EAAmB,EAAnBA,SAClC,OACE,2BACE,wBAAK1G,IACJ0G,IAAY,eAAI,iCAAyB1G,EAAzB,SAAJ,SAA4C0G,S,qGCJzDmpB,ECAC,YAIsB,QAH3B9f,QAAAA,OAG2B,MAHjB,GAGiB,EAF3B3E,EAE2B,EAF3BA,OACA1E,EAC2B,EAD3BA,SAEA,OACE,mBAAOrM,UAAU,QAAQ,UAAS+Q,EAAlC,UACG2E,EAAQlX,OAAS,IAChB,4BACE,wBACGkX,EAAQxY,KAAI,SAACu4B,GAAD,OACX,wBAAkBA,GAATA,WAKjB,2BAAQppB,QDbdmpB,EAAaE,IAAMH,EAAAA,G,uIEVft3B,EAAO2C,EAAIT,E,wFAEf,SAASjC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAItU,ICNI,EAAOgB,EAEX,SAAS,IAAiS,OAApR,EAAW1B,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAAO,EAAI,EAEf,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAAO,EAAI,EAEf,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAAO,EAEX,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAAO,EAEX,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNIo3B,EAAO,EAAOC,EAElB,SAAS,IAAiS,OAApR,EAAW/3B,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAAO,EAEX,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,IAAiS,OAApR,EAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,ICNI,EAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,G,YAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,G,YAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAEX,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GDuBX,GAjBqB,SAAwBS,GAC3C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTE,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,g7DACHF,KAAM,eACN+B,OAAQ,kBACL,KAAW,GAAsB,gBAAoB,OAAQ,CAChE7B,EAAG,kUACHF,KAAM,eACN+B,OAAQ,oB,mOCjBZ,SAAS,KAAiS,OAApR,GAAWtD,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,I,WCyEMyS,GAAc6kB,GAEPC,GAAW,CACtBC,MjD5Ea,SAAkB/2B,GAC/B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,uJACHF,KAAM,aACHwB,IAAOA,EAAkB,gBAAoB,IAAK,CACrDC,SAAU,sBACI,gBAAoB,OAAQ,CAC1CvB,EAAG,8DACH6B,OAAQ,UACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,YACZ71B,IAAUA,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH9C,GAAI,gBACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACN0B,UAAW,qBACXxB,EAAG,uBiDsDL22B,IhD7EW,SAAgBj3B,GAC3B,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,wsBACH6B,OAAQ,UACRC,YAAa,KACbC,cAAe,QACf20B,eAAgB,agD+DlBE,U/C9EiB,SAAsBl3B,GACvC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,IAAO,EAAkB,gBAAoB,IAAK,CACrDyB,SAAU,2BACI,gBAAoB,OAAQ,CAC1CvB,EAAG,0EACH6B,OAAQ,UACRC,YAAa,MACbC,cAAe,QACf20B,eAAgB,YACZ,IAAU,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH34B,GAAI,qBACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACN0B,UAAW,qBACXxB,EAAG,uB+CwDL62B,Y9C/Ec,SAAmBn3B,GACjC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,IAAO,EAAkB,gBAAoB,IAAK,CACrDyB,SAAU,uBACI,gBAAoB,OAAQ,CAC1CvB,EAAG,mHACH6B,OAAQ,UACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,YACZ,IAAU,EAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH34B,GAAI,iBACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACN0B,UAAW,qBACXxB,EAAG,uB8CyDL82B,O7ChFc,SAAmBp3B,GACjC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,IAAW,EAAsB,gBAAoB,OAAQ,CAChEE,EAAG,uMACH6B,OAAQ,UACRC,YAAa,KACbC,cAAe,QACf20B,eAAgB,a6CkElBK,SAAAA,EAAAA,EACAC,SAAAA,EAAAA,EACAC,UAAAA,EAAAA,EACAC,iBAAAA,EAAAA,EACAC,SnCrFiB,SAAsBz3B,GACvC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,mTACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,amC0ElBU,UlCtFiB,SAAsB13B,GACvC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,2iBACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,akC2ElBW,a5CvFoB,SAAyB33B,GAC7C,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,oGACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,a4C4ElBY,W3CxFsB,SAA2B53B,GACjD,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,+BACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,a2C6ElBa,K1CzFY,SAAiB73B,GAC7B,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,sJACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,WACb,IAAW,EAAsB,gBAAoB,OAAQ,CAChE12B,EAAG,uLACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,a0CwElBvB,QzC1Fe,SAAoBz1B,GACnC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ22B,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEh2B,EAAG,MACHC,EAAG,GACHX,MAAO,GACPC,OAAQ,GACR43B,GAAI,IACJ13B,KAAM,aACH,IAAU,EAAqB,gBAAoB,OAAQ,CAC9DE,EAAG,kCACH6B,OAAQ,OACRC,YAAa,MACbC,cAAe,QACf20B,eAAgB,WACbJ,IAAWA,EAAsB,gBAAoB,OAAQ,CAChEj2B,EAAG,MACHC,EAAG,GACHX,MAAO,GACPC,OAAQ,GACR43B,GAAI,IACJ31B,OAAQ,eyCiEV41B,YxC3FmB,SAAwB/3B,GAC3C,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,awCgFlBgB,YvC5FmB,SAAwBh4B,GAC3C,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,2DACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,auCiFlBiB,StC7FgB,SAAqBj4B,GACrC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,sOACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,asCkFlBkB,MrC9Fa,SAAkBl4B,GAC/B,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,6qDACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aqCmFlBmB,OpC/Fc,SAAmBn4B,GACjC,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,IAAW,EAAsB,gBAAoB,OAAQ,CAChEE,EAAG,8wBACHF,KAAM,eoCoFRg4B,OjChGc,SAAmBp4B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,kMACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,aiCqFlBqB,ShCjGgB,SAAqBr4B,GACrC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,4rBACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,agCsFlBsB,c/BlGqB,SAA0Bt4B,GAC/C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,ydACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,a+BuFlBuB,W9BnGkB,SAAuBv4B,GACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDK,MAAO,6BACPJ,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACN+B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,QAChBh2B,UAAW,0DACVhB,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,qCACA,KAAW,GAAsB,gBAAoB,OAAQ,CAChEA,EAAG,sE8BqFLk4B,M7BpGa,SAAkBx4B,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,gyCACH6B,OAAQ,eACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,a6ByFlBpC,IAAAA,GAAAA,EACA6D,O5BtGc,SAAmBz4B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,+lBACH6B,OAAQ,OACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,a4B2FlB0B,U3BvGiB,SAAsB14B,GACvC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,wTACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,a2B4FlB2B,O1BxGc,SAAmB34B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,geACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,a0B6FlB4B,WzBzGkB,SAAuB54B,GACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,8eACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,WACb,KAAW,GAAsB,gBAAoB,OAAQ,CAChE12B,EAAG,sDACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,ayBwFlB6B,KAAAA,GAAAA,EACAC,MxB3Ga,SAAkB94B,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,ibACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,awBgGlB+B,UvB5GiB,SAAsB/4B,GACvC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,2jBACH6B,OAAQ,OACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,auBiGlBgC,OtB7Gc,SAAmBh5B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,yfACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,asBkGlBiC,YrB9GmB,SAAwBj5B,GAC3C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uoCACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aqBmGlBkC,QpB/Ge,SAAoBl5B,GACnC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,gLACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,WACb,KAAW,GAAsB,gBAAoB,OAAQ,CAChE12B,EAAG,yGACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aoB8FlBhlB,YAAAA,GACAmnB,KnBjHY,SAAiBn5B,GAC7B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,oLACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,amBsGlBoC,QlBlHe,SAAoBp5B,GACnC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,yXACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,akBuGlBqC,cjBnHqB,SAA0Br5B,GAC/C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,0jBACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aiBwGlBsC,OhBpHc,SAAmBt5B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uaACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,agByGlBuC,MfrHa,SAAkBv5B,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,qQACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,ae0GlBwC,MdtHa,SAAkBx5B,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,8TACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,ac2GlB5gB,KbvHY,SAAiBpW,GAC7B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,kDACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aa4GlByC,WZxHkB,SAAuBz5B,GACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,iMACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aY6GlBniB,SXzHgB,SAAqB7U,GACrC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEI,SAAU,UACVC,SAAU,UACVH,EAAG,i+BACHF,KAAM,eW4GRs5B,IV1HY,SAAiB15B,GAC7B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,icACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aU+GlB2C,KT3HY,SAAiB35B,GAC7B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,yiBACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aSgHlB4C,MR5Ha,SAAkB55B,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,6kBACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aQiHlBtC,OP7Hc,SAAmB10B,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEI,SAAU,UACVC,SAAU,UACVH,EAAG,mXACHF,KAAM,eOgHRoG,IN9HW,SAAgBxG,GAC3B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEI,SAAU,UACVC,SAAU,UACVH,EAAG,4hBACHF,KAAM,eMiHRy5B,WL/HkB,SAAuB75B,GACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,mLACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aKoHlB8C,SJhIgB,SAAqB95B,GACrC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,maACH6B,OAAQ,eACRC,YAAa,EACbC,cAAe,QACf20B,eAAgB,aIqHlB+C,IAAAA,GAAAA,EACAxJ,MAAAA,GAAAA,EACAnD,KAAAA,GAAAA,EACAE,aAAAA,GAAAA,EACA0M,OAAAA,GAAAA,EACAC,cAAAA,GAAAA,EACAC,IAAAA,GAAAA,EACAC,OAAAA,GAAAA,EACAC,OAAAA,GAAAA,EACAC,OAAAA,GAAAA,EACAC,YAAAA,GAAAA,EACAvF,WAAAA,GAAAA,EACAwF,KAAAA,GAAAA,EACAlN,OAAAA,GAAAA,EACAmN,UAAAA,GAAAA,EACAC,MAAAA,GAAAA,EACAC,SAAAA,GAAAA,EACAC,OAAAA,GAAAA,EACAC,KAAAA,GAAAA,EACAC,SDpJgB,SAAqB76B,GACrC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,uJACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEI,SAAU,UACVC,SAAU,UACVH,EAAG,4fACHF,KAAM,eCuIR06B,YHrJmB,SAAwB96B,GAC3C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,cACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,wPACH6B,OAAQ,OACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,cGmKpB,GAlBA,YAA4C,IAA7B3lB,EAA6B,EAA7BA,KAAMrQ,EAAuB,EAAvBA,UACb+5B,EAAUjE,GAASzlB,GAEzB,OAAK0pB,GASH,kBAAM/5B,UAAWA,EAAW,cAAY,OAAxC,UACE,UAAC+5B,EAAD,OARA,kBAAM/5B,UAAWA,EAAW,cAAY,OAAxC,UACE,UAAC,GAAD,O,yHCtID,SAASuQ,GAAT,GAA+D,IAA/CF,EAA+C,EAA/CA,KAAMG,EAAyC,EAAzCA,QAASxQ,EAAgC,EAAhCA,UAAWg6B,EAAqB,EAArBA,KAAMjsB,EAAe,EAAfA,KAC/CksB,GAAUpuB,EAAAA,EAAAA,GACd7L,EACA,OAFkB,qBAGPg6B,GAASA,GAHF,qBAIPjsB,GAASA,IAGtB,GAAoB,iBAATsC,EAAmB,CAC5B,IAAME,GAAO2pB,EAAAA,EAAAA,oBAAmB7pB,GAAQA,EAAO,KAE/C,OACE,kBAAMrQ,UAAWi6B,EAAS,cAAY,OAAO/3B,KAAK,MAAlD,SACW,MAARqO,GAAe,gCAAGF,KAAW,UAAC,EAAD,CAAMtC,KAAK,UAK/C,GAA6B,IAAzBsC,EAAKzL,QAAQ,QAAe,CAC9B,IAAMu1B,EAAU9pB,EAAK+pB,QAAQ,OAAQ,IACrC,OACE,UAAC,GAAD,CACE/pB,KAAM8pB,EACNn6B,WAAW6L,EAAAA,EAAAA,GAAKouB,EAAS,WAK/B,GAAIzpB,EAAS,CACX,IAAM6pB,EAAWhqB,EACdiqB,MAAM,KACNp9B,KAAI,SAACq9B,GAAD,OAAOA,EAAEhyB,MAAM,EAAG,GAAGiyB,cAAgBD,EAAEhyB,MAAM,MACjD2D,KAAK,IACFuuB,EAAgBC,EAAaL,GACnC,IAAKI,EACH,MAAM,IAAI/8B,MAAJ,kCAAqC28B,IAE7C,OAAO,UAACI,EAAD,CAAez6B,UAAWi6B,IAGnC,OACE,eACEj6B,WAAW6L,EAAAA,EAAAA,GAAKwE,EAAKsqB,WAAW,OAAhB,aAA+BtqB,GAASA,EAAM4pB,GAC9D,cAAY,OACZ/3B,KAAK,U,uGCnEJ,SAAS04B,EAAT,GAMsB,IAL3B3tB,EAK2B,EAL3BA,MACA4tB,EAI2B,EAJ3BA,UACAC,EAG2B,EAH3BA,aACAC,EAE2B,EAF3BA,cACA1uB,EAC2B,EAD3BA,SAEA,OACE,gBAAKrM,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC,KAAD,WACE,SAAC,KAAD,CAAYA,UAAW+6B,EAAvB,UACE,iBAAKl7B,MAAOi7B,EAAZ,UACG7tB,IACC,iBAAKjN,UAAU,+BAAf,WACE,iBAAMH,MAAO,CAAEm7B,MAAO,QAAtB,SAAiC/tB,MAC9B4tB,IACD,iBACE76B,UAAU,QACVH,MAAO,CAAEm7B,MAAO,SAChB,QAAM,gBAHR,UAKE,UAAC,KAAD,CAAQhtB,MAAM,OAAOC,QAAS,kBAAM4sB,KAApC,WACE,cAAG76B,UAAU,gBADf,oBAOR,yBAAMqM,iB,4NChCb,SAAS4uB,EAAT,GAAgD,IAAzBC,EAAyB,EAAzBA,QAASC,EAAgB,EAAhBA,MAC/BC,EAAUF,EAAUC,EAAQ,IAAMtf,KAAKwf,MAAOH,EAAUC,EAAS,KAEjEG,EACJJ,EAAUC,EACN,CACEl8B,MAAO,OACPs8B,gBAAiB,WAEnB,CACEt8B,MAAO,GAAF,OAAKm8B,EAAL,KACLG,gBAAiB,WAGnBC,EACJN,EAAUC,GACNtvB,EAAAA,EAAAA,GAAK,WCxBuG,wEDyB5GA,EAAAA,EAAAA,GAAK,WCzBkB,sED2B7B,OACE,gBAAK7L,UAAWw7B,EAAhB,UACE,gBACEx7B,UAAU,eACVkC,KAAK,cACLrC,MAAOy7B,EACP,gBAAeF,EACf,gBAAe,EACf,gBAAe,IANjB,SAQG,QElCF,SAASK,EACdvY,EACAC,GAEA,IAAIuY,EAAc,QAClB,OAAQxY,EAAYpa,MAClB,KAAK2Z,EAAAA,EAAAA,MACHiZ,EAAc,QACd,MACF,KAAKjZ,EAAAA,EAAAA,aACHiZ,EAAc,eACd,MACF,KAAKjZ,EAAAA,EAAAA,WACHiZ,EAAc,aAMlB,IAAMC,EAASp3B,KAAKC,UAAU0e,GAC9B,gFAA0EC,EAA1E,iBAA4FuY,EAA5F,oBAAmHC,GA2BrH,SAASC,EAAkBl5B,EAAem5B,GACxC,OAAIn5B,EAAQ,EACV,UAAUA,EAAV,YAAmBm5B,EAAnB,KAEEn5B,EAAQ,GAAKA,GAAS,EACxB,UAAUA,EAAV,YAAmBm5B,GAErB,UAAU,EAAV,IAAeA,G,SCzDjB,MAA+b,+EAA/b,EAAymB,uEAAzmB,EAAw+B,+EAAx+B,EAA8jC,sEAA9jC,EAA8oC,yEAA9oC,EAAguC,wECkBztC,SAASC,EAAT,GAAuE,IAA3CjoB,EAA2C,EAA3CA,SAAUqP,EAAiC,EAAjCA,YAAaC,EAAoB,EAApBA,UACpD4Y,EAAS,KACb,OAAQloB,GACN,IAAK,OACHkoB,EAmBN,SAAyB7Y,EAA0BC,GACjD,IAAM6Y,EAAiBC,EAAiB/Y,EAAaC,GAC/C+Y,EAAYC,IAAAA,KAAYjZ,EAAYkZ,WACpCC,EAAeH,EAAUI,OAAO,cAChCC,EAAgBL,EAAUM,KAAKL,GAAAA,GAASM,QAAQ,OAAQ,QAE1DC,GACF,iBAAK18B,UAAW28B,EAAhB,WACE,SAAC,IAAD,CAAe38B,UAAU,+BACzB,kBAAMA,UDlDyrB,uFCkD/rB,uDAC2C,uBAAIq8B,UAenD,OAVIE,GAAiB,KACnBG,GACE,gBAAK18B,UAAW28B,EAAhB,UACE,kBAAM38B,UAAU,aAAhB,uDAC2C,uBAAIq8B,WAOnD,iBAAKr8B,UDnE0B,oFCmE/B,WACE,iBAAKA,UDpE+U,sFCoEpV,UACGg8B,GACD,4BACE,eAAGh8B,UAAU,cAAb,UACGmjB,EADH,MACiBD,EAAYE,MAD7B,kBAIA,SAAC6X,EAAD,CAAaC,QAAS/X,EAAWgY,MAAOjY,EAAYE,eAGxD,eAAIpjB,UD9E8gB,2EC+EjhB08B,KAzDQE,CAAgB1Z,EAAaC,GACtC,MACF,IAAK,QACH4Y,EA2DN,SAA0B7Y,EAA0BC,GAClD,IAAM6Y,EAAiBC,EAAiB/Y,EAAaC,GAErD,OACE,iBAAKnjB,UDxFkI,qFCwFvI,WACE,yBAAMg8B,KACN,0BACE,yBACG7Y,EADH,MACiBD,EAAYE,MAD7B,oBAIF,SAAC6X,EAAD,CAAaC,QAAS/X,EAAWgY,MAAOjY,EAAYE,SACpD,iBAAKpjB,UDhG8xB,6ECgGnyB,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,eACLG,SAAO,EACPxQ,WAAW6L,EAAAA,EAAAA,GAAK,cAAe,kBAEjC,iBAAM7L,UDtGy3B,kFCsG/3B,mIA7EO68B,CAAiB3Z,EAAaC,GACvC,MACF,IAAK,cACH4Y,EAmFN,SAA8B7Y,EAA0BC,GACtD,IFtFqC2Z,EAC/BC,EACAC,EACAC,EAIAC,EACAC,EE8EAC,EAAoB3B,EAAqBvY,EAAaC,GACtDka,GFvF+BP,EEuFQ5Z,EAAY4Z,WFtFnDC,EAAQZ,IAAAA,KAAYW,GACpBE,EAAcb,GAAAA,GAASM,QAAQ,QAM/BU,GALAF,EAAaphB,KAAKyhB,MACtBnB,IAAAA,SAAgBY,EAAMP,KAAKQ,IAAcO,YAIR,GACd,KAFfL,EAAerhB,KAAKyhB,MAAML,EAAa,MAEnBE,EAAgB,EACjCvB,EAAkBuB,EAAe,QAEpB,IAAlBA,GAAuBD,EAAe,EACjCtB,EAAkBsB,EAAc,OAErCC,EAAgB,GAAKD,EAAe,EACtC,UAAUtB,EAAkBsB,EAAc,OAA1C,gBAAwDtB,EACtDuB,EACA,SAGG,UEoEP,OACE,gBAAKn9B,UDpHyO,mFCoH9O,UACE,iBAAKA,UAAW28B,EAAhB,WACE,gBAAK38B,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,UACE,SAAC,IAAD,CACE38B,UAAU,+BACV,cAAY,YAIhB,iBAAKA,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,WACE,0BACE,kBAAM38B,UAAW28B,EAAjB,UACGU,EADH,mBAIF,0BACE,gJAEsDA,EAFtD,+DAQJ,gBAAKr9B,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,UACE,cACE38B,UAAU,yBACV8qB,KAAMsS,EACN/+B,OAAO,SACP0sB,IAAI,aAJN,0CAjHKyS,CAAqBta,EAAaC,GAM/C,OACE,gBAAKnjB,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,SAA4B+7B,MAuHlC,SAASE,EAAiBha,EAAmBkB,GAC3C,IAAM9S,EACJ8S,EAAYlB,EAAKmB,OACf,SAAC,IAAD,CAAapjB,UAAU,8BAA8B,cAAY,UAEjE,SAAC,IAAD,CAAOA,UAAU,gCAAgC,cAAY,SAG3Do9B,EAAoB3B,EAAqBxZ,EAAMkB,GAErD,OACE,iBAAKnjB,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,WACE,gBAAK38B,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,SAAoCtsB,KAEpC,iBAAKrQ,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,WACE,0BACE,iBAAM38B,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAAtB,oCAEF,iBAAK38B,UAAU,gBAAf,mCACyBiiB,EAAKwb,QAC3Bxb,EAAKnZ,OAAS2Z,EAAAA,EAAAA,MAAd,qBACiBR,EAAKmB,MADtB,YAC+BnB,EAAKmB,MAAQ,EAAI,QAAU,OAD1D,KAEG,YAIR,gBAAKpjB,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAArB,UACE,eACE38B,UAAU,yBACV8qB,KAAMsS,EACN/+B,OAAO,SACP0sB,IAAI,aAJN,WAME,SAAC,IAAD,CAAc,cAAY,OAAOhd,KAAM,KANzC,2BAcD,IAAM2vB,GAA0Bh2B,EAAAA,EAAAA,GAAIo0B,EAAkB,CAC3D,WACA,cACA,e,y2BCjMK,SAASzxB,EAAT,GAIoC,QAHzC4C,MAAAA,OAGyC,MAHjC,GAGiC,EAFzCZ,EAEyC,EAFzCA,SACGrN,E,kXACsC,MACzC,OAEE,SAAC,EAAA2+B,OAAD,OAAY3+B,GAAZ,cAEE,cAAGiO,MAAOA,EAAV,SAAkBZ,S,uHCCjB,SAASuxB,EAAT,GAAsE,IAAnDl4B,EAAmD,EAAnDA,QAASm4B,EAA0C,EAA1CA,WAA0C,IAA9BC,SAAAA,OAA8B,MAAnB,aAAmB,EACrEC,EAAWr4B,EAAQ8C,MAAK,SAACrB,GAAD,OAAYA,EAAO9J,KAAOwgC,KAExD,OACE,iBAAK79B,UAAU,gBAAf,WACE,eAAIA,UAAU,eAAd,SACG0F,EAAQxI,KAAI,SAACiK,GAAD,OACX,eACEnH,WAAW6L,EAAAA,EAAAA,I,EAAI,CACbmyB,OAAQ72B,EAAO9J,KAAOwgC,G,ECzBX,sD,GD0BO12B,EAAOkF,S,iGAH7B,UASE,cACE4B,QAAS,kBAAMgwB,EAAa92B,IAC5B+2B,UAAW,SAACzgC,GACI,UAAVA,EAAEiB,KAA6B,MAAVjB,EAAEiB,KACzBu/B,EAAa92B,IAGjBjF,KAAK,SACLi8B,SAAU,EARZ,SAUGh3B,EAAOxB,SAdLwB,EAAO9J,I,eAmBjB0gC,GAAYA,EAAS1xB,WACpB,gBAAKrM,UAAU,cAAf,SAA8B+9B,EAAS1xB,cAK7C,SAAS4xB,EAAa92B,GAChBA,EAAOkF,UACTyxB,EAAS32B,EAAO9J,O,6VE9Cf,SAAS+gC,IACd,MAkDF,WACE,I,IAAA,GAA4B1b,EAAAA,EAAAA,KAApBT,EAAR,EAAQA,KAAM9T,EAAd,EAAcA,UAEd,G,GAA0CjG,EAAAA,EAAAA,UAAS,G,EAAnD,E,8zBAAOq0B,EAAP,KAAsB8B,EAAtB,KAQA,OANA/1B,EAAAA,EAAAA,YAAU,WACJ2Z,GAON,SAAmBA,GACjB,IAAMma,EAAYD,IAAAA,KAAYla,EAAKma,WACnCiC,EAAiBjC,EAAUI,KAAKL,GAAAA,GAASM,QAAQ,OAAQ,SARvD6B,CAAUrc,KAEX,CAACA,IAEG,CAAEsa,cAAAA,EAAepuB,UAAAA,GA7DaowB,GAA7BhC,EAAR,EAAQA,cAAepuB,EAAvB,EAAuBA,UAEvB,OACE,SAACqwB,EAAD,CACEjC,cAAeA,EACfpuB,UAAWA,IAUV,SAASqwB,EAAT,GAAqE,IAAnCjC,EAAmC,EAAnCA,cACvC,GAD0E,EAApBpuB,YACpCouB,GAAiBA,GAAiB,GAClD,OAAO,KAGT,IAAMkC,EAeN,uCAEA,SAAsBC,GACpB,OAAIA,EAAO,EACF,cAGI,IAATA,EACK,gBAGT,yBAAkC,IAATA,EAAa,QAAb,UAA0BA,EAA1B,UAXYC,CAfApC,GAevC,KAbA,OACE,gBAAKv8B,WAAW6L,EAAAA,EAAAA,GCjCQ,4EDiCxB,UACE,iBAAK7L,WAAW6L,EAAAA,EAAAA,GClCwF,sEDkCtE,mBAAlC,WACE,SAAC,IAAD,CAAe7L,UAAU,+BACzB,kBAAMA,UAAU,aAAhB,UACGy+B,EADH,6D,4JExBD,SAASG,EAAT,GAA6C,IAAtBC,EAAsB,EAAtBA,YACtBC,EAAmBC,MAAMC,QAAQH,GACnCA,EACA,CAACA,GAEL,OACE,gBAAK7+B,UAAU,2FAAf,SACG8+B,EAAiB5hC,KAAI,SAAC+hC,EAAOC,GAAR,OACpB,UAAC,EAAAC,SAAD,YACE,0BAAOC,EAAYH,KAClBC,IAAUJ,EAAiBtgC,OAAS,IAAK,kCAF7B0gC,QASvB,SAASE,EAAYH,GACnB,OAAKA,EAIgB,iBAAVA,EACFA,EAGLA,EAAMI,MAEN,SAACh1B,EAAA,EAAD,CACEC,GAAI20B,EAAMI,KACV90B,OAAQ00B,EAAMK,WACdt/B,UAAU,2HAHZ,SAKGi/B,EAAMt5B,QAKNs5B,EAAMt5B,MAnBJ,G,0BC1BLyW,GAAUC,EAAAA,EAAAA,eAA8B,MAcvC,SAASkjB,EAAT,GAAqE,IAA1CliC,EAA0C,EAA1CA,GAAIgP,EAAsC,EAAtCA,SACpC,OACE,SAAC+P,EAAQQ,SAAT,CAAkBla,OAAK,EAAvB,UACE,iBAAKrF,GAAIA,EAAI2C,WAAW6L,EAAAA,EAAAA,GAAK,MCtBV,kEDsBnB,WACE,gBAAKxO,GAAG,4BACR,iBAAK2C,UAAU,YAAf,WACE,gBAAKA,UCzBkF,+DDyBvF,SAA8BqM,KAC9B,SAACmyB,EAAA,EAAD,Y,gDEZH,SAASgB,IACd,IAAQp0B,GAASsB,EAAAA,EAAAA,MAATtB,KAER,OACE,UAAC,KAAD,YACE,UAAC,KAAD,CACEpL,WAAW6L,EAAAA,EAAAA,GACT,6CCrBmB,mEDwBrB,UAAQ,kBACR,aAAW,mBANb,WAQE,gBACE7L,WAAW6L,EAAAA,EAAAA,GC5BqF,gED8B9F,+BACA,cACA,4BALJ,UAQE,SAAC,IAAD,CAAM7L,UAAU,cAEjBoL,IAAQ,0BAAOA,EAAKG,YACrB,SAAC,IAAD,CAAavL,UCtCuT,uEDyCtU,UAAC,KAAD,CACEA,UC1C6K,gED2C7K,aAAW,YACX,UAAQ,WAHV,WAKE,SAACy/B,EAAD,CACEn1B,GAAG,oBACH3E,MAAM,aACN,UAAQ,wBAGV,SAAC85B,EAAD,CACEn1B,GAAG,mBACH3E,MAAM,UACN,UAAQ,kBACR4E,OAAQ,CAAEm1B,kBAAkB,WAWtC,SAASD,EAAT,GAMkB,IALhBn1B,EAKgB,EALhBA,GACA3E,EAIgB,EAJhBA,MACA4E,EAGgB,EAHhBA,OACA7E,EAEgB,EAFhBA,QACWqL,EACK,EADhB,WAEM4uB,GAAcC,EAAAA,EAAAA,SAAQt1B,EAAIC,EAAQ7E,GAExC,OACE,SAAC,KAAD,CACEolB,KAAM6U,EAAY7U,KAClB7c,QAAS0xB,EAAY1xB,QACrBjO,UChF0P,gEDiF1P,aAAY2F,EACZ,UAASoL,EALX,SAOGpL,IE5EA,SAASk6B,EAAT,GAAoE,IAA7C5yB,EAA6C,EAA7CA,MAAOZ,EAAsC,EAAtCA,SAGnC,OJJK,WAGL,GAAe,OAFCmQ,EAAAA,EAAAA,YAAWJ,GAGzB,MAAM,IAAI1e,MAAM,uDIFlBoiC,IAGE,iBAAK9/B,UAAU,8CAAf,WACE,iBAAKA,UAAU,0BAAf,WACE,gBAAKA,UAAU,kFAAf,SACGiN,IAEFZ,IAAY,0BAAOA,QAEpBvJ,OAAOi9B,cAAe,SAACP,EAAD,OCAvB,SAASQ,EAAT,GAOG,IANR3iC,EAMQ,EANRA,GACA4P,EAKQ,EALRA,MAKQ,IAJR4xB,YAAAA,OAIQ,MAJM,GAIN,EAHRoB,EAGQ,EAHRA,OACAC,EAEQ,EAFRA,QACAC,EACQ,EADRA,SAEMvW,GAASC,EAAAA,EAAAA,aAMf,OACE,UAAC0V,EAAD,CAAiBliC,GAAIA,EAArB,WACE,SAACuhC,EAAD,CAAaC,YAAaA,KAE1B,SAACgB,EAAD,CAAa5yB,MAAOA,EAApB,SACGgzB,IACC,SAAC,KAAD,CACEjyB,MAAM,OACND,KAAK,QACLE,QAbV,WACE,OAAOkyB,EAAWA,IAAavW,EAAOuB,aAAa8U,UAa3CjgC,UC3CmB,kED4CnB+G,SAAUm5B,EALZ,UAOE,SAAC,IAAD,CAAWlgC,UAAU,kB,8HEzC1B,SAASogC,EAAT,GAAmE,IAAnC19B,EAAmC,EAAnCA,MAAOyD,EAA4B,EAA5BA,SAAUk6B,EAAkB,EAAlBA,QACtD,OACE,kBAAMrgC,UAAU,gBAAhB,WACE,iBAAMA,UAAU,cAAhB,6BACA,oBACEA,UAAU,eACV0C,MAAOA,EACPyD,SAAQ,+GAAE,SAAC1I,GAAD,OAAO0I,EAASnC,OAAOvG,EAAEY,OAAOqE,WAC1C,UAAQ,mBAJV,UAMG29B,GAAU,mBAAQ39B,MAAOsB,OAAOs8B,iBAAtB,iBAAuD,KACjE,CAAC,GAAI,GAAI,GAAI,KAAKpjC,KAAI,SAACqjC,GAAD,OACrB,mBAAQ79B,MAAO69B,EAAf,SACGA,GADoBA,YCV1B,SAASC,EACdC,EACAC,EACAC,EACAC,GAEA,IAAMC,EAAUhlB,KAAKilB,KAAKH,EAAkB,GAC5C,OAAIF,IAAaE,EACRC,EAGQ,IAAbH,EACKA,EAGLE,EAAkBC,EAChBA,EAAaC,EAAUH,EAClBE,EAAaD,EAAkBF,EAGpCI,EAAUH,EACLA,EAAcG,EAAUJ,EAG1BA,EAGFA,E,eCxBF,SAASM,EAAT,GAMG,IALR10B,EAKQ,EALRA,SACA8L,EAIQ,EAJRA,KACApR,EAGQ,EAHRA,SACAi3B,EAEQ,EAFRA,OACAgD,EACQ,EADRA,aAEA,OACE,eAAIhhC,WAAW6L,EAAAA,EAAAA,GAAK,CAAE9E,SAAAA,EAAUi3B,OAAAA,IAAhC,UACE,mBACEl1B,KAAK,SACLmF,QAAS,iBAAsB,iBAATkK,GAAqB6oB,EAAa7oB,IACxDpR,SAAUA,EAHZ,SAKGsF,M,wOCTF,SAAS40B,EAAT,GAAoD,I,EAG/C,EAHgB96B,EAA+B,EAA/BA,SAAUy6B,EAAqB,EAArBA,WACpC,GAAyDM,EAAAA,EAAAA,IAAkB,CACzE/zB,cAAe,CAAEgL,KAAM,IACvB7K,U,EAAQ,yBAAE,2GAAS6K,EAAT,EAASA,KAAT,kBAAoBA,GAAQhS,EAASgS,IAArC,0CAAF,E,8KAAA,6CACR5K,iBAAiB,EACjBxE,iBAAkB,kBAChB1B,EAAAA,EAAAA,IAAO,CAAE8Q,MAAM7Q,EAAAA,EAAAA,MAASC,WAAW45B,IAAIP,GAAY9kB,IAAI,QALnD8Q,EAAR,EAAQA,aAAcnf,EAAtB,EAAsBA,cAAerH,EAArC,EAAqCA,OAAQuH,EAA7C,EAA6CA,QAQ7C,OACE,kBAAM3N,UAAU,OAAOsN,SAAUsf,EAAjC,WACE,kBAAO5sB,UAAU,6BAA6B00B,QAAQ,mBAAtD,yBAGA,SAAC1H,EAAAoU,EAAD,CACE/jC,GAAG,mBACH2C,UAAU,QACV8I,KAAK,SACLpG,MAAO0D,EAAO+R,KACdgpB,IAAKP,EACL9kB,IAAK,EACLulB,KAAM,EACNl7B,SAeN,SAAsB1I,GACpB,IAAMiF,EAAQqB,SAAStG,EAAEY,OAAOqE,MAAO,IACvC+K,EAAc,OAAQzJ,OAAOC,MAAMvB,GAAS,GAAKA,IAhB7C4+B,WAQN,SAA0B7jC,GACpBA,EAAEiB,IAAI6iC,MAAM,SACd9jC,EAAE+jC,qBARF,SAAC,KAAD,CAAQ14B,KAAK,SAAS/B,UAAW4G,EAAjC,mBC1BC,SAAS8zB,EAAT,GASG,IARRf,EAQQ,EARRA,YACAlrB,EAOQ,EAPRA,WACAksB,EAMQ,EANRA,aACAV,EAKQ,EALRA,aAKQ,IAJRW,QAAAA,OAIQ,MAJE,EAIF,MAHRC,eAAAA,OAGQ,aAFRC,cAAAA,OAEQ,aADRC,eAAAA,OACQ,SACFC,ECbR,SACErB,EACAsB,EACAC,EACAtB,GAEA,IAIIF,EAJEsB,EAA4B,GAC5BnB,EAAa/kB,KAAKilB,KAAKkB,EAAmBC,GAC1CpB,EAAUhlB,KAAKilB,KAAKH,EAAkB,GAI1CF,EADEC,GAAeG,EACN,QACFD,EAAaC,EAAUH,EACrB,MAEA,SAKb,IAFA,IAAMwB,EAAiBvB,EAAkBC,EAEhCtiC,EAAI,EAAGA,GAAKsiC,GAActiC,GAAKqiC,EAAiBriC,GAAK,EAAG,CAC/D,IAAM6jC,EAAa3B,EACjBliC,EACAoiC,EACAC,EACAC,IAQEsB,IAJI,IAAN5jC,GAAyB,WAAbmiC,GAAsC,QAAbA,KAErCniC,IAAMqiC,EAAkB,GACV,WAAbF,GAAsC,UAAbA,GAI1BsB,EAAMp/B,KAAKw/B,GAFXJ,EAAMp/B,KAAK,OAMf,OAAOo/B,ED5BOK,CACZ1B,EACAlrB,EACAksB,EACAC,GAEIU,EAAON,EAAMA,EAAMvjC,OAAS,GAElC,OAAIujC,EAAMvjC,QAAU,EACX,MAIP,gCACGsjC,IACC,SAACb,EAAD,CACE96B,SAAU,SAACgS,GAAD,OAAU6oB,EAAa7oB,IACjCyoB,WAAY/kB,KAAKilB,KAAKtrB,EAAaksB,MAGvC,gBAAI1hC,UAAU,aAAd,UACG6hC,GACC,SAACd,EAAD,CACEC,aAAcA,EACd7oB,KAAM,EACNpR,SAA0B,IAAhB25B,EAHZ,eAOE,KACHkB,GACC,SAACb,EAAD,CACEC,aAAcA,EACd7oB,KAAMuoB,EAAc,EACpB35B,SAA0B,IAAhB25B,EAHZ,eAOE,KACHqB,EAAM7kC,KAAI,SAACilC,EAAYjD,GAAb,OACT,SAAC6B,EAAD,CACEC,aAAcA,EACd7oB,KAAMgqB,EACNp7B,SAAyB,QAAfo7B,EACVnE,OAAQ0C,IAAgByB,EAJ1B,SAOGA,GAFIjD,MAMR0C,GACC,SAACb,EAAD,CACEC,aAAcA,EACd7oB,KAAMuoB,EAAc,EACpB35B,SAAU25B,IAAgB2B,EAH5B,eAOE,KACHR,GACC,SAACd,EAAD,CACEh6B,SAAU25B,IAAgB2B,EAC1BrB,aAAcA,EACd7oB,KAAMkqB,EAHR,eAOE,WEhFL,SAASC,EAAT,GAQG,IAPRlqB,EAOQ,EAPRA,UACAD,EAMQ,EANRA,KACAoqB,EAKQ,EALRA,kBACAlC,EAIQ,EAJRA,QACAW,EAGQ,EAHRA,aACAxrB,EAEQ,EAFRA,WACAgtB,EACQ,EADRA,mBAEA,OACE,gBAAKxiC,UAAU,qBAAf,UACE,iBAAKA,UAAU,mBAAf,WACE,SAACogC,EAAD,CACE19B,MAAO0V,EACPjS,SAkBR,SAA+BzD,GAC7B6/B,EAAkB7/B,GAClBs+B,EAAa,IAnBPX,QAASA,IAGI,IAAdjoB,IACC,SAACqpB,EAAD,CACEE,QAAS,EACTX,aAAcA,EACdN,YAAavoB,EACbupB,aAActpB,EACd5C,WAAYA,EACZssB,eAAgBU,W,uGC3BrB,SAASC,EAAT,GAGsB,IACvBC,EADuB,IAF3B10B,MAAAA,OAE2B,MAFnB,SAEmB,EAD3B3B,EAC2B,EAD3BA,SAeA,OATIq2B,EADG,SADC10B,EAEQ,eAMA,gBAId,eAAGhO,UAAU,mCAAb,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,eACLG,SAAO,EACPxQ,WAAW6L,EAAAA,EAAAA,GAAK,GAAD,OAAI62B,GAAa,iBAEjCr2B,O,sICpBA,SAASN,EAAT,GAAqE,IAAlDC,EAAkD,EAAlDA,QAAkD,IAAzCy0B,SAAAA,OAAyC,MAA9B,SAA8B,EAApBzgC,EAAoB,EAApBA,UAChD3C,EAAK,IAAW,YAEtB,OACE,kBACE,WAAU2O,EACV,WAAU3O,EACV2C,WAAW6L,EAAAA,EAAAA,GCrB+J,wDDqB7I,yBAH/B,WAKE,SAAC,IAAD,CAAY7L,UAAU,UAAU,cAAY,UAC5C,SAAC,IAAD,CACE3C,GAAIA,EACJslC,WAAS,EACT75B,KAAK,OACLurB,MAAOoM,EACPmC,OAAO,QACP5iC,WAAW6L,EAAAA,EAAAA,GC9B2F,2DD8BtE7L,GAChC6iC,WAAW,qB,0JElBZ,SAAShyB,EAAT,GAQG,IAPRhO,EAOQ,EAPRA,KACAH,EAMQ,EANRA,MACAyD,EAKQ,EALRA,SACA6E,EAIQ,EAJRA,MACA+F,EAGQ,EAHRA,OACAnK,EAEQ,EAFRA,QACAoK,EACQ,EADRA,YAEA,OACE,SAAC,IAAD,CACEC,SAAO,EACPpO,KAAMA,EACNqO,eAAgB,SAAC9F,GAAD,OAAUA,EAAKG,UAC/B4F,eAAgB,SAAC/F,GAAD,gBAAaA,EAAKE,KAClC5F,QAASsF,EACTtI,MAAOsI,EAAMqG,QAAO,SAACjG,GAAD,OAAU1I,EAAMwB,SAASkH,EAAKE,OAClDgG,mBAAmB,EACnBnL,SAAQ,+GAAE,SAAC28B,GAAD,OACR38B,EAAS28B,EAAc5lC,KAAI,SAACkO,GAAD,OAAUA,EAAKE,UAE5C,UAASyF,EACTnK,QAASA,EACToK,YAAaA,M,4FC7BZ,SAAS+xB,EAAT,GAAyC,IAAlB/2B,EAAkB,EAAlBA,QAC5B,OACE,iBAAKhM,WAAW6L,EAAAA,EAAAA,GAAK,MCTF,6DDSnB,WACE,iBAAK7L,UAAU,UAAf,WACE,gBAAKA,UAAU,kBACf,gBAAKA,UAAU,kBACf,gBAAKA,UAAU,kBACf,gBAAKA,UAAU,oBAEhBgM,IACC,kBAAMhM,UCjB+E,+DDiBrF,UACGgM,GACD,cAAGhM,UAAU,yC,iFEpBhB,SAASgjC,IACd,OACE,iBAAKhjC,UAAU,UAAf,WACE,gBAAKA,UAAU,oBACf,gBAAKA,UAAU,wB,6ICFfoc,GAAUC,EAAAA,EAAAA,eAA8B,MAEvC,SAAS4mB,IAGd,GAAe,OAFCzmB,EAAAA,EAAAA,YAAWJ,GAGzB,MAAM,IAAI1e,MAAM,uC,0BCGb,SAASwlC,EAAT,GAIsB,IAH3BhD,EAG2B,EAH3BA,QACAlgC,EAE2B,EAF3BA,UACAqM,EAC2B,EAD3BA,SAIA,OAFA42B,KAGE,gBAAKjjC,WAAW6L,EAAAA,EAAAA,GAAK7L,EAAW,eAAhC,SACGkgC,GAAU,SAAC8C,EAAA,EAAD,KAAc,gBAAKhjC,UAAU,iBAAf,SAAiCqM,M,eCNzD,SAAS82B,EAAT,GAMsB,IAL3Bl2B,EAK2B,EAL3BA,MACAoD,EAI2B,EAJ3BA,KACArQ,EAG2B,EAH3BA,UACAqM,EAE2B,EAF3BA,SACAiE,EAC2B,EAD3BA,YAIA,OAFA2yB,KAGE,gBAAKjjC,UAAU,gBAAf,UACE,iBAAKA,UAAU,MAAf,WACE,kBAAMA,WAAW6L,EAAAA,EAAAA,GAAK,YAAa7L,GAAnC,WACE,gBAAKA,UAAU,cAAf,UACE,SAACuQ,EAAA,EAAD,CACEF,KAAMA,EACNG,QAASF,EACTtQ,UAAU,2BAGd,0BAAOiN,QAET,iBAAMjN,WAAW6L,EAAAA,EAAAA,GAAK,aAAc7L,GAApC,SAAiDqM,SCrBzD,IAAM+2B,EHHC,YAA0D,IAAxC/2B,EAAwC,EAAxCA,SACvB,OACE,SAAC+P,EAAQQ,SAAT,CAAkBla,OAAK,EAAvB,UACE,gBAAK1C,UAAU,SAAf,SAAyBqM,OGE/B+2B,EAAOC,KAAOH,EACdE,EAAOE,OCdA,YAAgE,IAAxCj3B,EAAwC,EAAxCA,SAG7B,OAFA42B,KAEO,gBAAKjjC,UAAU,gBAAf,SAAgCqM,KDYzC+2B,EAAOG,MAAQJ,EACfC,EAAOI,QEZA,YAGsB,IAF3Bn3B,EAE2B,EAF3BA,SACArM,EAC2B,EAD3BA,UAIA,OAFAijC,KAGE,gBAAKjjC,UAAU,gBAAf,UACE,gBAAKA,UAAU,MAAf,UACE,gBAAKA,UAAWA,EAAhB,SAA4BqM,SFIpC+2B,EAAOJ,QAAUA,EAAAA,G,g8BGkBV,SAASS,EAAT,GAasB,QAZ3B36B,KAAAA,OAY2B,MAZpB,SAYoB,MAX3BkF,MAAAA,OAW2B,MAXnB,UAWmB,MAV3BD,KAAAA,OAU2B,MAVpB,QAUoB,MAT3BhH,SAAAA,OAS2B,SAR3B/G,EAQ2B,EAR3BA,UACAiO,EAO2B,EAP3BA,QACAhB,EAM2B,EAN3BA,MACAoD,EAK2B,EAL3BA,KACAC,EAI2B,EAJ3BA,YACAjE,EAG2B,EAH3BA,SAEGq3B,E,kXACwB,MAC3B,OACE,wBAEE56B,KAAMA,EACN/B,SAAUA,EACV/G,WAAW6L,EAAAA,EAAAA,GAAK,WAAD,OAAYmC,GAAS21B,EAAU51B,GAAO/N,GACrDiO,QAASA,EACThB,MAAOA,GAEHy2B,GARN,cAUGrzB,IACC,SAAC,IAAD,CACEA,KAAMA,EACNtC,KAAM61B,EAAY71B,GAClB/N,UAAU,cACVwQ,QAASF,IAGZjE,MAKP,SAASu3B,EAAY71B,GACnB,OAAQA,GACN,IAAK,SACH,MAAO,KACT,IAAK,SACH,MAAO,KACT,IAAK,QACH,MAAO,KAET,QACE,MAAO,MAIb,SAAS41B,EAAU51B,GACjB,OAAQA,GACN,IAAK,QACH,MAAO,SACT,IAAK,SACH,MAAO,SACT,IAAK,SACH,MAAO,SACT,QACE,MAAO,Y,4FC3FN,SAAS81B,EAAT,GAIsB,QAH3B91B,KAAAA,OAG2B,MAHpB,QAGoB,EAF3B1B,EAE2B,EAF3BA,SACArM,EAC2B,EAD3BA,UAEA,OACE,gBAAKA,WAAW6L,EAAAA,EAAAA,GAAK,YAAa83B,EAAU51B,GAAO/N,GAAYkC,KAAK,QAApE,SACGmK,IAKP,SAASs3B,EAAU51B,GACjB,OAAQA,GACN,IAAK,SACH,MAAO,eACT,IAAK,QACH,MAAO,eACT,QACE,MAAO,M,4HCXN,SAAS+1B,EAAT,GAMsB,IAL3BC,EAK2B,EAL3BA,SAK2B,IAJ3BC,UAAAA,OAI2B,MAJf,IAIe,MAH3BC,YAAAA,OAG2B,MAHb,SAGa,EAF3BjkC,EAE2B,EAF3BA,UACAqM,EAC2B,EAD3BA,SAEA,GAA2C6oB,EAAAA,EAAAA,GAAQ6O,EAAUC,GAArD7O,EAAR,EAAQA,WAAYC,EAApB,EAAoBA,mBAEpB,OACE,iBAAKp1B,UC1BiL,uED0BtL,WACE,UAACyjC,EAAA,EAAD,CACEzjC,UAAWA,EACX+N,KAAK,QACLE,QAASknB,EACTloB,MAAM,aACNnE,KAAK,SALP,WAOE,SAACyH,EAAA,EAAD,CAAMF,KAAK,OAAOG,SAAO,IACxBnE,MAGH,kBACErM,WAAW6L,EAAAA,EAAAA,GACTupB,GCxCgB,qEAAoP,yED0CpQ,aACA,mBALJ,WAQE,SAAC7kB,EAAA,EAAD,CAAMF,KAAK,QAAQG,SAAO,IACzByzB,IAAe,iBAAMjkC,UAAU,aAAhB,SAA8BikC,Y,mnCE9C/C,SAAS/O,EAAQ6O,GAAoC,IAAlBC,EAAkB,uDAAN,IACpD,GAAoD97B,EAAAA,EAAAA,WAAS,GAA7D,SAAOktB,EAAP,KAA2B8O,EAA3B,KAaA,SAAS/O,IAGP,GAAIgP,UAAUC,UACZD,UAAUC,UAAUC,UAAUN,OACzB,CAEL,IAAMO,EAAUC,SAASC,cAAc,YACvCF,EAAQ5hC,MAAQqhC,EAChBQ,SAASE,KAAKC,YAAYJ,GAC1BA,EAAQlhC,SACRmhC,SAASI,YAAY,QACrBL,EAAQM,QAAS,EACjBL,SAASE,KAAKI,YAAYP,GAE5BJ,GAAsB,GAGxB,OA7BA57B,EAAAA,EAAAA,YAAU,WACR,IAAMw8B,EAAc5nB,YAClB,kBAAMgnB,GAAsB,KAC5BF,GAGF,OAAO,WACL7mB,aAAa2nB,MAEd,CAAC1P,EAAoB4O,IAoBjB,CAAE7O,WAAAA,EAAYC,mBAAAA,K,64BCzBhB,SAASlnB,EAAT,GAOsB,IAN3BE,EAM2B,EAN3BA,YACAD,EAK2B,EAL3BA,UACApH,EAI2B,EAJ3BA,SAI2B,IAH3B+B,KAAAA,OAG2B,MAHpB,SAGoB,EAF3BuD,EAE2B,EAF3BA,SACG04B,E,kXACwB,MAC3B,OACE,SAAC,IAAD,OAEMA,GAFN,IAGEj8B,KAAMA,EACN/B,SAAUA,GAAYoH,EAJxB,SAMGA,GACC,iCACE,cACEnO,UAAU,yCACV,aAAW,UACX,cAAY,SAEboO,KAGH/B,O,uKCrBD,SAAS24B,EAAT,GAAmE,IAA9Cr/B,EAA8C,EAA9CA,MAAOsI,EAAuC,EAAvCA,QAASjO,EAA8B,EAA9BA,UAAW+G,EAAmB,EAAnBA,SACrD,OACE,oBACE/G,WAAW6L,EAAAA,EAAAA,GACT7L,EACA,QACA,gBACA,cACA,kBCpBoB,6DDuBtB8I,KAAK,SACLmF,QAASA,EACTlH,SAAUA,EAXZ,WAaE,SAACwJ,EAAA,EAAD,CAAMF,KAAK,cAAcG,SAAO,IAC/B7K,K,gZEdA,SAASs/B,EAAT,GAIM,IAHXC,EAGW,EAHXA,QACA/+B,EAEW,EAFXA,SACAzD,EACW,EADXA,MAIA,OAFAyiC,EAAAA,EAAAA,MAGE,SAAC,KAAD,CAAMnlC,UAAU,UAAhB,SACG,gBAAGolC,EAAH,EAAGA,WAAH,OACC,iCACE,SAAC,KAAD,CACEplC,WAAW6L,EAAAA,EAAAA,GAAK,yBAA0B,CACxC,iBAAkBu5B,IAFtB,UAKE,SAAC,IAAD,CACEr3B,KAAK,KACL/N,UAAU,cACVoB,YAAY,MACZ,cAAY,OACZ,aAAW,eAGf,SAAC,KAAD,WACE,iBAAKpB,UAAU,YAAf,WACE,gBAAKA,UAAU,aAAf,kCACA,gBAAKA,UAAU,cAAf,SACGklC,EAAQhoC,KAAI,SAACmoC,GAAD,OACX,0BACE,SAAC,IAAD,CACE5Q,QAAS4Q,EAAOC,UAChB3/B,MAAO0/B,EAAOE,OACdloC,GAAE,qBAAgBgoC,EAAOhoC,IACzB8I,SAAU,SAAC1I,GAAD,OAiBQ+nC,EAfdH,EAAOhoC,GAesBooC,EAd7BhoC,EAAEY,OAAOo2B,aAgB7BtuB,EADEs/B,EACO/iC,EAAM2O,QAAO,SAAChU,GAAD,OAAQA,IAAOmoC,KAI9B,GAAD,Q,EAAK9iC,E,knBAAL,CAAY8iC,KANtB,IAAsCA,EAAeC,E,MAtB3BJ,EAAOhoC,sB,qnCCY5B,SAASqoC,EAAT,GAkBiB,IA4ItBC,E,IA1JAT,EAcsB,EAdtBA,QACAU,EAasB,EAbtBA,QACAC,EAYsB,EAZtBA,WACAC,EAWsB,EAXtBA,oBACAC,EAUsB,EAVtBA,mBACAC,EASsB,EATtBA,cACAC,EAQsB,EARtBA,cAQsB,IAPtBC,SAAAA,OAOsB,MAPXC,EAOW,MANtBC,gBAAAA,OAMsB,MANJ,kBAAM,GAMF,EALtBC,EAKsB,EALtBA,aACAC,EAIsB,EAJtBA,kBAIsB,IAHtBC,kBAAAA,OAGsB,MAHF,GAGE,EAFtBp4B,EAEsB,EAFtBA,UAEsB,IADtBqH,WAAAA,OACsB,MADTowB,EAAQpnC,OACC,EACtB,G,GAA4CgoC,EAAAA,EAAAA,GAAkBX,G,EAA9D,E,8zBAAOY,EAAP,KAAuBC,EAAvB,KAEMC,GAAgBC,EAAAA,EAAAA,UACpB,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMoiC,EACNkB,YAAa,CAAEC,SAAAA,EAAAA,GACfC,aAAc,EAAF,CACVC,SAAUjB,EAAciB,UAAY,GACpCC,OAAQ,CAAClB,EAAckB,QACvBC,aAAcV,GACXF,GAELH,gBAAAA,EACAgB,uBAAuB,EACvBlB,SAAAA,EACAmB,aAAc,SAACC,EAAU7jC,GACvB,OAAQA,EAAOqF,MACb,IAAK,kBACH49B,EAAkBjjC,EAAO8jC,aACzB,MACF,IAAK,eACHvB,EAAcwB,UAAU/jC,EAAOgkC,SAAUhkC,EAAOikC,MAChD,MACF,IAAK,cACH1B,EAAc2B,YAAYlkC,EAAOwjC,UAKrC,OAAOK,IAGXM,EAAAA,WACAC,EAAAA,gBACAC,EAAAA,UACAC,EAAAA,cACAC,EAAAA,EACC/B,EAAqCgC,EAArBC,EAAAA,IAIjBC,EAUExB,EAVFwB,iBACAC,EASEzB,EATFyB,cACAC,EAQE1B,EARF0B,kBACAC,EAOE3B,EAPF2B,aACAnwB,EAMEwuB,EANFxuB,KACAowB,EAKE5B,EALF4B,WACAC,EAIE7B,EAJF6B,SACAb,EAGEhB,EAHFgB,YACAc,EAEE9B,EAFF8B,gBATF,EAWI9B,EADF73B,MAAS45B,EAVX,EAUWA,UAAWzB,EAVtB,EAUsBA,SAGhB0B,EAAaP,IACbQ,EAAaP,IAEbQ,GAAgBV,EAAiBjrC,KAAI,SAAC4rC,GAAD,OAASA,EAAIC,YAExD,OACE,gBAAK/oC,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC,IAAD,CAAuBqD,SAAU2iC,EAAjC,UACE,UAAC,cAAD,YA2ERL,EA1E0BU,GA4ElBV,EAAc5Q,OA3EV,UAAC,UAAD,CAAapvB,MAAO0gC,EAAap5B,MAAOoD,KAAMg2B,EAAah2B,KAA3D,WACE,SAAC,IAAD,CAAW3N,MAAO+jC,EAAgBtgC,SAAUsiC,IAC3C1C,IACC,SAAC,YAAD,UACGA,EAAmB8C,OAGxB,SAAC,iBAAD,YACK/C,GAAuBA,EAAoBa,UAIpD,UAAC,IAAD,CACE3mC,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,cAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,SAJhBhX,SASb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAAC,YAAD,CACEqpC,KAAM/wB,EACNhK,UAAWA,EACXo6B,WAAYA,EACZY,aAAc7C,EACd8C,UAAW,SAACN,EAAD,OAAQpqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAA9B,OACT,SAAC,QAAD,CACEwpC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,YASf,UAAC,WAAD,YACE,SAAC,IAAD,CAAmBgE,MAAOylC,EAAiB3pC,UAC3C,SAAC,IAAD,CACE6hC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYA,EACZ+sB,kBAAmBoF,gBAgBnC,SAASxB,EAAmD2C,GAC1D,OAAIA,EAAIzrC,IAAyB,iBAAXyrC,EAAIzrC,IAAqC,iBAAXyrC,EAAIzrC,IAIpDyrC,EAAIx9B,IAAyB,iBAAXw9B,EAAIx9B,IAAqC,iBAAXw9B,EAAIx9B,IAIpDw9B,EAAIS,IAAyB,iBAAXT,EAAIS,IAAqC,iBAAXT,EAAIS,GAIjD,GAHET,EAAIS,GAAG3mC,WAJPkmC,EAAIx9B,GAAG1I,WAJPkmC,EAAIzrC,GAAGuF,WAclB,SAASqlC,KAETA,EAAYuB,WAAa,e,u0BCnOlB,SAASC,EAAT,GAE4D,IAiB7CrE,EAjBlB0D,EAA+D,EAA/DA,IAAKY,EAA0D,EAA1DA,gBAAiBr9B,EAAyC,EAAzCA,SACxB,OACE,gCACGq9B,IACC,mBAAQ5gC,KAAK,SAAS9I,UCfC,sEDevB,UACE,oBAEM8oC,EAAIa,6BAFV,IAGE3pC,UAAS,eASColC,EATmB0D,EAAI1D,WAUrCA,EACK,gBAEF,kBAbU,gBACT,cAAY,YAIjB/4B,O,6XEpBA,SAASu9B,EAAT,GAIJ,QAHDvE,OAAUkC,EAGT,EAHSA,YAAasC,EAGtB,EAHsBA,UAAWC,EAGjC,EAHiCA,gBAAiBzsC,EAGlD,EAHkDA,GAI7CqI,GAAUmY,EAAAA,EAAAA,UAAQ,WACtB,IAAMnY,EAAU,IAAIqkC,IAKpB,OAJAD,EAAgBlzB,SAAQ,SAACkyB,GACvBpjC,EAAQskC,IAAIlB,EAAI1iC,OAAO/I,OAGlB0hC,MAAMkL,KAAKvkC,KACjB,CAACrI,EAAIysC,IAER,OACE,SAACI,EAAD,CACExkC,QAASA,EACTykC,UAAW9sC,EACXqF,MAAO6kC,EACPphC,SAAU0jC,IAYhB,SAASK,EAAT,GAKiC,IAJ/BxkC,EAI+B,EAJ/BA,QAI+B,IAH/BhD,MAAAA,OAG+B,MAHvB,GAGuB,EAF/BynC,EAE+B,EAF/BA,UACAhkC,EAC+B,EAD/BA,SAEMyR,EAAUlV,EAAMlE,OAAS,EAC/B,OACE,0BACE,UAAC,KAAD,YACE,UAAC,KAAD,CACEwB,WAAW6L,EAAAA,EAAAA,GAAK,eAAgB,CAAE,gBAAiB+L,IADrD,oBAIE,cACE5X,WAAW6L,EAAAA,EAAAA,GACT,KACA,aACA+L,EAAU,WAAa,aAEzB,cAAY,aAGhB,SAAC,KAAD,CAAa5X,UAAU,gBAAvB,UACE,iBAAKA,UAAU,YAAf,WACE,gBAAKA,UAAU,aAAf,8BACA,gBAAKA,UAAU,cAAf,SACG0F,EAAQxI,KAAI,SAACiK,EAAQ+3B,GAAT,OACX,iBAAKl/B,UAAU,cAAf,WACE,kBACE3C,GAAE,iBAAY8sC,EAAZ,YAAyBjL,GAC3Bp2B,KAAK,WACL2rB,QAAS/xB,EAAMwB,SAASiD,GACxBhB,SAAU,kBAc5B,SAAsBgB,GAChBzE,EAAMwB,SAASiD,GACjBhB,EAASzD,EAAM2O,QAAO,SAAC7T,GAAD,OAAOA,IAAM2J,MAKrChB,EAAS,GAAD,Q,EAAKzD,E,knBAAL,CAAYyE,K,MArBYL,CAAaK,OAE/B,kBAAOutB,QAAO,iBAAYyV,EAAZ,YAAyBjL,GAAvC,SACG/3B,MAR6B+3B,oB,iFC5D3C,SAASkL,EAAT,GAAkE,IAAxC/9B,EAAwC,EAAxCA,SAC/B,OAAO,gBAAKrM,UAAU,kBAAf,SAAkCqM,M,2FCHpC,SAASg+B,IACd,IAAMjuB,GAAUC,EAAAA,EAAAA,eAA+B,MAE/C,MAAO,CAAEiuB,YAET,YAG6C,IAF3Cj+B,EAE2C,EAF3CA,SACAkQ,EAC2C,EAD3CA,QAEA,OAAO,SAACH,EAAQQ,SAAT,CAAkBla,MAAO6Z,EAAzB,SAAmClQ,KANtBk+B,cAStB,WACE,IAAMhuB,GAAUC,EAAAA,EAAAA,YAAWJ,GAC3B,IAAKG,EACH,MAAM,IAAI7e,MAAM,sCAGlB,OAAO6e,M,4rCCPJ,SAASiuB,EAAT,GAKG,IAJR9nC,EAIQ,EAJRA,MAIQ,IAHRsO,YAAAA,OAGQ,MAHM,YAGN,EAFR7K,EAEQ,EAFRA,SACW4K,EACH,EADR,WAEA,EAiBF,SAAqB9I,EAAsB9B,GACzC,SAAsC+B,EAAAA,EAAAA,UAASD,GAA/C,GAAOwiC,EAAP,KAAoBC,EAApB,MAEApiC,EAAAA,EAAAA,YAAU,WACRoiC,EAAeziC,KACd,CAACA,IAEJ,IAAM0iC,GAAoB9sB,EAAAA,EAAAA,UACxB,kBAAM,IAAW1X,EAAU,OAC3B,CAACA,IAGH,MAAO,CAACskC,EAER,SAAsB/nC,GACpBgoC,EAAehoC,GACfioC,EAAkBjoC,KAjCkBma,CAAYna,EAAOyD,GAAzD,SAAOskC,EAAP,KAAoBC,EAApB,KAEA,OACE,iBAAK1qC,UAAU,8BAAf,WACE,SAAC,IAAD,CAAQA,UAAU,wBAClB,kBACE8I,KAAK,OACL9I,UAAU,cACV0C,MAAO+nC,EACPtkC,SAAU,SAAC1I,GAAD,OAAOitC,EAAejtC,EAAEY,OAAOqE,QACzCsO,YAAaA,EACb,UAASD,OA0BV,SAASy1B,EACd9nC,GAEA,IAAMyrC,EAKN,SAAoBzrC,GAClB,sCAAgCA,GANhB6e,CAAW7e,GAC7B,KAA0Bie,EAAAA,EAAAA,GAAgBwtB,EAAW,GAAIS,gBAAzD,GAEA,MAAO,CAFP,a,iFCxDK,SAASC,EAAT,GAA8D,IAAjCnoC,EAAiC,EAAjCA,MAClC,OAAiB,IAAVA,GACL,iBAAK1C,UAAU,UAAf,UAA0B0C,EAA1B,uBACE,O,yMC6COooC,EArCb,YAKkC,IAJhCz+B,EAIgC,EAJhCA,SACArM,EAGgC,EAHhCA,UACAkC,EAEgC,EAFhCA,KACArC,EACgC,EADhCA,MAIA,OAFAslC,EAAAA,EAAAA,MAGE,gBAAKnlC,UAAU,mBAAf,UACE,kBACEA,WAAW6L,EAAAA,EAAAA,GACT,+CACA7L,GAEFkC,KAAMA,EACNrC,MAAOA,EANT,SAQGwM,OAsBTy+B,EAAMC,QAAUC,EAAAA,EAChBF,EAAMG,aAAeC,EAAAA,EACrBJ,EAAMK,UAAYC,EAAAA,EAClBN,EAAMO,WAAaC,EAAAA,EACnBR,EAAMS,aAAeC,EAAAA,EACrBV,EAAMvH,MAAQkI,EAAAA,EACdX,EAAMpV,IAAMgW,EAAAA,EACZZ,EAAMa,UAAYC,EAAAA,EAClBd,EAAMe,QAAUC,EAAAA,EAChBhB,EAAMxH,OAASyI,EAAAA,G,kHCvDR,SAASf,EAAT,GAGsB,IAF3B3+B,EAE2B,EAF3BA,SACArM,EAC2B,EAD3BA,UAIA,OAFAmlC,EAAAA,EAAAA,KAEiC,IAA7B6G,EAAAA,SAAAA,MAAe3/B,GACV,MAGF,gBAAKrM,WAAW6L,EAAAA,EAAAA,GAAK,YAAa7L,GAAlC,SAA+CqM,M,8HCflD+P,GAAUC,EAAAA,EAAAA,eAA8B,MAEvC,SAAS8oB,IAGd,GAAe,OAFC3oB,EAAAA,EAAAA,YAAWJ,GAGzB,MAAM,IAAI1e,MAAM,sDAIb,SAAS0tC,EAAT,GAAkE,IAAxC/+B,EAAwC,EAAxCA,SAC/B,OACE,SAAC+P,EAAQQ,SAAT,CAAkBla,OAAK,EAAvB,UACE,gBAAK1C,UAAU,YAAf,UACE,SAAC,KAAD,WACE,SAAC,KAAD,CAAYA,UAAU,aAAtB,SAAoCqM,Y,4GCRvC,SAASy/B,EAAT,GAQM,QALX39B,UAAAA,OAKW,SAJX+6B,EAIW,EAJXA,KAIW,IAHXC,aAAAA,OAGW,MAHI,qBAGJ,EAFXZ,EAEW,EAFXA,WACAa,EACW,EADXA,UAEA,OAAIj7B,GACK,SAAC89B,EAAD,yBAGJ/C,EAAK1qC,QAKR,8BACG0qC,EAAKhsC,KAAI,SAAC4rC,GACTP,EAAWO,GACX,MAAwCA,EAAIoD,cAApCxtC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAC9B,OAAOupC,EAAUN,EAAK,CAAEpqC,IAAAA,EAAKsB,UAAAA,EAAWkC,KAAAA,EAAMrC,MAAAA,UAR3C,SAACosC,EAAD,UAAwB9C,IAcnC,SAAS8C,EAAT,GAAyE,IAAxC5/B,EAAwC,EAAxCA,SAE/B,OACE,yBACE,eAAIC,QAAStI,OAAOs8B,iBAAkBtgC,UAAU,yBAAhD,SACGqM,Q,4FCxCF,SAAS0/B,EAAT,GAA+D,IAAxC1/B,EAAwC,EAAxCA,SAG5B,OAFA84B,EAAAA,EAAAA,MAEO,mBAAQnlC,UAAU,SAAlB,SAA4BqM,M,8FCPjCpO,E,iCAEJ,SAASC,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAItU,ICNI,EDmBJ,EAbuB,SAA0BS,GAC/C,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,WACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,+UACHF,KAAM,eCbV,SAAS,IAAiS,OAApR,EAAWvB,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,EAASS,MAAMC,KAAMR,WAItU,IAaA,EAbqB,SAAwBS,GAC3C,OAAoB,gBAAoB,MAAO,EAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,WACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,IAAU,EAAqB,gBAAoB,OAAQ,CACpEM,EAAG,0UACHF,KAAM,eCdV,EAA2B,yEAA3B,EAAqH,gF,UCU9G,SAAS+sC,EAAT,GAA6D,IAA7BC,EAA6B,EAA7BA,OAAQC,EAAqB,EAArBA,WAC7C,OACE,iBAAKrsC,UAAU,kCAAf,WACE,SAAC,EAAD,CACEA,WAAW6L,EAAAA,EAAAA,GACT,aACAugC,IAAWC,GAAc1P,EACzBA,GAEF,cAAY,UAEd,SAAC,EAAD,CACE38B,WAAW6L,EAAAA,EAAAA,GACT,QACAugC,GAAUC,GAAc1P,EACxBA,GAEF,cAAY,YCTb,SAAS2O,EAAT,GASG,QARRgB,YAAetsC,EAQP,EAROA,UAAWkC,EAQlB,EARkBA,KAAMrC,EAQxB,EARwBA,MAChC0sC,EAOQ,EAPRA,QACAC,EAMQ,EANRA,OACAC,EAKQ,EALRA,YACAC,EAIQ,EAJRA,SACAC,EAGQ,EAHRA,aACAC,EAEQ,EAFRA,UACAC,EACQ,EADRA,aAIA,OAFA1H,EAAAA,EAAAA,MAGE,eAAIjjC,KAAMA,EAAMrC,MAAOA,EAAOG,UAAWA,EAAzC,UACE,iBAAKA,UAAU,sDAAf,WACE,SAAC8sC,EAAD,CACEP,QAASA,EACTt+B,QAASw+B,EACTC,SAAUA,EACVC,aAAcA,EAJhB,SAMGH,MAEFI,EAAYC,IAAiB,UAatC,SAASC,EAAT,GAMwC,IALtCP,EAKsC,EALtCA,QACAlgC,EAIsC,EAJtCA,SAIsC,IAHtC4B,QAAAA,OAGsC,MAH5B,aAG4B,EAFtCy+B,EAEsC,EAFtCA,SACAC,EACsC,EADtCA,aAEA,OAAKJ,GAKH,mBACEzjC,KAAK,SACLmF,QAAS,kBAAMA,GAAS0+B,IACxB3sC,WAAW6L,EAAAA,EAAAA,GACT,0ECtEmB,mEDwEnB6gC,GCxEsG,yEDkE1G,UASE,iBAAK1sC,UAAU,yDAAf,UACGqM,GACD,SAAC8/B,EAAD,CACEC,OAAQM,EACRL,WAAYK,KAAcC,UAjBzB,8BAAGtgC,IA+BP,SAAS0gC,EAAT,GAK2B,IAJhCR,EAIgC,EAJhCA,QACAG,EAGgC,EAHhCA,SACAM,EAEgC,EAFhCA,SACAL,EACgC,EADhCA,aAEA,OACE,gBAAK3sC,UAAU,mCAAf,UACE,SAAC8sC,EAAD,CACEP,QAASA,EACTG,WAAYA,EACZC,aAAcA,EAHhB,SAKGK,Q,s2BEjGF,SAASpB,EAAT,GAQyB,IAL9Bl2B,EAK8B,EAL9BA,QACAu3B,EAI8B,EAJ9BA,aACAjtC,EAG8B,EAH9BA,UACAkC,EAE8B,EAF9BA,KACArC,EAC8B,EAD9BA,MAIA,OAFAslC,EAAAA,EAAAA,MAGE,eAAInlC,UAAWA,EAAWkC,KAAMA,EAAMrC,MAAOA,EAA7C,SACG6V,EAAQxY,KAAI,SAACmoC,GAAD,OACX,SAAC,IAAD,CACEiH,YAAW,KACNjH,EAAO6H,eAAe,CACvBltC,UAAWqlC,EAAOrlC,UAClBH,MAAO,CACLZ,MAAOomC,EAAO8H,gBAAkB9H,EAAOpmC,MAAQ,OAKrDstC,QAASlH,EAAOkH,QAChBE,YAAa,SAAC/E,GACZrC,EAAO+H,aAAa1F,GAChBuF,GACFA,EAAa5H,EAAOhoC,GAAIqqC,IAG5BgF,SAAUrH,EAAOqH,SACjBC,aAActH,EAAOsH,aACrBH,OAAQ,kBAAMnH,EAAOmH,OAAO,WAC5BI,WAAYvH,EAAOgI,eACnBR,aAAc,kBAAMxH,EAAOmH,OAAO,YAZ7BnH,EAAOhoC,W,qGCxBf,SAASquC,EAAT,GAEwC,IAA3CrC,EAA2C,EAA3CA,MAAOrpC,EAAoC,EAApCA,UAAWkC,EAAyB,EAAzBA,KAAMrC,EAAmB,EAAnBA,MAG1B,OAFAslC,EAAAA,EAAAA,MAGE,eAAInlC,UAAWA,EAAWkC,KAAMA,EAAMrC,MAAOA,EAA7C,SACGwpC,EAAMnsC,KAAI,SAACowC,GACV,IAAMC,EAAYD,EAAKE,aAAa,CAClCxtC,UAAWstC,EAAKttC,YAGlB,OACE,eACEA,UAAWutC,EAAUvtC,UACrBkC,KAAMqrC,EAAUrrC,KAChBrC,MAAO0tC,EAAU1tC,MAHnB,SAMGytC,EAAKd,OAAO,SAFRe,EAAU7uC,Y,6HCfpB,SAAS8sC,EAAT,GAGsB,IAF3BiC,EAE2B,EAF3BA,aACAphC,EAC2B,EAD3BA,SAIA,OAFA84B,EAAAA,EAAAA,MAGE,SAAC,KAAD,CAAMnlC,UAAU,UAAhB,SACG,gBAAGolC,EAAH,EAAGA,WAAH,OACC,iCACE,SAAC,KAAD,CACEplC,WAAW6L,EAAAA,EAAAA,GAAK,yBAA0B,CACxC,iBAAkBu5B,IAFtB,UAKE,SAAC,IAAD,CACEr3B,KAAK,KACL/N,UAAU,cACVoB,YAAY,MACZ,cAAY,OACZ,aAAW,gBAGf,SAAC,KAAD,WACE,iBAAKpB,UAAU,YAAf,WACE,gBAAKA,UAAU,aAAf,6BACA,gBAAKA,UAAU,cAAf,SAA8BqM,IAC7BohC,IACC,4BACE,gBAAKztC,UAAU,aAAf,4BACA,gBAAKA,UAAU,cAAf,SAA8BytC,oB,6NCxChD,GAAgB,aAAe,qFAAqF,YAAc,qF,oHCW3H,SAASC,EAAT,GAAkE,I,IAA1BvnC,EAA0B,EAA1BA,SAAUzD,EAAgB,EAAhBA,MACvD,G,GAA4CwF,EAAAA,EAAAA,WAAS,G,EAArD,E,8zBAAOylC,EAAP,KAAuBC,EAAvB,KAEMC,EAAYnrC,EAAQ,EAE1B,OACE,iCACE,SAACorC,EAAA,EAAD,CACEzwC,GAAG,wBACHsI,MAAM,eACN8uB,QAASoZ,EACT1nC,SAAQ,+GAAE,SAAC1I,GAAD,OAAO0I,EAAS1I,EAAEY,OAAOo2B,QAAU,GAAK,QAGnDoZ,IACC,4BACE,kBAAOnZ,QAAQ,wBAAf,2BACA,oBACEr3B,GAAG,wBACH2C,UAAU,eACV0C,MAAOA,EACPyD,SAAU,SAAC1I,GAAD,OA2BpB,SAAsBiF,GACpByD,EAASnC,OAAOtB,IAChBkrC,GAAkB,GA7BO9mC,CAAarJ,EAAEY,OAAOqE,QAJzC,WAME,mBAAQA,MAAO,GAAf,kBACA,mBAAQA,MAAO,GAAf,kBACA,mBAAQA,MAAO,GAAf,mBACA,mBAAQA,MAAO,IAAf,mBACA,mBAAQA,MAAO,IAAf,sBAEF,iBACE1C,WAAW6L,EAAAA,EAAAA,GACT8hC,EAAiBhR,EAAAA,aAAsBA,EAAAA,YACvCA,EAAAA,OAEFoR,gBAAiB,kBAAMH,GAAkB,IAL3C,UAOE,cACEvwC,GAAG,oBACH2C,UAAU,yBACV,cAAY,OACZH,MAAO,CAAEmuC,UAAW,mB,sGCxC3B,SAASvC,EAAT,GAKsB,IAJ3Bp7B,EAI2B,EAJ3BA,KACAC,EAG2B,EAH3BA,YACA3K,EAE2B,EAF3BA,MACA0G,EAC2B,EAD3BA,SAIA,OAFA84B,EAAAA,EAAAA,MAGE,iBAAKnlC,UAAU,UAAf,WACE,iBAAKA,UAAU,eAAf,UACGqQ,IACC,gBAAKrQ,UAAU,cAAf,UACE,SAAC,IAAD,CACEqQ,KAAMA,EACNG,QAASF,EACTtQ,UAAU,0BAKf2F,KAEF0G,O,uGC/BA,SAAS6+B,EAAT,GAAqE,IAAxC7+B,EAAwC,EAAxCA,SAGlC,OAFA84B,EAAAA,EAAAA,KAEiC,IAA7B6G,EAAAA,SAAAA,MAAe3/B,GACV,MAGF,gBAAKrM,UAAU,WAAf,SAA2BqM,M,mCCT7B,SAAS06B,EAEdmC,EAAgB+E,GAAiD,IAA5B1G,EAA4B,uDAAJ,GAC7D,OAA2B,IAAvBA,EAAY/oC,QAAqC,IAArByvC,EAAUzvC,OACjC0qC,EAGFA,EAAK73B,QAAO,SAACy3B,GAClB,IAAMpmC,EAAQomC,EAAI1iC,OAAO6nC,EAAU,IACnC,OAAO1G,EAAYrjC,SAASxB,M,20CC2BzB,SAASslC,EAAoCkG,GAClDA,EAAMC,0BAA4B,CAChCC,GAKFF,EAAMG,8BAAgC,CACpCC,GAKFJ,EAAMK,kCAAoC,CACxCC,GAKFN,EAAMO,cAAc9rC,KAClB+rC,GAOFR,EAAMS,YAAYhsC,KAAKgsC,GACvBT,EAAM3F,WAAW5lC,KAAK4lC,GAKxB,SAAS6F,EACPpvC,EADF,GAGE,IADE4vC,EACF,EADEA,SAAU9F,EACZ,EADYA,IAEZ,EAGI8F,EAFFC,qBAAAA,OADF,MACyB,aADzB,IAGID,EADFxI,gBAAAA,OAFF,MAEoB0I,EAFpB,EAYA,MAAO,CACL9vC,EACA,CACEmH,SAAU,SAAC1I,GACTqrC,EAAIiG,kBAAkBtxC,EAAEY,OAAOo2B,UAEjC50B,MAAO,CACLmvC,OAAQ,WAEVva,WAfAqU,EAAIC,WAAYD,EAAIC,SAAS8F,KAGrB/F,EAAImG,WAaZhiC,MAAO,sBACPiiC,cAAepG,EAAIqG,eACnBpoC,UAAWq/B,EAAgB0C,KAKjC,SAASwF,EACPtvC,EADF,GAGE,IADE4vC,EACF,EADEA,SAEF,MAAO,CACL5vC,EACA,CACEmH,SAAU,SAAC1I,GACTmxC,EAASQ,sBAAsB3xC,EAAEY,OAAOo2B,UAE1C50B,MAAO,CACLmvC,OAAQ,WAEVva,QAASma,EAASS,kBAClBpiC,MAAO,2BACPiiC,cAAeI,SACZV,EAASS,mBACRxxC,OAAOD,KAAKgxC,EAAS9/B,MAAMygC,gBAAgB/wC,UAMrD,SAASgwC,EACPxvC,EADF,GAGE,IADE4vC,EACF,EADEA,SAEF,MAAO,CACL5vC,EACA,CACEmH,SADF,SACW1I,GACPmxC,EAASY,0BAA0B/xC,EAAEY,OAAOo2B,UAE9C50B,MAAO,CACLmvC,OAAQ,WAEVva,QAASma,EAASa,sBAClBxiC,MAAO,wCACPiiC,cAAeI,SACZV,EAASa,uBACRb,EAASz2B,KAAKzI,MAAK,gBAAGrS,EAAH,EAAGA,GAAH,OAAYuxC,EAAS9/B,MAAMygC,eAAelyC,SAMvE,SAASqxC,EACP5/B,EACArL,EACAisC,EACAd,GAEA,GAAInrC,EAAOqF,OAAS6mC,EAAAA,QAAAA,KAClB,cACK7gC,GADL,IAEEygC,eAA4C,KAIhD,GAAI9rC,EAAOqF,OAAS6mC,EAAAA,QAAAA,kBAClB,cACK7gC,GADL,IAEEygC,gBAAgBX,MAAAA,OAAA,EAAAA,EAAU5H,aAAauI,iBAAkB,KAI7D,GAAI9rC,EAAOqF,OAAS6mC,EAAAA,QAAAA,sBAA+B,CACjD,IAAeC,EAAgBnsC,EAAvBf,MAER,IAAKksC,EACH,OAAO9/B,EAGT,IACEugC,EAIET,EAJFS,kBACAQ,EAGEjB,EAHFiB,SAFF,EAKIjB,EAFFkB,mBAAAA,OAHF,MAGuBD,EAHvB,IAKIjB,EADFxI,gBAAAA,OAJF,MAIoB0I,EAJpB,EAOMiB,OACmB,IAAhBH,EAA8BA,GAAeP,EAIhDE,EAAiB,EAAH,GAAQzgC,EAAMygC,gBAalC,OAXA1xC,OAAOD,KAAKkyC,GAAoBl5B,SAAQ,SAACo5B,GACvC,GAAID,EAAW,CACb,IAAMjH,EAAM+G,EAASG,GACjB5J,EAAgB0C,KAClByG,EAAeS,IAAS,eAGnBT,EAAeS,MAI1B,OACKlhC,GADL,IAEEygC,eAAAA,IAIJ,GAAI9rC,EAAOqF,OAAS6mC,EAAAA,QAAAA,kBAA2B,CAC7C,IAAKf,EACH,OAAO9/B,EAGT,IAAQzR,EAA2BoG,EAA3BpG,GAAWuyC,EAAgBnsC,EAAvBf,MAEVmtC,EAIEjB,EAJFiB,SADF,EAKIjB,EAHFqB,cAAAA,OAFF,SAGEC,EAEEtB,EAFFsB,WAHF,EAKItB,EADFxI,gBAAAA,OAJF,MAIoB0I,EAJpB,EAOMG,EAAangC,EAAMygC,eAAelyC,GAClC8yC,OACmB,IAAhBP,EAA8BA,GAAeX,EAEtD,GAAIA,IAAekB,EACjB,OAAOrhC,EAGT,IAAMshC,EAAoB,EAAH,GAAQthC,EAAMygC,gBAyBrC,OAtBA,SAASc,EAAchzC,GACrB,IAAMyrC,EAAM+G,EAASxyC,GAEhB+oC,EAAgB0C,KAIhBA,EAAIwH,YACHH,EACFC,EAAkB/yC,IAAM,SAEjB+yC,EAAkB/yC,IAIzB4yC,GAAiBC,EAAWpH,IAC9BoH,EAAWpH,GAAKlyB,SAAQ,SAACkyB,GAAD,OAASuH,EAAcvH,EAAIzrC,QAIvDgzC,CAAchzC,GAEd,OACKyR,GADL,IAEEygC,eAAgBa,IAIpB,GAAI3sC,EAAOqF,OAAS6mC,EAAAA,QAAAA,0BAAmC,KAoB5CU,EAAT,SAASA,EAAchzC,GACrB,IAAMyrC,EAAM+G,EAASxyC,GAEhByrC,EAAIwH,YACHP,EACFK,EAAkB/yC,IAAM,SAEjB+yC,EAAkB/yC,IAIzB4yC,GAAiBC,EAAWpH,IAC9BoH,EAAWpH,GAAKlyB,SAAQ,SAACkyB,GAAD,OAASuH,EAAcvH,EAAIzrC,QA/BvD,IAAKuxC,EACH,OAAO9/B,EAGT,IAAe8gC,EAAgBnsC,EAAvBf,MAENyV,EAKEy2B,EALFz2B,KACA03B,EAIEjB,EAJFiB,SAFF,EAMIjB,EAHFqB,cAAAA,OAHF,SAIER,EAEEb,EAFFa,sBACAS,EACEtB,EADFsB,WAGIH,OACmB,IAAhBH,EAA8BA,GAAeH,EAEhDW,EAAoB,EAAH,GAAQthC,EAAMygC,gBAqBrC,OAFAp3B,EAAKvB,SAAQ,SAACkyB,GAAD,OAASuH,EAAcvH,EAAIzrC,OAExC,OACKyR,GADL,IAEEygC,eAAgBa,IAGpB,OAAOthC,EAGT,SAAS6/B,EACPC,GAEA,IACEprC,EAaEorC,EAbFprC,KACA0lC,EAYE0F,EAZF1F,KACAqH,EAWE3B,EAXF2B,SACAC,EAUE5B,EAVF4B,QACAX,EASEjB,EATFiB,SALF,EAcIjB,EARFkB,mBAAAA,OANF,MAMuBD,EANvB,IAcIjB,EAPFxH,sBAAAA,OAPF,SAQWmI,EAMPX,EANF9/B,MAASygC,eARX,EAcIX,EALFqB,cAAAA,OATF,SAUEQ,EAIE7B,EAJF6B,SACAt4B,EAGEy2B,EAHFz2B,KACA+3B,EAEEtB,EAFFsB,WAZF,EAcItB,EADFxI,gBAAAA,OAbF,MAaoB0I,EAbpB,GAgBA4B,EAAAA,EAAAA,mBACEF,EACA,CAAC,aAAc,aAAc,YAAa,cAAe,iBACzD,gBAGF,IAAMrI,GAAmBtqB,EAAAA,EAAAA,UAAQ,WAC/B,IAAMsqB,EAAkC,GAcxC,OAZAe,EAAKtyB,SAAQ,SAACkyB,GACZ,IAAMmG,EAAagB,EACfU,EAAiB7H,EAAKyG,EAAgBW,KACpCX,EAAezG,EAAIzrC,IACzByrC,EAAImG,aAAeA,EACnBnG,EAAIqG,eAAgC,OAAfF,EAEjBA,GACF9G,EAAiBxlC,KAAKmmC,MAInBX,IACN,CAACe,EAAM+G,EAAeV,EAAgBW,IAErCb,EAAoBC,QACtBzxC,OAAOD,KAAKkyC,GAAoBtxC,QAAUX,OAAOD,KAAK2xC,GAAgB/wC,QAGpEixC,EAAwBJ,EAExBA,GAEAxxC,OAAOD,KAAKkyC,GAAoBpgC,MAAK,SAACrS,GACpC,IAAMyrC,EAAM+G,EAASxyC,GAErB,OAAQkyC,EAAelyC,IAAO+oC,EAAgB0C,QAGhDuG,GAAoB,GAInBA,GAEDl3B,GACAA,EAAK3Z,QACL2Z,EAAKzI,MAAK,YAAY,IAATrS,EAAS,EAATA,GACLyrC,EAAM+G,EAASxyC,GAErB,OAAQkyC,EAAelyC,IAAO+oC,EAAgB0C,QAGhD2G,GAAwB,GAI5B,IAAMmB,GAA2BC,EAAAA,EAAAA,cAAazJ,IAE9C0J,EAAAA,EAAAA,yBAAuB,WACjBF,KACFH,EAAS,CAAE3nC,KAAM6mC,EAAAA,QAAAA,sBAElB,CAACc,EAAUjtC,IAEd,IAAM4rC,GAAwBj9B,EAAAA,EAAAA,cAC5B,SAACzP,GAAD,OAAW+tC,EAAS,CAAE3nC,KAAM6mC,EAAAA,QAAAA,sBAA+BjtC,MAAAA,MAC3D,CAAC+tC,IAGGjB,GAA4Br9B,EAAAA,EAAAA,cAChC,SAACzP,GAAD,OAAW+tC,EAAS,CAAE3nC,KAAM6mC,EAAAA,QAAAA,0BAAmCjtC,MAAAA,MAC/D,CAAC+tC,IAGG1B,GAAoB58B,EAAAA,EAAAA,cACxB,SAAC9U,EAAIqF,GAAL,OAAe+tC,EAAS,CAAE3nC,KAAM6mC,EAAAA,QAAAA,kBAA2BtyC,GAAAA,EAAIqF,MAAAA,MAC/D,CAAC+tC,IAGGM,GAAcF,EAAAA,EAAAA,cAAajC,GAE3BP,GAAgC2C,EAAAA,EAAAA,gBACpCT,IAAWlC,8BACX,CAAEO,SAAUmC,MAGRxC,GAAoCyC,EAAAA,EAAAA,gBACxCT,IAAWhC,kCACX,CAAEK,SAAUmC,MAGdlzC,OAAOM,OAAOywC,EAAU,CACtBzG,iBAAAA,EACAkH,kBAAAA,EACAI,sBAAAA,EACAV,kBAAAA,EACAK,sBAAAA,EACAf,8BAAAA,EACAE,kCAAAA,EACAiB,0BAAAA,IAIJ,SAASjH,EACPO,EADF,GAGE,IADE8F,EACF,EADEA,SAEF9F,EAAIiG,kBAAoB,SAACnxB,GAAD,OAASgxB,EAASG,kBAAkBjG,EAAIzrC,GAAIugB,IAEpEkrB,EAAIqF,2BAA4B6C,EAAAA,EAAAA,gBAC9BpC,EAAS2B,WAAWpC,0BACpB,CAAES,SAAAA,EAAU9F,IAAAA,IAIhB,SAAS6H,EACP7H,EACAyG,EACAW,GAEA,GAAIX,EAAezG,EAAIzrC,IACrB,OAAO,EAGT,IAAM4zC,EAAUf,EAAWpH,GAE3B,GAAImI,GAAWA,EAAQzyC,OAAQ,CAC7B,IAAI0yC,GAAsB,EACtBC,GAAe,EAenB,OAbAF,EAAQr6B,SAAQ,SAACw6B,GAEXD,IAAiBD,IAIjBP,EAAiBS,EAAQ7B,EAAgBW,GAC3CiB,GAAe,EAEfD,GAAsB,QAItBA,KAIGC,GAAe,KAGxB,OAAO,EAGT,SAASrC,EAA8ChG,GACrD,OAAQA,EAAIC,SAAShiC,SA9bvB4oC,EAAAA,QAAAA,kBAA4B,oBAC5BA,EAAAA,QAAAA,sBAAgC,wBAChCA,EAAAA,QAAAA,kBAA4B,oBAC5BA,EAAAA,QAAAA,0BAAoC,4BAiCpC3H,EAAawB,WAvCM,gB,m4DCZnB,IAAM6H,GAAuBh1B,EAAAA,EAAAA,eAEnB,MAEH,SAASi1B,IACd,IAAMl1B,EAAUm1B,IAEVh1B,GAAUC,EAAAA,EAAAA,YAAWJ,GAE3B,GAAgB,OAAZG,EACF,MAAM,IAAI7e,MAAM,8CAGlB,OAAO6e,EASF,SAASi1B,EAAT,GAIc,IAHnBnlC,EAGmB,EAHnBA,SACAolC,EAEmB,EAFnBA,SACA5L,EACmB,EADnBA,WAEMzpB,EAAUm1B,IAEhB,KAA8B50B,EAAAA,EAAAA,GAkC5B,kCAjCWkpB,GACX4L,GAFF,GAAOj0B,EAAP,KAAgBk0B,EAAhB,KAKA,KAAqCxpC,EAAAA,EAAAA,UAASsV,GAA9C,GAAOna,EAAP,KAAiBsuC,EAAjB,KAEM7qC,GAAeqL,EAAAA,EAAAA,cACnB,SAAC4f,GACC4f,GAAiB,SAACtuC,GAChB,IAAMuuC,EACJ7f,aAAoB8f,SAChB9f,EAAS1uB,GADb,OAESA,GAAa0uB,GAIxB,OAFA2f,EAAWE,GAEJA,OAGX,CAACF,IAGGI,GAAej0B,EAAAA,EAAAA,UACnB,iBAAO,CACLxa,SAAAA,EACAsuC,iBAAkB7qC,KAEpB,CAACzD,EAAUyD,IAGb,OAAO,SAACsV,EAAQQ,SAAT,CAAkBla,MAAOovC,EAAzB,SAAwCzlC,IAOjD,SAASklC,IACP,OAAOF,I,mHChFHA,GAAuBh1B,EAAAA,EAAAA,eAEnB,MAEH,SAASi1B,IACd,IAAMl1B,EAAUm1B,IAEVh1B,GAAUC,EAAAA,EAAAA,YAAWJ,GAE3B,GAAgB,OAAZG,EACF,MAAM,IAAI7e,MAAM,8CAGlB,OAAO6e,EAQF,SAASi1B,EAAT,GAGc,IAFnBnlC,EAEmB,EAFnBA,SACAhJ,EACmB,EADnBA,SAEM+Y,EAAUm1B,IAEVO,GAAej0B,EAAAA,EAAAA,UACnB,iBAAO,CACLxa,SAAAA,KAEF,CAACA,IAGH,OAAO,SAAC+Y,EAAQQ,SAAT,CAAkBla,MAAOovC,EAAzB,SAAwCzlC,IAGjD,SAASklC,IACP,OAAOF,I,iICvBF,SAASU,EAAT,GAOM,IANXrvC,EAMW,EANXA,MACAyD,EAKW,EALXA,SACA4H,EAIW,EAJXA,KACArI,EAGW,EAHXA,QACAqB,EAEW,EAFXA,SACAirC,EACW,EADXA,SAEA,OACE,SAACnO,EAAA,EAAD,CAAa91B,KAAMA,EAAM/N,UC7BL,mFD6BpB,SACG0F,EAAQxI,KAAI,SAACiK,GAAD,OACX,SAAC8qC,EAAD,CAEElU,SAAUr7B,IAAUyE,EAAOzE,MAC3ByD,SAAQ,8GAAE,kBAAMA,EAASgB,EAAOzE,UAChCqE,SAAUA,EACVirC,SAAUA,EALZ,SAOG7qC,EAAOxB,OAASwB,EAAOzE,MAAME,YANzBuE,EAAOzE,YAoBtB,SAASuvC,EAAT,GAMuC,IALrClU,EAKqC,EALrCA,SACA1xB,EAIqC,EAJrCA,SACAlG,EAGqC,EAHrCA,SACAY,EAEqC,EAFrCA,SACAirC,EACqC,EADrCA,SAEA,OACE,mBACEhyC,WAAW6L,EAAAA,EAAAA,GAAK,kBAAmB,CACjCmyB,OAAQD,EACRh3B,SAAUirC,GAAYjrC,IAH1B,UAMGsF,GACD,kBACEvD,KAAK,QACL2rB,QAASsJ,EACT53B,SAAUA,EACVY,SAAUA,EACVirC,SAAUA,S,g5BErDX,IAAMlE,GAAWoE,EAAAA,EAAAA,aACtB,WAEEC,GACG,IAFDjD,EAEC,EAFDA,cAAejiC,EAEd,EAFcA,MAAOtH,EAErB,EAFqBA,MAAOtI,EAE5B,EAF4BA,GAAIo3B,EAEhC,EAFgCA,QAAStuB,EAEzC,EAFyCA,SAAanH,E,kXAEtD,MACGozC,GAAaC,EAAAA,EAAAA,QAAyB,MACxCC,EAAcH,EAelB,OAdKA,IACHG,EAAcF,IAGhB9pC,EAAAA,EAAAA,YAAU,WACY,OAAhBgqC,GAAgD,OAAxBA,EAAYpX,cAIX,IAAlBgU,IACToD,EAAYpX,QAAQgU,cAAgBA,KAErC,CAACoD,EAAapD,KAGf,iBAAKlvC,UAAU,cAAciN,MAAOA,GAAStH,EAA7C,WACE,oBACEtI,GAAIA,EACJyL,KAAK,WACLqpC,IAAKG,EACLnsC,SAAUA,EACVsuB,QAASA,GAELz1B,KAEN,kBAAO01B,QAASr3B,EAAhB,SAAqBsI,W,2HCpCtB,SAAS4sC,EAAT,GAOG,IANRpsC,EAMQ,EANRA,SACAzD,EAKQ,EALRA,MACA8rB,EAIQ,EAJRA,OAIQ,IAHRvhB,MAAAA,OAGQ,MAHA,gBAGA,MAFR1F,SAAAA,OAEQ,SADRX,EACQ,EADRA,QAEM4rC,GAAUC,EAAAA,EAAAA,aAEhB,OACE,iBAAKzyC,UAAU,oCAAf,WACE,kBACE3C,GAAIuJ,EACJurC,IAAKK,EACL1pC,KAAK,OACL0lB,OAAQA,EACRjnB,SAAUA,EACVvH,UCjCoB,qFDkCpBmG,SAwBN,SAAuBusC,GACjBA,EAAMr0C,QAAUq0C,EAAMr0C,OAAOs0C,OAASD,EAAMr0C,OAAOs0C,MAAMn0C,OAAS,GACpE2H,EAASusC,EAAMr0C,OAAOs0C,MAAM,KAzB1B,aAAW,gBAEb,SAAC,KAAD,CACE5kC,KAAK,QACLC,MAAM,UACNC,QAYN,WACMukC,GAAWA,EAAQtX,SACrBsX,EAAQtX,QAAQ0X,SAbd5yC,UCzCsH,sFDqCxH,SAMGiN,KAGH,iBAAMjN,UAAU,kBAAhB,SACG0C,EAAQA,EAAMG,MAAO,SAAC0N,EAAA,EAAD,CAAMF,KAAK,WAAWG,SAAO,EAACwpB,KAAK,kB,+NE/CjE,K,UCqBO,SAASrpB,EAAT,GASsB,IAR3B/J,EAQ2B,EAR3BA,QACAjB,EAO2B,EAP3BA,MAO2B,IAN3BoI,KAAAA,OAM2B,MANpB,QAMoB,MAL3BhI,QAAAA,OAK2B,MALjB,GAKiB,EAJ3BsG,EAI2B,EAJ3BA,SACAuB,EAG2B,EAH3BA,OACAqsB,EAE2B,EAF3BA,QAE2B,IAD3B1yB,SAAAA,OAC2B,SAC3B,OACE,iCACE,iBAAKvH,WAAW6L,EAAAA,EAAAA,GAAK,aAAc8wB,EAAAA,UAAkB1C,GAArD,WACE,mBACEvF,QAAS9tB,EACT5G,WAAW6L,EAAAA,EAAAA,GAAKgnC,EAAe9kC,GAAO,gBAAiB,aAFzD,UAIGpI,EAEA4B,IAAY,iBAAMvH,UAAU,cAAhB,eAEZ+F,IAAW,SAACgG,EAAA,EAAD,CAASC,QAASjG,QAGhC,gBAAK/F,UAAW8yC,EAAkB/kC,GAAlC,SAA0C1B,OAE3CuB,IACC,gBAAK5N,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACyS,EAAA,EAAD,UAAY7E,WAQxB,SAASilC,EAAe9kC,GACtB,OAAQA,GACN,IAAK,QACH,MAAO,oBACT,IAAK,SACH,MAAO,oBACT,QACE,MAAO,qBAIb,SAAS+kC,EAAkB/kC,GACzB,OAAQA,GACN,IAAK,QACH,MAAO,oBACT,IAAK,SACH,MAAO,oBACT,QACE,MAAO,wB,4FCzEN,SAAS0E,EAAT,GAA6D,IAAxCpG,EAAwC,EAAxCA,SAC1B,OACE,eAAGrM,UAAU,mCAAb,WACE,SAAC,IAAD,CAAMqQ,KAAK,iBAAiBrQ,UAAU,eAAewQ,SAAO,KAC5D,iBAAMxQ,UAAU,aAAhB,SAA8BqM,S,mTCC7B,SAAS0mC,EAAT,GAIsB,I,IAH3B9lC,EAG2B,EAH3BA,MACAZ,EAE2B,EAF3BA,SAE2B,IAD3B2mC,WAAAA,OAC2B,SAC3B,G,GAAoC9qC,EAAAA,EAAAA,WAAU8qC,G,EAA9C,E,8zBAAO5N,EAAP,KAAmB6N,EAAnB,KAEA,OACE,iCACE,UAAC,IAAD,CAAkBve,QAASse,EAAa,gBAAH,OAAmB/lC,GAAU,GAAlE,UACG+lC,IACC,mBACE31C,GAAE,uBAAkB4P,GACpBnE,KAAK,SACLmF,QAAS,kBAAMglC,GAAe7N,IAC9BplC,UAAU,2EAJZ,UAME,cACEA,UAAS,sBAAiBolC,EAAa,OAAS,SAChD,cAAY,WAKjBn4B,KAGFm4B,GAAc/4B,O,qKC9Bd,SAAS6mC,EAAT,GAGsB,IAF3B7mC,EAE2B,EAF3BA,SACAqoB,EAC2B,EAD3BA,QAEA,OAAIA,GAEA,kBACEA,QAASA,EACT10B,UAAU,8CAFZ,SAIGqM,KAIA,gBAAKrM,UAAU,+BAAf,SAA+CqM,M,q3BCRjD,SAAS8mC,EAAT,GAIgD,IAHrDztC,EAGqD,EAHrDA,QACA1F,EAEqD,EAFrDA,UACGhB,E,kXACkD,MACrD,OACE,yBAEMA,GAFN,IAGEgB,WAAW6L,EAAAA,EAAAA,GAAK,eAAgB7L,GAHlC,SAKG0F,EAAQxI,KAAI,SAACk2C,GAAD,OACX,mBAAQ1wC,MAAO0wC,EAAK1wC,MAApB,SACG0wC,EAAKztC,OADwBytC,EAAK1wC,e,23BCrBtC,SAASsqB,EAAT,GAGmC,IAFxChtB,EAEwC,EAFxCA,UACGhB,E,kXACqC,MACxC,OACE,wBAEMA,GAFN,IAGEgB,WAAW6L,EAAAA,EAAAA,GAAK,eAAgB7L,M,kICRhCoc,GAAUC,EAAAA,EAAAA,eAA8B,MAIvC,SAASg3B,IAGd,GAAe,OAFC72B,EAAAA,EAAAA,YAAWJ,GAGzB,MAAM,IAAI1e,MAAM,2CAuBpB,SAASimC,EAAU51B,GACjB,OAAQA,GACN,IAAK,QACH,MAAO,iBACT,IAAK,QACH,MAAO,iBACT,QACE,MAAO,IC5Bb,IAAMulC,EDOC,YAIsB,IAH3BjnC,EAG2B,EAH3BA,SACA0B,EAE2B,EAF3BA,KACA/N,EAC2B,EAD3BA,UAEA,OACE,SAACoc,EAAQQ,SAAT,CAAkBla,OAAK,EAAvB,UACE,gBAAK1C,WAAW6L,EAAAA,EAAAA,GAAK,cAAe83B,EAAU51B,GAAO/N,GAArD,SACGqM,OCZTinC,EAAWC,MCZJ,YAAmE,IAAxClnC,EAAwC,EAAxCA,SAGhC,OAFAgnC,KAEO,iBAAMrzC,UAAU,oBAAhB,SAAqCqM,KDU9CinC,EAAWE,cEbJ,YAEwB,IAD7BnnC,EAC6B,EAD7BA,SAIA,OAFAgnC,KAEO,iBAAMrzC,UAAU,kBAAhB,SAAmCqM,KFS5CinC,EAAWtmB,MAAQA,EAAAA,G,2RGjBnB,GAAgB,MAAQ,yEAAyE,MAAQ,yEAAyE,SAAW,6EAA6E,SAAW,6EAA6E,YAAc,gFAAgF,YAAc,iF,ssCC4Dvc,SAASymB,EAAT,GAgBM,IAfX9tC,EAeW,EAfXA,MACAjD,EAcW,EAdXA,MACAyD,EAaW,EAbXA,SAaW,IAZXutC,YAAAA,OAYW,MAZGC,EAYH,MAXXC,WAAAA,OAWW,MAXEC,EAWF,EAVLC,EAUK,EAVXV,KACArtC,EASW,EATXA,QASW,IARXguC,SAAAA,OAQW,MARA,WAQA,MAPXC,cAAAA,OAOW,MAPK,SAACZ,EAASlU,GAAV,OAA4BA,GAOjC,EANX+U,EAMW,EANXA,QACArmC,EAKW,EALXA,OACAsmC,EAIW,EAJXA,QAIW,IAHXC,kBAAAA,OAGW,SAFXptC,EAEW,EAFXA,SACAirC,EACW,EADXA,SAEA,OACE,iBAAKhyC,WAAW6L,EAAAA,EAAAA,GAAK,aAAc8wB,EAAAA,MAAnC,WACE,iBAAK38B,WAAW6L,EAAAA,EAAAA,GAAK,YAAa8wB,EAAAA,QAAlC,WACE,iBAAK38B,WAAW6L,EAAAA,EAAAA,GAAK,0BAA2B8wB,EAAAA,OAAhD,UACGh3B,EACAI,IAAW,SAACgG,EAAA,EAAD,CAASC,QAASjG,SAE7BouC,GAAqBnC,KACtB,SAAC,KAAD,CACErsC,MAAOouC,EACP/zC,UAAU,aACViO,QAqHV,WACE,I,EAAMmmC,EAAUV,IAChBvtC,EAAS,GAAD,O,+CAAKzD,I,gkBAAL,CAAY0xC,IAAU,CAAEtrC,KAAM,SAAUsqC,KAAMgB,KAtH9CrtC,SAAUA,OAKfmtC,IACC,gBAAKl0C,UAAU,iBAAf,UACE,SAACyiC,EAAA,EAAD,CAASz0B,MAAM,OAAf,SAAuBkmC,OAI3B,gBAAKl0C,WAAW6L,EAAAA,EAAAA,GAAK,YAAa8wB,EAAAA,MAAc,aAAhD,SACGj6B,EAAMxF,KAAI,SAACk2C,EAAMlU,GAChB,IAAMxgC,EAAMs1C,EAAcZ,EAAMlU,GAC1BlyB,EAA0B,WAAlB,EAAOY,GAAsBA,EAAOsxB,QAAStuB,EAE3D,OACE,iBAEE5Q,WAAW6L,EAAAA,EAAAA,GACT8wB,EAAAA,SADa,KAEVA,EAAAA,WAAoB3vB,GACvB,mBALJ,UAQG8mC,GACC,SAACA,EAAD,CACEV,KAAMA,EACNjtC,SAAU,SAACzD,GAAD,OAAc2xC,EAAiB31C,EAAKgE,IAC9CsK,MAAOA,EACPjG,SAAUA,EACVirC,SAAUA,IAGZ4B,EACER,GACA,SAAC1wC,GAAD,OAAc2xC,EAAiB31C,EAAKgE,KACpCsK,IAGJ,iBAAKhN,WAAW6L,EAAAA,EAAAA,GAAK8wB,EAAAA,YAAoB,eAAzC,WACIqV,GAAYiC,IACZ,iCACE,SAAC,KAAD,CACElmC,KAAK,SACLhH,SAAUA,GAAsB,IAAVm4B,EACtBjxB,QAAS,kBAkC7B,SAAsBixB,GAChBA,GAAS,GAGboV,EAAWpV,EAAOA,EAAQ,GAtCOqV,CAAarV,IAC5Bl/B,UAAU,gCAJZ,UAME,SAACuQ,EAAA,EAAD,CAAMF,KAAK,WAAWG,SAAO,OAE/B,SAAC,KAAD,CACEzC,KAAK,SACLjF,KAAK,SACL/B,SAAUA,GAAYm4B,IAAUx8B,EAAMlE,OAAS,EAC/CyP,QAAS,kBAgC7B,SAAwBixB,GAClBA,GAASx8B,EAAMlE,OAAS,GAG5B81C,EAAWpV,EAAOA,EAAQ,GApCOsV,CAAetV,IAC9Bl/B,UAAU,gCALZ,UAOE,SAACuQ,EAAA,EAAD,CAAMF,KAAK,aAAaG,SAAO,UAInCwhC,IACA,SAAC,KAAD,CACEhkC,MAAM,cACND,KAAK,SACLE,QAAS,kBAwC3B,SAA0BvP,EAAU00C,GAClCjtC,EACEzD,EAAM2O,QAAO,SAAC+hC,EAAMlU,GAElB,OADgB8U,EAAcZ,EAAMlU,KACjBxgC,KAErB,CAAEoK,KAAM,SAAUsqC,KAAAA,IA9CWqB,CAAiB/1C,EAAK00C,IACrCrsC,SAAUA,EAJZ,UAME,SAACwJ,EAAA,EAAD,CAAMF,KAAK,UAAUG,SAAO,WAnD7B9R,WA4EjB,SAAS41C,EAAWrK,EAAc3/B,GAC3B2pC,GAIL9tC,EC7LG,SAAsBmD,EAAiB2gC,EAAc3/B,GAC1D,IAAKoqC,EAAgBprC,EAAO2gC,KAAUyK,EAAgBprC,EAAOgB,GAC3D,MAAM,IAAI5M,MAAM,0BAGlB,IAAM01C,EAAO9pC,EAAM2gC,GACXzrC,EAAW8K,EAAX9K,OAEFg+B,EAAOyN,EAAO3/B,EAEpB,GAAIkyB,EAAO,EAET,kBACKlzB,EAAMf,MAAM,EAAG+B,IADpB,CAEE8oC,GAFF,EAGK9pC,EAAMf,MAAM+B,EAAI2/B,IAHrB,EAIK3gC,EAAMf,MAAM0hC,EAAO,EAAGzrC,KAI7B,GAAIg+B,EAAO,EAAG,CAEZ,IAAMmY,EAAcrqC,EAAK,EACzB,kBACKhB,EAAMf,MAAM,EAAG0hC,IADpB,EAEK3gC,EAAMf,MAAM0hC,EAAO,EAAG0K,IAF3B,CAGEvB,GAHF,EAIK9pC,EAAMf,MAAMosC,EAAan2C,KAIhC,SAAW8K,GAEX,SAASorC,EAAmBprC,EAAiB41B,GAC3C,OAAOA,GAAS,GAAKA,GAAS51B,EAAM9K,QD2J3Bo2C,CAAUlyC,EAAOunC,EAAM3/B,GAAK,CACnCxB,KAAM,OACN+rC,UAAW5K,EACX3/B,GAAAA,IAmBJ,SAAS+pC,EAAiB31C,EAAUo2C,GAClC,IAAMC,EAAWryC,EAAMxF,KAAI,SAACk2C,EAAMlU,GAEhC,OADgB8U,EAAcZ,EAAMlU,KACpBxgC,EACP00C,EAEF0B,KAET3uC,EAAS4uC,EAAU,CACjBjsC,KAAM,SACNsqC,KAAM0B,KAKZ,SAASnB,IACP,MAAO,CAAEjxC,MAAO,IAGlB,SAASsyC,EAAT,GAM2B,IALzB5B,EAKyB,EALzBA,KACAjtC,EAIyB,EAJzBA,SACA6G,EAGyB,EAHzBA,MACAjG,EAEyB,EAFzBA,SACAirC,EACyB,EADzBA,SAEA,OACE,iCACE,SAAChlB,EAAAoU,EAAD,CACE1+B,MAAO0wC,EAAK1wC,MACZyD,SAAQ,+GAAE,SAAC1I,GAAD,OAAO0I,EAAS,CAAEzD,MAAOjF,EAAEY,OAAOqE,WAC5C1C,UAAW28B,EAAAA,YACX51B,SAAUA,EACVirC,SAAUA,IAEXhlC,IAAS,SAACyF,EAAA,EAAD,UAAYzF,OAK5B,SAAS6mC,EACPT,EACAjtC,EACA6G,GAEA,OAAO,SAACgoC,EAAD,CAAa5B,KAAMA,EAAMjtC,SAAUA,EAAU6G,MAAOA,M,8LE/P7D,EAAuB,gE,qlCCOhB,SAASmmC,EAAT,GAQmD,IAHxDnzC,EAGwD,EAHxDA,UACGhB,EAEqD,OACxD,OACE,SAAC,KAAD,GACEgB,WAAW6L,EAAAA,EAAAA,GAAK8wB,EAAa38B,GAC7Bi1C,gBAAgB,YAEZj2C,IAKH,SAASk2C,EAAT,GAI4D,IAA/Dl1C,EAA+D,EAA/DA,UAAchB,EAAiD,OACjE,OACE,SAAC,IAAD,GACEgB,WAAW6L,EAAAA,EAAAA,GAAK8wB,EAAa38B,GAC7Bi1C,gBAAgB,YAEZj2C,M,6ICdH,SAASm2C,EAAT,GASG,IARRtyC,EAQQ,EARRA,KACA4xB,EAOQ,EAPRA,QACAp3B,EAMQ,EANRA,GACA0J,EAKQ,EALRA,SACAgK,EAIQ,EAJRA,OACA5K,EAGQ,EAHRA,SACAqU,EAEQ,EAFRA,UACAxa,EACQ,EADRA,UAEMoU,GAAcqG,EAAAA,EAAAA,IAAcD,GAElC,OACE,iCACE,mBACExa,WAAW6L,EAAAA,EAAAA,GAAK,SAAU7L,ECrCX,uEDqCmC,CAChD60B,SAAUzgB,EACV0gB,QAAS1gB,IAHb,WAME,kBACEtL,KAAK,WACLjG,KAAMA,EACNxF,GAAIA,EACJo3B,QAASA,EACT1tB,SAAUA,GAAYqN,EACtBjO,SAAQ,+GAAE,gBAAasuB,EAAb,EAAGp2B,OAAUo2B,QAAb,OAA6BtuB,EAASsuB,SAElD,iBAAMz0B,UAAU,mCAAmC,UAAS+Q,OAE7DqD,IAAe,SAACif,EAAA,EAAD,CAAoB7Y,UAAWA,S,2HE7B9C,SAAS46B,EAAT,GAYG,IAXRrvC,EAWQ,EAXRA,QACA0uB,EAUQ,EAVRA,QACA9uB,EASQ,EATRA,MACA9C,EAQQ,EARRA,KACAwyC,EAOQ,EAPRA,WACAC,EAMQ,EANRA,WACAvkC,EAKQ,EALRA,OACAhK,EAIQ,EAJRA,SACAZ,EAGQ,EAHRA,SACAqU,EAEQ,EAFRA,UACA+6B,EACQ,EADRA,YAEMC,EAAa3yC,EAAO,UAAH,OAAaA,GAAS,GAE7C,OACE,mBAAO7C,WAAW6L,EAAAA,EAAAA,GCvCC,4EDuCiBypC,GAApC,WACE,kBACEt1C,WAAW6L,EAAAA,EAAAA,GACT,sCC1CiG,6ED4CjGwpC,GAJJ,UAOG1vC,EACAI,IAAW,SAACgG,EAAA,EAAD,CAASC,QAASjG,QAEhC,SAACovC,EAAA,EAAD,CACEn1C,WAAW6L,EAAAA,EAAAA,GAAK,cAAe0pC,GAC/B1yC,KAAM2yC,EACNn4C,GAAIm4C,EACJ/gB,QAASA,EACT1tB,SAAUA,EACVZ,SAAUA,EACVqU,UAAWA,EACXzJ,OAAQA,S,mEEvDT,SAAS0kC,EACdx+B,EACA9I,GAEA,GAAIA,IAAc8I,EAChB,MAAO,wBAET,OAAQA,EAAOe,QACb,IAAK,WACH,MCZka,+IDapa,IAAK,UACH,MCdyQ,8IDe3Q,IAAK,aACH,MChB8G,iJDiBhH,QACE,MClB2jB,iJ,8FCOjkB,GAAuCqyB,E,QAAAA,KAA/BC,EAAR,EAAQA,YAAaC,EAArB,EAAqBA,e,kFCHRmL,EAAmC,CAC9CnQ,OAAQ,UACRoQ,SAAU,UACVt4C,GAAI,UACJu4C,KAAM,gBAAGlzC,EAAH,EAAGA,MAAH,OAAeyZ,EAAAA,EAAAA,sBAAqBzZ,IAC1C2qC,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,Q,mECRT,IAAMC,EAAgC,CAC3CxQ,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIkN,UAAY,KACnC34C,GAAI,OACJgwC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,Q,oECPT,IAAMI,EAA8B,CACzC3Q,OAAQ,aACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIqN,IAAM,KAC7B94C,GAAI,KACJgwC,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,Q,iJCEHjzC,EAAgC,CAC3C0iC,OAAQ,OACRoQ,SAAU,SAAC7M,GACT,IAAMjmC,EAAOimC,EAAIsN,MAAM,GACvB,OAAOvzC,EAAKgC,UAAU,EAAGhC,EAAKrE,SAEhCnB,GAAI,OACJu4C,KAOK,YAGwB,IAFtB/yC,EAEsB,EAF7BH,MACiB2zC,EACY,EAD7BvN,IAAOC,SAEDuN,GAAY1W,EAAAA,EAAAA,SAAQ,aAAc,CACtCviC,GAAIg5C,EAAU/qC,GACdirC,YAAaF,EAAU/qC,GACvBkrC,SAAUH,EAAUL,WAIhBxrC,GADe8mC,EAAAA,EAAAA,KAAbjuC,SACkBozC,sBAElBh9B,GAAgB8wB,EAAAA,EAAAA,KAAhB9wB,YAEJi9B,EAAY7zC,EAKhB,OAJI2H,EAAW,IACbksC,EAAY,IAAW7zC,EAAM,CAAErE,OAAQgM,MAGrCmsC,EAAAA,EAAAA,mBAAkBl9B,IACb,0BAAOi9B,KAId,cAAG5rB,KAAMwrB,EAAUxrB,KAAM7c,QAASqoC,EAAUroC,QAAShB,MAAOpK,EAA5D,SACG6zC,KAhCLrJ,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,W,oIChBCW,EAAiC,CAC5CrR,OAAQ,kBACRoQ,SAAU,QACVt4C,GAAI,QACJu4C,KAWF,YAA4C,IAAhBgB,EAAgB,EAAvBl0C,MACX+W,GAAgB8wB,EAAAA,EAAAA,KAAhB9wB,YAER,GAAqB,IAAjBm9B,EAAMp4C,OACR,MAAO,IAGT,IAAmBq4C,EAAcp9B,EAAzBq9B,UAER,OAAO,IAASF,EAAO,UAAU15C,KAAI,SAAC65C,GAAD,OACnC,eAEE/2C,UAAU,YACV8qB,KAAI,iBAAY+rB,GAAaE,EAAKhB,KAA9B,YAAsCgB,EAAKpjC,QAC/CtV,OAAO,SACP0sB,IAAI,aALN,WAOE,cAAG/qB,UAAU,0BAA0B,cAAY,SAClD+2C,EAAKpjC,OARR,IAQiBojC,EAAKC,UARtB,UACUD,EAAKhB,KADf,YACuBgB,EAAKpjC,aArB9BsjC,eAAe,EACf5J,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,Q,mICLHhnC,EAAiC,CAC5Cy2B,OAAQ,QACRoQ,SAAU,SACVt4C,GAAI,QACJu4C,KAOF,YAEgD,IADvC3+B,EACuC,EAD9CvU,MAEMw0C,EAAiB,CACrBC,EAAAA,EAAAA,SACAA,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,WACAjzC,SAAS+S,GAELmgC,EAaN,WACE,OAAQngC,GACN,KAAKkgC,EAAAA,EAAAA,OACL,KAAKA,EAAAA,EAAAA,SACL,KAAKA,EAAAA,EAAAA,UACH,MAAO,UACT,KAAKA,EAAAA,EAAAA,QACH,MAAO,OACT,KAAKA,EAAAA,EAAAA,QACL,KAAKA,EAAAA,EAAAA,KACL,KAAKA,EAAAA,EAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,EAAAA,QACL,KAAKA,EAAAA,EAAAA,QACL,QACE,MAAO,WA5BWE,GAExB,OACE,iBACEr3C,WAAW6L,EAAAA,EAAAA,GAAK,QAAD,gBAAmBurC,GAAmB,CACnDE,YAAaJ,IAEfjqC,MAAOiqC,EAAiB,oCAAsC,GAJhE,SAMGjgC,KAxBLg/B,SAAU,SACV5kC,OAAQ,WACRykC,OAAQlM,EAAAA,EACRiM,SAAS,I,o3BCLJ,IAAM0B,EAAkB,GAExB,SAASC,EAAY3R,GAC1B,OAAO4R,EAAAA,EAAAA,KAAAA,EACLC,EAAAA,EAAAA,KACE,SAAC95B,GAAD,oBCMC,SACLA,GAGA,MAAO,CACLspB,OAAQ,CAAE7pC,GAFW,uDADP,OAGeqqC,MAAM,GACnCF,UAAW,SAACnqC,EAAYqqC,GAAb,OAA+B9pB,EAAI,CAAEspB,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,ODXvDiQ,CAAiB/5B,ICTrB,SACLA,GAEA,MAAO,CACLqpB,SAAU,GACVU,YAAa,SAACV,GAAD,OAAsBrpB,EAAI,CAAEqpB,SAAAA,MDKlC2Q,CAAmBh6B,ICmBvB,SACLA,GAEA,MAAO,CACLi6B,cAAe,GACfC,iBAAkB,SAACD,GAAD,OAA6Bj6B,EAAI,CAAEi6B,cAAAA,MDvB9CE,CAAsBn6B,ICgC1B,SACLA,GAEA,MAAO,CACLo6B,gBAAiB,EACjBC,mBAAoB,SAACD,GAAD,OAA6Bp6B,EAAI,CAAEo6B,gBAAAA,MDpChDE,CAAoBt6B,IAJzB,IAKE64B,sBAAuBc,EACvBY,yBANF,SAM2B1B,GACvB74B,EAAI,CACF64B,sBAAAA,KAIJ2B,mBAAoB,GACpBC,sBAAuB,SAACD,GAAD,OACrBx6B,EAAI,CAAEw6B,mBAAAA,SAEV,CACEv1C,MAAM0a,EAAAA,EAAAA,IAAWsoB,Q,+nBE5BlB,SAAeyS,EAAtB,oC,iDAAO,WACLxzC,EACAzH,GAFK,gGAIC0H,EAAAA,GAAAA,KACJwzC,EAAWzzC,EAAezH,EAAI,SAC9B,GACA,CAAEm7C,kBAAmBC,EAAAA,iBAPlB,4C,sBAWA,SAAeC,EAAtB,oC,iDAAO,WACLp7B,EACAjgB,GAFK,gGAIC0H,EAAAA,GAAAA,KAAiBwzC,EAAWj7B,EAAYjgB,EAAI,QAAS,IAJtD,4C,sBAOA,SAAes7C,EAAtB,oC,iDAAO,WACLr7B,EACAjgB,GAFK,gGAIC0H,EAAAA,GAAAA,KAAiBwzC,EAAWj7B,EAAYjgB,EAAI,WAAY,IAJzD,4C,sBAOA,SAAeu7C,EAAtB,oC,iDAAO,WACLt7B,EACAjgB,GAFK,gGAIC0H,EAAAA,GAAAA,KAAiBwzC,EAAWj7B,EAAYjgB,EAAI,QAAS,IAJtD,4C,sBAOA,SAAew7C,EAAtB,oC,iDAAO,WACLv7B,EACAjgB,GAFK,gGAIC0H,EAAAA,GAAAA,KAAiBwzC,EAAWj7B,EAAYjgB,EAAI,SAAU,IAJvD,4C,sBAOA,SAAey7C,EAAtB,oC,iDAAO,WACLx7B,EACAjgB,GAFK,gGAIC0H,EAAAA,GAAAA,KAAiBwzC,EAAWj7B,EAAYjgB,EAAI,WAAY,IAJzD,4C,sBAOA,SAAe07C,EAAtB,sC,iDAAO,WACLz7B,EACAjgB,EACAwF,GAHK,gGAKCkC,EAAAA,GAAAA,KACJwzC,EAAWj7B,EAAYjgB,EAAI,UAC3B,GACA,CAAEkN,OAAQ,CAAE1H,KAAAA,GAAQ21C,kBAAmBC,EAAAA,iBARpC,4C,sBAYA,SAAeO,EAAtB,sC,iDAAO,WACL17B,EACA+4B,EACA4C,GAHK,iHAMoBl0C,EAAAA,GAAAA,OACrBwzC,EAAWj7B,EAAY+4B,EAAU/qC,IACjC,CACEf,OAAQ,CAAEg2B,EAAG0Y,EAAgB,EAAI,EAAGC,OAAO,GAC3CV,kBAAmBC,EAAAA,iBAVpB,qBAMKj1C,EANL,EAMKA,QAQIA,EAAKwI,QAdd,sBAeK,IAAI2N,EAAAA,EAAenW,EAAKwI,SAf7B,6DAkBG,IAAI2N,EAAAA,EAAe,6BAAnB,MAlBH,0D,sBAsBA,SAAS4+B,EACdj7B,EACAjgB,EACAoG,GAEA,IAAI+B,EAAM,cAAH,OAAiB8X,EAAjB,sBAUP,OARIjgB,IACFmI,GAAO,IAAJ,OAAQnI,IAGToG,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,I,mCClGF,IAAK2xC,E,yCAAAA,GAAAA,EAAAA,OAAAA,SAAAA,EAAAA,QAAAA,UAAAA,EAAAA,QAAAA,UAAAA,EAAAA,QAAAA,UAAAA,EAAAA,UAAAA,YAAAA,EAAAA,SAAAA,WAAAA,EAAAA,QAAAA,UAAAA,EAAAA,KAAAA,OAAAA,EAAAA,OAAAA,S,CAAAA,IAAAA,EAAAA,M,44BCGL,SAASgC,EACd1jC,GACiB,kBACX7L,GACJ,UAAA6L,EAAS2jC,iBAAT,eAAoBC,kBACpB,IAAIlmC,EAAAA,EAAyBsC,MAAAA,GAA7B,UAA6BA,EAAU2jC,iBAAvC,aAA6B,EAAqBC,iBAC9C7C,GAAW,UAAA/gC,EAAS2jC,iBAAT,mBAAoBE,aAApB,eAA2BtD,WAAY,GAElDE,GACJ,UAAAr4C,OAAOuI,QAAOqP,MAAAA,GAAA,UAAAA,EAAU8jC,uBAAV,eAA2BC,WAAY,IAAI,UAAzD,eAA6DC,YAC7D,GAEIC,EAASjkC,EAASkkC,QAAU,GAC5BxtC,EACJutC,EAAO,+BACPA,EAAO,8BAEHziC,EA0BR,WAAwD,IAChDA,GADgD,uDAArB,IACPxS,cAE1B,OAAIwS,EAAO/S,SAASizC,EAAAA,EAAAA,QACXA,EAAAA,EAAAA,OAGLlgC,EAAO/S,SAASizC,EAAAA,EAAAA,MACXA,EAAAA,EAAAA,KAGLlgC,EAAO/S,SAASizC,EAAAA,EAAAA,SACXA,EAAAA,EAAAA,QAGLlgC,EAAO/S,SAASizC,EAAAA,EAAAA,SACXA,EAAAA,EAAAA,QAGLlgC,EAAO/S,SAASizC,EAAAA,EAAAA,QACXA,EAAAA,EAAAA,OAGLlgC,EAAO/S,SAAS,aACXizC,EAAAA,EAAAA,QAGLlgC,EAAO/S,SAAS,eACXizC,EAAAA,EAAAA,UAGLlgC,EAAO/S,SAAS,sBACXizC,EAAAA,EAAAA,SAGFA,EAAAA,EAAAA,QA7DQyC,CAAankC,EAASuC,QAE/B4+B,EAAQ,cACZnhC,EAASokC,aADG,aACZ,EAAgB38C,KACd,SAACosC,GAAD,OACEA,EAAEwQ,YAAc,CACd/D,KAAMzM,EAAE6M,GACRa,QAAS1N,EAAEyQ,YACXpmC,OAAQ21B,EAAEwQ,gBAKlB,cACKrkC,GADL,IAEE4jC,gBAAiBzvC,EACjBosC,SAAUQ,EACVL,GAAID,EACJ8D,UAAW7tC,EACX6L,OAAQf,EACR4iC,MAAOjD,EACPqD,WAAYxkC,EAASuC,OACrBkiC,KAAM,O,w7BCtCH,IAAMC,EAAY,CACvBC,KAAM,SAACt1C,GAAD,MAAkC,CAAC,SAAUA,IACnDkB,SAAU,SAAClB,GAAD,kBACJq1C,EAAUC,KAAKt1C,IADX,CAC2B,cACrCu1C,WAAY,SAACv1C,GAAD,kBACNq1C,EAAUn0C,SAASlB,IADb,CAC6B,gBACzCw1C,gBAAiB,SACfx1C,EACAyF,GAFe,kBAGR4vC,EAAUE,WAAWv1C,IAHb,CAG6ByF,KAC9C8rC,UAAW,SACTvxC,EACAyxC,GAFS,kBAGF4D,EAAUE,WAAWv1C,IAHnB,CAGmCyxC,MAWzC,SAASgE,EACdz1C,EACAyxC,GAEA,IAAI/wC,EAAM,GAAH,OARF,SAAgCV,GACrC,gBALK,SAAwBA,GAC7B,wBAAkBA,GAIR01C,CAAe11C,GAAzB,aAOa21C,CAAuB31C,GAA7B,eAMP,OAJIyxC,IACF/wC,GAAO,IAAJ,OAAQ+wC,IAGN/wC,I,4ICjCF,SAASk1C,EAAT,GAAgD,IAA1Bv0C,EAA0B,EAA1BA,SAAUzD,EAAgB,EAAhBA,MACrC,OACE,gBAAK1C,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC+xC,EAAA,EAAD,CACEhkC,KAAK,QACLrL,MAAOA,EACPyD,SAAQ,+GAAE,SAACw0C,GAAD,OAAYx0C,EAASw0C,MAC/Bj1C,QAAS,CACP,CACEhD,MAAO,QACPiD,OACE,iCACE,cAAG3F,UAAU,2BAA2B,cAAY,SADtD,YAMJ,CACE0C,MAAO,MACPiD,OACE,iCACE,cACE3F,UAAU,6BACV,cAAY,SAHhB,qB,mECTT,SAAS46C,EAAT,GAQG,IAPRx0C,EAOQ,EAPRA,OACAy0C,EAMQ,EANRA,QACAC,EAKQ,EALRA,OACAC,EAIQ,EAJRA,SACArhC,EAGQ,EAHRA,SAGQ,IAFRshC,cAAAA,OAEQ,aADRC,iBAAAA,OACQ,MADW,aACX,EACFC,GAAepkC,EAAAA,EAAAA,KAQrB,IANAxO,EAAAA,EAAAA,YAAU,WACJyyC,EAASv8C,OAAS,GAAKu8C,EAAS1tB,OAAM,SAACic,GAAD,OAAOA,EAAEjsC,KAAOqc,MACxDuhC,EAAiBF,EAAS,GAAG19C,MAE9B,CAACqc,EAAUuhC,EAAkBF,KAE3BG,EACH,OAAO,KAGT,IAAQ9jC,EAAgD8jC,EAAhD9jC,YAAaD,EAAmC+jC,EAAnC/jC,aAAcG,EAAqB4jC,EAArB5jC,iBAE7B5R,EAAUq1C,EAAS79C,KAAI,SAAC2tB,GAC5B,IAAMswB,EAAMtwB,EAAE5kB,QACZkR,EACA0jC,EACAz0C,GACC40C,GAAiB1jC,EAClBwjC,EACA1jC,GAGF,MAAO,CACL/Z,GAAIwtB,EAAExtB,GACNsI,MAAOklB,EAAEllB,MACT0G,UACE,iCACE,SAAC2oB,EAAA,EAAD,UAAOmmB,KACP,SAACrX,EAAA,EAAD,CAAYC,SAAUoX,EAAtB,yBAMR,OACE,gBAAKn7C,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC49B,EAAA,EAAD,CACEC,WAAYnkB,EACZhU,QAASA,EACTo4B,SAAU,SAACzgC,GAAD,OAAkB49C,EAAiB59C,U,oEC/DhD,SAAS+9C,IACd,OACEC,EAAAA,EAAAA,MADMj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAAeG,EAA/B,EAA+BA,OAG/B,OACE,iCACE,gBAAK5N,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,EAAA,EAAD,CACE3gB,QAASruB,EAAOk1C,YAChBn1C,SAAU,SAACzD,GACJA,GACH+K,EAAc,aAAc,IAE9BA,EAAc,cAAe/K,IAE/BiD,MAAM,+BACNI,QAAQ,sEAKbK,EAAOk1C,cACN,SAAC3qC,EAAA,EAAD,CACEhL,MAAM,cACNiB,QAAQ,oBACRgH,OAAQA,EAAO2tC,WAHjB,UAKE,SAAC,KAAD,CAAO14C,KAAK,aAAakqB,GAAIC,EAAAA,EAAO3vB,GAAG,2BCtB1C,SAASm+C,EAAT,GAGG,IAFRC,EAEQ,EAFRA,oBACAC,EACQ,EADRA,aAEA,GAAkCL,EAAAA,EAAAA,MAA1Bj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAEhB,OACE,iCACIiuC,IACA,iCACE,SAAC/qC,EAAA,EAAD,CACEhL,MAAM,oBACNI,QAAQ,4HACRa,QAAQ,0BAHV,UAKE,SAAComB,EAAAoU,EAAD,CACEt4B,KAAK,OACLjG,KAAK,kBACLH,MAAO0D,EAAOu1C,gBACdt+C,GAAG,0BACH8I,SAAU,SAAC1I,GAAD,OAAOgQ,EAAchQ,EAAEY,OAAOwE,KAAMpF,EAAEY,OAAOqE,aAG3D,gBAAK1C,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACyiC,EAAA,EAAD,CAASz0B,MAAM,OAAf,WACE,gDADF,kGASPytC,IAAuB,SAACL,EAAD,IAEvBK,IACC,gBAAKz7C,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,EAAA,EAAD,CACEzvC,MAAM,MACN0vC,WAAW,oBACX5gB,QAASruB,EAAOw1C,WAChBz1C,SAAU,SAACsuB,GAAD,OAAahnB,EAAc,aAAcgnB,WAM3D,SAAC9jB,EAAA,EAAD,CACEhL,MAAM,wBACNI,QAAQ,gHACRa,QAAQ,sBAHV,UAKE,SAAC,KAAD,CACE/D,KAAK,UACLkqB,GAAIC,EAAAA,EACJhc,YAAY,gBACZ3T,GAAG,2BAIP,gBAAK2C,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,EAAA,EAAD,CACE3gB,QAASruB,EAAOy1C,4BAChB11C,SAAU,SAACzD,GAAD,OACR+K,EAAc,8BAA+B/K,IAE/CiD,MAAM,0BACN0vC,WAAW,oBACXtvC,QAAQ,0I,6uBC7EpB,IAAM+1C,EAAoD,CACxDD,6BAA6B,EAC7BE,QAAS,GACTpB,GAAI,QACJjhC,SAAU,MACV6hC,WAAY,GACZD,aAAa,EACbM,YAAY,GAUP,SAASI,EAAT,GAKG,IAJRC,EAIQ,EAJRA,SACAlB,EAGQ,EAHRA,SACAU,EAEQ,EAFRA,oBACAT,EACQ,EADRA,cAEMkB,IAAmBnB,aAAoBhc,OAE7C,OACE,gBAAK/+B,UAAU,kBAAf,UACE,SAAC,KAAD,CACEmN,cAAe2uC,EACf/yC,iBAAkB,kBClCnB,SAA0B0yC,GAC/B,OAAOp0C,EAAAA,EAAAA,MAAS4B,MAAT,KACL4yC,6BAA6BM,EAAAA,EAAAA,MAC7BJ,SAAS5yC,EAAAA,EAAAA,OACLsyC,EHqCC,CACLF,YAAYpyC,EAAAA,EAAAA,MAASizC,KAAK,cAAe,CACvCC,IAAI,EACJthC,MAAM5R,EAAAA,EAAAA,MAAS5B,SAAS,uBAE1B+zC,aAAaa,EAAAA,EAAAA,OG1CsC,IAH9C,IAILP,YAAYO,EAAAA,EAAAA,MAAUG,SAAQ,MD6BFvzC,CAAiB0yC,IACzCnuC,SAAU,aAHZ,SAKG,gBAAGlH,EAAH,EAAGA,OAAQqH,EAAX,EAAWA,cAAX,OACC,iCACE,SAAC+tC,EAAD,CACEC,oBACEA,GAA2C,UAApBr1C,EAAOsT,SAEhCgiC,kBAA8B9qC,IAAhBqrC,EAAS5+C,MAEzB,iBAAK2C,UAAU,OAAf,UACGk8C,IACC,SAACxB,EAAD,CACEh4C,MAAO0D,EAAOu0C,GACdx0C,SAAU,SAACzD,GAAD,OAAW+K,EAAc,KAAM/K,OAG7C,SAACk4C,EAAD,CACEE,OAAQmB,EAAS5+C,GACjBw9C,QAASoB,EAASv9C,IAClB0H,OAAQA,EACR20C,SAAUmB,EAAiBnB,EAAS30C,EAAOu0C,KAAO,GAAKI,EACvDrhC,SAAUtT,EAAOsT,SACjBuhC,iBAAkB,SAACvhC,GAAD,OAChBjM,EAAc,WAAYiM,IAE5BshC,cAAeA,iB,0gCE5CxB,IAAMuB,EAA2C,CACtDC,SAAU,CACRn/C,GAAI,MACJsI,MAAO,aACPM,QAmMG,SACLkR,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IAAQykC,EAA0Dn4C,EAA1Dm4C,4BAA6BF,EAA6Bj4C,EAA7Bi4C,gBAAiBI,EAAYr4C,EAAZq4C,QAEhDW,GAAoBC,EAAAA,EAAAA,sBAAqBxlC,GAC3CylC,EAAiBb,EAAQ/wB,OACzByxB,IACFG,GAAkB,gBAEpB,IAAMC,EAAWlB,EAAe,8BACLA,EADK,UAE5B,GACEmB,GAAanB,GAAmBb,EAASA,EAAS,qBAClDiC,EAAalB,EAA8B,IAAM,IAEvD,gBAAUgB,EAAV,iDAA2DH,EAA3D,wDAA4HI,EAA5H,cAA2IjC,EAA3I,cAAwJkC,EAAxJ,cAAwK3lC,EAAxK,cAAyLwlC,EAAzL,OAtNAI,WAAY,CACV3/C,GAAI,QACJsI,MAAO,eACPM,QAyGG,SACLkR,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IAAQykC,EAA0Dn4C,EAA1Dm4C,4BAA6BF,EAA6Bj4C,EAA7Bi4C,gBAE/B5jC,EAAMklC,EAFsDv5C,EAAZq4C,QAExB,YACzBmB,EACDrC,EACAgB,EACCF,OAA2B/qC,EAATkqC,EACnB1jC,EACAqlC,IAN0B,CAQ5B,mDAGF,gBACEd,EAAkB,uBAAH,OAA0BA,EAA1B,UAAoD,GADrE,gMAUE5jC,EAVF,uWAiBkBZ,EAjBlB,QA5HAgmC,gBAAiB,CACf9/C,GAAI,aACJsI,MAAO,oBACPM,QA2BG,SACLkR,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IAAQykC,EAA0Dn4C,EAA1Dm4C,4BAA6BF,EAA6Bj4C,EAA7Bi4C,gBAE/B5jC,EAAMklC,EAFsDv5C,EAAZq4C,QAIpDmB,EACErC,EACAgB,EACCF,OAA2B/qC,EAATkqC,EACnB1jC,EACAqlC,IAIJ,gBACEd,EAAkB,uBAAH,OAA0BA,EAA1B,UAAoD,GADrE,uNASE5jC,EATF,oEAWkBZ,EAXlB,UA9CAimC,WAAY,CACV//C,GAAI,QACJsI,MAAO,QACPM,QAASo3C,GAEXC,aAAc,CACZjgD,GAAI,QACJsI,MAAO,eACPM,QAoIG,SACLkR,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IAAQykC,EAA0Dn4C,EAA1Dm4C,4BAA6BF,EAA6Bj4C,EAA7Bi4C,gBAE/B5jC,EAAMklC,EAFsDv5C,EAAZq4C,QAExB,YACzBmB,EACDrC,EACAgB,EACAF,EAAkB,yBAA2Bb,EAC7C1jC,EACAqlC,IAN0B,CAQ5B,mDAGF,gBACEd,EAAe,sCACoBA,EADpB,WAEX,GAHN,gMAYE5jC,EAZF,gWAkBkBZ,EAlBlB,QAvJAomC,iBAAkB,CAChBlgD,GAAI,aACJsI,MAAO,oBACPM,QAgDG,SACLkR,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IAAQykC,EAA0Dn4C,EAA1Dm4C,4BAA6BF,EAA6Bj4C,EAA7Bi4C,gBAE/B5jC,EAAMklC,EAFsDv5C,EAAZq4C,QAIpDmB,EACErC,EACAgB,EACAF,EAAkB,yBAA2Bb,EAC7C1jC,EACAqlC,IAIJ,gBACEd,EAAe,sCACoBA,EADpB,WAEX,GAHN,gTAUG5jC,EAVH,oEAYkBZ,EAZlB,WAjEF,SAAS8lC,EAAmBlB,EAAiByB,GAK3C,OAJaA,EAAYC,OACvB1B,EAAQzhB,MAAM,KAAKjpB,QAAO,SAACkpB,GAAD,OAAOA,EAAE/7B,OAAS,MAGlCtB,KAAI,SAACq9B,GAAD,mBAAaA,MAAKruB,KAAK,WAyLlC,SAASmxC,EACdlmC,EACA0jC,EACAn3C,EACA+4C,EACA3B,EACA1jC,GAEA,IACEykC,EAKEn4C,EALFm4C,4BACAF,EAIEj4C,EAJFi4C,gBACAI,EAGEr4C,EAHFq4C,QAHF,EAMIr4C,EAFF63C,WAAAA,OAJF,MAIe,GAJf,EAKEK,EACEl4C,EADFk4C,WAGIc,GAAoBC,EAAAA,EAAAA,sBAAqBxlC,GAC3CylC,EAAiBb,EAAQ/wB,OACzByxB,IACFG,GAAkB,gBAGpB,IAAMG,EAAalB,EAA8B,IAAM,IACjDgB,EAAWlB,EAAe,8BACLA,EADK,UAE5B,GACEmB,GAAanB,GAAmBb,EAASA,EAAS,qBAExD,gBAAU+B,EAAV,iDAA2DH,EAA3D,8DAAkInB,EAAlI,cAAkJuB,EAAlJ,cAAiKjC,EAAjK,cAA8KkC,EAA9K,cAA8LH,EAA9L,cAAkNxlC,EAAlN,cAAmOwkC,EAAnO,KAGF,SAASsB,EACPrC,EACA6C,GAIA,IAHA5C,EAGA,uDAHS,qBACT1jC,EAEA,uDAFc,GACdqlC,EACA,wDACA,OAAO,IAAU,CACf,SADe,kBAEJ3B,GAFI,mBAGHD,GAHG,6BAIO6C,EAAuB,EAAI,GACjDtmC,EAAc,gBAAH,OAAmBA,GAAnB,GACXqlC,EAAe,eAAiB,O,knDC3R7B,SAASkB,EAAqBC,GACnC,IAAM/pC,EAgBR,SAA0B+pC,GACxB,IAAKA,EACH,MAAO,GAGT,IACE,OAAOC,EAAAA,EAAAA,MAAeD,GACtB,MAAOngD,GACP,OAAO,MAxBQqgD,CAAiBF,GAElC,OAAK/pC,EAIEA,EACJxC,QAAO,yBAAEvI,EAAF,KAAQpG,EAAR,WAA4B,SAAToG,GAAmBpG,KAC7CxF,KAAI,kBAAgB,CACnB2F,KADG,UAEH8C,MAAO,GACPsC,aAAc,GACd0J,YAAa,OATR,KAyBJ,SAASosC,IAGd,IAFAC,EAEA,uDAFqC,GACrCC,EACA,uDADqC,GAE/BC,EAAwBF,EAAa3sC,QAAO,SAACkvB,GAAD,QAASA,EAAE56B,SAE7D,OAAO,gBAEAu4C,GAFA,EAGAD,EAAa5sC,QACd,SAACkvB,GAAD,OAAQ2d,EAAsB11C,MAAK,qBAAG3F,OAAoB09B,EAAE19B,aAGhE,QAIG,SAASs7C,EACdtqC,EACAhH,EACAuxC,GAEA,IAAMtvC,EAAQjR,OAAOwG,YACnB,IACExG,OAAOyG,QAAQuI,GAAW3P,KAAI,YAAmB,aAAjB2F,EAAiB,KAAXH,EAAW,KAC/C,GAAIA,EACF,MAAO,CAACG,EAAMH,GAGhB,IAAM27C,EAAaD,EAAY51C,MAAK,SAAC81C,GAAD,OAASA,EAAIz7C,OAASA,KAC1D,OAAKw7C,EAIE,CAACx7C,EAAMw7C,EAAWp2C,cAAX,aAAiCo2C,EAAWx7C,KAA5C,QAHL,UAQf,OAAOg7C,EAAAA,EAAAA,OAAgBhqC,EAAU/E,OAAO8B,EAAW,CAAE2tC,OAAQ,SAACC,GAAD,OAAOA,O,s7BCvDtE,SAAS1K,EAAT,GAAkD,IAAlCV,EAAkC,EAAlCA,KAAMjtC,EAA4B,EAA5BA,SACpB,OACE,iBAAKnG,UAAU,uBAAf,WACE,UAAC,IAAD,CAAY+N,KAAK,QAAQ/N,UAAU,YAAnC,WACE,SAAC,UAAD,wBACA,SAAC,IAAAgtB,MAAD,CACEhc,YAAY,SACZtO,MAAO0wC,EAAKvwC,KACZsD,SAAQ,+GAAE,SAAC1I,GACT0I,EAAS,EAAD,KAAMitC,GAAN,IAAYvwC,KAAMpF,EAAEY,OAAOqE,kBAKzC,UAAC,IAAD,CAAYqL,KAAK,QAAQ/N,UAAU,YAAnC,WACE,SAAC,UAAD,6BACA,SAAC,IAAAgtB,MAAD,CACEhc,YAAY,gDACZtO,MAAO0wC,EAAK1wC,MACZyD,SAAQ,+GAAE,SAAC1I,GACT0I,EAAS,EAAD,KAAMitC,GAAN,IAAY1wC,MAAOjF,EAAEY,OAAOqE,oBAQzC,SAAS+7C,EAAT,GAA8C,IAA1B/7C,EAA0B,EAA1BA,MAAOyD,EAAmB,EAAnBA,SAChC,OACE,SAAC,IAAD,CACER,MAAM,MACNjD,MAAOA,EACPyD,SAAUA,EACVutC,YAAa,iBAAO,CAAEhxC,MAAO,GAAIG,KAAM,KACvCkxC,SAAS,MACTX,KAAMU,IAKL,SAAS4K,IACd,IAAMC,GAAWt3C,EAAAA,EAAAA,MAAS4B,MAAM,CAC9BpG,MAAMsG,EAAAA,EAAAA,MAAS5B,WACf7E,OAAOyG,EAAAA,EAAAA,MAAS5B,aAElB,OAAO+B,EAAAA,EAAAA,MAAQs1C,GAAGD,GAAUrC,QAAQ,IAG/B,IAAMuC,GAAkBn3C,EAAAA,EAAAA,GAAI+2C,EAAU,CAAC,QAAS,c,kBCnEvD1gD,EAAOC,QAAU,kB,kBCAjBD,EAAOC,QAAU,I,uFCAjB,oBACO,MAAM8gD,EAAiB,O,+FCDvB,MAAMC,EAEXC,YAAYC,GACVphD,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,IAEtBlgD,KAAK+P,MAAQ,CACXowC,kBAAkB,GAGpBngD,KAAKogD,eAAiBpgD,KAAKogD,eAAe/gD,KAAKW,MAC/CA,KAAKqgD,oBAAsBrgD,KAAKqgD,oBAAoBhhD,KAAKW,MAG3DogD,eAAetxB,GACb,OAAO9uB,KAAKkgD,OAAOlgD,KAAKqgD,oBAAqBvxB,GAGtB,0BAACA,GACxB,GAAKA,EAAL,CAIA9uB,KAAK+P,MAAMowC,kBAAmB,EAC9B,UACQngD,KAAKsgD,WAAWxxB,GADxB,QAGE9uB,KAAK+P,MAAMowC,kBAAmB,K,mGC1BpC,MAAMI,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,mBAAmBC,UAAU,eAAgB,CAC1D2qC,YAAaD,EACbrrC,WAAY8qC,EAAAA,uBACZjrC,SAAU,CACRurC,WAAY,sB,kECThB,MAAMC,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,mBAAmBC,UAAU,iBAAkB,CAC5D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IAEdC,OAAQ,IACRC,WAAY,IACZC,OAAQ,IACRC,OAAQ,IACRC,SAAU,IACVC,OAAQ,IAERC,gBAAiB,IACjBC,wBAAyB,Q,8JCrB7B,MAAMC,EAAY,QAEX,MAAMC,EAEXtB,YAAYC,EAAQsB,EAAoB/2B,EAAeg3B,EAAWC,GAChE5iD,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQsB,mBAAAA,EAAoB/2B,cAAAA,EAAeg3B,UAAAA,EAAWC,aAAAA,IAE5E1hD,KAAK+P,MAAQ,CACX4xC,KAAML,GAGRthD,KAAK+gD,WAAa/gD,KAAK+gD,WAAW1hD,KAAKW,MACvCA,KAAKghD,OAAShhD,KAAKghD,OAAO3hD,KAAKW,MAC/BA,KAAK4hD,kBAAoB5hD,KAAK4hD,kBAAkBviD,KAAKW,MACrDA,KAAK8gD,OAAS9gD,KAAK8gD,OAAOzhD,KAAKW,MAC/BA,KAAK6hD,gBAAkB7hD,KAAK6hD,gBAAgBxiD,KAAKW,MACjDA,KAAK8hD,gBAAkB9hD,KAAK8hD,gBAAgBziD,KAAKW,MACjDA,KAAK+hD,qBAAuB/hD,KAAK+hD,qBAAqB1iD,KAAKW,MAC3DA,KAAKgiD,aAAehiD,KAAKgiD,aAAa3iD,KAAKW,MAC3CA,KAAKiiD,kBAAoBjiD,KAAKiiD,kBAAkB5iD,KAAKW,MACrDA,KAAKkiD,WAAaliD,KAAKkiD,WAAW7iD,KAAKW,MACvCA,KAAKmiD,gBAAkBniD,KAAKmiD,gBAAgB9iD,KAAKW,MACjDA,KAAKoiD,WAAapiD,KAAKoiD,WAAW/iD,KAAKW,MACvCA,KAAKqiD,gBAAkBriD,KAAKqiD,gBAAgBhjD,KAAKW,MACjDA,KAAKqhD,wBAA0BrhD,KAAKqhD,wBAAwBhiD,KAAKW,MACjEA,KAAKsiD,6BAA+BtiD,KAAKsiD,6BAA6BjjD,KAAKW,MAG7E6hD,gBAAgBF,GACdA,EAAOA,GAAQ3hD,KAAK+P,MAAM4xC,KAC1B,MAAMY,EAAgB,IAAIC,OAAQ,YAElC,OADqBb,EAAKtmB,QAAQknB,EAAe,KAInDxB,aACE/gD,KAAK8hD,gBAAgB9hD,KAAKyiD,WAAWziD,KAAK+P,MAAM4xC,OAGlDb,SACE,OAAO9gD,KAAK+P,MAAM4xC,OAASL,EAG7BN,OAAO0B,GACL1iD,KAAK8hD,gBAAgB9hD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAMe,IAGvDZ,gBAAgBH,GACd,OAAO3hD,KAAKkgD,OAAOlgD,KAAK+hD,qBAAsBJ,GAEtB,2BAACA,GACzB,IACE,MAAM/N,QAAc5zC,KAAKwhD,mBAAmBoB,GAAGjB,GAC/C3hD,KAAK+P,MAAM4xC,KAAOA,EAClB3hD,KAAK4zC,MAAQA,EACb,MAAO94B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qBAI7ConC,WAAWp+C,EAAMuqB,GACf,OAAOruB,KAAKkgD,OAAOlgD,KAAKmiD,gBAAiBr+C,EAAMuqB,GAE5B,sBAACvqB,EAAMuqB,GAC1B,MAAMw0B,EAAW7iD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAM79C,GAC3Cg/C,EAAc9iD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAMtzB,GACpD,UACQruB,KAAKwhD,mBAAmBP,OAAO4B,EAAUC,GAC/C9iD,KAAKyqB,cAAcF,QAAQ,4BAA6BvqB,KAAK6hD,gBAAgBiB,IAC7E,MAAMlP,QAAc5zC,KAAKwhD,mBAAmBoB,GAAG5iD,KAAK+P,MAAM4xC,MAC1D3hD,KAAK4zC,MAAQA,EACb,MAAO94B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7CknC,aAAae,GACX,OAAO/iD,KAAKkgD,OAAOlgD,KAAKiiD,kBAAmBc,GAEtB,wBAACA,GACtB,MAAMF,EAAW7iD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAMoB,GACjD,IACE,MAAM,KAAEj0B,SAAe9uB,KAAKwhD,mBAAmB7iC,IAAIkkC,GAC7CG,EAAe,IAAIC,KAAK,CAACn0B,GAAO,CACpC/kB,KAAM,6BAER/J,KAAKyhD,UAAUyB,OAAOF,EAAcD,GACpC,MAAOjoC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAI7C8mC,kBAAkB99C,GAChB,MAAM++C,EAAW7iD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAM79C,GAEjD9D,KAAK0hD,aAAap6B,gBAAiB,wCAAuCtnB,KAAK6hD,gBAAgBgB,QAAgBl8B,IAC7G,GAAKA,EAGL,OAAO3mB,KAAKoiD,WAAWS,MAI3BT,WAAWT,GACT3hD,KAAKkgD,OAAOlgD,KAAKqiD,gBAAiBV,GAEf,sBAACA,GACpB,UACQ3hD,KAAKwhD,mBAAmBL,OAAOQ,GACrC3hD,KAAKyqB,cAAcF,QAAQ,4BAA6BvqB,KAAK6hD,gBAAgBF,IAC7E,MAAM/N,QAAc5zC,KAAKwhD,mBAAmBoB,GAAG5iD,KAAK+P,MAAM4xC,MAC1D3hD,KAAK4zC,MAAQA,EACb,MAAO94B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7CqoC,UACEnjD,KAAK8hD,gBAAgBR,GAGvBmB,WAAWd,GACT,GAAIA,IAASL,EACX,OAAOA,EAGT,MAAM/lB,EAAQ,IAAQomB,EAAM,KAC5B,OAAO,IAAO,IAAQpmB,EAAO,EAAGA,EAAM97B,OAAS,GAAI,KAGrDkjD,UAAUS,EAAQt0B,GAChB,OAAIs0B,EAAOC,YAAY,OAASD,EAAO3jD,OAAS,EACvC2jD,EAASt0B,EAEXs0B,EAAS,IAAMt0B,EAGxBuyB,wBAAwBvyB,GACtB,OAAO9uB,KAAKkgD,OAAOlgD,KAAKsiD,6BAA8BxzB,GAEtB,mCAACA,GACjC,IAAK9uB,KAAKue,WACR,MAAM,IAAI5f,MAAM,uBAElB,UACQqB,KAAKwhD,mBAAmB7sB,OAAO30B,KAAKue,WAAYve,KAAK+P,MAAM4xC,KAAM7yB,GACvE9uB,KAAKsjD,iBACL,MAAOxoC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7CwoC,iBACEtjD,KAAKujD,cAGPA,cACEvjD,KAAK8hD,gBAAgB9hD,KAAK+P,MAAM4xC,O,mKC/JpC,MAAMpB,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,mBAAmBC,UAAU,cAAe,CACzDX,WAAYqsC,EAAAA,sBACZf,YAAaD,EACbxrC,SAAU,CACRwJ,WAAY,Q,6ECThB,MAAMgiC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,mBAAmBC,UAAU,eAAgB,CAC1D2qC,YAAaD,EACbrrC,WAAYsuC,EAAAA,uBACZzuC,SAAU,CACR0uC,MAAO,Q,+FCVJ,MAAMD,EAEXvD,YAAYyD,EAAcj5B,GACxB3rB,OAAOM,OAAOY,KAAM,CAAE0jD,aAAAA,EAAcj5B,cAAAA,IAGzB,gBACX,IACE,MAAMk5B,QAAe3jD,KAAK0jD,aAAaC,SACvC3jD,KAAK2jD,OAASA,EACT3jD,KAAKyjD,QACRzjD,KAAKyjD,MAAQE,EAAO,GAAG1M,UAEzB,MAAOn8B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2B,yHCd/C,MAAMylC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,mBAAmBC,UAAU,gBAAiB,CAC3D2qC,YAAaD,EACbrrC,WAAY0uC,EAAAA,wBACZ7uC,SAAU,CACR8uC,SAAU,IACVpM,SAAU,IACVqM,gBAAiB,IACjBvlC,WAAY,Q,gKCXT,MAAMqlC,EAEX3D,YAAYC,EAAQ6D,EAAmBC,EAAsBvC,EAAWwB,EAAMvB,EAAcj3B,GAC1F3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQ6D,kBAAAA,EAAmBC,qBAAAA,EAAsBvC,UAAAA,EAAWwB,KAAAA,EAAMvB,aAAAA,EAAcj3B,cAAAA,IACtGzqB,KAAK+P,MAAQ,CACX4xC,KAAM,KAGR3hD,KAAKihD,OAASjhD,KAAKihD,OAAO5hD,KAAKW,MAC/BA,KAAKikD,YAAcjkD,KAAKikD,YAAY5kD,KAAKW,MACzCA,KAAKkkD,cAAgBlkD,KAAKkkD,cAAc7kD,KAAKW,MAC7CA,KAAKkhD,SAAWlhD,KAAKkhD,SAAS7hD,KAAKW,MACnCA,KAAKmkD,cAAgBnkD,KAAKmkD,cAAc9kD,KAAKW,MAC7CA,KAAKokD,GAAKpkD,KAAKokD,GAAG/kD,KAAKW,MACvBA,KAAKghD,OAAShhD,KAAKghD,OAAO3hD,KAAKW,MAC/BA,KAAKoiD,WAAapiD,KAAKoiD,WAAW/iD,KAAKW,MACvCA,KAAKqiD,gBAAkBriD,KAAKqiD,gBAAgBhjD,KAAKW,MACjDA,KAAK8hD,gBAAkB9hD,KAAK8hD,gBAAgBziD,KAAKW,MACjDA,KAAK+hD,qBAAuB/hD,KAAK+hD,qBAAqB1iD,KAAKW,MAC3DA,KAAKqhD,wBAA0BrhD,KAAKqhD,wBAAwBhiD,KAAKW,MACjEA,KAAKsiD,6BAA+BtiD,KAAKsiD,6BAA6BjjD,KAAKW,MAC3EA,KAAKyiD,WAAaziD,KAAKyiD,WAAWpjD,KAAKW,MACvCA,KAAK2iD,UAAY3iD,KAAK2iD,UAAUtjD,KAAKW,MACrCA,KAAKmjD,QAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MACjCA,KAAKsjD,eAAiBtjD,KAAKsjD,eAAejkD,KAAKW,MAC/CA,KAAKujD,YAAcvjD,KAAKujD,YAAYlkD,KAAKW,MAG3CihD,OAAOnyB,EAAMT,GACX,OAAOruB,KAAKkgD,OAAOlgD,KAAKikD,YAAan1B,EAAMT,GAE5B,kBAACS,EAAMT,GACtB,MAAMw0B,EAA+B,MAApB7iD,KAAK+P,MAAM4xC,KAAe7yB,EAAQ,GAAE9uB,KAAK+P,MAAM4xC,QAAQ7yB,IAClEg0B,EAAkC,MAApB9iD,KAAK+P,MAAM4xC,KAAetzB,EAAW,GAAEruB,KAAK+P,MAAM4xC,QAAQtzB,IAE9E,UACQruB,KAAKgkD,qBAAqB/C,OAAOjhD,KAAK6jD,SAAUhB,EAAUC,GAChE9iD,KAAKyqB,cAAcF,QAAQ,4BAA6Bu4B,GACxD9iD,KAAK4zC,YAAc5zC,KAAKgkD,qBAAqBpB,GAAG5iD,KAAK6jD,SAAU7jD,KAAK+P,MAAM4xC,MAC1E,MAAO7mC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7CopC,cAAcp1B,GACZ,MAAM+zB,EAA+B,MAApB7iD,KAAK+P,MAAM4xC,KAAe7yB,EAAQ,GAAE9uB,KAAK+P,MAAM4xC,QAAQ7yB,IAExE9uB,KAAK0hD,aAAap6B,gBAAiB,wCAAuCu7B,OAAel8B,IAClFA,GAGL3mB,KAAKoiD,WAAWS,MAIpB3B,SAASpyB,GACP,OAAO9uB,KAAKkgD,OAAOlgD,KAAKmkD,cAAer1B,GAEtB,oBAACA,GAClB,MAAM+zB,EAA+B,MAApB7iD,KAAK+P,MAAM4xC,KAAe7yB,EAAQ,GAAE9uB,KAAK+P,MAAM4xC,QAAQ7yB,IAExE,IACE,MAAMrqB,QAAazE,KAAKgkD,qBAAqBrlC,IAAI3e,KAAK6jD,SAAUhB,GAC1DG,EAAe,IAAIC,KAAK,CAACx+C,EAAKqqB,OACpC9uB,KAAKyhD,UAAUyB,OAAOF,EAAcl0B,GACpC,MAAOhU,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAI7CspC,KACE,MAAMC,EAAerkD,KAAKyiD,WAAWziD,KAAK+P,MAAM4xC,MAChD3hD,KAAK8hD,gBAAgBuC,GAGvBrD,OAAO0B,GACL,MAAMf,EAAO3hD,KAAK2iD,UAAU3iD,KAAK+P,MAAM4xC,KAAMe,GAC7C1iD,KAAK8hD,gBAAgBH,GAGvBS,WAAWtzB,GACT,OAAO9uB,KAAKkgD,OAAOlgD,KAAKqiD,gBAAiBvzB,GAEtB,sBAACA,GACpB,UACQ9uB,KAAKgkD,qBAAqB7C,OAAOnhD,KAAK6jD,SAAU/0B,GACtD9uB,KAAKyqB,cAAcF,QAAQ,4BAA6BuE,GACxD9uB,KAAK4zC,YAAc5zC,KAAKgkD,qBAAqBpB,GAAG5iD,KAAK6jD,SAAU7jD,KAAK+P,MAAM4xC,MAC1E,MAAO7mC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7CgnC,gBAAgBH,GACd,OAAO3hD,KAAKkgD,OAAOlgD,KAAK+hD,qBAAsBJ,GAEtB,2BAACA,GACzB,IACE,MAAM/N,QAAc5zC,KAAKgkD,qBAAqBpB,GAAG5iD,KAAK6jD,SAAUlC,GAChE3hD,KAAK+P,MAAM4xC,KAAOA,EAClB3hD,KAAK4zC,MAAQA,EACb,MAAO94B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAI7CumC,wBAAwBvyB,GACtB,OAAO9uB,KAAKkgD,OAAOlgD,KAAKsiD,6BAA8BxzB,GAEtB,mCAACA,GACjC,UACQ9uB,KAAKgkD,qBAAqBrvB,OAAO30B,KAAKue,WAAYve,KAAK+P,MAAM4xC,KAAM7yB,EAAM9uB,KAAK6jD,UACpF7jD,KAAKsjD,iBACL,MAAOxoC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7C2nC,WAAWd,GACT,GAA8B,IAA1BA,EAAK0B,YAAY,KACnB,MAAO,IAGT,MAAM9nB,EAAQ,IAAQomB,EAAM,KAC5B,OAAO,IAAO,IAAQpmB,EAAO,EAAGA,EAAM97B,OAAS,GAAI,KAGrDkjD,UAAUS,EAAQt0B,GAChB,MAAe,MAAXs0B,EACKA,EAASt0B,EAEV,GAAEs0B,KAAUt0B,IAGtBw0B,iBACEtjD,KAAKujD,cAGPA,cACEvjD,KAAK8hD,gBAAgB9hD,KAAK+P,MAAM4xC,MAGrB,gBACX3hD,KAAK+jD,kBAAkB39B,8BAA8BpmB,KAAKy3C,UAC1D,IACEz3C,KAAK4zC,YAAc5zC,KAAKgkD,qBAAqBpB,GAAG5iD,KAAK6jD,SAAU7jD,KAAK+P,MAAM4xC,MAC1E,MAAO7mC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6B,kLCnJ/ClF,GAAAA,OAAe,kBAAmB,K,uFCF3B,MAAM0uC,EACXrE,YAAYx7C,GACVzE,KAAK06C,UAAYj2C,EAAKi2C,UACtB16C,KAAKi3C,SAAWxyC,EAAKwyC,SACrBj3C,KAAKukD,SAAW9/C,EAAK8/C,Y,kECAzB,SAASC,EAAaC,EAAWC,EAAwBC,EAAkBC,GACzE,OAAOH,EACJ,GAAEC,wCACH,CACEnmC,WAAYomC,EAAiBE,WAC7B/hD,QAAS8hD,EAAaE,oBAExB,CACE5uC,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,K,mFAVvCrqB,IAAAA,OAAe,mBAAmBmvC,QAAQ,QAASP,I,6ECInD,SAASQ,EAAcP,EAAWC,EAAwBC,EAAkBC,GAC1E,OAAOH,EACJ,GAAEC,gDACH,CACEnmC,WAAYomC,EAAiBE,WAC7B/hD,QAAS8hD,EAAaE,oBAExB,CACElC,GAAI,CACFhiC,OAAQ,MACRqf,SAAS,EACTz0B,OAAQ,CAAE9G,OAAQ,OAEpBia,IAAK,CACHiC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,OAClB+0C,kBAAmBwL,EAAAA,kBACnBC,aAAc,eAEhB/D,OAAQ,CACNvgC,OAAQ,SACRpV,OAAQ,CAAE9G,OAAQ,WAEpBu8C,OAAQ,CACNrgC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,a,mFA3B1BkR,IAAAA,OAAe,mBAAmBmvC,QAAQ,SAAUC,I,kECApD,SAASG,EAAeV,EAAWC,GACjC,OAAOD,EACJ,GAAEC,6DACH,GACA,CACEU,OAAQ,CAAExkC,OAAQ,S,iDAPxBhL,IAAAA,OAAe,mBAAmBmvC,QAAQ,iBAAkBI,I,kECE5D,SAASE,EAAYZ,EAAWC,EAAwBC,EAAkBC,GACxE,OAAOH,EACJ,GAAEC,8CACH,CACEnmC,WAAYomC,EAAiBE,WAC7B/hD,QAAS8hD,EAAaE,oBAExB,CACE5hC,KAAM,CAAEtC,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,W,mFAV/CkR,IAAAA,OAAe,mBAAmBmvC,QAAQ,OAAQM,I,kECElD,SAASC,EAAiBb,EAAWC,EAAwBC,EAAkB7wB,GAC7E,OAAO2wB,EACJ,GAAEC,4BACH,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE99C,KAAM,CACJ6Z,OAAQ,MACR2kC,YAAa,CACX7uC,SAAU,SAA4BA,GACpC,MAAMm5B,EAAWn5B,EAAS8uC,SACpB1iD,EAAU4T,EAASC,QAAQ,gCAAkC,EAEnE,OADAk5B,EAAS/sC,QAAUmC,OAAOnC,GACnB+sC,GAET4V,cAAe,SAA8Bx3C,GAE3C,OAAqB,MAAjBA,EAAMiK,OACD,CAAEpV,QAAS,GAEbgxB,EAAG/E,OAAO9gB,Q,yEAvB7B2H,IAAAA,OAAe,mBAAmBmvC,QAAQ,YAAaO,I,mCCEhD,SAASL,EAAkBxgD,GAChC,MAAMiS,EAAW,GAEjB,OADAA,EAASoY,KAAOrqB,EACTiS,E,0HCHT,SAAS8tC,EAAaC,EAAWC,EAAwBC,GACvD,OAAOF,EACJ,GAAEC,8BACH,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,K,oEATvCrqB,IAAAA,OAAe,mBAAmBmvC,QAAQ,gBAAiBP,I,6ECI3D,SAASQ,EAAcP,EAAWC,EAAwBC,GACxD,OAAOF,EACJ,GAAEC,gDACH,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACEjC,GAAI,CACFhiC,OAAQ,MACRqf,SAAS,EACTz0B,OAAQ,CAAE9G,OAAQ,OAEpBia,IAAK,CACHiC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,OAClB+0C,kBAAmBwL,EAAAA,kBACnBC,aAAc,eAEhB/D,OAAQ,CACNvgC,OAAQ,SACRpV,OAAQ,CAAE9G,OAAQ,WAEpBu8C,OAAQ,CACNrgC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,a,oEA1B1BkR,IAAAA,OAAe,mBAAmBmvC,QAAQ,iBAAkBC,I,6ECE5D,SAASU,EAAoBnL,EAAOoL,EAAe5B,EAAmB6B,EAAMhB,GAC1E,MAAO,CACLjB,OAcFkC,iBACE,MAAMztC,EAVQwsC,EAAakB,WACd/uC,SAASgvC,gBAUhBpoC,EAAUvF,EAAe,EAAImiC,EAAQoL,EAC3C,IAEE,aADqBhoC,EAAQzH,MAAM,CAAEpT,QAASsV,IAAgB4tC,UAChD7nD,KAAI,SAAUk2C,GAC1B,OAAO,IAAIiQ,EAAAA,eAAejQ,MAE5B,MAAOv5B,GACP,KAAM,CAAED,IAAK,4BAA6BC,IAAAA,KAtB5CmrC,SAQF,SAAkBxO,GAEhB,OADAsM,EAAkB39B,8BAA8BqxB,GACzCmO,EAAK1iC,OAAO8iC,W,8EAfvBpwC,IAAAA,OAAe,mBAAmBmvC,QAAQ,eAAgBW,I,kECC1D,SAASQ,EAA0BC,EAAQvxB,EAAQ8vB,EAAwBE,GACzE,MAAO,CAAEhC,GAET,SAAYjB,GACV,OAAOwE,EAAOvD,GAAG,CAAEjB,KAAMA,IAAQqE,UAHtBrnC,IAMb,SAAagjC,GACX,OAAOwE,EAAOxnC,IAAI,CAAEgjC,KAAMA,IAAQqE,UAPlB7E,OAUlB,SAAoBQ,GAClB,OAAOwE,EAAOhF,OAAO,CAAEQ,KAAMA,IAAQqE,UAXD/E,OActC,SAAgBU,EAAMyE,GACpB,MAAMtlC,EAAU,CACdulC,gBAAiB1E,EACjB2E,YAAaF,GAEf,OAAOD,EAAOlF,OAAO,GAAIngC,GAASklC,UAnBUrxB,OAsB9C,SAAgBpW,EAAYgoC,EAAMz3B,EAAM03B,GACtC,MAAMpuC,EAAewsC,EAAaE,qBAC5Br+C,EAAO,GAAEi+C,KAA0BnmC,WAAoBnG,EAAe,EAAI,KAAOA,EAAe,gBAEtG,OAAO,IAAI6D,SAAQ,CAACld,EAASgwB,KAC3B6F,EAAOD,OAAO,CACZluB,IAAKA,EACLhC,KAAM,CAAEqqB,KAAAA,EAAMy3B,KAAAA,KACbvqC,KAAKjd,EAASgwB,EAAQy3B,Q,sEAlC/B5wC,IAAAA,OAAe,mBAAmBmvC,QAAQ,qBAAsBmB,I,kECEhE,SAASO,EAAiBC,GACxB,MAAO,CAAE3/C,KAET,WACE,OAAO2/C,EAAU3/C,OAAOi/C,W,wBAN5BpwC,IAAAA,OAAe,mBAAmB+H,QAAQ,mBAAoB8oC,I,kECG9D,SAASE,EAA4B/B,EAAcuB,EAAQS,EAAgBlC,EAAwB9vB,GACjG,MAAO,CACLguB,GAiBF,SAAYiB,EAAUlC,GACpB,OAAOkF,IAAmBjE,GAAG,CAAEkE,SAAUjD,EAAUlC,KAAAA,EAAM7+C,QAASgiD,MAAwBkB,UAjB1FrnC,IAoBF,SAAaklC,EAAUlC,GACrB,OAAOkF,IAAmBloC,IAAI,CAAEmoC,SAAUjD,EAAUlC,KAAAA,EAAM7+C,QAASgiD,MAAwBkB,UApB3F7E,OAuBF,SAAoB0C,EAAUlC,GAC5B,OAAOkF,IAAmB1F,OAAO,CAAE2F,SAAUjD,EAAUlC,KAAAA,EAAM7+C,QAASgiD,MAAwBkB,UAvB9F/E,OA0BF,SAAgB4C,EAAUlC,EAAMyE,GAC9B,MAAMtlC,EAAU,CACdulC,gBAAiB1E,EACjB2E,YAAaF,GAEf,OAAOS,IAAmB5F,OAAO,CAAE6F,SAAUjD,EAAU/gD,QAASgiD,KAAwBhkC,GAASklC,UA9BjGrxB,OAiCF,SAAgBpW,EAAYojC,EAAM7yB,EAAM+0B,EAAU2C,GAChD,MAAMpuC,EAAewsC,EAAaE,qBAClC,GAAI1sC,EAAe,EACjB,MAAM,IAAIzZ,MAAM,iDAGlB,MAAM8H,EAAO,GAAEi+C,KAA0BnmC,aAAsBnG,yBAAoCyrC,IAEnG,OAAO,IAAI5nC,SAAQ,CAACld,EAASgwB,KAC3B6F,EAAOD,OAAO,CACZluB,IAAKA,EACLhC,KAAM,CAAEqqB,KAAAA,EAAMy3B,KAAM5E,KACnB3lC,KAAKjd,EAASgwB,EAAQy3B,QA1C7B,SAAS1B,IAEP,OADcF,EAAakB,WACd/uC,SAASgvC,gBAGxB,SAASc,IAEP,OADqB/B,IACC,EAAIqB,EAASS,G,uFAnBvChxC,IAAAA,OAAe,mBAAmBmvC,QAAQ,uBAAwB4B,I,6ECYlE,SAAS/hC,EAAOmiC,EAAoBC,GAClC,MAAMC,EAAUD,EAAgBE,OAEhCH,EAAmBziD,SAAS6iD,aAAaC,mBAAoB,EAE7DL,EAAmB7vB,IAAIt0B,mBAAqBA,EAAAA,GAE5CmkD,EAAmB7vB,IAAIh0B,YAAcA,EAAAA,GACrC6jD,EAAmB7vB,IAAI7zB,cAAgBA,EAAAA,GAEvC0jD,EAAmB7vB,IAAI3zB,oBAAsBA,EAAAA,GAC7CwjD,EAAmB7vB,IAAIzzB,sBAAwBA,EAAAA,GAG/CsjD,EAAmB7vB,IAAImwB,kBAAoB,SAAUC,EAAUC,EAAS5jD,EAAO6jD,EAAQ,SACrF5jD,EAAAA,EAAAA,IAAK,oBAAqB0jD,EAAUC,EAAS5jD,EAAO6jD,IAItDT,EAAmB7vB,IAAIuwB,qBAAuB,SAAUH,EAAUE,EAAQ,SACxE5jD,EAAAA,EAAAA,IAAK,uBAAwB0jD,EAAUE,IAIzCT,EAAmB7vB,IAAIwwB,gBAAkB,SAAUC,EAAS7iD,EAAU8iD,GAEpE,GAAID,EAAS,CACX,MAAMn8C,EAAS,CAAC,kBAAmBm8C,EAAS7iD,IAAY,GAGpD8Q,IAAAA,UAAkBgyC,IACpBp8C,EAAO5H,KAAKgkD,IAGdhkD,EAAAA,EAAAA,IAAK4H,KAMTu7C,EAAmB7vB,IAAI2wB,UAAY,SAAUC,EAAQC,IACnDnkD,EAAAA,EAAAA,IAAK,YAAakkD,EAAQC,GAAW,IAMvChB,EAAmB7vB,IAAI8wB,UAAY,SAAUvhD,EAAKwhD,GAChD,MAAMl+C,EAAOk+C,GAAY,QACzBrkD,EAAAA,EAAAA,IAAK,YAAa6C,EAAKsD,IAKzBg9C,EAAmBmB,qBAAoB,SAAUC,IAC/CvkD,EAAAA,EAAAA,IAAK,YAAaukD,MAIpBpB,EAAmBqB,mBAAkB,SAAUzG,IAC7C/9C,EAAAA,EAAAA,IAAK,mBAAoBqjD,EAAQzhB,SAASt3B,QAC1CtK,EAAAA,EAAAA,IAAK,iBAAkB,KACvBA,EAAAA,EAAAA,IAAK,eA1EQ,0BA0EmB+9C,IAChC/9C,EAAAA,EAAAA,IAAK,oBAUPmjD,EAAmBsB,mBAAmB7jD,EAAAA,IAStCuiD,EAAmBuB,wBAAuB,SAAUr6C,IAClDrK,EAAAA,EAAAA,IAAK,aAAc,aAAcqK,EAAMpK,WAAYoK,EAAMs6C,MAAO,M,mDAtFpE,UAAe3yC,IAAAA,OAAe,qBAAsB,CAAC,gBAAgBgP,OAAOA,GAA5E,M,4HCPO,SAAS4jC,EAAiBC,EAAYC,EAAQC,EAAWC,EAAcjE,EAAkBkE,EAAeC,EAAeC,EAAchF,GAC1IY,EAAiBqE,aAEjBP,EAAWC,OAASA,EACpB,MAAMO,EAAezjB,SAASt3B,MAE9B66C,EAAaG,QAAQ,IAAI,KACvB,MAAMnyC,EAAW4tC,EAAiBwE,kBAC9BpyC,IACFyuB,SAASt3B,MAAS,GAAE+6C,OAAkBlyC,EAASlK,WAMnD,MAAMu8C,EAAcN,EAAcjqC,IAClCiqC,EAAcjqC,IAAM,SAAqBhC,GACnCA,EAAIisC,EAAc5wC,UACpBkxC,EAAYrpD,MAAM+oD,EAAetpD,YAIrCupD,EAAaM,SAAS,IAAI,KACxBtF,EAAkBz9B,uBAIpBqiC,GAAU,MAcZ,SAAchE,EAAkBkE,GAC9B,MAAM9xC,EAAW4tC,EAAiBwE,kBAC9BpyC,GAAYA,EAAS/L,MAAQs+C,EAAAA,uBAAAA,8BAC/BT,EAAc9hD,KAAKgQ,EAASxK,IAhB5BxF,CAAK49C,EAAkBkE,KACtB,KAEHU,GAAAA,CAAE/jB,UAAUgkB,UAAS,CAAC7V,EAAO8V,EAAOC,KAClC,MAAM3/C,EAAuB,SAAhB2/C,EAAO3/C,MAAmC,QAAhB2/C,EAAO3/C,MAAkC,UAAhB2/C,EAAO3/C,KACjE4/C,EAA0C,qBAAvBD,EAAOE,aAAsCF,EAAO/yC,UAAY+yC,EAAO/yC,QAAQ,gBACpG5M,GAAQ4/C,GACVF,EAAMI,iBAAiB,eAAgB,oBAEzCJ,EAAMI,iBAAiB,gBAAiB,UAAYjB,EAAakB,a,6vLCvCrE,IAAMC,EAAUvkB,SAASC,cAAc,SAEvCskB,EAAQC,UAAR,qBACIlrD,OAAOyG,QAAQ0kD,GACd9rD,KAAI,YAAkB,aAAhB8Q,EAAgB,KAATi7C,EAAS,KACrB,MAAmB,iBAARA,EACT,eAAej7C,EAAf,aAAyBi7C,GAGpBprD,OAAOyG,QAAQ2kD,GACnB/rD,KAAI,yBAAEwB,EAAF,KAAOgE,EAAP,0BAA0BsL,EAA1B,YAAmCtP,EAAnC,aAA2CgE,MAC/CwJ,KAAK,UAETA,KAAK,OAXV,OAcAq4B,SAAS2kB,KAAKthC,QAAQkhC,I,sHCbf,SAASK,EAAUC,EAAoBC,EAAeC,EAA6BC,EAAoBC,EAAqBC,EAAkBC,GAKnJJ,EAA4BK,UAAU,aAEtCJ,EAAmB5lC,OAAO,CACxBimC,YAAW,gBAAkB,SAAqBjC,GAChD,OAAOA,EAAakB,aAIxBQ,EAAchlC,aAAa1hB,KAAK,kBAChC0mD,EAAchlC,aAAa1hB,KAAK,6BAE3B0mD,EAAc5X,SAAS/7B,QAAQgI,MAClC2rC,EAAc5X,SAAS/7B,QAAQgI,IAAM,IAGvC2rC,EAAc5X,SAAS/7B,QAAQgI,IAAI,qBAAuB,gCAE1D2rC,EAAc5X,SAAS/7B,QAAQgI,IAAI,iBAAmB,WACtD2rC,EAAc5X,SAAS/7B,QAAQgI,IAA/B,OAA+C,WAE/C2rC,EAAc5X,SAAS/7B,QAAQm0C,KAAK,gBAAkB,mBACtDR,EAAc5X,SAAS/7B,QAAQo0C,IAAI,gBAAkB,mBACrDT,EAAc5X,SAAS/7B,QAAQq0C,MAAM,gBAAkB,mBAEvDV,EAAchlC,aAAa1hB,MAAK,KAAM,CACpC2hB,QAASZ,EAAAA,OAGXsmC,EAAAA,EAAAA,WAAoBC,GAEpBT,EAAoBU,YAAY,CAC9BC,WAAY,aACZvX,MAAO,QACPwX,MAAO,OACPC,aAAc,iBAGhBX,EAAsBY,gBAAiB,EACvCZ,EAAsBa,eAAiB,0BACvCb,EAAsBc,iBAAmB,IAEzCpB,EAAmBqB,UAAU,S,4oDCnDxB,MAAMC,EAAoB,WACpBC,EAAsB,aACtBC,EAAgC,uBAChCC,EAA2B,kBAC3BC,EAAyB,gBACzBC,EAA2B,kBAC3BC,EAA8B,qBAC9BvH,EAAyB,gBACzBwH,EAA+B,sBAC/BC,EAA0B,iBAC1BC,EAAoB,WACpBC,EAA0B,iBAC1BC,EAAiC,wBACjCC,EAAwB,eACxBC,EAAsB,aACtBC,EAAsB,aACtBC,EAAuB,cACvBC,EAAqB,YACrBC,EAAoB,WACpBC,EAAqB,YACrBC,EAAgC,uBAChCC,EAAyB,gBACzBC,EAAwB,eACxBC,EAAwB,8EACxBC,EAAuB,GACvBC,EAA6B,KAC7BC,EAAgC,yBAChCC,EAAsB,CAAC,OAAQ,SAAU,UAAW,MAAO,QAC3DC,EAAoB,KACpBC,EAA8B,gBAC9BC,EAAiC,gBACjCC,EAAsBroB,UAAUsoB,UAAU7nD,QAAQ,YAAc,EAAI,MAAQu/B,UAAUsoB,UAAU7nD,QAAQ,QAAU,EAAI,MAAQ,MAC9H8nD,EAA2C,QAAxBF,EAAgC,OAAS,KAKzE73C,QACG5W,OAAO,aACP4uD,SAAS,oBAAqBjC,GAC9BiC,SAAS,sBAAuBhC,GAChCgC,SAAS,gCAAiC/B,GAC1C+B,SAAS,2BAA4B9B,GACrC8B,SAAS,yBAA0B7B,GACnC6B,SAAS,2BAA4B5B,GACrC4B,SAAS,8BAA+B3B,GACxC2B,SAAS,yBAA0BlJ,GACnCkJ,SAAS,+BAAgC1B,GACzC0B,SAAS,0BAA2BzB,GACpCyB,SAAS,oBAAqBxB,GAC9BwB,SAAS,0BAA2BvB,GACpCuB,SAAS,iCAAkCtB,GAC3CsB,SAAS,wBAAyBrB,GAClCqB,SAAS,sBAAuBpB,GAChCoB,SAAS,sBAAuBnB,GAChCmB,SAAS,uBAAwBlB,GACjCkB,SAAS,qBAAsBjB,GAC/BiB,SAAS,oBAAqBhB,GAC9BgB,SAAS,qBAAsBf,GAC/Be,SAAS,gCAAiCd,GAC1Cc,SAAS,yBAA0Bb,GACnCa,SAAS,wBAAyBZ,GAClCY,SAAS,wBAAyBX,GAClCW,SAAS,uBAAwBV,GACjCU,SAAS,6BAA8BT,GACvCS,SAAS,gCAAiCR,GAC1CQ,SAAS,sBAAuBP,GAChCO,SAAS,sBAAuBH,I,iRCzDtBI,EAAiC,CAC5CrnB,OAAQ,QACRoQ,SAAU,QACVt4C,GAAI,QACJgwC,gBAAgB,EAChBuI,KAUF,YAAgD,IAApBjxC,EAAoB,EAA3BjC,MACb4zC,GAAY1W,EAAAA,EAAAA,SAAQ,sBAAuB,CAAEviC,GAAIsH,IACjDkoD,GAAiBnoD,EAAAA,EAAAA,GAAQC,GAEvB8U,GAAgB8wB,EAAAA,EAAAA,KAAhB9wB,YAER,OAAIk9B,EAAAA,EAAAA,mBAAkBl9B,IACb,0BAAOozC,KAId,eAAG/hC,KAAMwrB,EAAUxrB,KAAM7c,QAASqoC,EAAUroC,QAA5C,WACE,SAAC6+C,EAAAA,YAAD,CAAanoD,UAAWA,EAAWG,cAAe2U,EAAYnO,KAC7DuhD,MAtBLhX,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,O,uDCXH5sC,EAAqC,CAChDq8B,OAAQ,YACRloC,GAAI,YACJs4C,SAAU,SAAC7M,GAAD,aACR,UAAAA,EAAIuQ,uBAAJ,eAAqB1uC,YAAavB,EAAAA,EAAAA,gBACpCwsC,KAWF,YAAyC,IAAhBlzC,EAAgB,EAAhBA,MACvB,OACE,iCACE,cACE1C,WAAW6L,EAAAA,EAAAA,IAAKC,EAAAA,EAAAA,eAAcpJ,GAAQ,eACtC,cAAY,SAEbA,GAAS0G,EAAAA,EAAAA,mBAjBdikC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,O,6ECfhB,EAAuB,kGCyBhB,SAASiX,EAAT,GAMG,IALRC,EAKQ,EALRA,OACAzW,EAIQ,EAJRA,YACAC,EAGQ,EAHRA,SACA1nC,EAEQ,EAFRA,MACAmI,EACQ,EADRA,OAEA,GAAI+1C,EACF,OAAO,SAACC,EAAD,CAAkBD,OAAQA,EAAQl+C,MAAOA,IAGlD,IAAMo+C,EAAW,CACf/V,EAAAA,EAAAA,SACAA,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,WACAjzC,SAAS+S,GAEX,OACE,iBAAKjX,WAAW6L,EAAAA,EAAAA,GAAK,YAAa8wB,GAAlC,UACG7tB,EAAMq+C,sBACL,SAAC,KAAD,CAAYhvC,eAAe,sBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,mCACHC,OAAQ,CAAElN,GAAIk5C,EAAaC,SAAAA,GAC3BvpC,MAAM,OAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,YAAYG,SAAO,EAACxQ,UAAU,oBAK9C8O,EAAMs+C,yBACL,SAAC,KAAD,CAAYjvC,eAAe,yBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAIk5C,EAAaC,SAAAA,GAC3BvpC,MAAM,UAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,OAAOG,SAAO,EAACxQ,UAAU,oBAKzC8O,EAAMu+C,sBAAwBH,IAC7B,SAAC,KAAD,CAAY/uC,eAAe,uBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,oCACHC,OAAQ,CAAElN,GAAIk5C,EAAaC,SAAAA,GAC3BvpC,MAAM,QAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,YAAYG,SAAO,EAACxQ,UAAU,oBAK9C8O,EAAMw+C,qBAAuBJ,IAC5B,SAAC,KAAD,CAAY/uC,eAAe,kBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,mCACHC,OAAQ,CAAElN,GAAIk5C,EAAaC,SAAAA,GAC3BvpC,MAAM,eAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,WAAWG,SAAO,EAACxQ,UAAU,oBAK7C8O,EAAMy+C,uBAAyBL,IAC9B,SAAC,KAAD,CAAY/uC,eAAe,wBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,qCACHC,OAAQ,CAAElN,GAAIk5C,EAAaC,SAAAA,GAC3BvpC,MAAM,iBAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,YAAYG,SAAO,EAACxQ,UAAU,uBAarD,SAASitD,EAAT,GAAwD,IAA5BD,EAA4B,EAA5BA,OAAQl+C,EAAoB,EAApBA,MAClC,OACE,iBAAK9O,WAAW6L,EAAAA,EAAAA,GAAK,YAAa8wB,GAAlC,UACG7tB,EAAMq+C,sBACL,SAAC,KAAD,CAAYhvC,eAAe,iBAA3B,UACE,SAAC9T,EAAA,EAAD,CACEC,GAAG,yBACHC,OAAQ,CAAElN,GAAI2vD,GACd//C,MAAM,OAHR,UAKE,SAACsD,EAAA,EAAD,CAAMF,KAAK,YAAYG,SAAO,EAACxQ,UAAU,oBAK9C8O,EAAMs+C,yBACL,SAAC,KAAD,CAAYjvC,eAAe,oBAA3B,UACE,SAAC9T,EAAA,EAAD,CAAMC,GAAG,oBAAoBC,OAAQ,CAAElN,GAAI2vD,GAAU//C,MAAM,UAA3D,UACE,SAACsD,EAAA,EAAD,CAAMF,KAAK,OAAOG,SAAO,EAACxQ,UAAU,uB,eCxHnCytC,EAAwC,CACnDlI,OAAQ,gBACRloC,GAAI,UACJu4C,KAQF,YAE+B,ICpBvBv4C,EDmBWg5C,EACY,EAD7BvN,IAAOC,SAIDtvB,GCvBApc,GAAK+f,EAAAA,EAAAA,MACJ3F,EAAAA,EAAAA,IAAepa,IDsBemG,KAC/BgqD,GAAe/zC,IAAek9B,EAAAA,EAAAA,mBAAkBl9B,GAItD,GAFqB63B,EAAAA,EAAAA,KAAbjuC,SAEA+0C,mBAAAA,OAAR,MAA6B,GAA7B,EAEMqV,EAAe,CACnBF,uBAAwBnV,EAAmBl0C,SAAS,UACpDopD,qBAAsBlV,EAAmBl0C,SAAS,QAClDkpD,wBAAyBhV,EAAmBl0C,SAAS,WACrDipD,qBAAsB/U,EAAmBl0C,SAAS,QAClDmpD,sBAAuBjV,EAAmBl0C,SAAS,UAG/CwpD,EACJD,EAAaF,uBACbE,EAAaH,qBACbG,EAAaL,wBACbK,EAAaN,qBACbM,EAAaJ,qBAETM,GAAezvC,EAAAA,EAAAA,IAAkB,CACrC,uBACA,sBACA,kBACA,yBACA,oBACA,mBAGF,OAAIsvC,GAAgBE,GAAWC,GAK7B,SAACZ,EAAD,CACExW,YAAaF,EAAU/qC,GACvBkrC,SAAUH,EAAUL,SACpB/+B,OAAQo/B,EAAUr+B,OAClBlJ,MAAO2+C,IARF,MA5CTpgB,gBAAgB,EAChB4J,eAAe,EACfpB,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,OEhBHwR,EAAiC,CAC5C/hB,OAAQ,QACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIkR,WAAa,KACpC38C,GAAI,QACJ44C,SAAU,SACV5I,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,O,24BCLT,IAAMqE,EAAY,CACvByT,KAAM,SAAC9oD,GAAD,MACJ,CAAC+oD,EAAAA,GAAAA,KAAqB/oD,GAAgB,eAExCgpD,QAAS,SAAChpD,EAA8BusB,EAAey8B,GAA9C,kBACH3T,EAAUyT,KAAK9oD,IADZ,CAC4B,CAAEusB,IAAAA,EAAKy8B,QAAAA,MAE5CzX,UAAW,SAACvxC,EAA8BzH,GAA/B,kBACL88C,EAAUyT,KAAK9oD,IADV,CAC0BzH,KAErC0wD,KAAM,SAACjpD,EAA8BzH,GAA/B,kBACA88C,EAAU9D,UAAUvxC,EAAezH,IADnC,CACwC,W,6WCVhD,WACEyH,EACAyxC,GAFF,iHAK2BxxC,EAAAA,GAAAA,IAAA,kBACVD,EADU,uBACkByxC,EADlB,UAL3B,uBAKY/yC,EALZ,EAKYA,KALZ,kBAQWA,EAAKuqD,MARhB,uCAUU9oD,EAAAA,EAAAA,IAAgB,EAAD,IAVzB,0D,sBCDO,IAAM8oD,EAAgC,CAC3CxoB,OAAQ,OACRloC,GAAI,OACJgwC,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,MACdF,KAGF,YAE+B,IACvBW,EADuB,EAD7BzN,IAAOC,SAEuBz9B,GAExB0iD,EDCD,SACLlpD,EACAyxC,GAEA,OAAOpxC,EAAAA,EAAAA,UAASg1C,EAAU4T,KAAKjpD,EAAeyxC,IAAc,kB,SAlB9B,EAAjB0X,G,+BAmBXA,CAAiBnpD,EAAeyxC,MCNhB2X,EADI9wC,EAAAA,EAAAA,KAC4Bm5B,GAElD,OAAKyX,EAAUxqD,MAIR,8BAAGwqD,EAAUxqD,OAHX,OCRJ,SAAS2qD,EAAWC,GACzB,OAAOvwC,EAAAA,EAAAA,UACL,kBACE,IAAU,CACRhb,EAAAA,EACAiM,EAAAA,EACA2+B,EACA6Z,EACAsF,EACAlX,EAAAA,EACAQ,EAAAA,GACAkY,GAAuBrY,EAAAA,EACvBgY,EACAnX,EAAAA,EACA1tC,MAEJ,CAACklD,I,+cCcE,SAASC,GAAT,GAIG,IAHRxlB,EAGQ,EAHRA,cACAylB,EAEQ,EAFRA,mBACAhxC,EACQ,EADRA,WAEMixC,EAAoB1lB,EAAcrqC,OAClCgwD,EAAyB3lB,EAAcn5B,MAC3C,SAAC0jC,GAAD,OAAUA,EAAKqb,QAAUtX,EAAAA,EAAAA,UAErBuX,EAA0B7lB,EAAcn5B,MAAK,SAAC0jC,GAAD,MACjD,CACE+D,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,QACAjzC,SAASkvC,EAAKp7B,WAEZ22C,EAA0B9lB,EAAcn5B,MAAK,SAAC0jC,GAAD,MACjD,CACE+D,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,QACAA,EAAAA,EAAAA,UACAA,EAAAA,EAAAA,UACAjzC,SAASkvC,EAAKp7B,WAGZ21C,GAAezvC,EAAAA,EAAAA,IAAkB,CACrC,uBACA,sBACA,sBACA,yBACA,uBACA,yBACA,wBACA,0BAGI0L,GAASC,EAAAA,EAAAA,aAEf,OAAK8jC,GAKH,iCACE,UAAC,MAAD,YACE,SAAC,KAAD,CAAYxvC,eAAe,uBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBAqFnB,SAAsB46B,GAGpB+lB,EACE/lB,EACAyP,GAAAA,GAJqB,iCACF,6BAvFEuW,CAAahmB,IAC5B9hC,SAAgC,IAAtBwnD,IAA4BG,EACtCr+C,KAAMy+C,EAAAA,EAJR,sBAUF,SAAC,KAAD,CAAY3wC,eAAe,sBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBAqFnB,SAAqB46B,GAGnB+lB,EACE/lB,EACA6P,GAAAA,GAJqB,iCACF,4BAvFEqW,CAAYlmB,IAC3B9hC,SAAgC,IAAtBwnD,IAA4BI,EACtCt+C,KAAM2+C,EAAAA,EAJR,qBAUF,SAAC,KAAD,CAAY7wC,eAAe,sBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBAgGnB,SAAqB46B,GAGnB+lB,EACE/lB,EACA+P,GAAAA,GAJqB,gCACF,4BAlGEqW,CAAYpmB,IAC3B9hC,SAAgC,IAAtBwnD,GAA2BG,EACrCr+C,KAAM6+C,EAAAA,EAJR,qBAUF,SAAC,KAAD,CAAY/wC,eAAe,yBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBA0EnB,SAAwB46B,GAGtB+lB,EACE/lB,EACA8P,GAAAA,GAJqB,mCACF,+BA5EEwW,CAAetmB,IAC9B9hC,SAAgC,IAAtBwnD,EACVl+C,KAAM++C,GAAAA,EAJR,wBAUF,SAAC,KAAD,CAAYjxC,eAAe,uBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBAqFnB,SAAsB46B,GAGpB+lB,EACE/lB,EACAgQ,GAAAA,GAJqB,gCACF,6BAvFEwW,CAAaxmB,IAC5B9hC,SAAgC,IAAtBwnD,IAA4BI,EACtCt+C,KAAMi/C,GAAAA,EAJR,sBAUF,SAAC,KAAD,CAAYnxC,eAAe,yBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,QACNC,QAAS,kBAqFnB,SAAuB46B,GAGrB+lB,EACE/lB,EACAiQ,GAAAA,GAJqB,iCACF,8BAvFEyW,CAAc1mB,IAC7B9hC,SAAgC,IAAtBwnD,IAA4BC,EACtCn+C,KAAMy+C,EAAAA,EAJR,uBAUF,SAAC,KAAD,CAAY3wC,eAAe,wBAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,cACNC,QAAS,kBAqFnB,SAAuB46B,GACrB,IAAM2mB,EAAwB3mB,EAAcn5B,MAC1C,SAAC2mC,GAAD,MAAmC,YAApBA,EAAUoY,SAIrBxhD,EAAQ,uCAAH,OADUuiD,EAAwB,UAAY,GAC9C,iBAEXjoC,EAAAA,GAAAA,IAAyBta,GAAO,SAACma,GAC/B,GAAKA,EAAL,CAGA,IAAMqoC,IAAiBroC,EAAO,IA/M1B,sCAiNJsoC,CAAyB7mB,EAAe4mB,OAnGnBE,CAAc9mB,IAC7B9hC,SAAgC,IAAtBwnD,EACVl+C,KAAMu/C,GAAAA,EAJR,yBAWHtB,IACC,SAAC,KAAD,CAAYnwC,eAAe,wBAA3B,UACE,SAAC9T,EAAA,EAAD,CAAMC,GAAG,wBAAwBtK,UAAU,aAA3C,UACE,SAAC,MAAD,CAAQqQ,KAAMw/C,GAAAA,EAAd,kCAvFD,KAnCD,SAqNOjB,EArNP,0FAqNR,WACEvU,EACA52C,EACAqsD,EACAC,GAJF,wFAMWzxD,EAAI,EANf,YAMkBA,EAAI+7C,EAAW77C,QANjC,wBAOU63C,EAAYgE,EAAW/7C,GAPjC,UASM6mB,EAAAA,GAAAA,IAA8BkxB,EAAUL,UAT9C,SAUYvyC,EAAO6Z,EAAY+4B,EAAU/qC,IAVzC,OAWM0kD,GAAAA,GAAsBF,EAAgBzZ,EAAUD,MAAM,IAX5D,kDAaM4Z,GAAAA,GACE,UADF,eAGKD,EAHL,YAGqB1Z,EAAUD,MAAM,KAhB3C,QAMyC93C,GAAK,EAN9C,uBAqBEsrB,EAAOuB,aAAa8U,SArBtB,2DArNQ,wEA6OR,WACEoa,EACAoV,GAFF,wFAIWnxD,EAAI,EAJf,YAIkBA,EAAI+7C,EAAW77C,QAJjC,wBAKU63C,EAAYgE,EAAW/7C,GALjC,UAOM6mB,EAAAA,GAAAA,IAA8BkxB,EAAUL,UAP9C,UAQYgD,EAAAA,GAAAA,IAAgB17B,EAAY+4B,EAAWoZ,GARnD,OASMO,GAAAA,GACE,iCACA3Z,EAAUD,MAAM,IAXxB,kDAcM4Z,GAAAA,GACE,UADF,KAGE,8BAjBR,QAIyC1xD,GAAK,EAJ9C,uBAsBEsrB,EAAOuB,aAAa8U,SAtBtB,2DA7OQ,uB,4BCtCH,SAASgwB,GAAT,GAGG,IAFRC,EAEQ,EAFRA,iBACA7sD,EACQ,EADRA,SAEA,OACE,iCACE,SAACyqC,GAAA,EAAD,CACEzwC,GAAG,kCACHsI,MAAM,0BACN8uB,QAASpxB,EAASozC,sBAAwB,EAC1CtwC,SAAU,kBACR9C,EAAS80C,yBACP90C,EAASozC,sBAAwB,EAAI,EAAIc,EAAAA,MAK9C2Y,IACC,SAACxiB,GAAA,EAAD,CACEhrC,MAAOW,EAAS20C,gBAChB7xC,SAAU,SAACzD,GAAD,OAAWW,EAAS40C,mBAAmBv1C,S,2HCbpD,SAASytD,GAAT,GAAkD,IAAlBxgB,EAAkB,EAAlBA,QAC7BtsC,GACNiuC,EAAAA,EAAAA,KADMjuC,SAGR,OACE,8BACGssC,EAAQzyC,KAAI,gBAAGG,EAAH,EAAGA,GAAIsI,EAAP,EAAOA,MAAP,OACX,SAACmoC,GAAA,EAAD,CAEEnoC,MAAOA,EACPtI,GAAE,wBAAmBA,GACrBo3B,SAAUpxB,EAAS+0C,mBAAmBl0C,SAAS7G,GAC/C8I,SAAU,SAAC1I,GAAD,OAMIiB,EANgBrB,OAAII,EAAEY,OAAOo2B,QAU/CpxB,EAASg1C,sBACPh1C,EAAS+0C,mBAAmB/mC,QAAO,SAAC5N,GAAD,OAAYA,IAAW/E,MAH5D2E,EAASg1C,sBAAT,W,EAAmCh1C,EAAS+0C,mB,qnBAA5C,CAAgE15C,M,MAF9CA,IAVTrB,QAqBR,SAAS+yD,GAAY/yD,EAAiBsI,GAC3C,MAAO,CAAEtI,GAAAA,EAAIsI,MAAAA,G,2VCpCR,SAAS0qD,GACdvrD,GAIA,IAHAusB,IAGA,yDAFAy8B,EAEA,uCADA9V,EACA,uCACA,OAAO7yC,EAAAA,EAAAA,UACLg1C,EAAU2T,QAAQhpD,EAAeusB,EAAKy8B,IACtC,kBAAMwC,GAAcxrD,EAAeusB,EAAKy8B,KACxC,CACE/gD,KAAM,CACJE,MAAO,UACPjB,QAAS,iCAEXqM,gBALF,WAMI,OAAO2/B,MAAAA,GAAAA,K,SAMAsY,GAAc,G,oFAA7B,WACExrD,GADF,+GAEEusB,IAFF,iCAGEy8B,EAHF,yCAM2B/oD,EAAAA,GAAAA,KACrBwzC,EAAAA,GAAAA,IAAWzzC,OAAe8L,EAAW,QACrC,CACErG,OAAQ,CAAE8mB,IAAAA,EAAKy8B,QAASA,GAAWvpD,KAAKC,UAAUspD,MAT1D,uBAMYtqD,EANZ,EAMYA,KANZ,kBAYWA,EAAKtG,KAAI,SAAC2tB,GAAD,OAAOsuB,EAAAA,GAAAA,GAAetuB,OAZ1C,yCAcU5lB,EAAAA,EAAAA,IAAgB,EAAD,GAAiB,iCAd1C,0D,yBCdA,IAAM4gC,GAAa,mBACb0qB,IAAW/Y,EAAAA,EAAAA,GAAY3R,IAEvB8J,GAAU,CACdygB,GAAY,OAAQ,QACpBA,GAAY,UAAW,WACvBA,GAAY,QAAS,SACrBA,GAAY,OAAQ,WACpBA,GAAY,SAAU,W,oXCxBjB,WAAoC/yD,GAApC,iHAEoB0H,EAAAA,GAAAA,IAAA,kBACV1H,EADU,mBAFpB,uBAEKmG,EAFL,EAEKA,KAFL,kBAKIA,GALJ,yDAOI,CACLwU,OAAQ,UACRw4C,QAAS,8CAAF,OAAgDnzD,KATtD,0D,kDCUA,SAASozD,GAAT,GAKG,IAJR/qD,EAIQ,EAJRA,QACAS,EAGQ,EAHRA,SACA6K,EAEQ,EAFRA,YACAtO,EACQ,EADRA,MAEMguD,EAA0BhrD,EAAQxI,KAAI,SAACwF,GAAD,MAAY,CAAEiD,MAAOjD,MAC3D6kC,EAA6B7kC,EAAQ,CAAEiD,MAAOjD,GAAU,KAE9D,OACE,SAAC,KAAD,CACEsO,YAAaA,EACbtL,QAASgrD,EACThuD,MAAO6kC,EACPopB,aAAW,EACXxqD,SAAU,SAACgB,GAAD,aAAYhB,EAAQ,UAACgB,MAAAA,OAAD,EAACA,EAAQxB,aAAT,QAAkB,SCxBtD,IAAMirD,IAA8Bn8C,EAAAA,EAAAA,GAAcg8C,GAAsB,CACtE,UACA,WACA,cACA,UCPF,GAAmP,2FCG7OI,IAA0Bp8C,EAAAA,EAAAA,ICUzB,YAQG,IAPR/O,EAOQ,EAPRA,QACAS,EAMQ,EANRA,SACA2qD,EAKQ,EALRA,aACA9/C,EAIQ,EAJRA,YACA+/C,EAGQ,EAHRA,iBACAC,EAEQ,EAFRA,aACAtuD,EACQ,EADRA,MAIMuuD,EAAYF,EAFH,sBACE,wBAGjB,OACE,iBAAK/wD,UF3ByB,6FE2B9B,WACE,gBAAKA,UAAW28B,GAAhB,UACE,SAAC8zB,GAAD,CACEz/C,YAAaA,EACbtL,QAASA,EACTS,SAAUA,EACVzD,MAAOA,OAGX,gBAAK1C,UAAW28B,GAAhB,UACE,mBACE38B,UFtCkI,uFEuClI8I,KAAK,SACL/B,UAAWiqD,IAAiBtuD,EAC5BuL,QAAS,SAACxQ,GACRA,EAAE+jC,iBACFsvB,KANJ,UASE,cAAG9wD,UAAWixD,aD3CwC,CAC9D,UACA,WACA,eACA,cACA,mBACA,eACA,UEDWC,GAAmBv8C,IAAAA,OACtB,oCAAqC,IAC5CC,UAAU,oBAAoBlN,EAAAA,EAAAA,ICF1B,YAA8C,IAAlBypD,EAAkB,EAAlBA,QACjC,GAA4BhsD,EAAAA,EAAAA,UAC1B,CAAC,SAAUgsD,EAAS,SAAU,WAC9B,kBPVG,SAAP,mCOUUC,CAAqBD,MAFrB3tD,EAAR,EAAQA,KAAM2K,EAAd,EAAcA,UAId,OAAO,iBAAMnO,WAAW6L,EAAAA,EAAAA,IAAK4pC,EAAAA,GAAAA,GAAYjyC,EAAM2K,GAAY,mBDHN,CAAC,aACrDyG,UACC,yBACAlN,EAAAA,EAAAA,GAAIqlD,EAAuB,CACzB,cACA,WACA,QACA,SACA,YAGHn4C,UAAU,eAAelN,EAAAA,EAAAA,GAAIolD,EAAAA,YAAa,CAAC,YAAa,mBACxDl4C,UAAU,uBAAwBg8C,IAClCh8C,UAAU,mBAAoBi8C,IAC9Bj8C,UACC,4BACAlN,EAAAA,EAAAA,IPOG,YAAqE,IAAjC+R,EAAiC,EAAjCA,YAAatN,EAAoB,EAApBA,UAChD9I,EAAWktD,KACXrrB,EAAUipB,GAAW,GACrBkD,EAAiB,IACrBnsB,EAAQ7zB,QAAO,SAACigD,GAAD,OAASA,EAAIzb,WAAS34C,KAAI,SAACo0D,GAAD,OAASA,EAAIj0D,OAGlDi9C,EAAkB+V,GACtB52C,EAAYnO,IACZ,EACA,CACE3F,MAAO,CAAC,8BAAD,OAA+BwG,KAEb,IAA3B9I,EAAS20C,iBAGX,OACE,SAAC,IAAD,CAAaz7B,QAAS,CAAE9C,YAAAA,GAAxB,UACE,SAAC,MAAD,CACE4sB,aAAc,CACZh2B,KAAM,WACNpD,MAAO,cAET+4B,cAAe3iC,EACf6hC,QAASA,EACTa,mBAAoB,SAACwrB,GAAD,OAClB,SAAClD,GAAD,CACExlB,cAAe0oB,EACfjD,oBAAoB,EACpBhxC,WAAY7D,EAAYnO,MAG5Bi7B,kBAAmB,CAAEsR,cAAex0C,EAASw0C,eAC7C/R,oBAAqB,SAACa,GACpB,IAAM6qB,EAAgB7qB,EAAc8qB,WAAWpgD,QAAO,SAACqgD,GAAD,OACpDL,MAAAA,OADoD,EACpDA,EAAgBntD,SAASwtD,EAAYr0D,OAGvC,OACE,iCACE,SAAC4nC,GAAA,EAAD,CACEC,QAASssB,EACTrrD,SAAU,SAAC0xC,GACTx0C,EAASy0C,iBAAiBD,GAC1BlR,EAAcmR,iBAAiBD,IAEjCn1C,MAAOW,EAASw0C,iBAElB,SAAC,MAAD,CACEpK,cAAc,SAAC0iB,GAAD,CAAsBxgB,QAASA,KAD/C,UAGE,SAACsgB,GAAD,CAA6B5sD,SAAUA,UAK/CwiC,WAAYA,GACZD,QAAS0U,EAAgB92C,MAAQ,GACjC2K,UAAWmsC,EAAgBnsC,UAC3Bm4B,kBAAkB,4BOlEQ,CAAC,cAAe,eAC9CzjC,K,gxBEUJ,IAAM8uD,GAA4B,CAEhC,CACEjvD,MAAO,UACPiD,MAAO,UACPgM,YAAa,6CAEf,CACEjP,MAAO,WACPiD,MAAO,WACPgM,YAAa,4CAEf,CACEjP,MAAO,WACPiD,MAAO,WACPgM,YAAa,uDAEf,CACEjP,MAAO,UACPiD,MAAO,UACPgM,YAAa,0CAEf,CACEjP,MAAO,QACPiD,MAAO,QACPgM,YAAa,0CAEf,CACEjP,MAAO,UACPiD,MAAO,UACPgM,YAAa,wCAIjB,SAASigD,GAAO5yD,GACd,MAEIA,EADFwE,KAAQd,EADV,EACUA,MAAOiP,EADjB,EACiBA,YAGjB,OACE,0BAEE,SAAC,GAAAkZ,EAAA,OAAD,SAAuB7rB,GAAvB,uBACM0D,EADN,cACiBiP,QAMvB,SAASkgD,GAAiB7yD,GACxB,IACiB0D,EACb1D,EADF8yD,YAAepvD,MAEjB,OAAIA,GAAqD,IAA3CA,EAAgClE,OACrC,MAGF,SAAC,GAAAqsB,EAAA,iBAAD,MAAiC7rB,I,waCxFnC,WACL8F,EACAitD,GAFK,iHAK6BhtD,EAAAA,GAAAA,IAC9BC,GAASF,EAAeitD,IANvB,uBAKWC,EALX,EAKKxuD,KALL,kBAQIwuD,GARJ,uCAUG/sD,EAAAA,EAAAA,IAAgB,EAAD,GAAa,sCAV/B,0D,0EAcA,WACLH,EACAitD,GAFK,yGAKGhtD,EAAAA,GAAAA,OAAaC,GAASF,EAAeitD,IALxC,gCAMIA,GANJ,uCAQG9sD,EAAAA,EAAAA,IAAgB,EAAD,GAAa,4BAR/B,yD,0EAYA,WACLH,EACAitD,EACAxb,GAHK,yGAMGxxC,EAAAA,GAAAA,KAAWC,GAASF,EAAeitD,EAAW,cAAe,CACjE5mB,UAAWoL,EACX0b,OAAO,IARN,gCAUI,CAAEF,UAAAA,EAAWjtD,cAAAA,IAVjB,uCAYGG,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,+CAdC,yD,sBAmBP,SAASD,GACPF,EACAitD,EACAtuD,GAEA,IAAI+B,EAAM,aAAH,OAAgBV,EAAhB,oBAUP,OARIitD,IACFvsD,GAAO,IAAJ,OAAQusD,IAGTtuD,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,ECpET,IAAM0sD,GAAiB,CAAC,OAAQ,SAAU,UAAW,MAAO,QAErD,SAASC,GAAgBC,GAC9B,OAAOF,GAAehuD,SAASkuD,G,qCCe1B,SAASC,GAAT,GAGG,QAFRL,EAEQ,EAFRA,QACAM,EACQ,EADRA,uBAEMC,GAAsBJ,GAAgBH,EAAQpmD,MAC9C4mD,EAA0BC,GAAAA,QAAAA,eAAA,UAC9BT,EAAQU,YADsB,aAC9B,EAAcC,QAEVC,EAA0BH,GAAAA,QAAAA,eAAA,UAC9BT,EAAQU,YADsB,aAC9B,EAAcC,QAGhB,OACE,gBAAK3yD,UAAU,MAAf,UACE,gBAAKA,UAAU,gCAAf,UACE,UAAC,MAAD,YACE,SAAC,MAAD,CAAY2F,MAAM,kBAAkB0K,KAAK,UAAUC,aAAW,KAC9D,SAAC,MAAD,CAAOtQ,UAAU,YAAjB,UACE,UAACw1B,GAAA,EAAD,CAAczkB,OAAO,8BAArB,WAEE,SAACykB,GAAA,MAAD,CAAkB7vB,MAAM,OAAxB,SAAgCqsD,EAAQpmD,QACxC,UAAC4pB,GAAA,MAAD,CAAkB7vB,MAAM,KAAxB,UACGqsD,EAAQ1mD,GACRinD,IACC,SAAC,KAAD,CAAYp0C,eAAe,sBAA3B,UACE,UAAC,MAAD,CACE,UAAQ,+BACRpQ,KAAK,SACLC,MAAM,SACNC,QAAS,kBAAMqkD,KAJjB,WAME,SAAC/hD,EAAA,EAAD,CACEF,KAAK,UACLG,SAAO,EACPxQ,UAAU,cACV,cAAY,SAVhB,+BAiBN,SAACw1B,GAAA,MAAD,CAAkB7vB,MAAM,SAAxB,SACGqsD,EAAQa,UAEX,SAACr9B,GAAA,MAAD,CAAkB7vB,MAAM,QAAxB,SAAiCqsD,EAAQc,SACzC,SAACt9B,GAAA,MAAD,CAAkB7vB,MAAM,aAAxB,SACGyL,OAAO4gD,EAAQe,eAElB,SAACv9B,GAAA,MAAD,CAAkB7vB,MAAM,WAAxB,SACGyL,OAAO4gD,EAAQgB,YAIjBR,EAAYt1D,KAAI,SAACymB,GAAD,OACf,UAAC,EAAAwb,SAAD,YACE,SAAC3J,GAAA,MAAD,CACE7vB,MAAK,qBAAgBstD,EAAiBtvC,EAAOuvC,SAD/C,+BAGkBD,EAAiBtvC,EAAOwvC,aAE1C,SAAC39B,GAAA,MAAD,CACE7vB,MAAK,uBAAkBstD,EAAiBtvC,EAAOyvC,UADjD,oCAGuBC,EACnB1vC,EAAO2vC,yBAVE3vC,EAAOuvC,WAiBvBN,EAAY11D,KAAI,SAACymB,GAAD,OACf,UAAC,EAAAwb,SAAD,YACE,SAAC3J,GAAA,MAAD,CACE7vB,MAAK,qBAAgBstD,EAAiBtvC,EAAOuvC,SAD/C,+BAGkBD,EAAiBtvC,EAAOwvC,aAE1C,SAAC39B,GAAA,MAAD,CACE7vB,MAAK,uBAAkBstD,EAAiBtvC,EAAOyvC,UADjD,oCAGuBC,EACnB1vC,EAAO2vC,yBAVE3vC,EAAOuvC,uBAsBpC,SAASD,EAAiBM,GACxB,OAAOA,EAAc,MAAH,OAASA,GAAgB,GAG7C,SAASF,EAAsBG,GAC7B,OAAOA,EAAkB,aACf31D,OAAOuI,OAAOotD,GAAoBtnD,KAAK,QAC7C,I,2GC/GD,SAASunD,GAAT,GAAiD,IAAlB/tD,EAAkB,EAAlBA,QAC9BguD,EAAiB71D,OAAOyG,QAAQoB,GAEtC,OAA8B,IAA1BguD,EAAel1D,OACV,MAIP,gBAAKwB,UAAU,MAAf,UACE,gBAAKA,UAAU,gCAAf,UACE,UAAC,MAAD,YACE,SAAC,MAAD,CAAY2F,MAAM,kBAAkB0K,KAAK,UAAUC,aAAW,KAC9D,SAAC,MAAD,CAAOtQ,UAAU,YAAjB,UACE,SAACw1B,GAAA,EAAD,CAAczkB,OAAO,qCAArB,SACG2iD,EAAex2D,KAAI,gB,IAAA,G,EAAA,E,4CAAA,I,kxBAAEwB,EAAF,KAAOgE,EAAP,YAClB,SAAC8yB,GAAA,MAAD,CAA4B7vB,MAAOjH,EAAnC,SACGgE,GADoBhE,iB,SCLvC,IAAMi1D,GAAe,CACnB,iBACA,eACA,eACA,aACA,WAGK,SAASC,GAAT,GAKG,ICiBFrhC,EDrBNshC,EAIQ,EAJRA,kBACArd,EAGQ,EAHRA,SACA1xC,EAEQ,EAFRA,cACAitD,EACQ,EADRA,UAEM+B,GCgBAvhC,GAAS7G,EAAAA,EAAAA,mBAER9e,EAAAA,EAAAA,cACL,gBACE2pC,EADF,EACEA,YADF,OLlBG,SAAP,uCK0BUud,CARN,EAEEhvD,cAFF,EAGEitD,UAKkDxb,KACpD,CACErpC,UAAW,YAAkC,IAA/B6kD,EAA+B,EAA/BA,UAAWjtD,EAAoB,EAApBA,cAEvB,OADAyJ,EAAAA,GAAAA,IAAc,sCAAuCwjD,GAC9Cx/B,EAAO1G,kBAAkB,CAC9B,eACA/mB,EACA,SACA,WACAitD,KAGJpvC,QAAS,SAAC9I,IACR+I,EAAAA,GAAAA,IACE,UACA/I,EACA,mDDzCR,OAAiC,IAA7Bg6C,EAAkBr1D,OACb,MAIP,gBAAKwB,UAAU,MAAf,UACE,gBAAKA,UAAU,gCAAf,UACE,UAAC,MAAD,YACE,SAAC,MAAD,CAAY2F,MAAM,wBAAwB0K,KAAK,SAASC,aAAW,KACnE,SAAC,MAAD,CAAOtQ,UAAU,YAAjB,UACE,SAACw1B,GAAA,EAAD,CACE9f,QAASi+C,GACT5iD,OAAO,mCAFT,SAIG8iD,EAAkB32D,KAAI,SAACm5C,GAAD,OACrB,2BACE,yBACE,SAAChsC,EAAA,EAAD,CACEC,GAAG,8BACHC,OAAQ,CACNlN,GAAIg5C,EAAU/qC,GACdkrC,SAAAA,GAEFvpC,MAAOopC,EAAUzqC,KANnB,SAQGyqC,EAAUzqC,UAGf,wBAAKyqC,EAAU0d,aAAe,OAC9B,wBAAK1d,EAAU2d,aAAe,OAC9B,wBAAK3d,EAAU4d,YAAc,OAC7B,yBACE,SAAC,KAAD,CAAY91C,eAAe,0BAA3B,UACE,UAAC,MAAD,CACE,6CAAqCk4B,EAAUzqC,MAC/CmC,KAAK,SACLC,MAAM,cACNC,QAAS,WACHooC,EAAU/qC,IACZwoD,EAAoBxlD,OAAO,CACzBioC,YAAaF,EAAU/qC,GACvBxG,cAAAA,EACAitD,UAAAA,KATR,WAcE,SAACxhD,EAAA,EAAD,CACEF,KAAK,UACLG,SAAO,EACP,aAAW,2BAjBf,yBAlBG6lC,EAAU/qC,kB,ooCE9B7Bu6B,GAAa,aACb0qB,IAAW/Y,EAAAA,EAAAA,GAAY3R,IAEvB8J,GAAU,CACdygB,GAAY,OAAQ,QACpBA,GAAY,UAAW,WACvBA,GAAY,QAAS,SACrBA,GAAY,OAAQ,WACpBA,GAAY,SAAU,WAQjB,SAAS8D,GAAT,GAGG,IAFR9F,EAEQ,EAFRA,oBACA30C,EACQ,EADRA,YAEMpW,EAAWktD,KACXrrB,EAAUipB,EAAWC,GACrBiD,EAAiB,IACrBnsB,EAAQ7zB,QAAO,SAACigD,GAAD,OAASA,EAAIzb,WAAS34C,KAAI,SAACo0D,GAAD,OAASA,EAAIj0D,OAGlDi9C,EAAkB+V,GACtB52C,EAAYnO,IACZ,OACAsF,EAC2B,IAA3BvN,EAAS20C,iBAGX,OACE,SAAC,IAAD,CAAaz7B,QAAS,CAAE9C,YAAAA,GAAxB,UACE,SAAC,MAAD,CACE4sB,aAAc,CACZh2B,KAAM,WACNpD,MAAO,cAET+4B,cAAe3iC,EACf6hC,QAASA,EACTa,mBAAoB,SAACwrB,GAAD,OAClB,SAAClD,GAAD,CACExlB,cAAe0oB,EACfjD,oBAAkB,EAClBhxC,WAAY7D,EAAYnO,MAG5B6C,UAAWmsC,EAAgBnsC,UAC3Bi4B,gBAAiB,SAAC0C,GAAD,OAAUA,EAAIC,SAASorB,aACxC5tB,kBAAmB,CAAEsR,cAAex0C,EAASw0C,eAC7C/R,oBAAqB,SAACa,GACpB,IAAM6qB,EAAgB7qB,EAAc8qB,WAAWpgD,QAAO,SAACqgD,GAAD,OACpDL,MAAAA,OADoD,EACpDA,EAAgBntD,SAASwtD,EAAYr0D,OAGvC,OACE,iCACE,SAAC4nC,GAAA,EAAD,CACEC,QAASssB,EACTrrD,SAAU,SAAC0xC,GACTx0C,EAASy0C,iBAAiBD,GAC1BlR,EAAcmR,iBAAiBD,IAEjCn1C,MAAOW,EAASw0C,iBAElB,SAAC,MAAD,CACEpK,cAAc,SAAC0iB,GAAD,CAAsBxgB,QAASA,KAD/C,UAGE,SAACsgB,GAAD,CACEC,kBAAgB,EAChB7sD,SAAUA,UAMpBwiC,WAAYA,GACZD,QAAS0U,EAAgB92C,MAAQ,GACjC8iC,kBAAkB,0B,sCCpG1B,IAAMgZ,GAAgCvrC,EAAQ,MACxCqgD,GAAgCrgD,EAAQ,MACxCsgD,GAAgCtgD,EAAQ,OACxCugD,GAAgCvgD,EAAQ,OACxCwgD,GAAgCxgD,EAAQ,OACxCygD,GAAgCzgD,EAAQ,MACxC0gD,GAAgC1gD,EAAQ,OAQjC2gD,GAAmB//C,IAAAA,OACtB,8BAA+B,IACtCC,UAAU,kBAAkBlN,EAAAA,EAAAA,ICJxB,YAAoD,IAAtB+R,EAAsB,EAAhC3D,SACnB6+C,GAAUv7C,EAAAA,GAAAA,IAAmBK,EAAY1P,MAIzC6qD,KAFe1vD,EAAAA,GAAAA,IAAQuU,EAAYnO,IAAI,SAAC2W,GAAD,cAAW,UAACA,EAAK4yC,aAAN,QAAC,EAAYC,WAE/BtxD,KAChC4qD,EAAsBuG,GAAWC,EACvC,OACE,iCACE,SAAC50B,GAAA,EAAD,CACE/yB,MAAM,iBACN4xB,YAAa,CAAC,CAAEl5B,MAAO,eACvBs6B,QAAM,KAGR,SAACi0B,GAAD,CACE9F,oBAAqBA,EACrB30C,YAAaA,SDbwB,CAAC,cAE3CkK,OAAOA,IAAQ9gB,KAGlB,SAAS8gB,GAAOoxC,GACdA,EAAuBC,SAAS,CAC9BnyD,KAAM,oBACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAKjBmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,8BACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,GACbrrC,WAAY,0BAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,qCACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa6U,GACbngD,WAAY,iCAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,mCACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa8U,GACbpgD,WAAY,iCAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,wBACN2C,IAAK,qBACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa+U,GACbrgD,WAAY,gCAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,sCACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagV,GACbtgD,WAAY,iCAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,mCACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiV,GACbvgD,WAAY,8BAKlB8gD,EAAuBC,SAAS,CAC9BnyD,KAAM,oCACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAakV,GACbxgD,WAAY,+BEhGb,IAAMihD,GAAcvgD,IAAAA,OACjB,+BAAgC,CAAC+/C,KACxC9/C,UACC,OACAlN,EAAAA,EAAAA,IVuFG,YAMG,IALRtB,EAKQ,EALRA,OACAD,EAIQ,EAJRA,SAIQ,IAHR4nD,KAAAA,OAGQ,MAHD,GAGC,MAFRoH,SAAAA,OAEQ,MAFG,GAEH,EADRC,EACQ,EADRA,YAEM1vD,GAAUmY,EAAAA,EAAAA,UAAQ,WACtB,IAAMnY,GAAWqoD,GAAQ,IAAI7wD,KAAI,SAACm4D,GAAD,MAAU,CACzC3yD,MAAO2yD,EAAI3yD,MACXiD,MACEwvD,EAASjxD,SAASmxD,EAAI3yD,QAAU0yD,EAAhC,UACOC,EAAIxyD,KADX,aAEIwyD,EAAIxyD,SAQZ,OALA6C,EAAQ4vD,QAAQ,CACd5yD,MAAO,MACPiD,MAAO,iBAGFD,IACN,CAACqoD,EAAMoH,EAAUC,IAEpB,SAASG,EAAe72D,EAAa82D,GACnC,IAAMC,EAAY,GAAH,MACVrvD,GADU,SAEZ1H,EAAM82D,IAETrvD,EAASsvD,GAgCX,IAAMC,GAAS73C,EAAAA,EAAAA,UAAQ,WACrB,IAAM8C,EAAUva,EAAOuvD,aAAazpD,KAAK,KACnC0pD,EAAwB,QAAZj1C,EAAoB,OAApB,iBAAuCA,EAAvC,KACZk1C,EAAOzvD,EAAO0vD,aAAa5pD,KAAK,KACtC,wBAAkB0pD,EAAlB,yBAA4CC,EAA5C,SACC,CAACzvD,EAAOuvD,aAAcvvD,EAAO0vD,eAE1BC,GAAWl4C,EAAAA,EAAAA,UACf,kBACEnY,EAAQ2L,QAAO,SAAClK,GAAD,OAAYf,EAAOuvD,aAAazxD,SAASiD,EAAOzE,YACjE,CAAC0D,EAAOuvD,aAAcjwD,IAGlBswD,GAAWn4C,EAAAA,EAAAA,UACf,kBACE8zC,GAA0BtgD,QAAO,SAAClK,GAAD,OAC/Bf,EAAO0vD,aAAa5xD,SAASiD,EAAOzE,YAExC,CAAC0D,EAAO0vD,eAGV,OACE,4BACE,iBAAK91D,UAAU,aAAf,WACE,iBAAKA,UAAU,4CAAf,wBAEE,SAACm1C,GAAA,EAAD,CACE93C,GAAG,UACHwF,KAAK,UACL4xB,QAASruB,EAAOwR,QAChBzR,SA3DV,WACEovD,EAAe,WAAYnvD,EAAOwR,UA2D1B5X,UAAU,aAGd,gBAAKA,UAAU,+BAAf,UACE,SAAC,KAAD,CACEiR,SAAO,EACPK,mBAAiB,EACjB5O,MAAOqzD,EACPpF,aAAa,EACbsF,uBAAuB,EACvBC,YAAa9vD,EAAOwR,QACpBzR,SAnEV,SACEqvD,EACAW,GAEA,IAG2C,EAHrCC,EAAgBhwD,EAAhBgwD,YACFT,EAAeH,EAASt4D,KAAI,SAACiK,GAAD,OAAYA,EAAOzE,SAEzB,kBAAtByzD,EAAW1yD,SACb2yD,EAA2C,SAA7B,UAAAD,EAAWhvD,cAAX,eAAmBzE,OACjCizD,EAAeA,EAAatkD,QAAO,SAAC3O,GAAD,OACjC0zD,EAAwB,QAAV1zD,EAA4B,QAAVA,MAIpC,IAAM+yD,EAAY,GAAH,MAAQrvD,GAAR,IAAgBuvD,aAAAA,EAAcS,YAAAA,IAC7CjwD,EAASsvD,IAqDD/vD,QAASA,EACT2wD,WAAY,CAAExE,iBAAAA,WAKnBzrD,EAAOwR,UACN,iCACE,iBAAK5X,UAAU,aAAf,WACE,iBAAKA,UAAU,4CAAf,0BAEE,SAAC+L,GAAA,EAAD,CAASC,QAAQ,2LAEnB,gBAAKhM,UAAU,+BAAf,UACE,SAAC,KAAD,CACEiR,SAAO,EACPK,mBAAiB,EACjB5O,MAAOszD,EACPtwD,QAASisD,GACT0E,WAAY,CAAEzE,OAAAA,IACdzrD,SAtEd,SAA8BqvD,GAC5BD,EACE,eACAC,EAASt4D,KAAI,SAACiK,GAAD,OAAYA,EAAOzE,mBAwE5B,iBAAK1C,UAAU,aAAf,WACE,iBAAKA,UAAU,4CAAf,qBAEE,SAAC+L,GAAA,EAAD,CAASC,QAAQ,sGAEnB,gBAAKhM,UAAU,qBAAf,UACE,0BAAO01D,iBU9NR,CAAC,SAAU,WAAY,OAAQ,WAAY,iBAErD9gD,UAAU,sBAAsBlN,EAAAA,EAAAA,ICS5B,WAAoB,M,IACnBkiB,GAASC,EAAAA,EAAAA,aACT4B,GAAcC,EAAAA,EAAAA,kBAEpB,G,GAAkDxjB,EAAAA,EAAAA,UAEhD,I,EAFF,E,g0BAAO2rD,EAAP,KAA0ByC,EAA1B,KAGA,GAEIj5C,EAAAA,EAAAA,4BADF9S,OAAcwnD,EADhB,EACY10D,GAAem5C,EAD3B,EAC2BA,SAErB1xC,GAAgBsY,EAAAA,EAAAA,KAEhBm5C,ELnBD,SAAoBzxD,EAA8BitD,GACvD,OAAO5sD,EAAAA,EAAAA,UACL,CAAC,eAAgBL,EAAe,SAAU,WAAYitD,IACtD,kBLXG,SAAP,qCKWUyE,CAAW1xD,EAAeitD,KAChC,CACEpvC,QAAS,SAAC9I,IACR+I,EAAAA,GAAAA,IAAY,UAAW/I,EAAc,4BKatB48C,CAAW3xD,EAAeitD,GACzC2E,GLPC9pD,EAAAA,EAAAA,cACL,mBLRG,SAAP,qCKcU+pD,CANN,EACE7xD,cADF,EAEEitD,aAKF,CACE7kD,UAAW,SAAC6kD,IACVxjD,EAAAA,GAAAA,IAAc,+BAAgCwjD,IAEhDpvC,QAAS,SAAC9I,IACR+I,EAAAA,GAAAA,IAAY,UAAW/I,EAAc,+BKFrCygC,EAAkB+V,GAAcvrD,GAAe,EAHrC,CACdktD,QAAS,CAACD,KAYZ,IARAzpD,EAAAA,EAAAA,YAAU,WACJiuD,EAAa/yD,MAAQ82C,EAAgB92C,MACvC8yD,EA0EJ,SACEtE,EACA3X,GAeA,OAb4B,IAC1BA,EAAWn9C,KAAI,SAACm5C,GACd,IAAMugB,EAA6B5E,EAAQ6E,WAAWxgB,EAAU/qC,IAChE,OAAIsrD,EAC2C,SACxCA,GADqC,IAExCtrD,GAAI+qC,EAAU/qC,KAIX,SAvFPwrD,CAA0BP,EAAa/yD,KAAM82C,EAAgB92C,SAGhE,CAAC+yD,EAAa/yD,KAAM82C,EAAgB92C,QAElC+yD,EAAa/yD,KAChB,OAAO,KAGT,IAAMwuD,EAAUuE,EAAa/yD,KAEvBoG,EAAkB,UAAAooD,EAAQ5Y,iBAAR,SAAmBC,gBACvC,IAAIlmC,GAAAA,EAAyB6+C,EAAQ5Y,UAAUC,sBAC/CzoC,EAEJ,OACE,iCACE,SAACovB,GAAA,EAAD,CACE/yB,MAAM,kBACN4xB,YAAa,CACX,CAAEQ,KAAM,kBAAmB15B,MAAO,YAClC,CACE05B,KAAM,0BACN15B,MAAO4wD,EAAa/yD,KAAKoI,UAI/B,SAACymD,GAAD,CACEL,QAASuE,EAAa/yD,KACtB8uD,uBAnDmB,8CAsDrB,SAAC3jD,GAAA,EAAD,CACElC,gBAAiB,kBACfgf,EAAYI,kBAAkB,CAC5B,eACA/mB,EACA,SACA,WACAitD,KAGJnoD,gBAAiBA,EACjBE,aAAcK,EAAAA,EAAAA,QACdyE,uBAAwBujD,GAAgBoE,EAAa/yD,KAAKoI,MAC1D3B,WAAY8nD,KAEd,SAAC0B,GAAD,CAAqB/tD,QAAS6wD,EAAa/yD,KAAKuzD,WAChD,SAACnD,GAAD,CACEC,kBAAmBA,EACnBrd,SAAUA,EACV1xC,cAAeA,EACfitD,UAAWA,OA1EQ,kDA+EzB,8GAE0BjrC,EAAAA,GAAAA,IADR,sCADlB,eAKI4vC,EAAsBpoD,OACpB,CAAExJ,cAAAA,EAAeitD,UAAAA,GACjB,CACE7kD,UAAW,WACT0c,EAAOuB,aAAaC,GAAG,sBATjC,4CA/EyB,yBDT8B,KAAKvoB,KETjDm0D,GAAcriD,IAAAA,OAAe,yBAA0B,CAClEugD,GACAhE,KACCruD,KCRH,MAAMy8C,GAAgCvrC,EAAQ,OACxCqgD,GAAgCrgD,EAAQ,OACxCsgD,GAAgCtgD,EAAQ,OACxCugD,GAAgCvgD,EAAQ,OACxCwgD,GAAgCxgD,EAAQ,MACxCygD,GAAgCzgD,EAAQ,OACxC0gD,GAAgC1gD,EAAQ,OACxCkjD,GAAgCljD,EAAQ,OACxCmjD,GAAgCnjD,EAAQ,OACxCojD,GAAiCpjD,EAAQ,MACzCqjD,GAAiCrjD,EAAQ,MACzCsjD,GAAiCtjD,EAAQ,MACzCujD,GAAiCvjD,EAAQ,OACzCwjD,GAAiCxjD,EAAQ,OACzCyjD,GAAiCzjD,EAAQ,MACzC0jD,GAAiC1jD,EAAQ,OACzC2jD,GAAiC3jD,EAAQ,OACzC4jD,GAAiC5jD,EAAQ,OACzC6jD,GAAiC7jD,EAAQ,OACzC8jD,GAAiC9jD,EAAQ,OACzC+jD,GAAiC/jD,EAAQ,MACzCgkD,GAAiChkD,EAAQ,OACzCikD,GAAiCjkD,EAAQ,OACzCkkD,GAAiClkD,EAAQ,OACzCmkD,GAAiCnkD,EAAQ,OACzCokD,GAAiCpkD,EAAQ,OACzCqkD,GAAiCrkD,EAAQ,OACzCskD,GAAiCtkD,EAAQ,OACzCukD,GAAiCvkD,EAAQ,OACzCwkD,GAAiCxkD,EAAQ,OACzCykD,GAAiCzkD,EAAQ,MAQ/CY,IAAAA,OAAe,mBAAoB,CAAC,gBAAiBqiD,KAAcrzC,OAAO,CACxE,yBACA,SAAUoxC,GAGR,IAAI/7B,EAAS,CACXn2B,KAAM,SACNs/C,OAAQ,WACR38C,IAAK,UACLizD,UAAU,EACVxQ,QAAO,kHAAkB,SAAiBnyC,EAAUmpC,EAAQwI,EAAQiR,EAAiBhV,EAAkBl6B,EAAem6B,EAAciE,GAClI,OAAO3I,GAAO2F,UACZ,GAAK,CAAC,EAAG,EAAG,GAAG1gD,SAAS4R,EAAS/L,MAIjC,IACE,MAAMkN,QAqBR2tC,eAAmC9uC,GACjC,IAEE,aADM8xC,EAAc9hD,KAAKgQ,EAASxK,IAC3B,EACP,MAAO7N,GACP,OAAO,GA1BYk7D,CAAoB7iD,GAOzC,GALsB,IAAlBA,EAAS/L,YA4Bf66C,eAAoC9uC,EAAUmB,GACxCnB,EAASkC,SAAWf,SAGlByhD,EAAgBE,eAAe9iD,EAASxK,GAAI,CAAE0M,OAAQf,IA/BpD4hD,CAAqB/iD,EAAUmB,GAEvCnB,EAASkC,OAASf,EAEdA,IAAWgB,EAAAA,GAAAA,KACb,MAAM,IAAIva,MAAM,+BAGlBgmD,EAAiBoV,cAAchjD,EAASxK,IACxCo4C,EAAiBqV,qBAAqBjjD,EAASghC,WAC/C4M,EAAiBsV,yBAAyBljD,EAASkC,cAE7C2rC,EAAasV,oBAAoBnjD,GACvC,MAAOrY,GACP+rB,EAAcxc,MAAM,6BAA8BvP,GAClDgqD,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,SAtB1CwnB,EAAOr8B,GAAG,wBA4Cd8tC,EAAU,CACZr2D,KAAM,iBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,GACbrrC,WAAY,oBACZklD,aAAc,UAKhBx1C,EAAS,CACX9gB,KAAM,wBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa6U,GACbngD,WAAY,sBAKdmlD,EAAiB,CACnBv2D,KAAM,qBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa8U,GACbpgD,WAAY,yBACZklD,aAAc,UA0ChBE,EAAY,CACdx2D,KAAM,mBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa+U,GACbrgD,WAAY,yBAyBdqlD,EAAS,CACXz2D,KAAM,gBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagV,GACbtgD,WAAY,sBAKdslD,EAAS,CACX12D,KAAM,gBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiV,GACbvgD,WAAY,sBAKd24C,EAAQ,CACV/pD,KAAM,sBACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACV1V,YAAakV,GACbxgD,WAAY,qBAKdulD,EAAa,CACf32D,KAAM,sBACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa0X,GACbhjD,WAAY,0BAKdwlD,EAAc,CAChB52D,KAAM,uBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa2X,GACbjjD,WAAY,2BAKdylD,EAAW,CACb72D,KAAM,kBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa4X,GACbljD,WAAY,wBAed0lD,EAAkB,CACpB92D,KAAM,sBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa6X,GACbnjD,WAAY,6BA+Bd2lD,EAAU,CACZ/2D,KAAM,iBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa8X,GACbpjD,WAAY,uBAKd4lD,EAAS,CACXh3D,KAAM,wBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa+X,GACbrjD,WAAY,sBAKd6lD,EAAiB,CACnBj3D,KAAM,qBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagY,GACbtjD,WAAY,4BAKd8lD,EAAW,CACbl3D,KAAM,kBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiY,GACbvjD,WAAY,wBAKdyI,EAAU,CACZ7Z,KAAM,0BACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAakY,GACbxjD,WAAY,uBAKd+lD,EAAkB,CACpBn3D,KAAM,sBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAamY,GACbzjD,WAAY,6BAKdgmD,EAAc,CAChBp3D,KAAM,+BACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaoY,GACb1jD,WAAY,2BAKdimD,EAAS,CACXr3D,KAAM,gBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaqY,GACb3jD,WAAY,sBAKdqzC,EAAQ,CACVzkD,KAAM,sBACN2C,IAAK,2DACLyvD,MAAO,CACL,WAAY,CACV1V,YAAasY,GACb5jD,WAAY,qBAKdkmD,EAAiB,CACnBt3D,KAAM,gCACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACV1V,YAAauY,GACb7jD,WAAY,yBAKdmmD,EAAgB,CAClBv3D,KAAM,yBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACV1V,YAAawY,GACb9jD,WAAY,2BAKdomD,EAAQ,CACVx3D,KAAM,eACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAayY,GACb/jD,WAAY,qBAKdqmD,EAAkB,CACpBz3D,KAAM,0BACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa0Y,GACbhkD,WAAY,+BAWdsmD,EAAO,CACT13D,KAAM,oBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa2Y,GACbjkD,WAAY,oBAKdumD,EAAW,CACb33D,KAAM,yBACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa4Y,GACblkD,WAAY,wBAKdwmD,EAAY,CACd53D,KAAM,mBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa6Y,GACbnkD,WAAY,yBAKdymD,EAAU,CACZ73D,KAAM,iBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa8Y,GACbpkD,WAAY,uBAKd0mD,EAAS,CACX93D,KAAM,wBACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa+Y,GACbrkD,WAAY,sBAKd2mD,EAAe,CACjB/3D,KAAM,+BACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagZ,GACbtkD,WAAY,4BAKd4mD,EAAiB,CACnBh4D,KAAM,qBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiZ,GACbvkD,WAAY,4BAmClB8gD,EAAuBC,SAASkE,GAChCnE,EAAuBC,SAASrxC,GAChCoxC,EAAuBC,SAASoE,GAEhCrE,EAAuBC,SAzbC,CACtBnyD,KAAM,0BACN2C,IAAK,UAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,0BAobjBmgD,EAAuBC,SA/aI,CACzBnyD,KAAM,8BACN2C,IAAK,wBAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BAGfrK,OAAQ,CACNuwD,YAAa,GACbhyD,KAAM,MAqaVisD,EAAuBC,SAjaK,CAC1BnyD,KAAM,+BACN2C,IAAK,OAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BA4ZjBmgD,EAAuBC,SAASh8B,GAChC+7B,EAAuBC,SAASqE,GAChCtE,EAAuBC,SA9YZ,CACTnyD,KAAM,cACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,eA0YjBmgD,EAAuBC,SArYL,CAChBnyD,KAAM,sBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBAiYjBmgD,EAAuBC,SAASsE,GAChCvE,EAAuBC,SAASuE,GAChCxE,EAAuBC,SAASpI,GAChCmI,EAAuBC,SAASwE,GAChCzE,EAAuBC,SAASyE,GAChC1E,EAAuBC,SAAS0E,GAChC3E,EAAuBC,SAhUT,CACZnyD,KAAM,0BACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,yBA4TjBmgD,EAAuBC,SAAS2E,GAChC5E,EAAuBC,SA7SX,CACVnyD,KAAM,eACN2C,IAAK,SACLizD,UAAU,IA2SZ1D,EAAuBC,SAxSZ,CACTnyD,KAAM,oBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBAoSjBmgD,EAAuBC,SA/RL,CAChBnyD,KAAM,2BACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBA2RjBmgD,EAAuBC,SAAS4E,GAChC7E,EAAuBC,SAAS6E,GAChC9E,EAAuBC,SAAS8E,GAChC/E,EAAuBC,SAAS+E,GAChChF,EAAuBC,SAASt4C,GAChCq4C,EAAuBC,SAASgF,GAChCjF,EAAuBC,SAASiF,GAChClF,EAAuBC,SAASkF,GAChCnF,EAAuBC,SAAS1N,GAChCyN,EAAuBC,SAASmF,GAChCpF,EAAuBC,SAASoF,GAChCrF,EAAuBC,SAASqF,GAChCtF,EAAuBC,SAASsF,GAChCvF,EAAuBC,SApJX,CACVnyD,KAAM,eACN2C,IAAK,SACLizD,UAAU,IAkJZ1D,EAAuBC,SAASuF,GAChCxF,EAAuBC,SAASwF,GAChCzF,EAAuBC,SAASyF,GAChC1F,EAAuBC,SAAS0F,GAChC3F,EAAuBC,SAAS2F,GAChC5F,EAAuBC,SAAS4F,GAChC7F,EAAuBC,SAAS6F,GAChC9F,EAAuBC,SAzEa,CAClCnyD,KAAM,+BACN2C,IAAK,eACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sCAqEjBmgD,EAAuBC,SAhEJ,CACjBnyD,KAAM,oBACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BA4DjBmgD,EAAuBC,SAvDA,CACrBnyD,KAAM,2BACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mC,gFCljBN,MAAMmmD,EAEnB/b,YAAY7qC,GACVpV,KAAKoV,OAASA,EAEdpV,KAAKi8D,gBAAkB,GAGzBC,sBAAsBC,GACpB,OAAQzmC,IACN11B,KAAKoV,OAAOE,YAAW,KACrB6mD,EAAWC,QAAU1mC,MAK3B2mC,WACMr8D,KAAKi8D,gBAAgBx8D,SAAWO,KAAK+2D,aAAat3D,SACpDO,KAAKi8D,gBAAkBj8D,KAAK+2D,aAC5B/2D,KAAKs8D,qBAAuBx9D,OAAOwG,YAAYtF,KAAK+2D,aAAa54D,KAAKo+D,GAAQ,CAACA,EAAIJ,WAAYn8D,KAAKk8D,sBAAsBK,S,+ECnBhI,MAAMhc,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,wBAAyB,CACpE2qC,YAAaD,EACbxrC,SAAU,CACRgiD,aAAc,KAEhB7hD,WAAUA,EAAAA,W,iBCTZU,QAAQ5W,OAAO,oBAAoBkW,WAAW,mCAAoC,CAChF,WACE,IAAIsnD,EAAOx8D,KAEXA,KAAK+P,MAAQ,CACX0sD,UAAW,IAGbD,EAAKE,KAEL,WACMF,EAAKzsD,MAAM0sD,UAAU34D,OAAS04D,EAAK14D,MAAQ04D,EAAKzsD,MAAM0sD,UAAUE,oBAAsBH,EAAKG,mBAG/FH,EAAKI,oBAAoBJ,EAAKzsD,MAAM0sD,YAGtCz8D,KAAKmjD,QAAU,WACbqZ,EAAKzsD,MAAM0sD,UAAY,CACrB34D,KAAM04D,EAAK14D,KAAO04D,EAAK14D,KAAO,KAC9B64D,kBAAmBH,EAAKG,wB,qBCpBhC,MAAMpc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,yBAA0B,CACrE2qC,YAAaD,EACbrrC,WAAY,mCACZH,SAAU,CACRjR,KAAM,IACN64D,kBAAmB,IACnBC,oBAAqB,Q,sBCRzB,MAAMrc,EAAgCvrC,EAAQ,KAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,4BAA6B,CACxE2qC,YAAaD,EACbrrC,WAAY,yC,iBCJdU,QAAQ5W,OAAO,oBAAoBkW,WAAW,sCAAuC,CACnF,eACA,gBACA,SAAUwuC,EAAcj5B,GACtB,IAAI+xC,EAAOx8D,KAEXA,KAAKmjD,QAAU,WACbO,EAAaC,SACV3nC,MAAK,SAAiBvX,GACrB+3D,EAAKK,WAAap4D,EAAKhF,UAExBq9D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gD,sBCZ9C,MAAMylC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,mBAAoB,CAC/D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,Q,sBCbrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,6BAA8B,CACzE2qC,YAAaD,EACbrrC,WAAY,uCACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVrJ,UAAW,IACX2lB,kBAAmB,IACnBC,kBAAmB,IACnBC,4BAA6B,IAC7BC,6BAA8B,IAC9BC,mBAAoB,IACpB5lB,SAAU,Q,sFCdd7hC,QAAQ5W,OAAO,oBAAoBkW,WAAW,uCAAwC,CACpF,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb19D,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,GAEhB1pB,EAAKypB,WACR99D,KAAK+P,MAAM2tD,WAAY,KAI3B19D,KAAK69D,cAAgB,SAAUxpB,GAC7B,MAAkC,KAA3BA,EAAK2pB,mBAGdh+D,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK6mC,SAAUwN,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGpEO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK6mC,SAAUwN,IACnBr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAGvB,IAAU5+D,KAAK6mC,SAAUwN,IACvBA,EAAKypB,UAAW,EAChBzpB,EAAK0pB,aAAc,U,sBC7E3B,MAAMxd,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,8BAA+B,CAC1E2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACTk4B,UAAW,IACXpe,SAAU,IACVC,QAAS,IACTC,aAAc,Q,qBCZlB,MAAMN,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,Q,sBCXlB,MAAMN,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdme,eAAgB,IAChBjC,aAAc,IACdkC,eAAgB,IAChBC,kBAAmB,IACnBC,iBAAkB,IAClB1Q,YAAa,IACbuO,gBAAiB,Q,0CCjBrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,IAAIonD,EAAOx8D,KAEXA,KAAK+uD,QAAU,CACbh/C,MAAO,CACL6uD,MAAM,EACN/lD,SAAS,EACTumD,gBAAgB,EAChBC,kBAAkB,IAItBr/D,KAAKs/D,aAAe,SAAU37D,GAC5B,IAAIkqD,EAAQlqD,EACRorD,EAAUyN,EAAKzN,QACnB,SAA8B,IAAzBlB,EAAM0R,gBAAwBxQ,EAAQh/C,MAAMsvD,kBAA+C,IAAzBxR,EAAM0R,gBAAwBxQ,EAAQh/C,MAAMqvD,iBAMrHp/D,KAAKw/D,oBAAsB,WACzB,IAAIzQ,EAAU/uD,KAAK+uD,QAAQh/C,MACvB0vD,GAAW,EACV1Q,EAAQqQ,gBAAmBrQ,EAAQsQ,mBACtCI,GAAW,GAEbz/D,KAAK+uD,QAAQh/C,MAAM8I,QAAU4mD,EAC7BlC,EAAiBmC,oBAAoB1/D,KAAK2gD,SAAU3gD,KAAK+uD,UAG3D/uD,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAGvB5+D,KAAK2/D,gC,sBCrEX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,wBAAyB,CACpE2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACd+e,oBAAqB,IACrBC,oBAAqB,IACrB9vD,MAAO,Q,yDCdX,MAAMwwC,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,oBAAoB8gE,UAAU,oBAAqB,CAChE,WAeE,MAdgB,CACdtf,YAAaD,EACbwf,SAAU,IACVC,YAAY,EACZxY,MAAO,CACLnT,KAAM,IACN4rB,WAAY,IACZC,cAAe,IACfC,YAAa,KAEfjrD,WAAY,CAAF,SAAGE,IACXA,EAAOgrD,IAAMA,EAAAA,S,sBCjBrB,MAAM7f,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,oBAAqB,CAChE2qC,YAAaD,EACbrrC,WAAY,8BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdme,eAAgB,IAChBjC,aAAc,IACdtO,YAAa,IACbuO,gBAAiB,Q,sFCbrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,8BAA+B,CAC3E,SACA,cACA,gBACA,mBACA,SAAUE,EAAQkoD,EAAa+C,EAAe9C,GAC5C3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKsgE,cAAgB,SAAUjsB,GAC7B,OAAOgsB,EAAcjN,gBAAgB/e,IAGvCr0C,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,KAMjBz9D,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKsgE,cAAcjsB,IAG7Br0C,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,4BAGP3/D,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAChCvpB,EAAKypB,SAAWF,GAGlB59D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAOA,EAAKmsB,KAAK/gE,OAAS,GAG5BO,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,mB,sBC1E3C,MAAMnd,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,qBAAsB,CACjE2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,Q,sBCXlB,MAAMN,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,iBAAkB,CAC7D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACd+e,oBAAqB,IACrBC,oBAAqB,IACrB7C,gBAAiB,Q,qBCdrB,MAAMzc,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,mBAAoB,CAC/D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,Q,sBCbrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,wBAAyB,CACpE2qC,YAAaD,EACbrrC,WAAY,kCACZH,SAAU,CACR8xB,QAAS,IACT65B,UAAW,IACX/f,SAAU,IACVC,QAAS,IACTC,aAAc,IACdx8B,MAAO,IACPs8C,WAAY,IACZpC,WAAY,IACZqC,mBAAoB,Q,kECZxBhrD,QAAQ5W,OAAO,oBAAoBkW,WAAW,kCAAmC,CAC/E,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,IAAIonD,EAAOx8D,KAEXA,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrCu+C,sBAAsB,EACtBF,qBAAqB,EACrByS,wBAAwB,EACxBxS,wBAAwB,EACxBE,qBAAqB,EACrBC,uBAAuB,IAGzBxuD,KAAK+uD,QAAU,CACbh/C,MAAO,CACL6uD,MAAM,EACN/lD,SAAS,EACTxR,OAAQ,KAIZrH,KAAKs/D,aAAe,SAAUjrB,GAE5B,IADA,IAAI0a,EAAUyN,EAAKzN,QACVxvD,EAAI,EAAGA,EAAIwvD,EAAQh/C,MAAM1I,OAAO5H,OAAQF,IAAK,CACpD,IAAI+S,EAASy8C,EAAQh/C,MAAM1I,OAAO9H,GAClC,GAAI80C,EAAKp7B,OAAOy2C,QAAUp9C,EAAO1L,OAAS0L,EAAOwuD,QAC/C,OAAO,EAGX,OAAO,GAGT9gE,KAAK+gE,oBAAsB,WAGzB,IAFA,IAAIhS,EAAU/uD,KAAK+uD,QAAQh/C,MAAM1I,OAC7Bo4D,GAAW,EACNlgE,EAAI,EAAGA,EAAIwvD,EAAQtvD,OAAQF,IACrBwvD,EAAQxvD,GACTuhE,UACVrB,GAAW,GAGfz/D,KAAK+uD,QAAQh/C,MAAM8I,QAAU4mD,GAG/Bz/D,KAAKm+D,wBAA0B,WAE7B,IADA,IAAI6C,EAAwB,GACnBzhE,EAAI,EAAGA,EAAIS,KAAK6mC,QAAQpnC,OAAQF,IAAK,CAC5C,IAAI80C,EAAOr0C,KAAK6mC,QAAQtnC,GACxByhE,EAAsBp9D,KAAK,CAAEgD,MAAOytC,EAAKp7B,OAAOy2C,MAAOoR,SAAS,IAElE9gE,KAAK+uD,QAAQh/C,MAAM1I,OAAS,IAAS25D,EAAuB,UAG9DhhE,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBC1FX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,2BAA4B,CACvE2qC,YAAaD,EACbrrC,WAAY,qCACZH,SAAU,CACR+0B,cAAe,IACf0lB,kBAAmB,IACnByR,iBAAkB,IAClBC,cAAe,IACf3iD,WAAY,Q,gBCVhB3I,QAAQ5W,OAAO,oBAAoBkW,WAAW,qCAAsC,CAClF,KACA,SACA,iBACA,gBACA,gBACA,eACA,iBACA,kBACA,SAAU4e,EAAI40B,EAAQyY,EAAgBC,EAAe32C,EAAei3B,EAAc2f,EAAgB1H,GAChG,MAAM6C,EAAOx8D,KAEbA,KAAKshE,YAAc,SAAsB3jD,GACvC,IAAIiH,EAASw8C,EAAcG,gBAAgB5jD,EAAQ6jD,OACnD58C,EAAO68C,KAAKC,WAAWC,SAAWhkD,EAAQgkD,SAC1CR,EAAeS,OAAOjkD,EAASiH,GAC5B5I,MAAK,WACJyO,EAAcF,QAAQ,8BAA+B,sBAAwB5M,EAAQgkD,UACrFjZ,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,2BACpC6C,EAAQkkD,OAAQ,EAChBlkD,EAAQgkD,SAAWhkD,EAAQmkD,iBAIjC9hE,KAAK+8D,aAAe,SAAUjzB,GAC5B4X,EAAap6B,gBACX,gIACA,SAAmBX,GA4CvB,IAAwBq0C,EAClB+G,EA5CKp7C,IA4CLo7C,GADkB/G,EAxCHlxB,GAyCQrqC,OAC3BmW,QAAQiC,QAAQmjD,GAAU,SAAUr9C,GAClCwjD,EAAe19C,OAAO9F,GACnB3B,MAAK,WACJ,OAAOqlD,EAAeW,SAASrkD,EAAQpR,GAAIiwD,EAAKj+C,eAEjDvC,MAAK,SAAiBvX,GACrB,OAAOqvB,EAAGupB,KAAqB,IAAhB54C,EAAKhF,QAAgB4hE,EAAeY,cAAcx9D,EAAK,GAAG8H,QAE1EyP,MAAK,WACJyO,EAAcF,QAAQ,+BAAgC5M,EAAQ9Q,SAE/DiwD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,oBAtDjBlhC,KAAKmiE,aAAe,SAAUr4B,GAC5B4X,EAAaz4B,0BACX,qIACA,SAAUZ,GACR,GAAKA,EAAL,CAGA,IAAI+5C,GAAY,EACZ/5C,EAAO,KACT+5C,GAAY,GAOpB,SAA6BpH,EAAUoH,GACrC,IAAIL,EAAc/G,EAASv7D,OAC3BmW,QAAQiC,QAAQmjD,GAAU,SAAUr9C,GAClCg8C,EAAgB0I,mBAAmB7F,EAAKj+C,WAAYZ,EAAQpR,GAAI61D,GAC7DpmD,MAAK,WACJyO,EAAcF,QAAQ,+BAAgC5M,EAAQ9Q,SAE/DiwD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAAmC6C,EAAQ9Q,SAEhFq1D,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,eAlBXohC,CAAoBx4B,EAAes4B,Y,sBClD7C,MAAM7hB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,oBAAqB,CAChE2qC,YAAaD,EACbrrC,WAAY,8BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdx8B,MAAO,IACPs8C,WAAY,IACZM,iBAAkB,IAClBC,cAAe,IACfqB,gBAAiB,IACjB3B,mBAAoB,IACpB5D,gBAAiB,IACjBwF,aAAc,IACdC,kBAAmB,IACnBlkD,WAAY,Q,kECnBhB3I,QAAQ5W,OAAO,oBAAoBkW,WAAW,8BAA+B,CAC3E,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,IAAIonD,EAAOx8D,KAyDX,SAAS0iE,EAA6BruB,EAAMsuB,GACvB,IAAOA,GAAqB,SAAUC,GACvD,OAAOvuB,EAAK9nC,KAAOq2D,MAInBpG,EAAKmB,WAAWtpB,GAAM,GA7D1Br0C,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC2tD,WAAW,EACXD,cAAe,KAGjBz9D,KAAK6iE,iBAAmB,CACtB18B,QAAS,CACP0nB,MAAO,CACLjnD,MAAO,QACPk6D,SAAS,GAEX32D,UAAW,CACTvD,MAAO,YACPk6D,SAAS,GAEXjpB,MAAO,CACLjxC,MAAO,kBACPk6D,SAAS,GAEXgC,QAAS,CACPl8D,MAAO,cACPk6D,SAAS,KAKf9gE,KAAK+iE,yBACL,SAAkC58B,GAChCnmC,KAAK6iE,iBAAiB18B,QAAUA,EAChCo3B,EAAiByF,4BAA4BhjE,KAAK2gD,SAAU3gD,KAAK6iE,mBAHVxjE,KAAKW,MAM9DA,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAK,IAAIn+D,EAAI,EAAGA,EAAIS,KAAK+P,MAAM0wD,gBAAgBhhE,OAAQF,IAAK,CAC1D,IAAI80C,EAAOr0C,KAAK+P,MAAM0wD,gBAAgBlhE,GACtCS,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,aAIrC19D,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAEhC,GADAvpB,EAAKypB,SAAWF,EACZvpB,EAAKypB,UAC4C,IAA/C99D,KAAK+P,MAAM0tD,cAAc53D,QAAQwuC,EAAK9nC,KACxCvM,KAAK+P,MAAM0tD,cAAc75D,KAAKywC,EAAK9nC,QAEhC,CACL,IAAI4zB,EAAQngC,KAAK+P,MAAM0tD,cAAc53D,QAAQwuC,EAAK9nC,IAC9C4zB,GAAS,GACXngC,KAAK+P,MAAM0tD,cAAcwF,OAAO9iC,EAAO,GAG3Co9B,EAAiB2F,0BAA0BljE,KAAK2gD,SAAU3gD,KAAK+P,MAAM0tD,gBAavEz9D,KAAKmjE,YAAc,SAAUR,GAC3B,IAAIS,EAAoB,EACxBpjE,KAAK+P,MAAM0tD,cAAgBkF,EAE3B,IAAK,IAAIpjE,EAAI,EAAGA,EAAIS,KAAK6mC,QAAQpnC,OAAQF,IAAK,CAC5C,IAAI80C,EAAOr0C,KAAK6mC,QAAQtnC,GACxBmjE,EAA6BruB,EAAMsuB,GAC/BtuB,EAAKypB,YACLsF,EAIFA,IAAsBpjE,KAAK6mC,QAAQpnC,SACrCO,KAAK+P,MAAM2tD,WAAY,IAI3B19D,KAAKqjE,cAAgB,WACnB,IAAIV,EAAsBpF,EAAiB+F,0BAA0BtjE,KAAK2gD,UAC9C,OAAxBgiB,GACF3iE,KAAKmjE,YAAYR,IAIrB3iE,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAI+D,EAAsBpF,EAAiB+F,0BAA0BtjE,KAAK2gD,UAC9C,OAAxBgiB,GACF3iE,KAAKmjE,YAAYR,GAGnB,IAAI9D,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,2BACL,IAAI4D,EAAyBhG,EAAiBiG,4BAA4BxjE,KAAK2gD,UAChD,OAA3B4iB,IACFvjE,KAAK6iE,iBAAmBU,Q,sBC1IhC,MAAMhjB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,iBAAkB,CAC7D2qC,YAAaD,EACbrrC,WAAY,2BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdx8B,MAAO,IACPo/C,eAAgB,IAChBC,eAAgB,IAChB/C,WAAY,Q,iBCfhB/qD,QAAQ5W,OAAO,oBAAoBkW,WAAW,2BAA4B,CACxE,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrCu+C,sBAAsB,EACtBF,qBAAqB,EACrBG,qBAAqB,EACrBF,wBAAwB,EACxBG,uBAAuB,IAGzBxuD,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBC7CX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,mBAAoB,CAC/D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdme,eAAgB,IAChBjC,aAAc,IACd4G,iBAAkB,IAClBlV,YAAa,IACbuO,gBAAiB,Q,iBChBrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,6BAA8B,CAC1E,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,IAAIonD,EAAOx8D,KAEXA,KAAK+uD,QAAU,CACbh/C,MAAO,CACL6uD,MAAM,EACN/lD,SAAS,EACT+qD,iBAAiB,EACjBC,mBAAmB,IAIvB7jE,KAAKs/D,aAAe,SAAU37D,GAC5B,IAAIi4D,EAASj4D,EACTorD,EAAUyN,EAAKzN,QACnB,SAAK6M,EAAOkI,UAAY/U,EAAQh/C,MAAM8zD,oBAAwBjI,EAAOkI,UAAY/U,EAAQh/C,MAAM6zD,kBAMjG5jE,KAAKw/D,oBAAsB,WACzB,IAAIzQ,EAAU/uD,KAAK+uD,QAAQh/C,MACvB0vD,GAAW,EACV1Q,EAAQ6U,iBAAoB7U,EAAQ8U,oBACvCpE,GAAW,GAEbz/D,KAAK+uD,QAAQh/C,MAAM8I,QAAU4mD,EAC7BlC,EAAiBmC,oBAAoB1/D,KAAK2gD,SAAU3gD,KAAK+uD,UAG3D/uD,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBCnEX,MAAMpf,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,eAAgB,CAC3D2qC,YAAaD,EACbxrC,SAAU,CACRgvD,YAAa,IACbC,cAAe,IACfpiD,QAAS,IACTqiD,MAAO,IACPrO,QAAS,IACTnH,YAAa,IACb1I,gBAAiB,IACjBme,WAAY,IACZC,UAAW,IACXC,oBAAqB,KAEvBpE,YAAY,K,sBChBd,MAAMzf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,eAAgB,CAC3D2qC,YAAaD,EACbxrC,SAAU,CACR6M,QAAS,Q,sBCLb,MAAM2+B,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,aAAc,CACzD2qC,YAAaD,EACbxrC,SAAU,CACRkvD,MAAO,Q,sBCLX,MAAM1jB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,qBAAsB,CACjE2qC,YAAaD,EACbxrC,SAAU,CACRsvD,OAAQ,Q,sBCLZ,MAAM9jB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,mBAAoB,CAC/D2qC,YAAaD,EACbxrC,SAAU,CACRiiC,KAAM,IACNstB,gBAAiB,IACjBH,UAAW,Q,iBCPfvuD,QAAQ5W,OAAO,oBAAoBkW,WAAW,mCAAoC,CAChF,WACElV,KAAKoH,SAEL,WACEpH,KAAKukE,OAAO,CAAEC,aAAcxkE,KAAKwkE,oB,sBCLvC,MAAMjkB,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,yBAA0B,CACrE2qC,YAAaD,EACbrrC,WAAY,mCACZH,SAAU,CACRyvD,aAAc,IACdC,cAAe,IACfF,OAAQ,Q,iBCRZ3uD,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,WACE,IAAIsnD,EAAOx8D,KACXw8D,EAAKkI,YAGL,SAAqBvkC,GAEL,OADFq8B,EAAK7hB,OAAOsoB,OAAO9iC,EAAO,IAEpCq8B,EAAKmI,gBAAgB,CAAEhqB,OAAQ6hB,EAAK7hB,UALxC6hB,EAAKoI,YASL,SAAqBh+D,GACfA,EAAMjD,QAAUiD,EAAM69D,eAAiB79D,EAAMjH,MAAQiH,EAAMi+D,aAC7DrI,EAAKmI,gBAAgB,CAAEhqB,OAAQ6hB,EAAK7hB,c,sBCf5C,MAAM4F,EAAgCvrC,EAAQ,KAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACR4lC,OAAQ,IACRgqB,gBAAiB,Q,iBCPrB/uD,QAAQ5W,OAAO,oBAAoBkW,WAAW,kCAAmC,CAC/E,cACA,cACA,gBACA,SACA,SAAyC4vD,EAAaC,EAAat6C,EAAei+B,GAChF,IAAI8T,EAAOx8D,KACXw8D,EAAKzsD,MAAQ,CACXi1D,eAAgB,GAChBC,YAAY,GAEdzI,EAAKxoC,WASL,WACOwoC,EAAKp3C,SAHM,YAMZo3C,EAAKp3C,QAAQjiB,OACfq5D,EAAKzsD,MAAMi1D,eAAiB,IAAMxI,EAAKp3C,QAAQ4/C,eAAiB,MAbpExI,EAAKxnB,SAiBL,WACEwnB,EAAKp3C,QAAQ8/C,WAAWthE,KAAK,CAC3BjE,IAAK,GACLgE,MAAO,GACP8gE,cAAe,GACfI,YAAa,MArBjBrI,EAAK2I,iBAyBL,SAA0BxqB,GACxB6hB,EAAKp3C,QAAQ8/C,WAAavqB,EAC1B6hB,EAAKzsD,MAAMk1D,YAAa,GA1B1BzI,EAAK4I,uBA6BL,SAAgCZ,GAC9BhI,EAAKp3C,QAAQo/C,aAAeA,EAC5BhI,EAAKzsD,MAAMk1D,YAAa,GA9B1BzI,EAAK6I,YAiCL,WACE,IAAIC,EAAe9I,EAAK8I,aACpB1gD,EAAS,CACX/X,KAAMy4D,EAAaz4D,KACnB04D,aAAc/I,EAAKp3C,QAAQo/C,aAC3BvzD,KAAMq0D,EAAar0D,KACnB2pC,OAAQmqB,EAAYS,wBAAwBhJ,EAAKp3C,QAAQ8/C,YACzD34D,GAAI+4D,EAAa/4D,GACjB4L,QAASmtD,EAAantD,SAGxB2sD,EAAYW,WAAW7gD,GAAQ5I,MAE/B,WACEyO,EAAcF,QAAQ,4BAA6B,gBACnDm+B,EAAOr8B,GAAG,oBAAqB,CAAE/tB,GAAIgnE,EAAa/4D,IAAM,CAAE20B,QAAQ,OAJf47B,OAOrD,SAAuB7uD,GACrBwc,EAAcxc,MAAM,UAAWA,EAAO,6BAnD1CuuD,EAAKkJ,cAuDL,WAOElJ,EAAKp3C,QAAQ8/C,WAAa1I,EAAKp3C,QAAQ8/C,WACpC5yD,QAAO,SAAU1L,GAChB,OAAOA,EAAM69D,eAAiB79D,EAAMi+D,eAErC1mE,KAAI,SAAUyI,GACb,OAAO9H,OAAOM,OAAOwH,EAAO,CAC1BjD,MAAOiD,EAAM69D,cACb9kE,IAAKiH,EAAMi+D,iBAZjBrI,EAAKp3C,QAAQo/C,aAAehI,EAAK8I,aAAaC,aAC9C/I,EAAKzsD,MAAMk1D,YAAa,O,sBC1E9B,MAAM1kB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,wBAAyB,CACpE2qC,YAAaD,EACbrrC,WAAY,kCACZH,SAAU,CACRqQ,QAAS,IACTkgD,aAAc,Q,+FCLH,MAAMK,EAEnB1lB,YAAY2lB,EAAkBn7C,GAC5BzqB,KAAK4lE,iBAAmBA,EACxB5lE,KAAKyqB,cAAgBA,EAErBzqB,KAAK6lE,eAAiB,KAGxB7xC,YAAW,WAAE8xC,IACPA,GACF9lE,KAAK+lE,kBAIY,wBAEnB,GADA/lE,KAAK6lE,eAAiB,KACjBG,EAAAA,QAAAA,gBAA+BhmE,KAAK+W,WAAcivD,EAAAA,QAAAA,gBAA+BhmE,KAAK+W,UAK3F,IACE/W,KAAK6lE,qBAAuB7lE,KAAK4lE,iBAAiBK,gBAAgBjmE,KAAK+W,SAAU/W,KAAK8lE,YAAc,GACpG9lE,KAAKkmE,aAAalmE,KAAK6lE,eAAezvD,OAAUpW,KAAK6lE,eAAezvD,OAASpW,KAAK6lE,eAAeM,WAAa,GAC9G,MAAOznE,GAEPwrB,QAAQjc,MAAM,4CAA6CvP,GAC3DsB,KAAKkmE,aAAY,QAVjBlmE,KAAKkmE,aAAY,I,6HCpBvB,MAAM3lB,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,oBAAoBC,UAAU,6BAA8B,CACzEd,SAAU,CACRgC,SAAU,IACVmvD,YAAa,IACbj8D,QAAS,IACTm8D,oBAAqB,IACrBC,gBAAiB,IACjBP,WAAY,KAEd5wD,WATyE,UAUzE8qD,WAAY,CACVsG,kBAAmB,sCAErB9lB,YAAaD,K,oOCdf,MAAMgmB,EAEJtmB,YAAYC,EAAQ9qC,EAAQoxD,EAAaC,EAAiB9M,EAAiB+M,EAAcj8C,EAAek8C,GACtG3mE,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EACdpV,KAAKwmE,YAAcA,EACnBxmE,KAAKymE,gBAAkBA,EACvBzmE,KAAK25D,gBAAkBA,EACvB35D,KAAK0mE,aAAeA,EACpB1mE,KAAKyqB,cAAgBA,EACrBzqB,KAAK2mE,gBAAkBA,EAEvB3mE,KAAK4mE,iBAAmB5mE,KAAK4mE,iBAAiBvnE,KAAKW,MACnDA,KAAK6mE,cAAgB7mE,KAAK6mE,cAAcxnE,KAAKW,MAE7CA,KAAK8mE,WAAa,GAClB9mE,KAAKw6D,OAAS,GACdx6D,KAAKkxB,gBAAkB,IAAI61C,EAAAA,mBAE3B/mE,KAAKoV,OAAO4xD,QAAO,IAAMhnE,KAAKyjD,MAAMwjB,UAAUjnE,KAAK4mE,kBACnD5mE,KAAKoV,OAAO4xD,QAAO,IAAMhnE,KAAKyjD,MAAMyjB,OAAOlnE,KAAK6mE,eAGlDM,gBAAgBC,GACd,OAAOA,KAAcA,aAAoBL,EAAAA,qBAAuBK,EAASC,IAG3EC,eAAeF,GACb,IAAKA,EACH,OAEF,IAAI3gE,EAAM2gE,EAASC,IAInB,OAHID,EAASp8D,OAASu8D,EAAAA,cAAAA,SACpB9gE,EAAM2gE,EAASC,IAAM,IAAMD,EAASI,OAAOC,aAEtChhE,EAGTihE,sBACE,IAAIlN,EAAS,GACb,MAAM4M,EAAWpnE,KAAKyjD,MAAMwjB,SAC5B,GAAIjnE,KAAKmnE,gBAAgBC,GAAW,CAClC,MAAM3gE,EAAMzG,KAAKsnE,eAAeF,GAC1BO,EAAiB,IAAS3nE,KAAKw6D,QAAS3M,GAAU,IAAWA,EAAOpnD,KAC1E+zD,EAAS,IAAMmN,GAAiB9Z,GAAU,IAAUA,EAAO,IAAIrL,OAAO/7C,EAAM,MAAO,UAC9E,CACL,MAAMqgE,EAAa,IAAS9mE,KAAK8mE,YAAac,GAAQ5nE,KAAKmnE,gBAAgBS,KACrED,EAAiB,IAAUb,GAAaM,GAAa,IAASpnE,KAAKw6D,QAAS3M,GAAU,IAAWA,EAAOuZ,EAASC,SACjHQ,EAAqB,IAAa7nE,KAAKw6D,OAAQmN,GACrDnN,EAAS,IAASqN,GAAqBha,IAAW7tD,KAAKwmE,YAAYsB,iBAAiBja,KAEtF7tD,KAAK+nE,gBAAkBvN,EAGzB4L,sBACE,OAAOpmE,KAAKyjD,MAAMukB,aAAehoE,KAAKyjD,MAAMwjB,WAAajnE,KAAKyjD,MAAMwjB,SAASj8D,OAASu8D,EAAAA,cAAAA,WAA2BvnE,KAAKyjD,MAAMwjB,SAASj8D,OAASu8D,EAAAA,cAAAA,WAG1H,yBACpBvnE,KAAK0nE,sBACD1nE,KAAKyjD,MAAMwjB,UAAYjnE,KAAKyjD,MAAMwjB,SAASj8D,OAASu8D,EAAAA,cAAAA,QAAwBvnE,KAAKyjD,MAAMyjB,QACzFlnE,KAAKyjD,MAAMyjB,MAAQ,IAAUlnE,KAAKyjD,MAAMyjB,MAAOlnE,KAAKyjD,MAAMwjB,SAASO,OAAOC,YAAa,KAIxE,sBACbznE,KAAKkmE,cAAgBlmE,KAAKomE,uBAC5BpmE,KAAKkmE,aAAY,GAIrB+B,uBACE,OAAQjoE,KAAKyjD,MAAMwjB,UAAYjnE,KAAKsnE,eAAetnE,KAAKyjD,MAAMwjB,WAAc,YAGxD,yBACpB,OAAOjnE,KAAKkgD,QAAO2F,UACjB,IACE,IAAIqiB,GAAsB,EAQ1B,GAPAloE,KAAK8mE,iBAAmB9mE,KAAK25D,gBAAgBmN,WAAW9mE,KAAK+W,SAASxK,GAAIvM,KAAKmoE,WAAW,GAG1FnoE,KAAK8mE,WAAWzwD,MAAK,CAAC+xD,EAAGC,IAAMD,EAAEv7D,KAAKy7D,cAAcD,EAAEx7D,QAEtD7M,KAAKuoE,kBAAmB,GAEnBvoE,KAAK8mE,WAAWn2D,MAAMy2D,GAAaA,EAASp8D,OAASu8D,EAAAA,cAAAA,YAA0B,QAC3DvnE,KAAK2mE,gBAAgB6B,kBACXC,gBACZC,MAAmC,IAA3B1oE,KAAK8mE,WAAWrnE,OAM3CO,KAAKuoE,kBAAmB,GALxBL,GAAsB,EAEtBloE,KAAK8mE,WAAW7D,OAAO,EAAG,EAAGjjE,KAAKkxB,kBAOtC,MAAM5yB,EAAK0B,KAAKyjD,MAAMwjB,UAAYjnE,KAAKyjD,MAAMwjB,SAAS16D,GACrC,IAAOvM,KAAK8mE,WAAY,CAAEv6D,GAAIjO,MAE7C0B,KAAKyjD,MAAMwjB,SAAWiB,EAAsBloE,KAAKkxB,gBAAkBlxB,KAAK8mE,WAAW,IAErF,MAAOhsD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAK/B,mBACd,OAAO9a,KAAKkgD,QAAO2F,UACjB,IACE,IAAK7lD,KAAKkuB,aAER,YADAluB,KAAKw6D,OAAS,IAIhB,MAAMA,QAAex6D,KAAK0mE,aAAalM,SACvCx6D,KAAKw6D,OAASx6D,KAAK0mE,aAAaiC,2BAA2BnO,GAC3D,MAAO1/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAK/CkZ,YAAW,UAAEm0C,EAAF,SAAapxD,KACjBoxD,GAAapxD,IAAa/W,KAAK+W,SAASxK,IAC3CvM,KAAK4oE,mBAITzlB,UACE,OAAOnjD,KAAKkgD,QAAO2F,gBACX7lD,KAAK6oE,iB,iIAKjB,YACAjzD,IAAAA,OAAe,oBAAoBV,WAAW,6BAA8BqxD,I,sBCjJ5E,MAAMhmB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,mBAAoB,CAC/D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0uC,MAAO,IACPqlB,YAAa,IACb56C,aAAc,IACdooB,WAAY,IACZyyB,WAAY,IACZhyD,SAAU,IACV9M,QAAS,IACTk+D,UAAW,IAEXlC,gBAAiB,IACjBY,cAAe,IACfX,YAAa,KAEflxD,QAAS,CACPg0D,KAAM,SAERhJ,YAAY,K,sBCtBd,MAAMzf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,YAAa,CACxD2qC,YAAaD,EACbrrC,WAAY,sBACZH,SAAU,CACRtQ,KAAM,IACNwkE,kBAAmB,IACnBC,oBAAqB,IACrBC,eAAgB,IAChBC,UAAW,IACXC,aAAc,Q,2GCPlBzzD,QAAQ5W,OAAO,oBAAoBkW,WAAW,sBAAuB,CACnE,SACA,YACA,OACA,YACA,SAAUE,EAAQiwB,EAAW4d,EAAMxB,GACjCzhD,KAAK+P,MAAQ,CACXu5D,uBAAwB,CACtB,CAAE3gC,KAAM,WAAYhlC,MAAOy5B,GAAAA,GAASmsC,SAAS,EAAG,QAAQhsC,UACxD,CAAEoL,KAAM,eAAgBhlC,MAAOy5B,GAAAA,GAASmsC,SAAS,EAAG,SAAShsC,UAC7D,CAAEoL,KAAM,YAAahlC,MAAOy5B,GAAAA,GAASmsC,SAAS,EAAG,SAAShsC,UAC1D,CAAEoL,KAAM,kBAAmBhlC,MAAOy5B,GAAAA,GAASmsC,SAAS,GAAI,WAAWhsC,WAErEisC,cAAenkC,EAAUokC,UACzBC,eAAe,EACfC,YAAY,EACZC,WAAW,EACXC,OAAQ,GACRC,aAAc,GACdC,cAAe,IAGjB/pE,KAAKgqE,2BAIL,SAAoCnxD,GAClCzD,EAAOE,YAAW,KAChBtV,KAAK+P,MAAM25D,cAAgB7wD,EAC3B7Y,KAAK+P,MAAM45D,WAAa9wD,EACxB7Y,KAAKkpE,oBAAoBrwD,OARgCxZ,KAAKW,MAClEA,KAAKiqE,0BAWL,SAAmCpxD,GACjCzD,EAAOE,YAAW,KAChBtV,KAAK+P,MAAM65D,UAAY/wD,MAbgCxZ,KAAKW,MAChEA,KAAKkqE,8BAgBL,SAAuCrxD,GACrCzD,EAAOE,YAAW,KAChBtV,KAAKipE,kBAAoBpwD,MAlBsCxZ,KAAKW,MAsBxEA,KAAKmqE,KAAO,WACV9kC,EAAUL,SAAShlC,KAAK+P,MAAM+5D,aAAa3rE,KAAKisE,GAAQA,EAAIC,OAAMl9D,KAAKwgD,EAAAA,mBACvEpE,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAGlCvqE,KAAKwqE,cAAgB,WACnBnlC,EAAUL,SAAShlC,KAAK+P,MAAMg6D,cAAc58D,KAAKwgD,EAAAA,mBACjDpE,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAGlCvqE,KAAKyqE,eAAiB,WACpBzqE,KAAK+P,MAAMg6D,cAAgB,IAG7B/pE,KAAK0qE,WAAa,SAAUL,GAC1B,IAAIM,EAAM3qE,KAAK+P,MAAMg6D,cAAclkE,QAAQwkE,IAC9B,IAATM,EACF3qE,KAAK+P,MAAMg6D,cAAcnmE,KAAKymE,GAE9BrqE,KAAK+P,MAAMg6D,cAAc9G,OAAO0H,EAAK,IAIzC3qE,KAAK4qE,aAAe,WAGlB,MAAMnmE,EAAO,IAAIw+C,EAAK,CAAC,IAASjjD,KAAK+P,MAAM+5D,cAAc,CAACt3C,EAAK43C,IAAQ53C,EAAM43C,EAAIC,KAAO1c,EAAAA,kBAAkB,MAC1GlM,EAAUyB,OAAOz+C,EAAMzE,KAAKqpE,aAAe,kB,sBC/EjD,MAAM9oB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,qBAAsB,CACjE2qC,YAAaD,EACbrrC,WAAY,+BACZH,SAAU,CACRtQ,KAAM,IACNomE,iBAAkB,Q,gBCPtBj1D,QAAQ5W,OAAO,oBAAoBkW,WAAW,+BAAgC,CAC5E,KACA,cACA,iBACA,gBACA,eACA,iBACA,SAAU4e,EAAIgxC,EAAagG,EAAgBrgD,EAAem6B,EAAcmmB,GACtE,IAAIvO,EAAOx8D,KAEXw8D,EAAKwO,sBAAwB,WAC3B,MAAwB,UAApBxO,EAAK/3D,KAAKsvD,YAAkDliD,IAA7B2qD,EAAK/3D,KAAKwmE,gBAGS,IAA/CzO,EAAK/3D,KAAKwmE,eAAezb,mBAGlCgN,EAAK0O,wBAA0B,WAC7B,MAAwB,UAApB1O,EAAK/3D,KAAKsvD,QAGNyI,EAAK/3D,KAAK0mE,uBAGpBnrE,KAAKmjD,QACL,WACE,IAAIl5C,EAAU8gE,EAAe9gE,UAC7BuyD,EAAKvyD,QAAUA,EAEf,IAAI+gB,EAAWwxC,EAAKqO,iBAAiB9zD,SAASkkB,KAAKjQ,SAC/CogD,EAAa5O,EAAKqO,iBAAiB9zD,SAASq0D,WAChDt3C,EAAGxB,IAAI,CACLjO,MAAoB,sBAAb2G,GAAoC85C,EAAYzgD,QACvDs2C,SAAUmQ,EAAenQ,SAAsB,sBAAb3vC,GAAiD,sBAAbA,GAAkC,EAAoB,sBAAbA,GAAoCogD,GAAc,QAEhKpvD,MAAK,SAAiBvX,IACF,IAAfA,EAAK4f,QACPm4C,EAAKn4C,MAAQ5f,EAAK4f,OAEpBm4C,EAAKS,kBAAoBx4D,EAAKk2D,SAASroD,QAAO,SAAU+hC,GACtD,OAA2B,IAApBA,EAAKg3B,iBAGfvO,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,uD,mCC5CvC,SAASwwD,IACdtrE,KAAK+zD,MAAQ,QACb/zD,KAAKmrE,sBAAwB,KAC7BnrE,KAAKirE,eAAiB,CACpBnhC,cAAe,IAEjB9pC,KAAKurE,kBAAoB,G,2ECN3B,MAAMhrB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbxrC,SAAU,CACRtQ,KAAM,Q,mCCLH,SAAS+mE,IACdxrE,KAAKyrE,SAAU,EACfzrE,KAAK0rE,cAAgB,GACrB1rE,KAAKy5B,MAAQ,GACbz5B,KAAK8C,QAAU,kDACf9C,KAAK2rE,SAAW,CACd,2DACA,kDACA,iDACA,wDAEF3rE,KAAK4rE,eAAiB,CAAC,MAAO,MAAO,MAAO,OAC5C5rE,KAAKmoD,SAAW,GAChBnoD,KAAK6rE,SAAW,G,gFCblB,MAAMtrB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,iBAAkB,CAC7D2qC,YAAaD,EACbxrC,SAAU,CACRtQ,KAAM,Q,kCCLH,SAASqnE,IACd9rE,KAAK+rE,QAAS,EACd/rE,KAAK0rE,cAAgB,GACrB1rE,KAAKgsE,WAAa,GAClBhsE,KAAK8C,QAAU,OACf9C,KAAK2G,QAAU,gDACf3G,KAAK2rE,SAAW,CAAC,OAAQ,O,kMCH3B,SAASM,EAAcxjD,EAAMphB,GAC3B,OAAOA,EAAOsJ,MAAK,SAAUwL,GAC3B,OAA8B,IAAvBsM,EAAK5iB,QAAQsW,MAoBxBvG,QACG5W,OAAO,oBACPsT,OAAO,kBAAkB,WAExB,OAAO,SAAUmW,GACf,IAAIvQ,EAAS,IAAUuQ,GACvB,OAAIwjD,EAAc/zD,EAAQ,CAAC,MAAO,YAAa,WAAY,WAAY,WAAY,cAC1E,OACE+zD,EAAc/zD,EAAQ,CAAC,YACzB,UACE+zD,EAAc/zD,EAAQ,CAAC,WAAY,SAAU,aAC/C,UAEF,cAGV5F,OAAO,6BAA6B,WAEnC,OAAO,SAAU45D,GACf,IAAIC,EAnCV,SAAmBD,GAEjB,IADA,IAAIC,EAAO,EACF5sE,EAAI,EAAGA,EAAI2sE,EAAIzsE,OAAQF,IAC9B4sE,EAAOD,EAAIE,WAAW7sE,KAAO4sE,GAAQ,GAAKA,GAE5C,OAAOA,EA8BQE,CAAUH,GACjBj9D,EA5BV,SAAwBk9D,GAEtB,IADA,IAAIl9D,EAAQ,IACH1P,EAAI,EAAGA,EAAI,GAClB0P,IAAU,MAASk9D,GAAe,EAAN5sE,IAAY,KAAMsE,SAAS,KAAK2F,OAAO,GAErE,OAAOyF,EAuBSq9D,CAAeH,GAC3B,OAAOl9D,MAGVqD,OAAO,mBAAmB,WAEzB,OAAO,SAAUmW,GACf,IAAIvQ,EAAS,IAAUuQ,GACnB8jD,EAAa,UAYjB,OAXIN,EAAc/zD,EAAQ,CAAC,MAAO,YAAa,WAAY,WAAY,YAAa,QAAS,WAAY,WACvGq0D,EAAa,OACJN,EAAc/zD,EAAQ,CAAC,YAChCq0D,EAAa,UACJN,EAAc/zD,EAAQ,CAAC,WAAY,SAAU,WAAY,aAClEq0D,EAAa,SACJN,EAAc/zD,EAAQ,CAAC,aAChCq0D,EAAa,UACJN,EAAc/zD,EAAQ,CAAC,cAChCq0D,EAAa,WAERA,MAGVj6D,OAAO,eAAe,WAErB,OAAO,SAAUvC,GAEf,MADiB,CAAC,UAAW,WAAY,SAAU,YACpClK,QAAQkK,IAAU,MAMpCuC,OAAO,wBAAwB,WAE9B,OAAO,SAAUmW,GACf,IAAIvQ,EAAS,IAAUuQ,GACvB,OAAIwjD,EAAc/zD,EAAQ,CAAC,SAAU,WAAY,cACxC,UACE+zD,EAAc/zD,EAAQ,CAAC,YACzB,OACE+zD,EAAc/zD,EAAQ,CAAC,UAAW,OAAQ,WAC5C,SAEF,cAGV5F,OAAO,mBAAmB,WAEzB,OAAO,SAAUmW,GACf,MAAa,SAATA,GAA4B,cAATA,EACd,SAEF,cAGVnW,OAAO,+BAA+B,WAErC,OAAO,SAAUmW,GACf,MAAa,UAATA,EACK,UACW,UAATA,EACF,SAEF,cAGVnW,OAAO,qBAAqB,WAE3B,OAAO,SAAUxO,GACf,OAAIA,EAC2B,IAAtBA,EAAK+B,QAAQ,KAAa/B,EAAKu3B,QAAQ,IAAK,IAAMv3B,EAEpD,OAGVwO,OAAO,gBAAgB,WAEtB,OAAO,SAAUvC,GACf,YAAc8B,IAAV9B,EACK,GAELA,EAAMy8D,KACD,OAELz8D,EAAM08D,OAAS18D,EAAM28D,QAChB,QAEL38D,EAAM28D,SAAW38D,EAAM48D,OAClB,mBAEL58D,EAAM28D,QACD,UAEY,YAAjB38D,EAAMkJ,OACD,UAEF,cAGV3G,OAAO,iBAAiB,WAEvB,OAAO,SAAUvC,GACf,YAAc8B,IAAV9B,EACK,gBAELA,EAAM08D,OAAS18D,EAAM28D,QAChB,kBAEL38D,EAAM28D,QACD,gBAEF,oBAGVp6D,OAAO,iBAAiB,WAEvB,OAAO,SAAUglC,GACf,IAAIxzC,EAAOwzC,EAAUD,MAAM,GAC3B,OAAOvzC,EAAKgC,UAAU,EAAGhC,EAAKrE,YAGjC6S,OAAO,gBAAgB,WAEtB,OAAO,SAAUmW,GACf,OAAO,IAAQA,EAAM,KAAK,OAG7BnW,OAAO,iBAAiB,WAEvB,OAAO,SAAUglC,GACf,OAAO,IAAQA,EAAUD,MAAM,GAAI,KAAK,OAG3C/kC,OAAO,YAAY,WAElB,OAAO,SAAUu7C,GACf,OAAIA,EAAM+e,UAAY/e,EAAM+e,SAASntE,OAAS,EAEhC,kBADFouD,EAAM+e,SAAS,GAEhB,GAEF/e,EAAM+e,SAER,OAGVt6D,OAAO,WAAW,WAEjB,OAAO,SAAUpL,GACf,GAAIA,EACF,OAAOA,EAAQiG,KAAK,SAIzBmF,OAAO,cAAc,WAEpB,OAAO,SAAU1M,GACf,OAAIA,EACKA,EAAU21B,MAAM,QAAQ,GAE1B,OAGVjpB,OAAO,qBAAsB,CAC5B,oBACA,SAAUu6D,GAER,OAAO,SAAUxoD,EAAO1G,GAEtB,IADA,IAAImvD,EAAiB,EACZvtE,EAAI,EAAGA,EAAI8kB,EAAM5kB,OAAQF,IAAK,CACrC,IAAIwtE,EAAO1oD,EAAM9kB,GACS,WAAtBwtE,EAAKxH,cAA6C,UAAhBwH,EAAK9zD,QAAsB4zD,EAAkBG,0BAA0BrvD,EAASovD,IACpHD,IAGJ,OAAOA,MAIZx6D,OAAO,qBAAqB,WAE3B,OAAO,SAAU26D,GAEf,IADA,IAAIC,EAAe,EACV3tE,EAAI,EAAGA,EAAI0tE,EAAMxtE,OAAQF,IAAK,CACrC,IAAIi8D,EAAOyR,EAAM1tE,GACS,YAAtBi8D,EAAKviD,OAAOy2C,OAA6C,YAAtB8L,EAAK2R,cAC1CD,IAGJ,OAAOA,MAGV56D,OAAO,gBAAgB,WAEtB,OAAO,SAAU86D,EAAQ/oD,GACvB,IAAI0oD,EAAO,IAAO1oD,EAAO,CAAE9X,GAAI6gE,IAC/B,OAAIL,EACKA,EAAKM,SAEP,OAGV/6D,OAAO,qBAAqB,WAE3B,OAAO,SAAUg7D,GACf,OAAOA,EAAUjyC,QAAQ,qBAAsB,IAAIA,QAAQ,cAAe,YAG7E/oB,OAAO,cAAc,IAAM3M,EAAAA,IAC3B2M,OAAO,kBAAkB,WAExB,OAAO,SAAwBi7D,GAC7B,IAAKA,EACH,OAAOA,EAET,IAAIC,EAAaD,EAASlqB,YAAY,KACtC,OAAImqB,EAAa,GAGHD,EAAS1nE,QAAQ,KACjB2nE,EAHLD,EAMFA,EAASznE,UAAU,EAAG0nE,OAGhCl7D,OAAO,UAAU,WAChB,e,iBCjRJsD,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,WACE,aACA,MAAO,CACL0oB,cAAe,SAAU7oD,GACvB,OAAIA,EACK,CACLrY,GAAIqY,EAAO8oD,SACX7gE,KAAM+X,EAAO+oD,WACbC,SAAUhpD,EAAOipD,KAAKhhE,KACtBihE,IAAKlpD,EAAOipD,KAAKE,IACjBC,IAAKppD,EAAOipD,KAAKI,IACjBxM,KAAM78C,EAAOipD,KAAKpM,MAGf,IAETyM,aAAc,SAAUtpD,GACtB,OAAIA,EACK,CACL8oD,SAAU9oD,EAAOrY,GACjBohE,WAAY/oD,EAAO/X,KACnBghE,KAAM,CACJhhE,KAAM+X,EAAOgpD,UAAYhpD,EAAO/X,KAChCkhE,IAAKnpD,EAAOkpD,KAAO,IACnBG,IAAKrpD,EAAOopD,KAAO,IACnBvM,KAAM78C,EAAO68C,MAAQ,MAIpB,S,kEC5Bf,SAAS0M,EAAgBC,EAAIzuE,EAAKgE,GAChC3D,KAAKouE,GAAKA,EACVpuE,KAAK2D,MAAQA,EACb3D,KAAKL,IAAMA,EAGb,IAAI0uE,EAEQ,UAFRA,EAGc,gBAHdA,EAIU,YAJVA,EAKY,eALZA,EAMc,iBANdA,EASI,KATJA,EAUK,KAIT,SAASC,EAAkB3qE,EAAO4qE,GAChC,OAAKA,GAAeA,EAAWH,KAAOC,GAAkB1qE,IAAU4qE,EAAW5qE,OAAW4qE,EAAWH,KAAOC,GAAmB1qE,IAAU4qE,EAAW5qE,MAMpJ,SAAS6qE,EAAa7zB,EAAQ4zB,GAC5B,OAAKA,QAMY18D,IAHL,IAAO8oC,GAAQ,SAAU/zC,GACnC,OAAOA,EAAMjH,MAAQ4uE,EAAW5uE,KAAOiH,EAAMjD,QAAU4qE,EAAW5qE,SAKtE,SAAS8qE,EAAaF,EAAYH,GAChC,OAAOG,EAAWhzC,MAAM6yC,GAAIM,MAAMziD,OAGpC,SAAS0iD,EAAsBJ,EAAYH,EAAIQ,GAC7C,OAAOL,EAAWhzC,MAAM6yC,GAAIjoD,QAAQ8F,OAAOoP,QAAQuzC,EAAc,IAGnEh5D,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,oBAAqB,CAC9D,WAEE,MAAO,CACL8pB,qBAAsB,SAAUC,GAE9B,IADA,IAAI/sE,EAAY,GACPxC,EAAI,EAAGA,EAAIuvE,EAAYrvE,OAAQF,IAAK,CAC3C,IAEI6uE,EAFAG,EAAaO,EAAYvvE,GAGzBgvE,EAAWppE,SAASkpE,GACtBD,EAAKC,EACIE,EAAWppE,SAASkpE,KAC7BD,EAAKC,GAGP,IAAI1qE,EAAQ8qE,EAAaF,EAAYH,GACjCzuE,EAAM,GACV,QAAQ,GACN,KAAK4uE,EAAWppE,SAASkpE,GACvBtsE,EAAUqrE,OAAS,IAAIe,EAAgBC,EAAIzuE,EAAKgE,GAChD,MACF,KAAK4qE,EAAWppE,SAASkpE,GACvBtsE,EAAUgtE,aAAe,IAAIZ,EAAgBC,EAAIzuE,EAAKgE,GACtD,MACF,KAAK4qE,EAAWppE,SAASkpE,GACvBtsE,EAAUitE,SAAW,IAAIb,EAAgBC,EAAIzuE,EAAKgE,GAClD,MACF,KAAK4qE,EAAWppE,SAASkpE,GACvB1uE,EAAMgvE,EAAsBJ,EAAYH,EAAIC,GAC5CtsE,EAAUmjE,WAAa,IAAIiJ,EAAgBC,EAAIzuE,EAAKgE,GACpD,MACF,KAAK4qE,EAAWppE,SAASkpE,GACvB1uE,EAAMgvE,EAAsBJ,EAAYH,EAAIC,GAC5CtsE,EAAUktE,aAAe,IAAId,EAAgBC,EAAIzuE,EAAKgE,IAM5D,OAAO5B,GAETirE,0BAA2B,SAAUrvD,EAASovD,GAC5C,QAA4Bl7D,IAAxB8L,EAAQuxD,aAA4D,IAA/BvxD,EAAQuxD,YAAYzvE,OAC3D,OAAO,EAET,IAAIqvE,EAAc9uE,KAAK6uE,qBAAqBj5D,QAAQu0D,KAAKxsD,EAAQuxD,cACjE,SACEZ,EAAkBvB,EAAKxgE,GAAIuiE,EAAY1B,SACvCkB,EAAkBvB,EAAKM,SAAUyB,EAAYC,eAC7CT,EAAkBvB,EAAK97D,KAAM69D,EAAYE,WACzCR,EAAazB,EAAKnyB,OAAQk0B,EAAY5J,aACtCsJ,EAAazB,EAAKoC,aAAcL,EAAYG,qB,iOChGtD,MAAMG,EAAc,qFAEpB,SAASC,EAAUr3B,GACjB,OAAIo3B,EAAY3kE,KAAKutC,GACZhzC,SAASgzC,EAAM,IAEf,EAIX,SAASs3B,EAAeC,GACG,iBAAdA,IACTA,EAAYA,EAAU1rE,YAIxB,MAAM2rE,EAAc,IAAQD,EAAW,IAAK,GACtCE,EAAW,IAAMD,EAAaH,GAOpC,OAJuB,GAAnBI,EAAShwE,QACXgwE,EAAS7rE,KAAK6rE,EAAS,IAGlBA,EAGT,SAASC,EAAiBH,GAKxB,MAJyB,iBAAdA,IACTA,EAAYD,KAGPtvC,MAAMC,QAAQsvC,IAAmC,IAArBA,EAAU9vE,QAAgB8vE,EAAU,GAAK,GAAKA,EAAU,IAAMA,EAAU,GAG7G,SAASI,EAAgBC,EAAe53B,GACT,iBAAlB43B,IACTA,EAAgBA,EAAc/rE,YAGhC,IAAIgsE,EAAS,KACb,MAAMC,EAAaF,EAAc/pE,QAAQ,KACrCiqE,GAAc,IAChBD,EAASD,EAAcG,OAAO,EAAGD,GACjCF,EAAgBA,EAAcG,OAAOD,EAAa,IAGpD93B,EAAuB,iBAATA,EAAoBA,EAAOq3B,EAAUr3B,GACnD,MAAMu3B,EAAYD,EAAeM,GAC3BI,EAAYlzD,KAAKC,IAAIwyD,EAAU,GAAIv3B,GACnCi4B,EAAUnzD,KAAKslB,IAAImtC,EAAU,GAAIv3B,GAEvC,OAAI63B,EACKA,EAAS,IAAMG,EAAY,IAAMC,EAEjCD,EAAY,IAAMC,EAI7Br6D,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,kBAAmB,CAC5D,WA0ME,MAxMa,CAEbmrB,qBAA8B,SAAUhpE,GACtC,OAAOipE,GAAAA,CAAUjpE,IAGnBgpE,qBAA8B,SAAU3lE,GACtC,OAAOA,EACJpM,KAAI,SAAUiyE,GACb,MAAO,IAAMA,EAAO,OAErBjjE,KAAK,MAGV+iE,oBAA6B,SAAU54B,GACrC,IAAI1yB,EAAS0yB,EAAUsc,OAEvBhvC,EAAOyrD,WAAa/4B,EAAU+4B,WAE9BzrD,EAAO9gB,KAAOwzC,EAAUzqC,KAAKwuB,QAAQ,OAAQ,IAE7C,IAAIJ,EAAOrW,EAAOyrD,WAAWC,YAC7B1rD,EAAO2rD,iBAAmB,CACxBC,gBAAiB,IAEnB5rD,EAAO2rD,iBAAiBC,gBAAkBl5B,EAAUkD,gBAAgBC,cAExC5oC,IAAxB+S,EAAO6rD,eACT7rD,EAAO6rD,aAAe,KAGY,IAAhCx1C,EAAKp1B,QAAQ,uBACR+e,EAAOyoD,gBACPzoD,EAAO6rD,cAGhB,IAAIC,EAAQ,GACR/U,EAAU,GACd,IAAK,IAAIn6B,KAAK8V,EAAUq5B,OACtB,GAAI,GAAG9wE,eAAeC,KAAKw3C,EAAUq5B,OAAQnvC,GAAI,CAC/C,IAAIovC,EAAQt5B,EAAUq5B,OAAOnvC,GACzB19B,EAAO8sE,EAAM/jE,MAAQ+jE,EAAMC,OAC3BC,EAAgBF,EAAMG,YAC1B,GAAIjtE,GAAQgtE,EAAe,CACzB,IAAIzxE,EAAOyE,EAAO,IAAMgtE,EACxBnV,EAAQmV,GAAiB,IACR,IAAbF,EAAMI,KACR3xE,GAAQ,OAEVqxE,EAAM9sE,KAAKvE,IAMjB,OAFAulB,EAAOyrD,WAAWY,MAAQP,EAC1B9rD,EAAOssD,QAAUvV,EACV/2C,GAGTsrD,oBAA6B,SAAUiB,GACrC,MAAMp8D,EAAW,GAgEjB,OA/DA,IAAUo8D,GAAeC,IACvB,IAAKA,EAAYC,cACf,OAGF,IAAIC,EAAWF,EAAYE,SAC3B,MAAMC,EAAqBjC,EAAe8B,EAAYC,eACtD,IAAK3B,EAAiB6B,GACpB,MAAM,IAAI5yE,MAAM,+BAAiCyyE,EAAYC,eAG/D,MAAMrB,EAAYuB,EAAmB,GAC/BtB,EAAUsB,EAAmB,GACnC,IAAI1B,EACA2B,EAAgB,EAChBC,EAAc,EAClB,GAAIH,EAAU,CACZ,GAAIA,EAASzrE,QAAQ,MAAQ,EAAG,CAC9B,MAAM6rE,EAAc,IAAQJ,EAAU,MAEtC,GAAII,EAAYjyE,OAAS,EACvB,MAAM,IAAId,MAAM,+BAAiCyyE,EAAYC,eAG/DxB,EAAS6B,EAAY,GAAGr2C,QAAQ,IAAK,IACrCi2C,EAAWI,EAAY,QAEvB,GAAIJ,EAASzrE,QAAQ,MAAQ,EAAG,CAC9B,MAAM6rE,EAAc,IAAQJ,EAAU,KACtCzB,EAAS6B,EAAY,GACrBJ,EAAWI,EAAY,GAI3B,MAAMC,EAAgBrC,EAAegC,GACrC,IAAK5B,EAAiBiC,GACpB,MAAM,IAAIhzE,MAAM,+BAAiC2yE,GAKnD,GAFAE,EAAgBG,EAAc,GAC9BF,EAAcE,EAAc,GACxB1B,IAAYD,GAAaC,EAAUD,GAAcyB,EAAcD,EACjE,MAAM,IAAI7yE,MAAM,+BAAiC2yE,GAIrD,IAAK,IAAI/xE,EAAI,EAAGA,GAAK0wE,EAAUD,EAAWzwE,IAAK,CAC7C,MAAM8xE,GAAiBrB,EAAYzwE,GAAGsE,WAClC2tE,EAAgB,IAClBF,GAAYE,EAAgBjyE,GAAGsE,YAE7BmsE,IAAcC,GAAWuB,IAAkBC,IAC7CH,GAAY,IAAMG,EAAY5tE,YAGhC,MAAM+tE,EAAUP,EAAgB,IAAMD,EAAYS,SAC9C98D,EAAS68D,GACX78D,EAAS68D,GAAShuE,KAAK,CAAEkuE,OAAQjC,EAAQkC,SAAUT,IAEnDv8D,EAAS68D,GAAW,CAAC,CAAEE,OAAQjC,EAAQkC,SAAUT,QAIhDv8D,GAGTm7D,oBAA6B,SAAUiB,GACrC,MAAMp8D,EAAW,GACXi9D,EAAkB,IAAOb,GAGzBc,EAA4B,IAAUD,GAAkBE,GACrD,IAAQA,EAAS,KAAK,KA6D/B,OA1DA,IAAUD,GAA2B,CAACD,EAAiBH,KAErD,MAAMM,EAA0B,GAChC,IAAK,MAAMD,KAAWF,EACpB,IAAK,MAAMZ,KAAeD,EAAae,GACrCC,EAAwBf,EAAYU,QAAUK,EAAwBf,EAAYU,SAAW,GAC7FK,EAAwBf,EAAYU,QAAQluE,KAAKsuE,GAIrD,IAAUC,GAAyB,CAACH,EAAiB76B,KAEnD,MAAMi7B,EAAwB,IAAUJ,GAAkBE,GACjDltE,SAAS,IAAQktE,EAAS,KAAK,GAAI,MAG5C,IAAIG,GAAoB,EACpBC,GAAyB,EAC7B,IAAUF,GAAwBF,IAChC,MAAMK,EAAe,IAAQL,EAAS,KAChCb,EAAgBrsE,SAASutE,EAAa,GAAI,IAC1CnB,EAAcD,EAAae,GAAS,GAC1Cf,EAAae,GAAS/rD,QACtB,MAAMmrD,EAAWjC,EAAU+B,EAAYW,UAGvC,GAAIT,EAAW,EAAG,CAEhB,GAAIv8D,EAAStV,OAAS,GAAK4yE,IAAqBf,EAAW,GAAKgB,IAA0BjB,EAAgB,EAKxG,OAJAt8D,EAASA,EAAStV,OAAS,GAAG6xE,SAAW3B,EAAgB56D,EAASA,EAAStV,OAAS,GAAG6xE,SAAUA,GACjGv8D,EAASA,EAAStV,OAAS,GAAG4xE,cAAgB1B,EAAgB56D,EAASA,EAAStV,OAAS,GAAG4xE,cAAeA,GAC3GgB,EAAmBf,OACnBgB,EAAwBjB,GAI1BgB,EAAmBf,EACnBgB,EAAwBjB,OAExBgB,GAAoB,EACpBC,GAAyB,EAG3B,IAAIE,EAAkBpB,EAAYW,SAASluE,WACvCszC,IACFq7B,EAAmB,GAAEr7B,KAAMq7B,KAG7B,MAAMC,EAAU,CACdnB,SAAUkB,EACVnB,cAAeA,EACfQ,SAAUA,GAEZ98D,EAASnR,KAAK6uE,YAKb19D,GAGTm7D,kBAA2B,SAAU50B,GACnC,OAAO,IAAM,IAAU,IAAMA,EAAY,WAAYx3C,GAAS,IAAYA,EAAM,a,iJC/M/E,SAAS4uE,EAAkBC,GAChC,IAAKA,EAAW3K,YACd,OAAO4K,EAAUD,EAAWzL,OAG9B,MAAMthE,EASR,SAAuC+sE,GACrC,OAAQA,EAAW1L,SAASj8D,MAC1B,KAAKu8D,EAAAA,cAAAA,OACH,OASJ,SAAgCoL,GAC9B,MAAME,EAAQF,EAAWzL,MAAMtrC,WAAW,KAAO,GAAK,IACtD,MAAQ,GAAE+2C,EAAW1L,SAASI,OAAOsL,EAAW1L,SAASO,OAAOC,cAAcoL,IAAQF,EAAWzL,QAXxF4L,CAAuBH,GAChC,KAAKpL,EAAAA,cAAAA,KACH,OAYJ,SAA8BoL,GAC5B,MAAM7uE,EAAO6uE,EAAW1L,SAAS8L,KAAKC,gBAAkBL,EAAW1L,SAAS8L,KAAKE,iBAAmBN,EAAW1L,SAASz6D,SAExH,MAAQ,GADImmE,EAAW1L,SAASI,IAAMsL,EAAW1L,SAASI,IAAM,IAAM,KACtDvjE,KAAQ6uE,EAAWzL,QAf1BgM,CAAqBP,GAC9B,KAAKpL,EAAAA,cAAAA,UACH,OAAOoL,EAAWzL,MACpB,QACE,OAcJ,SAAuCyL,GAErC,OADYA,EAAW1L,SAASI,IAAMsL,EAAW1L,SAASI,IAAM,IAAM,IACzDsL,EAAWzL,MAhBfiM,CAA8BR,IAlBvBS,CAA8BT,GAEhD,OAAOC,EAAUhtE,GAEjB,SAASgtE,EAAU/kB,EAAOwlB,EAAa,UACrC,OAAOxlB,EAAM1oD,SAAS,KAAO0oD,EAAS,GAAEA,KAASwlB,KA9DrDz9D,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAE3C,WACE,MAAO,CACLuuB,WAOF,SAAoB35C,GAClB,OAAOA,EAAI6I,MAAM,sCAPjB+wC,8BAuBF,SAAuCZ,GACrC,MAAO,CACLa,UAAWd,EAAkBC,KAxB/Bc,0BASF,SAAmCjZ,GAIjC,MAAO,CACLpsC,MAJUosC,EAAOr8D,KAAI,SAAU0vD,GAC/B,MAA6B,kBAAtBA,EAAM+e,SAAS,GAAyB/e,EAAM+e,SAAS,GAAK/e,EAAMthD,QAV3EmnE,2BAoCF,SAAoCC,GAClC,OAAOA,EAAWp4C,MAAM,QAAQ,IApChCusC,iBA0BF,SAA0Bja,GACxB,MAAMtyB,EAAQ,IAAQsyB,EAAO,KACvBpnD,EAAM80B,EAAM,GAClB,OAAIA,EAAM97B,OAAS,IACV,IAAWgH,EAAK,MAAQ,IAAWA,EAAK,Y,iECvCrDmP,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,aAAc,CACvD,WA6BE,MA1Ba,CAEbmrB,sBAA+B,SAAUhtD,EAAMnZ,GAC7C,IAAIkxB,EAAO,CACTjQ,SAAU,GACV7nB,KAAM,GACNw9D,YAAY,GAiBd,OAda,IAAT52D,GAAuB,IAATA,IAChBkxB,EAAK0lC,YAAa,IAGfz9C,EAAK4yC,OAAS,IAAU5yC,EAAK4yC,MAAMC,QACtC96B,EAAKjQ,SAAW,qBAEhBiQ,EAAKjQ,SAAW,oBACZ9H,EAAK4yC,MAAM8d,iBACb34C,EAAK93B,KAAO,UAEZ83B,EAAK93B,KAAO,UAGT83B,Q,gBC7BbrlB,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,cAAe,CACxD,WACE,aACA,MAAO,CACL8uB,wBAAyB,SAAUl5B,GACjC,OAAIA,EACK77C,OAAOD,KAAK87C,GAAQx8C,KAAI,SAAUwB,GACvC,MAAO,CAAEA,IAAKA,EAAKgE,MAAOg3C,EAAOh7C,GAAMklE,YAAallE,EAAK8kE,cAAe9pB,EAAOh7C,GAAMm0E,OAAO,MAGzF,IAETtO,wBAAyB,SAAUuO,GACjC,IAAIp5B,EAAS,GAQb,OAPIo5B,GACFA,EAAQl8D,SAAQ,SAAUjR,GACpBA,EAAMjH,MACRg7C,EAAO/zC,EAAMjH,KAAOiH,EAAMjD,UAIzBg3C,Q,4EClBf,MAAMq5B,EAA4B,CAChCC,MAAOC,IAAAA,OAAAA,GACPC,IAAKD,IAAAA,OAAAA,GACLE,MAAOF,IAAAA,OAAAA,GACPG,OAAQH,IAAAA,OAAAA,GACRI,KAAMJ,IAAAA,OAAAA,GACNK,QAASL,IAAAA,OAAAA,GACTM,KAAMN,IAAAA,OAAAA,GACNO,MAAOP,IAAAA,OAAAA,GACPQ,YAAaR,IAAAA,OAAAA,GACbS,UAAWT,IAAAA,OAAAA,GACXU,YAAaV,IAAAA,OAAAA,IACbW,aAAcX,IAAAA,OAAAA,IACdY,WAAYZ,IAAAA,OAAAA,IACZa,cAAeb,IAAAA,OAAAA,IACfc,WAAYd,IAAAA,OAAAA,IACZe,YAAaf,IAAAA,OAAAA,KAGTgB,EAA4B,CAChCC,QAASjB,IAAAA,OAAAA,GACTkB,MAAOlB,IAAAA,OAAAA,GACPmB,QAASnB,IAAAA,OAAAA,GACToB,SAAUpB,IAAAA,OAAAA,GACVqB,OAAQrB,IAAAA,OAAAA,GACRsB,UAAWtB,IAAAA,OAAAA,GACXuB,OAAQvB,IAAAA,OAAAA,GACRwB,QAASxB,IAAAA,OAAAA,GACTyB,cAAezB,IAAAA,OAAAA,GACf0B,YAAa1B,IAAAA,OAAAA,GACb2B,cAAe3B,IAAAA,OAAAA,IACf4B,eAAgB5B,IAAAA,OAAAA,IAChB6B,aAAc7B,IAAAA,OAAAA,IACd8B,gBAAiB9B,IAAAA,OAAAA,IACjB+B,aAAc/B,IAAAA,OAAAA,IACdgC,cAAehC,IAAAA,OAAAA,KAGjBt+D,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,YAAa,CACtD,WAEE,IAAImrB,EAAS,GASb,SAASiG,EAAiBC,GACxB,OAAOA,EAAK/6C,QAAQ,8EAA+E,IAGrG,SAASg7C,EAAgBC,GACvB,MAAOC,EAAGC,EAAGnO,GAAKiO,EAElB,MAAQ,OAAMC,MAAMC,MAAMnO,KAG5B,SAASoO,EAAsBC,GAC7B,MAAMC,EAAYD,EAAM,GAExB,OAAkB,IAAdC,EACKN,EAAgBK,EAAMltE,MAAM,IAGnB,IAAdmtE,GAAmBzC,IAAAA,OAAYwC,EAAM,IAChCL,EAAgBnC,IAAAA,OAAYwC,EAAM,KAGpC,GA4DT,OAvDAxG,EAAO0G,WAAa,SAAUR,EAAMS,GAC9BA,IACFT,EAnCJ,SAAsBA,GAIpB,OAHAA,EAAOA,EAAKtwE,UAAU,IACVu1B,QAAQ,eAAgB,MAiC3By7C,CAAaV,IAGtB,MAAMW,GAASC,EAAAA,EAAAA,GAASZ,GAClBa,EAAgB,GAEtB,IAAIC,EAAkB,KAClB16C,EAAkB,KAClB6tC,EAAO,GACP8M,EAAQ,GAEZ,IAAK,MAAMT,KAASK,EAAQ,CAC1B,MAAMhtE,EAAO2sE,EAAM,GAEnB,GAAI1C,EAA0BjqE,GAC5BmtE,EAAkBb,EAAgBrC,EAA0BjqE,SACvD,GAAa,cAATA,EACTmtE,EAAkBT,EAAsBC,QACnC,GAAa,cAAT3sE,EACTmtE,EAAkB,UACb,GAAIhC,EAA0BnrE,GACnCyyB,EAAkB65C,EAAgBnB,EAA0BnrE,SACvD,GAAa,gBAATA,EACTyyB,EAAkBi6C,EAAsBC,QACnC,GAAa,cAAT3sE,EACTyyB,EAAkB,UACb,GAAa,UAATzyB,EACTmtE,EAAkB,KAClB16C,EAAkB,UACb,GAAa,SAATzyB,EAAiB,CAC1B,MAAMqtE,EAAaV,EAAM,GAAGn7C,MAAM,MAElC,IAAK,IAAIh8B,EAAI,EAAGA,EAAI63E,EAAW33E,OAAQF,IAAK,CAChC,IAANA,IACF03E,EAAcrzE,KAAK,CAAEymE,KAAAA,EAAM8M,MAAAA,IAE3B9M,EAAO,GACP8M,EAAQ,IAGV,MAAM1uD,EAAO0tD,EAAiBiB,EAAW73E,IAEzC8qE,GAAQ5hD,EACR0uD,EAAMvzE,KAAK,CAAEszE,gBAAAA,EAAiB16C,gBAAAA,EAAiB/T,KAAAA,MAOrD,OAHI4hD,GACF4M,EAAcrzE,KAAK,CAAEymE,KAAAA,EAAM8M,MAAAA,IAEtBF,GAGF/G,M,sFCpIX,MAAMxc,EACiB,sBAACyG,GACpB,OAAO,IAASA,GAAUv1C,GAAW,8DAA8Dna,KAAKma,EAAOuvC,UAG5F,sBAACgG,GACpB,OAAO,IAAUA,KAAYzG,EAAoB2jB,eAAeld,KAIpE,a,iBCZAvkD,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,aAAc,CACvD,WACE,aACA,MAAO,CACLuyB,aAAc,SAAUvK,GACtB,MAAO,CACLlgE,KAAMkgE,EAAKwK,KAAK1qE,KAChBoE,KAAM87D,EAAKwK,KAAKtmE,KAChB2pC,OAAQmyB,EAAKwK,KAAK38B,OAClB2qB,aAAcwH,EAAKwK,KAAKhS,oB,iBCTlC3vD,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,WACE,aACA,MAAO,CACLyyB,cAAe,SAAU1c,GACvB,OAAIA,EACK,CACLvuD,GAAIuuD,EAAO2c,SACX5qE,KAAMiuD,EAAO4c,WACb9J,SAAU9S,EAAO+S,KAAKhhE,KACtBihE,IAAKhT,EAAO+S,KAAKE,IACjBC,IAAKlT,EAAO+S,KAAKI,IACjBxM,KAAM3G,EAAO+S,KAAKpM,MAGf,IAETkW,aAAc,SAAU7c,GACtB,OAAIA,EACK,CACL2c,SAAU3c,EAAOvuD,GACjBmrE,WAAY5c,EAAOjuD,KACnBghE,KAAM,CACJhhE,KAAMiuD,EAAO8S,SACbG,IAAKjT,EAAOgT,KAAO,IACnBG,IAAKnT,EAAOkT,KAAO,IACnBvM,KAAM3G,EAAO2G,MAAQ,MAIpB,S,iEC5Bf7rD,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,WAoNE,MAjNa,CAEbmrB,wBAAiC,SAAUvyD,EAASsvD,GAClDtvD,EAAQi6D,MAAQ,GAEhB,IADA,IAAIC,EAAqB,GAChBt4E,EAAI,EAAGA,EAAI0tE,EAAMxtE,OAAQF,IAAK,CACrC,IAAIi8D,EAAOyR,EAAM1tE,GACbi8D,EAAKsc,YAAcn6D,EAAQpR,IAC7BoR,EAAQi6D,MAAMh0E,KAAK43D,GACnBA,EAAKuc,YAAcp6D,EAAQ9Q,MAE3BgrE,EAAmBj0E,KAAK43D,GAG5ByR,EAAQ4K,GAGV3H,gBAAyB,SAAUvyD,GACjC,MAAO,CACL9Q,KAAM8Q,EAAQ45D,KAAK1qE,KACnB+tC,OAAQj9B,EAAQ45D,KAAK38B,OACrBo9B,aAAcr6D,EAAQ45D,KAAKS,aAC3BvW,KAAM9jD,EAAQ45D,KAAK9V,KACnBwW,aAAct6D,EAAQ45D,KAAKU,aAC3Bx9B,SAAU98B,EAAQ45D,KAAK98B,SACvBy9B,aAAcv6D,EAAQ45D,KAAKW,eAI/BhI,wCAAiD,SAAUiI,GACzD,GAAIA,EAAqB,CACvB,IAAIC,EAAc,GAclB,OAbAD,EAAoBtgE,SAAQ,SAAUwgE,GAChCA,EAAWC,UAAoC,KAAxBD,EAAWC,UAAmBD,EAAW10E,OAA8B,KAArB00E,EAAW10E,OAE/E,WADC00E,EAAWC,SAAS5yE,eAExB0yE,EAAYx0E,KAAK,CACf20E,OAAQ,CACNC,iBAAkBH,EAAW10E,YAOlCy0E,EAET,MAAO,IAGTlI,wCAAiD,SAAUuI,GACzD,GAAIA,EAAqB,CACvB,IAAI3J,EAAc,GAMlB,OALA2J,EAAoB5gE,SAAQ,SAAU02D,GAChCA,EAAW5uE,KAA0B,KAAnB4uE,EAAW5uE,KAAc4uE,EAAW5qE,OAA8B,KAArB4qE,EAAW5qE,OAC5EmrE,EAAYlrE,KAAK2qE,EAAW5uE,IAAM4uE,EAAWmK,SAAWnK,EAAW5qE,UAGhEmrE,EAET,MAAO,IAGToB,+BAAwC,SAAUkI,GAChD,GAAIA,EAAa,CACf,IAAID,EAAsB,GAS1B,OARAC,EAAYvgE,SAAQ,SAAUwgE,GACxBA,EAAWE,QACbJ,EAAoBv0E,KAAK,CACvB00E,SAAU,SACV30E,MAAO00E,EAAWE,OAAOC,sBAIxBL,EAET,MAAO,IAGTjI,+BAAwC,SAAUpB,GAQhD,GAAIA,EAAa,CACf,IAAI2J,EAAsB,GAgB1B,OAfA3J,EAAYj3D,SAAQ,SAAU02D,GAC5B,IAAIoK,EAVR,SAAqBpK,GACnB,IAAIqK,EAAcrK,EAAW1oE,QAAQ,MACrC,OAAI+yE,GAAe,EACV,CAACA,EAAa,MAEhB,CAACrK,EAAW1oE,QAAQ,MAAO,MAKVgzE,CAAYtK,GAE9B5uE,EAAM4uE,EAAW/kE,MAAM,EAAGmvE,EAAgB,IAC1CD,EAAWC,EAAgB,GAC3Bh1E,EAAQ4qE,EAAW/kE,MAAMmvE,EAAgB,GAAK,GAElDF,EAAoB70E,KAAK,CACvBjE,IAAKA,EACLgE,MAAOA,EACP+0E,SAAUA,EACV7T,YAAallE,EACb8kE,cAAe9gE,OAGZ80E,IAIXvI,8BAAuC,SAAU4I,GAC/C,IAAIC,EAEAC,EAAUF,EAAct2C,MADhB,+BAGZ,GAAgB,OAAZw2C,GAAuC,IAAnBA,EAAQv5E,OAAc,CAC5C,IAAIw5E,EAAWj0E,SAASg0E,EAAQ,GAAI,IAChCl8C,EAAOk8C,EAAQ,GAEnB,OAAQl8C,GACN,IAAK,KACHi8C,EAAQE,EACR,MACF,IAAK,KACHF,EAAmB,IAAXE,EACR,MACF,QACEF,EAA2D,IAAnD37C,IAAAA,SAAgB67C,EAAUn8C,GAAMo8C,kBAG9C,OAAOH,GAUT7I,8BAAuC,SAAU6I,GAC/C,IAAID,EAAgB,KAChBK,EAAqB,CACzBA,GAA2B,GAY3B,OAXAA,EAAkB,GAAoC,IAA3BA,EAAkB,GAC7CA,EAAkB,GAAoC,IAA3BA,EAAkB,GAC7CA,EAAkB,EAAmC,IAA3BA,EAAkB,GAC5CA,EAAkB,EAAkC,GAA1BA,EAAkB,EAC5CA,EAAkB,EAAkC,GAA1BA,EAAkB,EAE5Cr6E,OAAOD,KAAKs6E,GAAoBthE,SAAQ,SAAUilB,GAC5Ci8C,EAAQI,EAAmBr8C,IAAU,GAAKi8C,EAAQI,EAAmBr8C,GAAQ,IAC/Eg8C,EAAgBC,EAAQI,EAAmBr8C,GAAQA,MAGhDg8C,GAGT5I,iCAA0C,SAAUkJ,GAClD,IAAIzyE,EAAU,GAYd,OAXIyyE,GACFt6E,OAAOD,KAAKu6E,GAAYvhE,SAAQ,SAAUlY,GACxCgH,EAAQ/C,KAAK,CACXjE,IAAKA,EACLgE,MAAOy1E,EAAWz5E,GAClBklE,YAAallE,EACb8kE,cAAe2U,EAAWz5E,GAC1Bm0E,OAAO,OAINntE,GAGTupE,iCAA0C,SAAUmJ,GAClD,IAAI1yE,EAAU,GAQd,OAPI0yE,GACFA,EAAsBxhE,SAAQ,SAAUzP,GAClCA,EAAOzI,KAAsB,KAAfyI,EAAOzI,KAAcyI,EAAOzE,OAA0B,KAAjByE,EAAOzE,QAC5DgD,EAAQyB,EAAOzI,KAAOyI,EAAOzE,UAI5BgD,GAGTupE,kCAA2C,SAAU3qE,GACnD,IAAI+zE,EAAgB,GASpB,OARI/zE,GACFA,EAAQsS,SAAQ,SAAU0hE,GACxB,GAAIA,EAAM1zE,QAAQ,MAAoC,IAA5B0zE,EAAMh+C,MAAM,KAAK97B,OAAc,CACvD,IAAI+5E,EAAWD,EAAMh+C,MAAM,KAC3B+9C,EAAc11E,KAAK,CAAE61E,SAAUD,EAAS,GAAIriC,GAAIqiC,EAAS,SAIxDF,GAGTpJ,kCAA2C,SAAU3qE,GACnD,IAAI+zE,EAAgB,GAQpB,OAPI/zE,GACFA,EAAQsS,SAAQ,SAAU0hE,GACpBA,EAAMpiC,IAAMoiC,EAAME,UACpBH,EAAc11E,KAAK21E,EAAMpiC,GAAK,IAAMoiC,EAAME,aAIzCH,Q,iBCpNb1jE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,aAAc,CACvD,WACE,aAcA,MAZa,CAEbmrB,yBAAkC,SAAU1U,EAAMlgB,GAChD,IAAK,IAAI/7C,EAAI,EAAGA,EAAI+7C,EAAW77C,OAAQF,IAAK,CAC1C,IAAI+3C,EAAYgE,EAAW/7C,GAC3B,GAAIi8D,EAAKke,cAAgBpiC,EAAU/qC,GAAI,CACrCivD,EAAKpvB,UAAYkL,EACjB,c,iBCXV1hC,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,WACE,aA0BA,MAzBa,CAEbmrB,oBAA6B,SAAUyJ,GACrC,IAAIhzE,EAAU,GAId,OAHAgzE,EAAY9hE,SAAQ,SAAUzP,GAC5BzB,EAAQyB,EAAOtE,MAAQsE,EAAOzE,SAEzBgD,GAGTupE,uBAAgC,SAAUtU,EAAQZ,GAChD,IAAK,IAAIz7D,EAAI,EAAGA,EAAIy7D,EAASv7D,OAAQF,IAGnC,IAFA,IACIq6E,EADU5e,EAASz7D,GACFoxE,OACZkJ,EAAI,EAAGA,EAAID,EAAOn6E,OAAQo6E,IAEjC,GADYD,EAAOC,GACThJ,SAAWjV,EAAOrvD,GAC1B,OAAO,EAKb,OAAO,Q,gBCzBbqJ,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,wBAAyB,CAC/D,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,EAAwB,CAC1B,IAAItS,EAAOsS,EAASgjE,UAAU,GAAGC,YAAYliB,WAC7C,QAAajmD,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,iBCrBX3vC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,oBAAqB,CAC3D,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,EAAwB,CAC1B,IAAItS,EAAOsS,EAASgjE,UAAU,GAAGC,YAAYC,OAC7C,QAAapoE,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,iBCrBX3vC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,GAA0BA,EAASgjE,UAAUt6E,QAAUsX,EAASgjE,UAAU,GAAGC,YAAa,CAC5F,IAAIv1E,EAAOsS,EAASgjE,UAAU,GAAGC,YAAYE,KAC7C,QAAaroE,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,gBCrBX3vC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,sBAAuB,CAC7D,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,EAAwB,CAC1B,IAAItS,EAAOsS,EAASgjE,UAAU,GAAGC,YAAYv/B,SAC7C,QAAa5oC,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,iBCrBX3vC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,qBAAsB,CAC5D,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,GAA0BA,EAASgjE,UAAUt6E,QAAUsX,EAASgjE,UAAU,GAAGC,YAAa,CAC5F,IAAIv1E,EAAOsS,EAASgjE,UAAU,GAAGC,YAAY7hE,QAC7C,QAAatG,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,iBCrBX3vC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,qBAAsB,CAC5D,KACA,mBACA,SAAUjxB,EAAI6wB,GACZ,aACA,IAAIY,EAAc,CAElBA,cAEA,SAAkCu0B,GAChC,GAAyB,MAArBA,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,OAAe,CACnF,IAAInB,EAAW4tC,EAAiBwE,kBAChC,QAAiBt3C,IAAbkF,EAAwB,CAC1B,IAAItS,EAAOsS,EAASgjE,UAAU,GAAGC,YAAY9I,QAC7C,QAAar/D,IAATpN,EACF,OAAOA,GAIb,OAAOqvB,EAAG/E,OAAO+qD,KAEnB,OAAOv0B,M,uGCJJ,SAAS40B,EAAgB11E,GAC9BzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAKo6E,UAAY31E,EAAK21E,UACtBp6E,KAAKq6E,UAAY51E,EAAK41E,UACtBr6E,KAAKmY,QAAU1T,EAAK0T,QAAQmiE,MAC5Bt6E,KAAK6M,KAAOpI,EAAK8yE,KAAK1qE,KACtB7M,KAAK46C,OAASn2C,EAAK8yE,KAAK38B,OACxB56C,KAAKu6E,KAtBP,SAA0BrO,GACxB,IACE,OAAOsO,mBACLC,KAAKvO,GACF3wC,MAAM,IACNp9B,KAAI,SAAU2tB,GACb,MAAO,KAAO,KAAOA,EAAEsgD,WAAW,GAAGvoE,SAAS,KAAK2F,OAAO,MAE3D2D,KAAK,KAEV,MAAO2N,GACP,OAAO2/D,KAAKvO,IAWFwO,CAAiBj2E,EAAK8yE,KAAKgD,MAEnC91E,EAAK41C,WAAa51C,EAAK41C,UAAUC,kBACnCt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,oB,mSCxBhE,SAASO,EAAa8/B,GAC3B,IAAIziE,EAAS,IAAUyiE,GAEvB,OAAIziE,EAAOrS,QAAQ,WAAa,EACvB,SACEqS,EAAOrS,QAAQ,SAAW,EAC5B,OACEqS,EAAOrS,QAAQ,YAAc,EAC/B,UACEqS,EAAOrS,QAAQ,WAAa,EAC9B,UACEqS,EAAOrS,QAAQ,cAAgB,EACjC,UACEqS,EAAOrS,QAAQ,gBAAkB,EACnC,YACEqS,EAAOrS,QAAQ,uBAAyB,EAC1C,WAEF,UAGF,SAAS+0E,EAAmBn2E,GAyBjC,GAxBAzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKiZ,OAAS4hC,EAAap2C,EAAKwU,QAChCjZ,KAAK0vD,MAAQjrD,EAAKirD,MAClB1vD,KAAK66E,QAAUp2E,EAAKo2E,QACpB76E,KAAKq3C,MAAQ5yC,EAAK4yC,MAEd5yC,EAAK+1C,kBAAoB,IAAU/1C,EAAK+1C,gBAAgBC,YAC1Dz6C,KAAKo3C,GAAK3yC,EAAK+1C,gBAAgBC,SAAS37C,OAAOD,KAAK4F,EAAK+1C,gBAAgBC,UAAU,IAAIC,WAEzF16C,KAAKw6C,gBAAkB/1C,EAAK+1C,gBAC5Bx6C,KAAKknE,MAAQziE,EAAKyiE,MAClBlnE,KAAK86E,QAAUr2E,EAAKq2E,QACpB96E,KAAK+6E,QAAUt2E,EAAKs2E,QACpB/6E,KAAKg7E,SAAU,EACfh7E,KAAK46C,OAASn2C,EAAKm2C,OACf56C,KAAK46C,QAAU56C,KAAK46C,OAAO,8BAC7B56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,8BACpB56C,KAAK46C,QAAU56C,KAAK46C,OAAO,gCACpC56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,+BAE/B56C,KAAK2wE,OAASlsE,EAAKksE,OAEnB3wE,KAAKo1D,YAAc3wD,EAAK2wD,YACxBp1D,KAAK86C,MAAQ,GACTr2C,EAAKq2C,MACP,IAAK,IAAIv7C,EAAI,EAAGA,EAAIkF,EAAKq2C,MAAMr7C,SAAUF,EAAG,CAC1C,IAAIgrC,EAAI9lC,EAAKq2C,MAAMv7C,GACfgrC,EAAEwQ,YACJ/6C,KAAK86C,MAAMl3C,KAAK,CAAEozC,KAAMzM,EAAE6M,GAAIa,QAAS1N,EAAEyQ,YAAapmC,OAAQ21B,EAAEwQ,aAKlEt2C,EAAK41C,YACH51C,EAAK41C,UAAUC,kBACjBt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,kBAEjE71C,EAAK41C,UAAUE,OAAS91C,EAAK41C,UAAUE,MAAMtD,WAC/Cj3C,KAAKi3C,SAAWxyC,EAAK41C,UAAUE,MAAMtD,WAKpC,SAASgkC,EAAwBx2E,GAmCtC,GAlCAzE,KAAKk7E,KAAOz2E,EAAKy2E,KACjBl7E,KAAKm7E,QAAU12E,EAAK02E,aACwBtpE,IAAxCpN,EAAK22E,aAAaC,mBAEpBr7E,KAAKs7E,YAAc72E,EAAK22E,aAAaC,kBACrCr7E,KAAKu7E,YAAc,EACnBv7E,KAAKw7E,SAAW/2E,EAAKg3E,UACrBz7E,KAAK07E,WAAY,QAGe7pE,IAA5BpN,EAAK22E,aAAaO,YAAmD9pE,IAA5BpN,EAAK22E,aAAaQ,MAC7D57E,KAAKs7E,YAAct7E,KAAKu7E,YAAc,GAEtCv7E,KAAKu7E,YAAc,OACmB1pE,IAAlCpN,EAAK22E,aAAaO,MAAME,QAE1B77E,KAAKu7E,YAAc92E,EAAK22E,aAAaO,MAAME,OAE7C77E,KAAKs7E,YAAc72E,EAAK22E,aAAaQ,MAAQ57E,KAAKu7E,aAGtDv7E,KAAK87E,sBAAwBr3E,EAAKs3E,aAAaC,UAAUC,YACzDj8E,KAAKk8E,uBAAyBz3E,EAAKs3E,aAAaI,iBAChDn8E,KAAKo8E,qBAAuB33E,EAAK43E,UAAUL,UAAUC,YACrDj8E,KAAKs8E,sBAAwB73E,EAAK43E,UAAUF,iBAC5Cn8E,KAAKu8E,SAAW,EACZ93E,EAAK43E,UAAUL,UAAUQ,aAC3Bx8E,KAAKu8E,SAAW93E,EAAK43E,UAAUL,UAAUQ,aAAa/8E,YAEnBoS,IAA/BpN,EAAK43E,UAAUI,cACjBz8E,KAAKu8E,SAAW93E,EAAK43E,UAAUI,aAGnCz8E,KAAKy6C,SAAW,IAASh2C,EAAKk2D,eACL9oD,IAArBpN,EAAKi4E,aAA6E,OAAhDj4E,EAAKi4E,YAAYC,2BAAqC,CAE1F,IAAIC,EAAWn4E,EAAKi4E,YAAYC,2BAA2BlzE,MAAMlJ,GAAe,SAATA,EAAE6tE,UACxDv8D,IAAb+qE,IAEFA,EAAWn4E,EAAKi4E,YAAYC,2BAA2BlzE,MAAMlJ,GAAe,SAATA,EAAE6tE,WAEtDv8D,IAAb+qE,IACF58E,KAAK68E,UAAYD,EAASj5E,OAE5B,IAAIm5E,EAAYr4E,EAAKi4E,YAAYC,2BAA2BlzE,MAAMlJ,GAAe,UAATA,EAAE6tE,UACxDv8D,IAAdirE,IAEFA,EAAYr4E,EAAKi4E,YAAYC,2BAA2BlzE,MAAMlJ,GAAe,UAATA,EAAE6tE,WAEtDv8D,IAAdirE,IACF98E,KAAK+8E,WAAaD,EAAUn5E,YAI9B3D,KAAKg9E,UAAW,EAIb,SAASC,EAA0Bx4E,GACxCzE,KAAKwhE,MAAQ/8D,EACbzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK0vD,MAAQjrD,EAAKirD,MAClB1vD,KAAK66E,QAAUp2E,EAAKo2E,QACpB76E,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAKw6C,gBAAkB/1C,EAAK+1C,gBAC5Bx6C,KAAKk9E,KAAOz4E,EAAKy4E,KACjBl9E,KAAKknE,MAAQziE,EAAKyiE,MAClBlnE,KAAK4zD,OAASnvD,EAAKmvD,OACnB5zD,KAAKqwE,WAAa5rE,EAAK4rE,WACvBrwE,KAAK2wE,OAASlsE,EAAKksE,OACflsE,EAAK41C,WAAa51C,EAAK41C,UAAUC,kBACnCt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,kBAErEt6C,KAAKo1D,YAAc3wD,EAAK2wD,c,uIC9I1B,IAAI+nB,EAAU,CACZC,QAAS,+BACTC,MAAO,uCACPC,YAAa,wCACbC,MAAO,+DACPC,QAAS,8BACTC,aAAc,0DACdC,OAAQ,gIACRC,OAAQ,oFACRC,KAAM,gDACNC,OAAQ,2EACRC,OAAQ,gDACRC,iBAAkB,mFAClBC,WAAY,wCACZC,QAAS,yBACTC,WAAY,kCACZC,UAAW,uDACXC,UAAW,oDACXC,UAAW,uDACXC,SAAU,wGACVC,aAAc,4BACdC,SAAU,6FACVC,eAAgB,sFAChBC,cAAe,kHACfC,UAAW,2EACXC,aAAc,kGACdC,UAAW,8CACXC,OAAQ,2CACRC,gBAAiB,uFACjBC,gBAAiB,yDACjBC,cAAe,oDACfC,SAAU,2DACVC,UAAW,mEACXC,WAAY,6CACZC,SAAU,qFACVC,MAAO,sDACPC,WAAY,kDACZC,cAAe,kDAGV,SAASC,IAEd,MAAO,CACL,IAAIC,EAAoB,WAAW,GACnC,IAAIA,EAAoB,SAAS,GACjC,IAAIA,EAAoB,eAAe,GACvC,IAAIA,EAAoB,SAAS,GACjC,IAAIA,EAAoB,WAAW,GACnC,IAAIA,EAAoB,gBAAgB,GACxC,IAAIA,EAAoB,UAAU,GAClC,IAAIA,EAAoB,UAAU,GAClC,IAAIA,EAAoB,QAAQ,GAChC,IAAIA,EAAoB,UAAU,GAClC,IAAIA,EAAoB,UAAU,GAClC,IAAIA,EAAoB,oBAAoB,GAC5C,IAAIA,EAAoB,cAAc,GACtC,IAAIA,EAAoB,WAAW,GACnC,IAAIA,EAAoB,cAAc,GACtC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,YAAY,GACpC,IAAIA,EAAoB,gBAAgB,GACxC,IAAIA,EAAoB,YAAY,GACpC,IAAIA,EAAoB,kBAAkB,GAC1C,IAAIA,EAAoB,iBAAiB,GACzC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,gBAAgB,GACxC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,UAAU,GAClC,IAAIA,EAAoB,mBAAmB,GAC3C,IAAIA,EAAoB,mBAAmB,GAC3C,IAAIA,EAAoB,iBAAiB,GACzC,IAAIA,EAAoB,YAAY,GACpC,IAAIA,EAAoB,aAAa,GACrC,IAAIA,EAAoB,cAAc,GACtC,IAAIA,EAAoB,YAAY,GACpC,IAAIA,EAAoB,SAAS,GACjC,IAAIA,EAAoB,cAAc,GACtC,IAAIA,EAAoB,iBAAiB,IACzCrpE,MAAK,SAAU+xD,EAAGC,GAClB,OAAOD,EAAEjM,WAAakM,EAAElM,YAAc,EAAI,KAIvC,SAASujB,EAAoBnjB,EAAKH,GACvCp8D,KAAKm8D,WAAaI,EAClBv8D,KAAKo8D,QAAUA,EACfp8D,KAAK4S,YAAcuqE,EAAQ5gB,K,mCC2EtB,SAASojB,EAAel7E,GAE7BzE,KAAK4/E,KAAOn7E,EAAKo7E,KACbp7E,EAAKuG,MACPhL,KAAKgL,KAAOvG,EAAKuG,KACjBhL,KAAK8/E,QAxKT,SAA4BnsC,GAC1B,IAAIosC,EAAYpsC,EAAMqsC,MAAMC,WACxB76D,EAAU,GAEV1gB,EAASivC,EAAMusC,OACfC,EAAQ,GACRC,EAAW17E,EAAOmB,QAAQ,KAM9B,QALiB,GAAbu6E,IACFD,EAAQz7E,EAAOoB,UAAUs6E,GACzB17E,EAASA,EAAOoB,UAAU,EAAGs6E,IAGvBzsC,EAAM3oC,MACZ,IAAK,YACH,OAAQtG,GACN,IAAK,OACH0gB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,UACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,QACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,OACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,UAC1C,MACF,IAAK,MACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,4BAA8Bi8E,EAAUM,SAClF,MACF,IAAK,SACHj7D,EAAU,aAAe26D,EAAUj8E,KAAO,aAC1C,MACF,IAAK,UACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,aAC1C,MACF,IAAK,QACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,UAC1C,MACF,IAAK,UACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,YAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,YAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,YAC1C,MACF,IAAK,OACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,UAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,YAC1C,MACF,IAAK,gBACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,0BAC1C,MACF,IAAK,MACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,yBAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,MACHshB,EAAU,0CAA4C26D,EAAUj8E,KAChE,MACF,IAAK,SACHshB,EAAU,aAAe26D,EAAUj8E,KAAO,WAC1C,MACF,IAAK,cACHshB,EAAU,wBACV,MACF,IAAK,aACHA,EAAU,wBACV,MACF,IAAK,WACHA,EAAU,uBACV,MACF,QACEA,EAAU,oBAEd,MACF,IAAK,QACH,OAAQ1gB,GACN,IAAK,SACH0gB,EAAU,gBACV,MACF,IAAK,SACHA,EAAU,SAAWuuB,EAAMqsC,MAAMx1C,GAAK,YACtC,MACF,IAAK,OACHplB,EAAU,SAAWuuB,EAAMqsC,MAAMx1C,GAAK,UACtC,MACF,IAAK,MACHplB,EAAU,uBAAyB26D,EAAUj8E,KAC7C,MACF,IAAK,QACHshB,EAAU,iBACV,MACF,IAAK,OACHA,EAAU,SAAWuuB,EAAMqsC,MAAMx1C,GAAK,SACtC,MACF,IAAK,OACHplB,EAAU,SAAWuuB,EAAMqsC,MAAMx1C,GAAK,UACtC,MACF,IAAK,OACHplB,EAAU,SAAWuuB,EAAMqsC,MAAMx1C,GAAK,UACtC,MACF,QACEplB,EAAU,oBAEd,MACF,IAAK,UACH,OAAQ1gB,GACN,IAAK,SACH0gB,EAAU,WAAa26D,EAAUj8E,KAAO,WACxC,MACF,IAAK,UACHshB,EAAU,WAAa26D,EAAUj8E,KAAO,WACxC,MACF,IAAK,SACHshB,EAAU,WAAa26D,EAAUj8E,KAAO,WACxC,MACF,IAAK,UACHshB,EAAU,0BAA4B26D,EAAUj8E,KAAO,WACvD,MACF,IAAK,aACHshB,EAAU,+BAAiC26D,EAAUj8E,KAAO,WAC5D,MACF,QACEshB,EAAU,oBAEd,MACF,IAAK,SACH,OAAQ1gB,GACN,IAAK,SACH0gB,EAAU,UAAYuuB,EAAMqsC,MAAMx1C,GAAK,WACvC,MACF,IAAK,UACHplB,EAAU,UAAYuuB,EAAMqsC,MAAMx1C,GAAK,WACvC,MACF,IAAK,QACHplB,EAAU,UAAYuuB,EAAMqsC,MAAMx1C,GAAK,WACvC,MACF,IAAK,UACHplB,EAAU,UAAYuuB,EAAMqsC,MAAMx1C,GAAK,aACvC,MACF,QACEplB,EAAU,oBAEd,MACF,QACEA,EAAU,oBAEd,OAAOA,EAAU+6D,EAQAG,CAAmB77E,KAElCzE,KAAKgL,KAAOvG,EAAKyT,OACjBlY,KAAK8/E,QAAUr7E,EAAKymC,M,wFC3KjB,SAASq1C,EAAe97E,GAO7B,GANAzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKwgF,IAAM/7E,EAAK+7E,IAChBxgF,KAAKygF,WAAah8E,EAAKg8E,WACvBzgF,KAAK66E,QAAUp2E,EAAKo2E,QACpB76E,KAAKg7E,SAAU,EACfh7E,KAAK4sE,SAAWnoE,EAAKmoE,UAChB5sE,KAAK4sE,UAAYnoE,EAAKi8E,YAAa,CACtC1gF,KAAK4sE,SAAW,GAChB,IAAK,IAAIrtE,EAAI,EAAGA,EAAIkF,EAAKi8E,YAAYjhF,OAAQF,IAAK,CAChD,IAAIohF,EAASl8E,EAAKi8E,YAAYnhF,GAC1Bo0E,EAAagN,EAAO76E,UAAU,EAAG66E,EAAO96E,QAAQ,MACpD7F,KAAK4sE,SAAShpE,KAAK+vE,EAAa,YAIpC3zE,KAAK4gF,YAAcn8E,EAAKm8E,YACxB5gF,KAAKu/D,eAAiB96D,EAAK86D,eAEvB96D,EAAK41C,WAAa51C,EAAK41C,UAAUE,OAAS91C,EAAK41C,UAAUE,MAAMtD,WACjEj3C,KAAKi3C,SAAWxyC,EAAK41C,UAAUE,MAAMtD,UAEvCj3C,KAAK46C,OAASn2C,EAAKm2C,OAGd,SAASimC,EAAgBp8E,GAC9BzE,KAAK8gF,UAAW,EAGhB,IAFA,IAAIC,EAAY,GAEPxhF,EAAI,EAAGA,EAAIkF,EAAKhF,OAAQF,IAAK,CACpC,IAAI8qE,EAAO5lE,EAAKlF,GAEZ8qE,EAAK2W,SACP3W,EAAOA,EAAK2W,OAAO3lD,QAAQ,8EAA+E,IAC1G0lD,EAAUn9E,KAAKymE,IAGbA,EAAK4W,cACPF,EAAUn9E,KAAKymE,EAAK4W,YAAYh0E,SAChCjN,KAAK8gF,UAAW,GAIpB9gF,KAAK+gF,UAAYA,E,6HC3CZ,SAASG,EAAsBz8E,GACpCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKwgF,IAAM/7E,EAAK+7E,IAChBxgF,KAAKmhF,OAAS18E,EAAK08E,OACnBnhF,KAAKygF,WAAah8E,EAAKg8E,WACvBzgF,KAAK66E,QAAUp2E,EAAKo2E,QACpB76E,KAAKg7E,SAAU,EACfh7E,KAAK4sE,SAAWnoE,EAAKmoE,SACrB5sE,KAAK4gF,YAAcn8E,EAAKm8E,YACxB5gF,KAAKohF,cAAgB38E,EAAK28E,cAC1BphF,KAAKqhF,GAAK58E,EAAK48E,GACfrhF,KAAKshF,aAAe78E,EAAK68E,aACzBthF,KAAKuhF,OAAS98E,EAAK88E,OACnBvhF,KAAK+6E,QAAUt2E,EAAKmvD,OAAO4tB,IAC3BxhF,KAAKyhF,WAAah9E,EAAKi9E,gBAAgBD,WAAah9E,EAAKi9E,gBAAgBD,WAAa,GACtFzhF,KAAKywE,aAAehsE,EAAKi9E,gBAAgBjR,aAAe3xE,OAAOD,KAAK4F,EAAKi9E,gBAAgBjR,cAAgB,GACzGzwE,KAAKkxE,QAAUzsE,EAAKi9E,gBAAgBxQ,QAAUpyE,OAAOD,KAAK4F,EAAKi9E,gBAAgBxQ,SAAW,GAC1FlxE,KAAK2hF,IAAMl9E,EAAKi9E,gBAAgBC,IAAMl9E,EAAKi9E,gBAAgBC,IAAM,GACjE3hF,KAAK46C,OAASn2C,EAAKi9E,gBAAgB9mC,O,+FClB9B,SAASgnC,EAAoBrrE,EAAO9R,GACzCzE,KAAK6hF,MAAQtrE,EACbvW,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK66E,QAAUp2E,EAAKo2E,QACpB76E,KAAK8hF,UAAYr9E,EAAKq9E,UACtB9hF,KAAK+hF,KAAOt9E,EAAKs9E,KACjB/hF,KAAKgiF,QAAUv9E,EAAKu9E,QACpBhiF,KAAKiiF,KAAOx9E,EAAKw9E,K,kKCLZ,SAASC,EAAiBz9E,GAC/BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAK+zD,MAAQtvD,EAAKsvD,MAClB/zD,KAAK8zD,OAASrvD,EAAKqvD,OACnB9zD,KAAKg0D,WAAavvD,EAAKuvD,WACvBh0D,KAAKi0D,SAAWxvD,EAAKwvD,SACrBj0D,KAAK2zD,KAAOlvD,EAAKkvD,KACjB3zD,KAAK83D,WAAarzD,EAAKqzD,WACvB93D,KAAKg4D,QAAUvzD,EAAKuzD,QACpBh4D,KAAKmiF,QAAU19E,EAAK09E,QAEpBniF,KAAK46C,OAASn2C,EAAKm2C,OACf56C,KAAK46C,QAAU56C,KAAK46C,OAAO,8BAC7B56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,8BACpB56C,KAAK46C,QAAU56C,KAAK46C,OAAO,gCACpC56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,+BAG3Bn2C,EAAK41C,YACH51C,EAAK41C,UAAUC,kBACjBt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,kBAEjE71C,EAAK41C,UAAUE,OAAS91C,EAAK41C,UAAUE,MAAMtD,WAC/Cj3C,KAAKi3C,SAAWxyC,EAAK41C,UAAUE,MAAMtD,WAIzCj3C,KAAKoiF,WAAa39E,EAAK29E,WACvBpiF,KAAKqrE,WAAa5mE,EAAK4mE,a,mCC/BlB,SAASgX,EAAc59E,GAC5BzE,KAAKwhE,MAAQ/8D,EACbzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAKmY,QAAU1T,EAAK0T,QAAQmiE,MAC5Bt6E,KAAK6M,KAAOpI,EAAK8yE,KAAK1qE,KACtB7M,KAAKiR,KAAOxM,EAAK8yE,KAAKtmE,KACtBjR,KAAKo6E,UAAY31E,EAAK21E,UACtBp6E,KAAKq6E,UAAY51E,EAAK41E,UACtBr6E,KAAKulE,aAAe9gE,EAAK8yE,KAAKhS,aAE9B,IAAI5qB,EAASl2C,EAAK8yE,KAAK38B,OAErB56C,KAAK46C,OADHD,EACY77C,OAAOD,KAAK87C,GAAQx8C,KAAI,SAAUwB,GAC9C,MAAO,CAAEA,IAAKA,EAAKgE,MAAOg3C,EAAOh7C,GAAMklE,YAAallE,EAAK8kE,cAAe9pB,EAAOh7C,GAAMm0E,OAAO,MAGhF,GAGhB,IAAI7E,EAAexqE,EAAK69E,YAAYC,OAAO3nC,OAEzC56C,KAAKmvE,aADHF,EACkBnwE,OAAOD,KAAKowE,GAAc9wE,KAAI,SAAUwB,GAC1D,MAAO,CAAEA,IAAKA,EAAKgE,MAAOsrE,EAAatvE,OAGrB,GAGtBK,KAAKqtE,SAAW5oE,EAAK69E,YAAYjV,SACjCrtE,KAAKwiF,qBAAuB/9E,EAAK69E,YAAYG,SAASnB,aACtDthF,KAAK0iF,WAAaj+E,EAAK69E,YAAYG,SAASE,GAC5C3iF,KAAK4iF,KAAOn+E,EAAK69E,YAAYO,UAAUC,SACvC9iF,KAAK+iF,OAASt+E,EAAK69E,YAAYO,UAAUG,YACzChjF,KAAKijF,cAAgBx+E,EAAK69E,YAAYC,OAAOU,cAC7CjjF,KAAKkjF,QAAUz+E,EAAK69E,YAAYC,OAAOW,QACvCljF,KAAKiZ,OAASxU,EAAKwU,OAAOy2C,MAEtBjrD,EAAKwU,OAAOkqE,OACdnjF,KAAKmjF,KAAO1+E,EAAKwU,OAAOkqE,MAGtB1+E,EAAK2+E,gBACPpjF,KAAKqjF,OAAS5+E,EAAK2+E,cAAcC,OACjCrjF,KAAKsjF,aAAe7+E,EAAK2+E,cAAcE,aACvCtjF,KAAKujF,YAAc9+E,EAAK2+E,cAAcD,M,uFCzCnC,SAASK,EAAgB/+E,GAC9BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAKyjF,QAAUh/E,EAAKg/E,QACpBzjF,KAAK4zD,OAASnvD,EAAKmvD,O,yFCId,SAAS8vB,IACd1jF,KAAKgoE,aAAc,EACnBhoE,KAAKinE,SAAW,GAChBjnE,KAAKknE,MAAQ,G,mKCZR,SAASyc,EAAgBl/E,GAC9BzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAKo6E,UAAY31E,EAAK21E,UACtBp6E,KAAKq6E,UAAY51E,EAAK41E,UACtBr6E,KAAKmY,QAAU1T,EAAK0T,QAAQmiE,MAC5Bt6E,KAAK6M,KAAOpI,EAAK8yE,KAAK1qE,KACtB7M,KAAK46C,OAASn2C,EAAK8yE,KAAK38B,OAEpBn2C,EAAK41C,WACH51C,EAAK41C,UAAUC,kBACjBt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,oB,uGCVlE,SAASspC,EAAiBn/E,EAAMyoE,EAAc2W,GACnD7jF,KAAKwhE,MAAQ/8D,EACbzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAK43E,MAAQ,GACb53E,KAAK6M,KAAOpI,EAAK8yE,KAAK1qE,KACtB7M,KAAKo6E,UAAY31E,EAAK21E,UACtBp6E,KAAKq6E,UAAY51E,EAAK41E,UACtBr6E,KAAKknE,MAAQziE,EAAK8yE,KAAKS,aAAa8L,cAAc5c,MAClDlnE,KAAKmY,QAAU1T,EAAK0T,QAAQmiE,MACxB71E,EAAK8yE,KAAK9V,KAAKC,YACjB1hE,KAAKyhE,KAAO,aACZzhE,KAAK2hE,SAAWl9D,EAAK8yE,KAAK9V,KAAKC,WAAWC,WAE1C3hE,KAAKyhE,KAAO,SACRoiB,IACF7jF,KAAK2hE,SAAWkiB,EAASpkF,SAGzBytE,IACFltE,KAAK0sE,QAAUQ,EAAaztE,QAE1BgF,EAAK8yE,KAAKS,aAAa6K,YACrBp+E,EAAK8yE,KAAKS,aAAa6K,UAAUkB,SACnC/jF,KAAKgkF,cAAgBv/E,EAAK8yE,KAAKS,aAAa6K,UAAUkB,OAAOjB,SAC7D9iF,KAAKikF,iBAAmBx/E,EAAK8yE,KAAKS,aAAa6K,UAAUkB,OAAOf,aAE9Dv+E,EAAK8yE,KAAKS,aAAa6K,UAAUqB,eACnClkF,KAAKmkF,oBAAsB1/E,EAAK8yE,KAAKS,aAAa6K,UAAUqB,aAAapB,SACzE9iF,KAAKokF,uBAAyB3/E,EAAK8yE,KAAKS,aAAa6K,UAAUqB,aAAalB,cAI5Ev+E,EAAK8yE,KAAKS,aAAaqM,eACzBrkF,KAAKskF,iBAAmB7/E,EAAK8yE,KAAKS,aAAaqM,cAAcE,WAAa,MAC1EvkF,KAAKwkF,aAAe//E,EAAK8yE,KAAKS,aAAaqM,cAAcI,OAAS,IAClEzkF,KAAK0kF,mBAAqBjgF,EAAK8yE,KAAKS,aAAaqM,cAAcM,aAAe,EAC9E3kF,KAAK4kF,cAAgBngF,EAAK8yE,KAAKS,aAAaqM,cAAcQ,QAAU,IAEpE7kF,KAAKskF,iBAAmB,MACxBtkF,KAAKwkF,aAAe,IACpBxkF,KAAK0kF,mBAAqB,EAC1B1kF,KAAK4kF,cAAgB,GAGnBngF,EAAK8yE,KAAKS,aAAa8M,WACzB9kF,KAAK+kF,cAAgBtgF,EAAK8yE,KAAKS,aAAa8M,UAAUj4E,MAAQ,GAC9D7M,KAAKglF,cAAgBvgF,EAAK8yE,KAAKS,aAAa8M,UAAU9sB,SAAW,KAEjEh4D,KAAK+kF,cAAgB,GACrB/kF,KAAKglF,cAAgB,IAGvBhlF,KAAKkvE,YAAczqE,EAAK8yE,KAAKS,aAAaiN,WAAYxgF,EAAK8yE,KAAKS,aAAaiN,UAAU/V,aAAoB,GAC3GlvE,KAAKklF,YAAczgF,EAAK8yE,KAAKS,aAAaiN,WAAYxgF,EAAK8yE,KAAKS,aAAaiN,UAAUC,aAAoB,GAC3GllF,KAAKmlF,UAAY1gF,EAAK8yE,KAAKS,aAAaiN,WAAYxgF,EAAK8yE,KAAKS,aAAaiN,UAAUE,WAAkB,GACvGnlF,KAAK46C,OAASn2C,EAAK8yE,KAAK38B,OACpB56C,KAAK46C,QAAU56C,KAAK46C,OAAO,gCAC7B56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,+BAG/B,IAAIwqC,EAAgB3gF,EAAK8yE,KAAKS,aAAa8L,cACvCsB,IACFplF,KAAKqlF,gBAAkBD,EAAcxqC,OACrC56C,KAAK+6E,QAAUqK,EAAcrK,QAC7B/6E,KAAKslF,UAAYF,EAAclI,KAC/Bl9E,KAAKqtE,SAAW+X,EAAc/X,SAC9BrtE,KAAK2hF,IAAMyD,EAAczD,IACzB3hF,KAAKulF,IAAMH,EAAcG,IACzBvlF,KAAKwlF,KAAOJ,EAAcI,KAC1BxlF,KAAKylF,OAASL,EAAcK,OAC5BzlF,KAAK0lF,IAAMN,EAAcM,IACzB1lF,KAAK2lF,UAAYP,EAAcO,UAC/B3lF,KAAK4lF,SAAWR,EAAcQ,SAC9B5lF,KAAK2wE,OAASyU,EAAczU,QAAU,GACtC3wE,KAAK6lF,WAAaT,EAAcS,WAChC7lF,KAAK8lF,gBAAkBV,EAAcU,gBACrC9lF,KAAK+lF,YAAcX,EAAcW,aAAe,GAChD/lF,KAAKgmF,MAAQZ,EAAcY,MAC3BhmF,KAAKimF,UAAYb,EAAca,UAC/BjmF,KAAKkmF,QAAUd,EAAcc,QAC7BlmF,KAAKmmF,QAAUf,EAAce,SAE3B1hF,EAAK2hF,WACPpmF,KAAK86C,MAAQr2C,EAAK2hF,SAAStrC,OAG7B96C,KAAK8kF,UAAYrgF,EAAK8yE,KAAKS,aAAa8M,UACxC9kF,KAAKqmF,QAAU5hF,EAAK8yE,KAAKS,aAAaqO,QAEtCrmF,KAAKsmF,WAAa7hF,EAAK2hF,SAAW3hF,EAAK2hF,SAASE,WAAa,GAEzD7hF,EAAK8yE,KAAKU,cACZj4E,KAAKumF,uBAAkE10E,WAAvCpN,EAAK8yE,KAAKU,aAAauO,YAA4B/hF,EAAK8yE,KAAKU,aAAauO,aAAe,EAAI,EAC7HxmF,KAAKymF,YAAchiF,EAAK8yE,KAAKU,aAAawM,OAAS,EACnDzkF,KAAK0mF,oBAAsBjiF,EAAK8yE,KAAKU,aAAa0O,eAAiB,QACnE3mF,KAAK4mF,YAAcniF,EAAK8yE,KAAKU,aAAa4J,OAAS,eAEnD7hF,KAAKumF,kBAAoB,EACzBvmF,KAAKymF,YAAc,EACnBzmF,KAAK0mF,oBAAsB,QAC3B1mF,KAAK4mF,YAAc,cAGrB5mF,KAAK6mF,eAAiBpiF,EAAK8yE,KAAKsP,eAEhC7mF,KAAKg7E,SAAU,EACfh7E,KAAK6hE,OAAQ,EACb7hE,KAAK8mF,UAAW,EAEZriF,EAAK41C,WACH51C,EAAK41C,UAAUC,kBACjBt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,oB,mCCjHlE,SAASysC,EAAetiF,GAC7BzE,KAAKuM,GAAK9H,EAAK+lC,G,wFCDV,SAASw8C,EAAcviF,GAC5BzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAK66E,QAAUp2E,EAAK21E,UACpBp6E,KAAKinF,QAAUxiF,EAAK41E,UACpBr6E,KAAKknF,KAAOziF,EAAKyiF,KACjBlnF,KAAKu3E,KAAO9yE,EAAK8yE,KACjBv3E,KAAKiZ,OAASxU,EAAKwU,OACnBjZ,KAAKmtE,aAAe1oE,EAAK0oE,aACzBntE,KAAK83E,UAAYrzE,EAAK0iF,UACtBnnF,KAAKonF,OAAS3iF,EAAKsxD,OACftxD,EAAKwU,QAAUxU,EAAKwU,OAAOm/B,iBAAmB3zC,EAAKwU,OAAOm/B,gBAAgBivC,cAC5ErnF,KAAK05E,YAAcj1E,EAAKwU,OAAOm/B,gBAAgBivC,a,2JCT5C,SAASC,EAAgB7iF,GAC9BzE,KAAKuM,GAAK9H,EAAKoI,KACf7M,KAAKo6E,UAAY31E,EAAK21E,UACtBp6E,KAAK8zD,OAASrvD,EAAKqvD,OACnB9zD,KAAKg4D,QAAUvzD,EAAKuzD,QACpBh4D,KAAK46C,OAASn2C,EAAKm2C,OACf56C,KAAK46C,QAAU56C,KAAK46C,OAAO,8BAC7B56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,8BACpB56C,KAAK46C,QAAU56C,KAAK46C,OAAO,gCACpC56C,KAAKi7C,UAAYj7C,KAAK46C,OAAO,+BAE/B56C,KAAKunF,WAAa9iF,EAAK8iF,WAEvBvnF,KAAKmL,WAAa1G,EAAK+iF,WAEnB/iF,EAAK41C,YACH51C,EAAK41C,UAAUC,kBACjBt6C,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK41C,UAAUC,kBAEjE71C,EAAK41C,UAAUE,OAAS91C,EAAK41C,UAAUE,MAAMtD,WAC/Cj3C,KAAKi3C,SAAWxyC,EAAK41C,UAAUE,MAAMtD,a,yDCpB3CrhC,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,QAAS,CAClD,YACA,yBACA,mBACA,SAAsBN,EAAWC,EAAwBC,GAEvD,OAAOF,EACLC,EAAyB,4BACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE4iC,WAAY,CACV7mE,OAAQ,OACR8mE,kBAAkB,EAClBjuC,kBAAmBkuC,EAAAA,0BACnB1nD,SAAS,EACTtpB,QAAS,CAAE,eAAgB,sBAE7BixE,mBAAoB,CAClBhnE,OAAQ,OACR8mE,kBAAkB,EAClBjuC,kBAAmBkuC,EAAAA,0BACnB1nD,SAAS,S,iBCzBnBrqB,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,SAAuBN,EAAWC,EAAwBC,GACxD,aACA,OAAOF,EACLC,EAAyB,6BACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACEgjC,gBAAiB,CAAEjnE,OAAQ,OAAQpV,OAAQ,CAAE8rC,UAAW,MAAOwwC,KAAM,SAAWJ,kBAAkB,S,iBCZ1G9xE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,SAAuBN,EAAWC,EAAwBC,GACxD,aACA,OAAOF,EACLC,EAAyB,0CACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpC4X,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCyY,OAAQ,CAAE93B,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,UAAYgjF,kBAAkB,GAC1EjkE,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,yDCblDsX,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,YAAa,CACtD,YACA,yBACA,mBACA,wBACA,SAA0BN,EAAWC,EAAwBC,EAAkBojC,GAE7E,OAAOtjC,EACLC,EAAyB,6CACzB,CACE5gD,KAAM,QACNya,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CACL0K,OAAQ,MACRpV,OAAQ,CAAE8mB,IAAK,EAAG5tB,OAAQ,OAAQqqD,QAAS,YAC3C9uB,SAAS,EACTslB,YAAawiC,GAEfppE,IAAK,CACHiC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,SAEpB0xE,KAAM,CACJx1D,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,QAC7BgjF,kBAAkB,EAClBjuC,kBAAmBuuC,EAAAA,aAErBrM,MAAO,CACL/6D,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAO0iF,QAAQ,EAAOt8E,OAAQ,SAC5CgjF,kBAAkB,GAEpBO,IAAK,CACHrnE,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,OAC7BgjF,kBAAkB,GAEpBhvC,OAAQ,CACN93B,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,UAClB+0C,kBAAmBC,EAAAA,eACnBguC,kBAAkB,GAEpBQ,KAAM,CACJtnE,OAAQ,OACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,QAC7B+0C,kBAAmBC,EAAAA,eACnBguC,kBAAkB,GAEpBS,QAAS,CACPvnE,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAE/Bk9D,OAAQ,CACNhhD,OAAQ,OACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,WAE/B0jF,MAAO,CACLxnE,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,QAASqqD,QAAS,aAEtCs5B,OAAQ,CACNznE,OAAQ,OACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAAU4jF,EAAG,UAAWC,EAAG,UACxD9uC,kBAAmBC,EAAAA,eACnBguC,kBAAkB,S,wDCpE5B9xE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,OAAQ,CACjD,YACA,yBACA,mBACA,SAAqBN,EAAWC,EAAwBC,GAEtD,OAAOF,EACLC,EAAyB,uCACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACEwjC,OAAQ,CACNznE,OAAQ,OACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAAU4jF,EAAG,UAAWC,EAAG,UACxD9uC,kBAAmBC,EAAAA,eACnBguC,kBAAkB,S,oECf5B9xE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,QAAS,CAClD,YACA,yBACA,mBACA,oBACA,oBACA,SAAsBN,EAAWC,EAAwBC,EAAkBZ,EAAmBykC,GAG5F,OAAO/jC,EACLC,EAAyB,yCACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CAAE0K,OAAQ,MAAOpV,OAAQ,CAAE8mB,IAAK,EAAG5tB,OAAQ,QAAUu7B,SAAS,EAAMslB,YAAaijC,GACxF7pE,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,SACxCmlE,OAAQ,CAAEjpD,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,WAC3C+jF,QAAS,CAAE7nE,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,WAAau7B,SAAS,GAClEyoD,OAAQ,CAAE9nE,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,WACvDi1B,IAAK,CAAE/Y,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,MAAOy1C,MAAO,EAAG2tC,KAAM,SAAWJ,kBAAkB,GACxGS,QAAS,CAAEvnE,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SACvDd,KAAM,CACJgd,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,OAAQpG,GAAI,cAC9B2hC,SAAS,EACTwZ,kBAAmBkuC,EAAAA,0BACnBhxE,QAAS,CAAE,kBAAmBotC,EAAkBj+B,8BAChD4hE,kBAAkB,GAEpBhvC,OAAQ,CACN93B,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,SAAU8uE,UAAW,cACvCvzC,SAAS,EACTwZ,kBAAmBkuC,EAAAA,0BACnBhxE,QAAS,CAAE,kBAAmBotC,EAAkBj+B,8BAChD4hE,kBAAkB,GAEpBxmC,SAAU,CACRtgC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,MAAO0pB,MAAO,UAChCqrB,kBAAmBkvC,EAAAA,iBACnBzjC,aAAc,OACdwiC,kBAAkB,GAEpBjkE,OAAQ,CACN7C,OAAQ,SACRpV,OAAQ,CAAElN,GAAI,MAAO67C,MAAO,UAC5Bla,SAAS,EACTwZ,kBAAmBmvC,EAAAA,0B,yDClD7BhzE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,UAAW,CACpD,YACA,yBACA,mBACA,sBACA,SAAwBN,EAAWC,EAAwBC,EAAkBkkC,GAE3E,OAAOpkC,EACLC,EAAyB,2CACzB,CACEpmD,GAAI,MACJigB,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CACL0K,OAAQ,MACRqf,SAAS,EACTslB,YAAasjC,GAEflqE,IAAK,CACHiC,OAAQ,OAEV83B,OAAQ,CACN93B,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,UAClB+0C,kBAAmBC,EAAAA,eACnBguC,kBAAkB,GAEpBjkE,OAAQ,CACN7C,OAAQ,SACR64B,kBAAmBC,EAAAA,gBAErBovC,QAAS,CACPloE,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,YAEpBqkF,WAAY,CACVnoE,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,qB,iBCxC5BkR,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,OAAQ,CACjD,YACA,yBACA,mBACA,SAAqBN,EAAWC,EAAwBC,GACtD,aACA,OAAOF,EACLC,EAAyB,wCACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAAU5B,QAAS,aAC1E2gB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,eCflDsX,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,SAAuBN,EAAWC,EAAwBC,GACxD,aACA,OAAOF,EACLC,EAAyB,0CACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,S,mCCRzC,SAAS+oD,EAAOC,GACd,IACE,IAAIxqF,EAAI+G,KAAKwZ,MAAMiqE,GACnB,GAAIxqF,GAAkB,iBAANA,EACd,OAAOA,EAET,MAAOC,IAGT,OAAO,EAMF,SAASipF,EAA0BljF,GAExC,IAAKA,EACH,MAAO,GAET,IAAIynE,EAAM,IAAMznE,EAAK42B,QAAQ,MAAO,KAAKA,QAAQ,WAAY,QAAU,IACvE,OAAOzlB,QAAQszE,SAAShd,GASnB,SAASxyB,EAAej1C,GAC7B,IAAIiS,EAAW,GAEf,OAAKjS,GAIKukF,EAAOvkF,GAKfiS,EAAWd,QAAQszE,SAASzkF,GAJ5BiS,EAASzJ,QAAUxI,EAMdiS,GAVEA,EAeJ,SAASsxE,EAAYvjF,GAC1B,MAAO,CACL2xE,KAAM3xE,GASH,SAASmkF,EAAmBnkF,GAEjC,IAlEmBwkF,EAkEfvyE,EAAW,GACf,GAAKsyE,EAAOvkF,GAIP,GAvEcwkF,EAuEGxkF,EAtEgC,mBAA/C3F,OAAOc,UAAUiE,SAAS/D,KAAKmpF,GAsET,CAC3B,IAAIvxE,EAAO9B,QAAQszE,SAASzkF,GAC5BiS,EAAS9S,KAAK8T,QAIdhB,EAAWd,QAAQszE,SAASzkF,QAT5BiS,EAAS9S,KAAK,CAAEqJ,QAASxI,IAW3B,OAAOiS,E,gNC3EF,SAASiyE,EAAiBlkF,GAC/B,IAAIiS,EAAW,GAEf,OADAA,EAASoY,KAAOrqB,EACTiS,E,wECPTd,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,SAAuBN,EAAWC,EAAwBC,GACxD,aACA,OAAOF,EACLC,EAAyB,0CACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpC4X,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCyY,OAAQ,CAAE93B,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,UAAYgjF,kBAAkB,GAC1EjkE,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,yDCblDsX,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,UAAW,CACpD,YACA,yBACA,mBACA,oBACA,SAAwBN,EAAWC,EAAwBC,EAAkBZ,GAE3E,OAAOU,EACLC,EAAyB,2CACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpC4X,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAEujD,QAAS,aAC1DrW,OAAQ,CACN93B,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,UAClBiS,QAAS,CACP,kBAAmBotC,EAAkBj+B,6BACrChjB,QAAS,QAEX4kF,kBAAkB,GAEpB9lB,OAAQ,CACNhhD,OAAQ,OACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAAU5B,QAAS,WAAYqmF,SAAU,aACtExyE,QAAS,CACP,kBAAoBiO,GAAWyL,KAAK7qB,KAAKC,UAAU,CAAEqgE,WAAYlhD,EAAOngB,KAAKqhE,cAC7EhjE,QAAS,SAGb2gB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1C83E,KAAM,CACJx1D,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,QAC7BgjF,kBAAkB,EAClBjuC,kBAAmBuuC,EAAAA,mB,iBCvC7BpyE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,QAAS,CAClD,YACA,yBACA,mBACA,SAAsBN,EAAWC,EAAwBC,GACvD,aACA,OAAOF,EACLC,EAAyB,4BACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CAAEiC,OAAQ,a,yDCVvBhL,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,kBACA,qBACA,SAAuBN,EAAWC,EAAwBC,EAAkBykC,EAAiBC,GAE3F,OAAO5kC,EACLC,EAAyB,yCACzB,CACE5gD,KAAM,QACNya,WAAYomC,EAAiBE,YAE/B,CACE3hC,KAAM,CACJtC,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,QAClB6gD,YAAa6jC,GAEftmF,QAAS,CAAE8d,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,WAAa6gD,YAAa8jC,GACtE9uB,OAAQ,CACN35C,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,SAAU4kF,MAAO,SAAUC,MAAO,UACpDtpD,SAAS,EACTwZ,kBAAmBkuC,EAAAA,2BAErB6B,KAAM,CAAE5oE,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,SAC1C+kF,UAAW,CAAE7oE,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,SAAU8B,UAAW,a,iBC9B3EoP,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,iBAAkB,CAC3D,YACA,yBACA,SAA+BN,EAAWC,GACxC,aACA,OAAOD,EACLC,EAAyB,yCACzB,CACE5gD,KAAM,SAER,CACEiD,KAAM,CACJ6Z,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,QAAS6Z,WAAY,sB,wDCXjD3I,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,OAAQ,CACjD,YACA,yBACA,mBACA,SAAqBN,EAAWC,EAAwBC,GAEtD,OAAOF,EACLC,EAAyB,wCACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpC4X,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAEujD,QAAS,aAC1DqnB,KAAM,CACJx1D,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,QAC7BgjF,kBAAkB,EAClBjuC,kBAAmBuuC,EAAAA,mB,yDClB7BpyE,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,SAAU,CACnD,YACA,yBACA,mBACA,qBACA,SAAuBN,EAAWC,EAAwBC,EAAkB+kC,GAO1E,OAAOjlC,EACLC,EAAyB,0CACzB,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACE3uC,MAAO,CAAE0K,OAAQ,MAAO2kC,YAAamkC,GACrC/qE,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCo6C,OAAQ,CACN93B,OAAQ,OACRpV,OAAQ,CAAE9G,OAAQ,UAClB+0C,kBAAmBC,EAAAA,eACnBguC,kBAAkB,EAClB/wE,QAAS,CAAE,yBAjBjB,SAA+BiO,GAC7B,OAAOA,EAAOngB,KAAKoI,MAAQ,MAkBzB4W,OAAQ,CACN7C,OAAQ,SACR64B,kBAAmBC,EAAAA,eACnBluC,OAAQ,CAAElN,GAAI,c,yDC9BxBsX,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,KACA,QACA,oBACA,SAA6BjxB,EAAI61D,EAAOC,GA8DtC,MA5Dc,CAEdjsE,qBAA+B,SAAUyQ,EAAOU,EAAM6yB,GACpD,IAAIkoC,EAAW/1D,EAAGg2D,QAWlB,OATAF,EAAkBnC,WAAWr5D,EAAOU,EAAM6yB,GACvC3lC,MAAK,SAAiBtF,GACrB,IAAI+sC,EAAQ,IAAIo9B,EAAAA,gBAAgBnqE,EAASjS,MACzColF,EAAS9qF,QAAQ0kD,MAElBqZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,SAGlB6B,kBAA4B,SAAUyQ,EAAO3nB,EAAKk7C,GAChD,IAAIn2C,EAAS,CACXi0C,EAAGrxB,EACH27D,OAAQtjF,EACRujF,WAAYroC,GAGVkoC,EAAW/1D,EAAGg2D,QAWlB,OATAH,EAAMlC,WAAWj8E,EAAQ,IACtBw6C,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIg/C,EAAQ,IAAIo9B,EAAAA,gBAAgBp8E,GAChColF,EAAS9qF,QAAQ0kD,MAElBqZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,SAGlB6B,gCAA0C,SAAUyQ,EAAO67D,GACzD,IAAIz+E,EAAS,CACXi0C,EAAGrxB,GAEDtN,EAAU,CACZmpE,QAASA,GAGPJ,EAAW/1D,EAAGg2D,QAWlB,OATAH,EAAM/B,mBAAmBp8E,EAAQsV,GAC9BklC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIg/C,EAAQ,IAAIo9B,EAAAA,gBAAgBp8E,GAChColF,EAAS9qF,QAAQ0kD,MAElBqZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,c,yDC/DtBlG,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,KACA,SACA,SAA8BjxB,EAAI8/B,GA0DhC,MAxDc,CAEdj2C,OAAiB,SAAUusE,GACzB,IAAIL,EAAW/1D,EAAGg2D,QAWlB,OATAl2B,EAAOj1C,IAAI,CAAErgB,GAAI4rF,IACdlkC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAImgB,EAAS,IAAIu1D,EAAAA,gBAAgB11E,GACjColF,EAAS9qF,QAAQ6lB,MAElBk4C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,oCAAqCC,IAAKA,OAG9D+uE,EAAS/tE,SAGlB6B,QAAkB,WAChB,IAAIksE,EAAW/1D,EAAGg2D,QAalB,OAXAl2B,EAAO19C,MAAM,IACV8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI01D,EAAU11D,EAAKtG,KAAI,SAAUk2C,GAC/B,OAAO,IAAI8lC,EAAAA,gBAAgB9lC,MAE7Bw1C,EAAS9qF,QAAQo7D,MAElB2C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUusE,GACzB,IAAIL,EAAW/1D,EAAGg2D,QAclB,OAZAl2B,EAAOnwC,OAAO,CAAEnlB,GAAI4rF,IACjBlkC,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,UAE5B48E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUiH,GACzB,OAAOgvC,EAAOlb,OAAO9zB,GAAQohC,e,wFC5CnC,SAASmkC,EAAwBr2D,EAAIsY,EAAWg+C,EAAWC,EAAU1lC,GACnE,MAAMhnC,EAAU,CACdk8B,cAAeywC,EAAezwC,EAAAA,IAC9BC,eAAgBwwC,EAAexwC,EAAAA,IAC/BE,gBAAiBswC,EAAetwC,EAAAA,IAChCJ,iBAAkB0wC,EAAe1wC,EAAAA,IACjCG,gBAAiBuwC,EAAevwC,EAAAA,IAChCR,eAAgB+wC,EAAe/wC,EAAAA,IAC/BI,cAAe2wC,EAAe3wC,EAAAA,IAC9Bl2B,OAAQ6mE,EAAerwC,EAAAA,IACvBswC,aA4DF,SAAsBjsF,EAAIsmB,GACxB,OAAOwnB,EAAUw1B,OACf,CAAEtjE,GAAIA,GACN,CAGEksF,kBAAmB5lE,EAAOyrD,WAAWma,kBACrCzH,OAAQn+D,EAAOyrD,WAAW0S,OAC1B0H,YAAa,EACbC,SAAU9lE,EAAOyrD,WAAWqa,WAE9B1kC,UApEJroC,UAAoB,SAAUrf,GAC5B,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATA19C,EAAUztB,IAAI,CAAErgB,GAAIA,IACjB0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI6yC,EAAY,IAAI2lC,EAAAA,0BAA0Bx4E,GAC9ColF,EAAS9qF,QAAQu4C,MAElBwlB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2CAA4CC,IAAKA,OAGrE+uE,EAAS/tE,SAGlB6B,WAAqB,SAAU2U,EAAKy8B,GAClC,IAAI86B,EAAW/1D,EAAGg2D,QAYlB,OAXA19C,EAAUl2B,MAAM,CAAEoc,IAAKA,EAAKy8B,QAASA,IAClC/I,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI62C,EAAa72C,EAAKtG,KAAI,SAAUk2C,GAClC,OAAO,IAAIumC,EAAAA,mBAAmBvmC,MAEhCw1C,EAAS9qF,QAAQu8C,MAElBwhB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gCAAiCC,IAAKA,OAG1D+uE,EAAS/tE,SAGlB6B,UAAoB,SAAUrf,EAAI4B,EAAOC,EAAQwqF,GAC/C,IAAId,EAAW/1D,EAAGg2D,QAgBlB,OAdAO,GAAS,WACPj+C,EAAUi8C,OAAO,GAAI,CAAE/pF,GAAIA,EAAI6B,OAAQA,EAAQD,MAAOA,IACnD8lD,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAK,qCAAuCvc,EAAIwc,IAAKrW,EAAKwI,UAE5E48E,EAAS9qF,QAAQ0F,MAGpBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAuCvc,EAAIwc,IAAKA,SAE1E6vE,GAEId,EAAS/tE,SAGlB6B,oBAEA,SAA6Brf,EAAIssF,EAAeC,GAC9C,OAAOz+C,EAAUw1B,OAAO,CAAEtjE,GAAIA,GAAM,CAAE+lF,cAAe,CAAEx3E,KAAM+9E,EAAeE,kBAAmBD,KAAwB7kC,UAiBzHroC,gBAA0B,SAAUotE,GAClC,IAAIlB,EAAW/1D,EAAGg2D,QAQlB,OAPA19C,EAAUsM,OAAOqyC,GACd/kC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAEvD+uE,EAAS/tE,SAGlB6B,wBAAkC,SAAUotE,GAC1C,IACIzzC,EADAuyC,EAAW/1D,EAAGg2D,QAclB,OAZAnsE,EACGqtE,gBAAgBD,GAChB/uE,MAAK,SAAiBvX,GAErB,OADA6yC,EAAY7yC,EACLkZ,EAAQ47B,eAAejC,EAAU/qC,OAEzCyP,MAAK,WACJ6tE,EAAS9qF,QAAQu4C,MAElBwlB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAEb+uE,EAAS/tE,SAGlB6B,WAAqB,SAAUstE,GAC7B,IAAIpB,EAAW/1D,EAAGg2D,QAclB,OAZA19C,EAAU87C,KAAK,GAAI+C,GAChBjlC,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,QAAS6N,IAAKrW,EAAKwI,UAE/C48E,EAAS9qF,QAAQ0F,MAGpBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,SAGlB6B,KAAe,SAAUrf,EAAI4sF,EAAQC,EAAQC,EAAY9B,EAAO+B,EAAMvU,GACpE,IAAI+S,EAAW/1D,EAAGg2D,QAEdwB,EAAa,CACfhtF,GAAIA,EACJ4sF,OAAQA,GAAU,EAClBC,OAAQA,GAAU,EAClBC,WAAYA,GAAc,EAC1B9B,MAAOA,GAAS,EAChB+B,KAAMA,GAAQ,OAYhB,OATAj/C,EAAUgqC,KAAKkV,GACZtlC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI2xE,EAAOgU,EAAUxT,WAAWnyE,EAAK2xE,KAAMU,GAC3C+S,EAAS9qF,QAAQq3E,MAElBtZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,SAGlB6B,eAAyB,SAAUrf,GACjC,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATA19C,EAAUuvC,MAAM,CAAEr9E,GAAIA,IACnB0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI8mF,EAAiB,IAAItQ,EAAAA,wBAAwBx2E,GACjDolF,EAAS9qF,QAAQwsF,MAElBzuB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,SAGlB6B,aAAuB,SAAUrf,GAC/B,OAAO8tC,EAAU67C,IAAI,CAAE3pF,GAAIA,IAAM0nD,UAGnCroC,QAAkB,SAAUrf,GAC1B,OAAO8tC,EAAU+7C,QAAQ,CAAE7pF,GAAIA,IAAM0nD,UAGvCroC,MAAgB,SAAUoxC,GACxB,OAAO3iB,EAAUg8C,MAAM,CAAEr5B,QAASA,IAAW/I,WAG/C,OAAOroC,EAEP,SAAS2sE,EAAekB,GACtB,OAAO,YAAaxnF,GAClB,MAAMua,EAAaomC,EAAiBE,aAEpC,OAAO2mC,EAAKjtE,KAAeva,K,uEAhMjC4R,IAAAA,OAAe,oBAAoBmvC,QAAQ,mBAAoBolC,I,gBCb/Dv0E,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,cAAe,CACxD,KACA,WACA,OACA,SAA4BjxB,EAAIu2D,EAAUoB,GACxC,aAuBA,MAtBc,CAEd9tE,UAAoB,SAAU+tE,EAAQxrF,EAAOC,EAAQwqF,GACnD,IAAId,EAAW/1D,EAAGg2D,QAgBlB,OAdAO,GAAS,WACPoB,EAAKpD,OAAO,GAAI,CAAE/pF,GAAIotF,EAAQvrF,OAAQA,EAAQD,MAAOA,IAClD8lD,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKrW,EAAKwI,UAEjE48E,EAAS9qF,QAAQ0F,MAGpBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,SAE/D6vE,GAEId,EAAS/tE,c,mLCpBtBlG,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,KACA,QACA,cACA,kBACA,oBACA,mBACA,oBACA,SAA6BjxB,EAAIozC,EAAOV,EAAaC,EAAiB1iB,EAAmB4nC,EAAkB/B,GAEzG,IAAIjsE,EAAU,CAEdA,MAAgB,SAAUiuE,GACxB,IAAI/B,EAAW/1D,EAAGg2D,QAalB,OAZA5iB,EAAMvoD,IAAI,CAAErgB,GAAIstF,IACb5lC,SAAShqC,MAAK,SAAiBvX,GAC9B,GAAIA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,cACvB,CACL,IAAI4gD,EAAQ,IAAIqzB,EAAAA,sBAAsBz8E,GACtColF,EAAS9qF,QAAQ8uD,OAGpBiP,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAE7D+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUkuE,GACzB,IAAIhC,EAAW/1D,EAAGg2D,QAyBlB,OAvBAh2D,EAAGxB,IAAI,CACLgpB,WAAYuwC,EAAYF,EAAiBrwC,WAAW,GAAK,GACzDkf,OAAQ0M,EAAMhxD,MAAM,IAAI8vC,WAEvBhqC,MAAK,SAAiBvX,GACrB,IAAI62C,EAAa72C,EAAK62C,WAElBkf,EAAS/1D,EAAK+1D,OAAOr8D,KAAI,SAAUk2C,GACrCA,EAAKkrB,eAAiB,EACtB,IAAK,IAAIhgE,EAAI,EAAGA,EAAI+7C,EAAW77C,OAAQF,IACrB+7C,EAAW/7C,GACbu7E,UAAYzmC,EAAK9nC,IAC7B8nC,EAAKkrB,iBAGT,OAAO,IAAIghB,EAAAA,eAAelsC,MAG5Bw1C,EAAS9qF,QAAQy7D,MAElBsC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,4BAA6BC,IAAKA,OAEtD+uE,EAAS/tE,SAGlB6B,QAAkB,SAAUiuE,GAC1B,IAAI/B,EAAW/1D,EAAGg2D,QAkBlB,OAjBA5iB,EAAMuhB,QAAQ,CAAEnqF,GAAIstF,IACjB5lC,SAAShqC,MAAK,SAAiBvX,GAC9B,GAAIA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,cACvB,CACL,IAAI6+E,EAAS,GACTv1E,EAAQ9R,EAAKhF,OACjBmW,QAAQiC,QAAQpT,GAAM,SAAUsnF,GAC9BD,EAAOloF,KAAK,IAAIg+E,EAAAA,oBAAoBrrE,EAAOw1E,IAC3Cx1E,OAEFszE,EAAS9qF,QAAQ+sF,OAGpBhvB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAE7D+uE,EAAS/tE,SAGlB6B,UAKA,SAAmBquE,GACjB,IAAInC,EAAW/1D,EAAGg2D,QAEdmC,EAAwBD,EAAc/kB,SAAS8D,eAAiBtE,EAAgBylB,mBAAmBF,EAAc/kB,UAAY,GACjIljB,EAAkB/9B,gCAAgCimE,GAElD,MAAME,EAAqB3lB,EAAY+M,8BAA8ByY,GAarE,OAXA9kB,EAAMtjE,KAAK,CAAEgC,UAAWumF,EAAmB3Y,YACxCxtB,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKA,EAAKhF,OAAS,GAAGwO,MACxB47E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKA,EAAKhF,OAAS,GAAGwO,QAE7C47E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAErD+uE,EAAS/tE,SAyClB6B,UAOA,SAAmBypD,EAAUglB,GAC3B,IAAIH,EAAwB7kB,EAASH,SAAS8D,eAAiBtE,EAAgBylB,mBAAmB9kB,EAASH,UAAY,GACvHljB,EAAkB/9B,gCAAgCimE,GAElD,IAAIE,EAAqB3lB,EAAY+M,8BAA8BnM,GAEnE,OAAIglB,EA/CN,SAAkCD,GAChC,IAAItC,EAAW/1D,EAAGg2D,QAUlB,OARA5iB,EAAMxuB,OAAO,GAAIyzC,GACdnmC,SAAS8W,OAAM,SAGfoF,SAAQ,WACP2nB,EAAS9qF,aAGN8qF,EAAS/tE,QAqCPuwE,CAAyBF,GAlCpC,SAAuCA,GACrC,IAAItC,EAAW/1D,EAAGg2D,QAgBlB,OAdA5iB,EAAMxuB,OAAO,GAAIyzC,GACdnmC,SAAShqC,MAAK,SAAiBvX,GAE9B,GADUA,EAAKhF,OAAS,GAAKgF,EAAKA,EAAKhF,OAAS,GAAGwN,QAC1C,CACP,IAAI2vB,EAASn4B,EAAKA,EAAKhF,OAAS,GAChCoqF,EAAS96D,OAAO,CAAElU,IAAK+hB,EAAO3vB,eAE9B48E,EAAS9qF,QAAQ0F,MAGpBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,uBAAwBC,IAAKA,OAGjD+uE,EAAS/tE,QAmBTwwE,CAA8BH,IAOvCxuE,SAAmB,SAAUrf,EAAIuvD,GAC/B,OAAOqZ,EAAMvtC,IAAI,CAAEr7B,GAAIA,EAAIwpF,KAAMj6B,IAAS7H,UAG5CroC,eAAyB,SAAU68C,GACjC,IAAIpsC,EAAQo4C,EAAYiN,0BAA0BjZ,GAClD,OAAO0M,EAAMhmB,SAAS9yB,GAAO43B,UAG/BroC,YAAsB,SAAUmR,GAC9B,OAAO86D,EAAkB/gB,WAAW/5C,IAGtCnR,YAAsB,SAAUrf,EAAIiuF,GAClC,IAAI1C,EAAW/1D,EAAGg2D,QAYlB,OAXA5iB,EAAMzjD,OAAO,CAAEnlB,GAAIA,EAAI67C,MAAOoyC,IAC3BvmC,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAK,GAAGwI,QACV48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAK,GAAGwI,UAE/B48E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,yBAA0BC,IAAKA,OAEnD+uE,EAAS/tE,SAGlB6B,2BAAqC,SAAUoqD,GAC7C,OAAO,IACL,IAAUA,GAAiB,SAAUla,GAInC,OAHA,IAASA,EAAM+e,UAAU,SAAUv4B,GACjC,OAAmC,IAA5BA,EAAKxuC,QAAQ,aAEfgoD,EAAM+e,SAAW,IAAW/e,EAAM+e,SAAjB,KAAwC,SAKtE,OAAOjvD,M,yDCnNX/H,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,iBAAkB,CAC3D,KACA,UACA,SAA+BjxB,EAAI04D,GAmFjC,MAjFc,CAEd7uE,OAAiB,SAAU8uE,GACzB,IAAI5C,EAAW/1D,EAAGg2D,QASlB,OAPA0C,EAAQ9zC,OAAO+zC,GACZzmC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAErD+uE,EAAS/tE,SAGlB6B,QAAkB,SAAUrf,GAC1B,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATA0C,EAAQ7tE,IAAI,CAAErgB,GAAIA,IACf0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIwuD,EAAU,IAAIivB,EAAAA,iBAAiBz9E,GACnColF,EAAS9qF,QAAQk0D,MAElB6J,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,SAGlB6B,SAAmB,SAAU+uE,EAAeC,EAAeC,EAAyB79B,GAClF,IAAI86B,EAAW/1D,EAAGg2D,QA2BlB,OAzBA0C,EAAQt2E,MAAM,CAAE64C,QAASA,IACtB/I,SAAShqC,MAAK,SAAiBvX,GAC9B,IACIooF,EADWpoF,EAEZ6N,QAAO,SAAU2gD,GAChB,OAAIy5B,GAAmC,UAAlBz5B,EAAQc,OAGzB44B,GAAmC,UAAlB15B,EAAQc,OAGzB64B,GAA6C,UAAlB35B,EAAQc,QAA4C,IAAvBd,EAAQe,WAL3Df,OAKT,KAID90D,KAAI,SAAUk2C,GACb,OAAO,IAAI6tC,EAAAA,iBAAiB7tC,MAGhCw1C,EAAS9qF,QAAQ8tF,MAElB/vB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,8BAA+BC,IAAKA,OAGxD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUrf,GACzB,OAAOkuF,EAAQ/oE,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAGpCroC,oBAA8B,SAAUq1C,EAAWxb,EAAa2C,GAC9D,OAAOqyC,EAAQzD,WAAW,CAAEzqF,GAAI00D,GAAa,CAAE5mB,UAAWoL,EAAa0b,MAAO/Y,IAAS6L,UAGzFroC,iBAA2B,SAAUq1C,EAAWxb,EAAas1C,GAC3D,IAAIhsE,EAAU,CACZsrB,UAAWoL,GAOb,OALIs1C,IACFhsE,EAAQisE,eAAiB,CACvBC,QAASF,IAGNN,EAAQ1D,QAAQ,CAAExqF,GAAI00D,GAAalyC,GAASklC,e,yDCnFzDpwC,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,cAAe,CACxD,KACA,OACA,SAA4BjxB,EAAIm5D,GAE9B,IAAItvE,EAAU,CAEdA,MAmBA,WACE,IAAIksE,EAAW/1D,EAAGg2D,QAalB,OAXAmD,EAAK/2E,MAAM,IACR8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI4f,EAAQ5f,EAAKtG,KAAI,SAAUk2C,GAC7B,OAAO,IAAIguC,EAAAA,cAAchuC,MAE3Bw1C,EAAS9qF,QAAQslB,MAElBy4C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAGrD+uE,EAAS/tE,SAhClB6B,KAIA,SAAcrf,GACZ,IAAIurF,EAAW/1D,EAAGg2D,QAUlB,OATAmD,EAAKtuE,IAAI,CAAErgB,GAAIA,IACZ0nD,SAAShqC,MAAK,SAAsBkxE,GACnC,IAAIngB,EAAO,IAAIsV,EAAAA,cAAc6K,GAC7B,OAAOrD,EAAS9qF,QAAQguE,MAEzBjQ,OAAM,SAAkBhiD,GACvB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAdlB6B,WAkCA,SAAoBovD,GAClB,OAAOkgB,EAAKrrB,OAAO,CAAEtjE,GAAIyuE,EAAKxgE,GAAIzJ,QAASiqE,EAAK50D,SAAW40D,GAAM/mB,UAlCnEroC,iBAqCA,WACE,IAAIksE,EAAW/1D,EAAGg2D,QAiBlB,OAfAnsE,EACG0G,QACArI,MAAK,SAAiBvX,GACrB,IAAK,IAAIlF,EAAI,EAAGA,EAAIkF,EAAKhF,SAAUF,EAAG,CACpC,IAAIwtE,EAAOtoE,EAAKlF,GAChB,GAAkB,YAAdwtE,EAAK97D,MAA4C,WAAtB87D,EAAKxH,cAA6C,UAAhBwH,EAAK9zD,QAAoC,YAAd8zD,EAAKoW,KAAoB,CACnH0G,EAAS9qF,QAAQguE,GACjB,WAILjQ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAGrD+uE,EAAS/tE,UAGlB,OAAO6B,M,6ECnEX/H,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,KACA,SACA,gBACA,SAA8BjxB,EAAIq5D,EAAQtkC,GAExC,IAAIlrC,EAAU,GAoBd,SAASyvE,EAAeC,EAAYC,EAAYC,GAC9C,IAAI1D,EAAW/1D,EAAGg2D,QA4BlB,OA1BAh2D,EAAGxB,IAAI,CACLk7D,OAAQ3kC,EAAcpX,UACtBA,QAAS47C,EAAa,GAAK1vE,EAAQ8zB,YAElCz1B,MAAK,SAAiBvX,GACrB,IAAIgpF,EAAoB,GACpBC,EAAgBjpF,EAAK+oF,OACrB/7C,EAAUhtC,EAAKgtC,QAEfi8C,EAAcJ,KAChBG,EAAoBA,EAAkB/uC,OAAOgvC,EAAcJ,KAG7D,IAAK,IAAI/tF,EAAI,EAAGA,EAAIkyC,EAAQhyC,OAAQF,IAAK,CACvC,IAAIouF,EAASl8C,EAAQlyC,GACjBouF,EAAOlK,SAAW,IAAWkK,EAAO/5B,OAAOg6B,UAAUC,MAAON,IAC9DE,EAAkB7pF,KAAK+pF,EAAO9gF,MAIlCg9E,EAAS9qF,QAAQ0uF,MAElB3wB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAKC,EAAID,IAAKC,IAAKA,OAGlC+uE,EAAS/tE,QAelB,OA9DA6B,EAAQ8zB,QAAU,WAChB,IAAIo4C,EAAW/1D,EAAGg2D,QACdr4C,EAAU,GAad,OAXA07C,EAAOj3E,MAAM,IACV8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAK,IAAIlF,EAAI,EAAGA,EAAIkF,EAAKhF,OAAQF,IAAK,CACpC,IAAIouF,EAAS,IAAInK,EAAAA,gBAAgB/+E,EAAKlF,IACtCkyC,EAAQ7tC,KAAK+pF,OAGhBzrB,SAAQ,WACP2nB,EAAS9qF,QAAQ0yC,MAGdo4C,EAAS/tE,SAmClB6B,EAAQmwE,cAAgB,SAAUT,GAChC,OAAOD,EAAeC,EAAY,SAAU,4BAG9C1vE,EAAQowE,eAAiB,SAAUV,GACjC,OAAOD,EAAeC,EAAY,UAAW,6BAG/C1vE,EAAQqwE,eAAiB,SAAUX,GACjC,OAAOD,EAAeC,EAAY,MAAO,yBAGpC1vE,M,yDCvEX/H,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,KACA,SACA,SAA8BjxB,EAAIm6D,GA0DhC,MAxDc,CAEdtwE,OAAiB,SAAUuwE,GACzB,IAAIrE,EAAW/1D,EAAGg2D,QAWlB,OATAmE,EAAOtvE,IAAI,CAAErgB,GAAI4vF,IACdloC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIq2D,EAAS,IAAI6oB,EAAAA,gBAAgBl/E,GACjColF,EAAS9qF,QAAQ+7D,MAElBgC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,oCAAqCC,IAAKA,OAG9D+uE,EAAS/tE,SAGlB6B,QAAkB,WAChB,IAAIksE,EAAW/1D,EAAGg2D,QAalB,OAXAmE,EAAO/3E,MAAM,IACV8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIo2D,EAAUp2D,EAAKtG,KAAI,SAAUk2C,GAC/B,OAAO,IAAIsvC,EAAAA,gBAAgBtvC,MAE7Bw1C,EAAS9qF,QAAQ87D,MAElBiC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUuwE,GACzB,IAAIrE,EAAW/1D,EAAGg2D,QAclB,OAZAmE,EAAOxqE,OAAO,CAAEnlB,GAAI4vF,IACjBloC,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,UAE5B48E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUg6D,GACzB,OAAOsW,EAAOv1C,OAAOi/B,GAAc3xB,e,wDC1DzCpwC,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,iBAAkB,CAC3D,KACA,UACA,gBACA,cACA,yBACA,YACA,SAA+BjxB,EAAIq6D,EAAS/sB,EAAegtB,EAAaC,EAAwBjE,GAE9F,IAAIzsE,EAAU,CAEdA,SAAmB,SAAUoxC,GAC3B,IAAI86B,EAAW/1D,EAAGg2D,QAalB,OAXAqE,EAAQj4E,MAAM,CAAE64C,QAASA,GAAoB,KAC1C/I,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIu2D,EAAWv2D,EAAKtG,KAAI,SAAUk2C,GAChC,OAAO,IAAIuvC,EAAAA,iBAAiBvvC,MAE9Bw1C,EAAS9qF,QAAQi8D,MAElB8B,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,8BAA+BC,IAAKA,OAGxD+uE,EAAS/tE,SAGlB6B,QAAkB,SAAUrf,GAC1B,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATAqE,EAAQxvE,IAAI,CAAErgB,GAAIA,IACf0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIkZ,EAAU,IAAIimE,EAAAA,iBAAiBn/E,GACnColF,EAAS9qF,QAAQ4e,MAElBm/C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUA,GACzB,IAAIksE,EAAW/1D,EAAGg2D,QAclB,OAZAqE,EAAQ1qE,OAAO,CAAEnlB,GAAIqf,EAAQpR,KAC1By5C,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,QAAS6N,IAAKrW,EAAKwI,UAE/C48E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAGrD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAU2wE,EAAM1pE,EAAQukE,GACvC,OAAOxrE,EAAQA,QAAQ2wE,EAAK/hF,IAAIyP,MAAMvX,IACpC,MAAM+G,EAAS,CACblN,GAAIgwF,EAAK/hF,GACTzJ,QAAS2B,EAAK0T,SAKhB,OAHIgxE,IACF39E,EAAO29E,SAAWA,GAEbgF,EAAQvsB,OAAOp2D,EAAQoZ,GAAQohC,aAI1CroC,KAAe,SAAUrf,EAAI4sF,EAAQC,EAAQC,EAAY9B,EAAO+B,GAC9D,IAAIxB,EAAW/1D,EAAGg2D,QAEdwB,EAAa,CACfhtF,GAAIA,EACJ4sF,OAAQA,GAAU,EAClBC,OAAQA,GAAU,EAClBC,WAAYA,GAAc,EAC1B9B,MAAOA,GAAS,EAChB+B,KAAMA,GAAQ,OAYhB,OATA8C,EAAQ/X,KAAKkV,GACVtlC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI2xE,EAAOgU,EAAUxT,WAAWnyE,EAAK2xE,MAAM,GAC3CyT,EAAS9qF,QAAQq3E,MAElBtZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,UAGlB,OAAO6B,M,yDClGX/H,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,eAAgB,CACzD,KACA,QACA,SAA6BjxB,EAAIgiC,GAmB/B,MAjBc,CAEdn4C,MAAgB,WACd,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OATAh0B,EAAMn3C,MACHqnC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI62D,EAAQ,IAAIyrB,EAAAA,eAAetiF,GAC/BolF,EAAS9qF,QAAQu8D,MAElBwB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAG7D+uE,EAAS/tE,c,yDCnBtBlG,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,KACA,SACA,iBACA,SAA8BjxB,EAAIxf,EAAQi6E,GAkDxC,MAhDc,CAEd5wE,QAAkB,WAChB,IAAIksE,EAAW/1D,EAAGg2D,QASlB,OARAx1E,EAAO4O,KAAK,IACT8iC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIgtC,EAAUhtC,EAAKy+E,QACnB2G,EAAS9qF,QAAQ0yC,MAElBqrB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qDAAsDC,IAAKA,OAE/E+uE,EAAS/tE,SAGlB6B,KAAe,WACb,OAAOrJ,EAAO4O,KAAK,IAAI8iC,UAGzBroC,KAAe,SAAUY,GACvB,OAAOgwE,EAAexnF,KAAK,CAAEwX,WAAYA,IAAcynC,UAGzDroC,QAAkB,WAChB,OAAOrJ,EAAOxR,QAAQ,IAAIkjD,UAG5BroC,OAAiB,SAAUutB,EAAM3/B,GAC/B,IAAIs+E,EAAW/1D,EAAGg2D,QAalB,OAXAx1E,EAAOimD,OAAO,CAAE+uB,MAAOp+C,EAAMq+C,MAAOh+E,IACjCy6C,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI81D,EAAS91D,EAAKtG,KAAI,SAAUk2C,GAC9B,OAAO,IAAIsrC,EAAAA,eAAetrC,MAE5Bw1C,EAAS9qF,QAAQw7D,MAElBuC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAG7D+uE,EAAS/tE,SAGlB6B,UAAoB,WAClB,OAAOrJ,EAAOm1E,YAAYzjC,e,yDCnDhCpwC,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,cAAe,CACxD,KACA,OACA,YACA,SAA4BjxB,EAAI06D,EAAMpE,GA4DpC,MA1Dc,CAEdzsE,KAAe,SAAUrf,GACvB,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATA0E,EAAK7vE,IAAI,CAAErgB,GAAIA,IACZ0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI+2D,EAAO,IAAIwrB,EAAAA,cAAcviF,GAC7BolF,EAAS9qF,QAAQy8D,MAElBsB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,kCAAmCC,IAAKA,OAG5D+uE,EAAS/tE,SAGlB6B,MAAgB,SAAUoxC,GACxB,IAAI86B,EAAW/1D,EAAGg2D,QAalB,OAXA0E,EAAKt4E,MAAM,CAAE64C,QAASA,GAAoB,KACvC/I,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIwoE,EAAQxoE,EAAKtG,KAAI,SAAUk2C,GAC7B,OAAO,IAAI2yC,EAAAA,cAAc3yC,MAE3Bw1C,EAAS9qF,QAAQkuE,MAElBnQ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAGrD+uE,EAAS/tE,SAGlB6B,KAAe,SAAUrf,EAAI4sF,EAAQC,EAAQC,EAAY9B,EAAO+B,GAC9D,IAAIxB,EAAW/1D,EAAGg2D,QAEdwB,EAAa,CACfhtF,GAAIA,EACJ4sF,OAAQA,GAAU,EAClBC,OAAQA,GAAU,EAClBC,WAAYA,GAAc,EAC1B9B,MAAOA,GAAS,EAChB+B,KAAMA,GAAQ,OAYhB,OATAmD,EAAKpY,KAAKkV,GACPtlC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI2xE,EAAOgU,EAAUxT,WAAWnyE,EAAK2xE,MAAM,GAC3CyT,EAAS9qF,QAAQq3E,MAElBtZ,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAOjU,MAGb+uE,EAAS/tE,c,yDC7DtBlG,QAAQ5W,OAAO,oBAAoB+lD,QAAQ,gBAAiB,CAC1D,KACA,SACA,eACA,SAA8BjxB,EAAI26D,EAAQC,GAExC,IAAI/wE,EAAU,CAEdA,QAAkB,SAAUnS,GAC1B,IAAIq+E,EAAW/1D,EAAGg2D,QAYlB,OAXA2E,EAAOv4E,MAAM1K,GACVw6C,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIk3D,EAAUl3D,EAAKysE,SAAW,GAC9BvV,EAAUA,EAAQx9D,KAAI,SAAUk2C,GAC9B,OAAO,IAAIizC,EAAAA,gBAAgBjzC,MAE7Bw1C,EAAS9qF,QAAQ48D,MAElBmB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAEvD+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUrf,GACzB,IAAIurF,EAAW/1D,EAAGg2D,QASlB,OARA2E,EAAO9vE,IAAI,CAAErgB,GAAIA,IACd0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIm3D,EAAS,IAAI0rB,EAAAA,gBAAgB7iF,GACjColF,EAAS9qF,QAAQ68D,MAElBkB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,oCAAqCC,IAAKA,OAE9D+uE,EAAS/tE,SAGlB6B,WAAqB,WACnB,OAAO8wE,EAAOv4E,MAAM,IAAI8vC,UAG1BroC,OAAiB,SAAUi+C,GACzB,IAAIiuB,EAAW/1D,EAAGg2D,QAclB,OAZA2E,EAAOhrE,OAAO,CAAEnlB,GAAIs9D,EAAOrvD,KACxBy5C,SAAShqC,MAAK,SAAiBvX,GAC1BA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,QAAS6N,IAAKrW,EAAKwI,UAE/C48E,EAAS9qF,aAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAGlB6B,0BAAoC,SAAU7Z,EAAM6qF,EAAQC,GAM1D,MAL0B,CACxB/hF,KAAM/I,EACNgwD,OAAQ66B,EACRE,WAAYH,EAAaI,oBAAoBF,KAKjDjxE,aAAuB,SAAUoxE,GAC/B,IAAIlF,EAAW/1D,EAAGg2D,QAalB,OAZA2E,EAAO/1C,OAAOq2C,GACX/oC,SAAShqC,MAAK,SAAiBvX,GAC9B,GAAIA,EAAKwI,QACP48E,EAAS96D,OAAO,CAAElU,IAAKpW,EAAKwI,cACvB,CACL,IAAI2uD,EAAS,IAAI0rB,EAAAA,gBAAgB7iF,GACjColF,EAAS9qF,QAAQ68D,OAGpBkB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAEpD+uE,EAAS/tE,SAGlB6B,cAAwB,SAAUqxE,GAChC,IAAIC,EAAsBD,EAAqB7wF,KAAI,SAAU4wF,GAC3D,OAAOpxE,EAAQuxE,aAAaH,MAE9B,OAAOj7D,EAAGxB,IAAI28D,IAGhBtxE,iCAA2C,SAAU/c,GAEnD,IADA,IAAIquF,EAAsB,GACjB1vF,EAAI,EAAGA,EAAIqB,EAAGrB,IACrB0vF,EAAoBrrF,KAAK+Z,EAAQuxE,aAAa,CAAEp7B,OAAQ,WAE1D,OAAOhgC,EAAGxB,IAAI28D,KAGhB,OAAOtxE,M,kECpGX,MAAMwxE,EAEJlvC,YAAYyI,EAAQ0mC,EAAe3kE,EAAey1B,GAChDlgD,KAAK0oD,OAASA,EACd1oD,KAAKovF,cAAgBA,EACrBpvF,KAAKyqB,cAAgBA,EACrBzqB,KAAKkgD,OAASA,EAEdlgD,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MACrDA,KAAKsvF,WAAatvF,KAAKsvF,WAAWjwF,KAAKW,MACvCA,KAAKuvF,gBAAkBvvF,KAAKuvF,gBAAgBlwF,KAAKW,MAGnDsvF,aACE,OAAOtvF,KAAKkgD,OAAOlgD,KAAKuvF,iBAGL,wBACnB,IACEvvF,KAAKm6D,cAAgBn6D,KAAKovF,cAAcj1B,UACxC,MAAOr/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAIhC,gBACX9a,KAAKm6D,QAAU,GACfn6D,KAAKsvF,aAGPvyB,aAAajzB,GACX,OAAO9pC,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,GAGtB,wBAACA,GACtB,IAAIi4B,EAAcj4B,EAAcrqC,OAChC,IAAK,MAAMmlB,KAAUklB,EACnB,UACQ9pC,KAAKovF,cAAc3rE,OAAOmB,EAAOrY,IACvCvM,KAAKyqB,cAAcF,QAAQ,8BAA+B3F,EAAO/X,MACjE,MAAMszB,EAAQngC,KAAKm6D,QAAQt0D,QAAQ+e,GACnC5kB,KAAKm6D,QAAQ8I,OAAO9iC,EAAO,GAC3B,MAAOrlB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAN3C,UAQIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,W,8DAMtB,YACAtrB,IAAAA,OAAe,oBAAoBV,WAAW,oBAAqBi6E,I,iGCrDnE,MAAMK,EAEJvvC,YAAYC,EAAQwI,EAAQ+mC,EAAcxoC,EAASvF,EAAcj3B,EAAe2kE,EAAerkB,EAAgB2kB,EAAerB,GAC5HruF,KAAK0oD,OAASA,EACd1oD,KAAKyvF,aAAeA,EACpBzvF,KAAKinD,QAAUA,EACfjnD,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAKovF,cAAgBA,EACrBpvF,KAAK+qE,eAAiBA,EACtB/qE,KAAK0vF,cAAgBA,EACrB1vF,KAAKquF,uBAAyBA,EAC9BruF,KAAKkgD,OAASA,EAEdlgD,KAAK2T,WAAa,CAChB9G,KAAM,GACN+tC,OAAQ,GACR+0C,kBAAmB,IAAIC,EAAAA,sBACvBC,cAAe,IAGjB7vF,KAAK+P,MAAQ,CACX+/E,oBAAqB,GACrBC,eAAe,GAGjB/vF,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MAG9B,gBAOX,GANAA,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAK2T,WAAWw8E,mBAAqBnwF,KAAK2T,WAAWk8E,eAAiB7vF,KAAK+P,MAAMggF,cACnF,MAAO,IAIN/vF,KAAKyvF,aAAajkF,SAASlN,GAKhC,IACE,IAAImG,QAAazE,KAAKovF,cAAcxqE,OAAO5kB,KAAKyvF,aAAajkF,SAASlN,IACtE0B,KAAK2T,WAAW9G,KAAOpI,EAAKoI,KAAO,QACnC7M,KAAK2T,WAAW4mE,KAAO91E,EAAK81E,KAC5B,IAAI5/B,EAAS,IAAOl2C,EAAKm2C,QACzB,IAAK,IAAIr7C,EAAI,EAAGA,EAAIo7C,EAAOl7C,OAAQF,IAAK,CACtC,IAAI6wF,EAAYz1C,EAAOp7C,GACnB8wF,EAAa5rF,EAAKm2C,OAAOw1C,GAC7BpwF,KAAK2T,WAAWinC,OAAOh3C,KAAK,CAAEE,KAAMssF,EAAWzsF,MAAO0sF,IAExDrwF,KAAK2T,WAAWw8E,mBAAoB,EACpC,MAAOr1E,GACP9a,KAAK2T,WAAWw8E,mBAAoB,EACpCnwF,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAjBzC9a,KAAK2T,WAAWw8E,mBAAoB,EAqBxC97D,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAGd,kBACb,GAAI/vF,KAAK2T,WAAWw8E,mBAAqBnwF,KAAK2T,WAAWk8E,eAAiB7vF,KAAK+P,MAAMggF,cACnF,OAAO/vF,KAAK0hD,aAAal7B,0BAI7BwuB,WACEh1C,KAAK2T,WAAWinC,OAAOh3C,KAAK,CAAEE,KAAM,GAAIH,MAAO,KAGjD+gE,YAAYvkC,GACVngC,KAAK2T,WAAWinC,OAAOqoB,OAAO9iC,EAAO,GAGvCmwD,oBAAoB1rE,GAClB,IAAI+1B,EAAS,GACb36C,KAAK2T,WAAWinC,OAAO/iC,SAAQ,SAAUjR,GACnCA,EAAM9C,MAAQ8C,EAAMjD,QACtBg3C,EAAO/zC,EAAM9C,MAAQ8C,EAAMjD,UAG/BihB,EAAOg2B,OAASD,EAGlB41C,kBAAkB3rE,GAChB,IAAI4rE,EAAaxwF,KAAK2T,WAAWk8E,cACjCjrE,EAAO21D,KAAOlqD,KAAKogE,SAASC,mBAAmBF,KAGjDG,uBACE,IAAI/rE,EAAS,GAIb,OAHAA,EAAO/X,KAAO7M,KAAK2T,WAAW9G,KAC9B7M,KAAKuwF,kBAAkB3rE,GACvB5kB,KAAKswF,oBAAoB1rE,GAClBA,EAGTgsE,aAAa38E,EAAmBhK,GAC9BjK,KAAK+P,MAAM+/E,oBAAsB,GACjC,IAAI7hF,EAAQ,GAGZ,OAFAA,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,IAEhEgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAKXyqC,SACE,OAAO14C,KAAKkgD,OAAOlgD,KAAKiwF,aAGT,oBACf,MAAMh8E,EAAoBjU,KAAK2T,WAAWg8E,kBACpCmB,EAAc9wF,KAAK+qE,eAAegmB,iBAClC9mF,EAAUjK,KAAK+qE,eAAe9gE,UAEpC,GAAsC,KAAlCjK,KAAK2T,WAAWk8E,cAElB,YADA7vF,KAAK+P,MAAM+/E,oBAAsB,oCAInC,IAAK9vF,KAAK4wF,aAAa38E,EAAmBhK,GACxC,OAGF,MAAM2a,EAAS5kB,KAAK2wF,uBAEpB,IACE,MACM9lF,SADa7K,KAAKovF,cAAc12C,OAAO9zB,IAChBy1B,UAAUC,gBACjC5oB,EAASo/D,EAAYtmD,SACrBxqC,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,GAClF7K,KAAKyqB,cAAcF,QAAQ,UAAW,sCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,IAC/C,MAAOpmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BACzC9a,KAAK+P,MAAMggF,eAAgB,GAI/BC,aAAarsF,GACX3D,KAAK2T,WAAWk8E,cAAgBlsF,EAChC3D,KAAK+P,MAAMggF,eAAgB,G,gKAI/B,YACAn6E,IAAAA,OAAe,oBAAoBV,WAAW,yBAA0Bs6E,I,yDC3JxE55E,QAAQ5W,OAAO,oBAAoBkW,WAAW,mBAAoB,CAChE,SACA,eACA,SACA,gBACA,gBACA,SAAUE,EAAQq6E,EAAc/mC,EAAQ0mC,EAAe3kE,GACrDrV,EAAOrK,aAAeK,EAAAA,EAAAA,OAEtBgK,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAO67E,aAAe,SAAsB/G,GAC1CkF,EAAc3rE,OAAOymE,GAClBluE,MAAK,WACJyO,EAAcF,QAAQ,UAAW,sCACjCm+B,EAAOr8B,GAAG,iBAAkB,OAE7BywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAKxCs0E,EAAcxqE,OAAO6qE,EAAajkF,SAASlN,IACxC0d,MAAK,SAAiBvX,GACrB2Q,EAAOwP,OAASngB,KAEjBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4C,oEC7B9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,6BAA8B,CAC1E,SACA,SACA,eACA,mBACA,eACA,gBACA,kBACA,cACA,oBACA,eACA,gCACA,iBACA,SACEE,EACAszC,EACA+mC,EACA9D,EACAjlB,EACAj8C,EACAymE,EACAC,EACAptC,EACA6E,EACAwE,EACAgkC,GAEA,IAAI/5D,EAAQg6D,EAEZ,IAAIC,EAASxyF,OAAOyyF,OAAO,CACzBC,aAAc,EACdC,WAAY,EACZC,UAAW,IAoHb,SAASrJ,EAAOsJ,EAAU1mD,GACxBA,EAAMA,GAAO,EAEbomD,EAAKnmC,MACL,IAAI0mC,EAAYP,EAAKQ,KAErBR,EAAKhJ,OAAOuJ,EADK,IAGjBD,EAASC,EAAY3mD,EAHJ,GAGsBA,EAAK,GAG9C,SAAS6mD,EAASrrF,EAAKsrF,GACrB,IAAIC,EAAY3J,EAAOhpF,KAAKW,KAAM+xF,GAE9BtC,EAAajkF,SAASisC,WACxBhxC,GAAO,aAAegpF,EAAajkF,SAASisC,UAG5ChxC,EADEA,EAAIZ,QAAQ,UAAY,EACpBY,EAAI40B,QAAQ,WAAY,UAExB50B,EAAI40B,QAAQ,UAAW,UAG/BhE,EAAS,IAAI46D,UAAUxrF,IAEhByrF,OAAS,WACd98E,EAAOrF,MAAQuhF,EAAOI,WACtBL,EAAO,IAAIpmC,EAAAA,GAENknC,GAAG,QAAQ,SAAU1tF,GACxB4yB,EAAO+6D,KAAK3tF,MAEd,IAAI4tF,EAAqB7sD,SAAS8sD,eAAe,sBACjDjB,EAAKzyB,KAAKyzB,GACVhB,EAAKhmC,QACLgmC,EAAKkB,UAAU,eAAe,GAE9BxuF,OAAOyuF,SAAW,WAChBR,IACA58E,EAAOq9E,UAGTr9E,EAAO4xD,OAAOoqB,EAAesB,eAAe,WAC1Cv0E,WAAW6zE,EAAW,QAGxB36D,EAAOs7D,UAAY,SAAUj0F,GAC3B2yF,EAAKuB,MAAMl0F,EAAE+F,OAEf4yB,EAAOjI,QAAU,SAAUtU,GACzB1F,EAAO2zE,aACP3zE,EAAOq9E,SACPhoE,EAAcxc,MAAM,UAAW6M,EAAK,qBAEtCuc,EAAOw7D,QAAU,WACfz9E,EAAO2zE,aACP3zE,EAAOq9E,UAGTT,EAAU,GACV58E,EAAOq9E,UA7KXr9E,EAAO09E,QAAS,EAChB19E,EAAOk8E,OAASA,EAChBl8E,EAAOrF,MAAQuhF,EAAOE,aAEtBp8E,EAAOzB,WAAa,GACpByB,EAAO29E,kBAAoB,GAG3B39E,EAAO49E,IAAI,qBAAqB,WAC9B59E,EAAO2zE,gBAGT3zE,EAAO69E,cAAgB,WACrB,GAAI79E,EAAOrF,MAAQuhF,EAAOE,aACxB,OAGFp8E,EAAOrF,MAAQuhF,EAAOG,WAEtB,IAAIyB,EAAWzD,EAAajkF,SAASlN,GAErCqtF,EAAiBr0C,UAAU47C,GACxBl3E,MAAMoJ,IACL,IAAKA,EAAQsqC,MAAMgd,QAGjB,OAFAjiD,EAAcxc,MAAM,UAAWmX,EAAS,aAAe8tE,EAAW,yBAClE99E,EAAO2zE,aAIT,MAAMv9E,EAAS,CACbkrE,MAAO9tB,EAAakB,SACpBvrC,WAAYmqC,EAAOl9C,OAAO+S,WAC1BjgB,GAAI40F,GAWNpB,EAPE/tF,OAAOovF,SAASC,QAChBC,EAAAA,EAAAA,YACA,wBACAv0F,OAAOD,KAAK2M,GACTrN,KAAKm1F,GAAMA,EAAI,IAAM9nF,EAAO8nF,KAC5BnmF,KAAK,KAEIw+E,EAAiB4H,UAAUl0F,KAAKW,KAAMkzF,OAErDp2B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,QAAS6M,EAAK,wCAClC1F,EAAO2zE,iBAIb3zE,EAAOo+E,YAAc,WACnB,KAAIp+E,EAAOrF,MAAQuhF,EAAOE,cAA1B,CAIAp8E,EAAOrF,MAAQuhF,EAAOG,WACtB,IAAIvqF,EAAUkO,EAAOzB,WAAW8/E,gBAAkBr+E,EAAOzB,WAAW+/E,cAAgBt+E,EAAOzB,WAAWzM,QAClG+jF,EAAa,CACf3sF,GAAImxF,EAAajkF,SAASlN,GAC1Bq1F,aAAa,EACbC,cAAc,EACdC,cAAc,EACdC,KAAK,EACLtO,KAAMpwE,EAAOzB,WAAWtH,KACxBm1E,IAAK0P,EAAgB6C,qBAAqB7sF,IAG5CykF,EAAiBqI,WAAW/I,GACzBjvE,MAAK,SAAiBvX,GACrB,MAAM+G,EAAS,CACbkrE,MAAO9tB,EAAakB,SACpBvrC,WAAYmqC,EAAOl9C,OAAO+S,WAC1BjgB,GAAImG,EAAK8H,IAWXulF,EAPE/tF,OAAOovF,SAASC,QAChBC,EAAAA,EAAAA,YACA,sBACAv0F,OAAOD,KAAK2M,GACTrN,KAAKm1F,GAAMA,EAAI,IAAM9nF,EAAO8nF,KAC5BnmF,KAAK,KAEIgkF,EAAYoC,UAAUl0F,KAAKW,KAAMwL,EAAOlN,QAEvDw+D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCACpC1F,EAAO2zE,kBAIb3zE,EAAO2zE,WAAa,WACd1xD,GACFA,EAAO48D,QAEL7+E,EAAOrF,MAAQuhF,EAAOE,eACxBp8E,EAAOrF,MAAQuhF,EAAOE,aAClBH,IACFA,EAAKuB,MAAM,2BACXvB,EAAK6C,aAKX9+E,EAAO++E,sBAAwB,WAC7B,OAAO/+E,EAAOg/E,WAAWp4E,MAAK,WACxB5G,EAAOkiC,UAAUoY,MAAMgd,SACzBt3D,EAAO69E,oBAqEb79E,EAAOg/E,SAAW,WAEhB,OADArwC,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UAC/Dk0C,EAAiBr0C,UAAUm4C,EAAajkF,SAASlN,IACrD0d,MAAK,SAAiBvX,GACrB,IAAI6yC,EAAY7yC,EAEhB,OADA2Q,EAAOkiC,UAAYA,EACZovB,EAAa7Y,MAAMvW,EAAU4vB,UAErClrD,MAAK,SAAiBvX,GACrB,IAAIopD,EAAQppD,EACR4vF,EAAkBj/E,EAAOkiC,UAAUsc,OAAOhZ,OAC9CxlC,EAAOk/E,QAAUzmC,EAAMwzB,GACvBjsE,EAAOzB,WAAWzM,QAAuB,YAAb2mD,EAAMwzB,GAAmB,aAAe,OACpEjsE,EAAO29E,kBAAoBj0F,OAAOD,KAAKw1F,GACpC/hF,QAAO,SAAU1L,GAChB,OAAwD,IAAjDA,EAAMf,QAAQunD,MAEtBjvD,KAAI,SAAUyI,GACb,MAAO,CACLsH,MAAOtH,EAAMy0B,QAAQ+xB,EAA+B,IACpDlmD,QAASmtF,EAAgBztF,OAG/BwO,EAAO09E,QAAS,KAEjBh2B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,QAAS6M,EAAK,4CAIxC1F,EAAOm/E,4BAA8B,SAAU17E,GAC7CzD,EAAOE,YAAW,KAChBF,EAAOzB,WAAW8/E,gBAAkB56E,U,2SC5O5CjD,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,KACA,SACA,SACA,SACA,WACA,eACA,UACA,YACA,kBACA,cACA,SACA,iBACA,yBACA,iBACA,gBACA,mBACA,eACA,gBACA,eACA,kBACA,gBACA,gBACA,oBACA,WACA,iBACA,SACE4e,EACA1e,EACA8qC,EACAwI,EACA2hC,EACAoF,EACA+E,EACApoD,EACA8kD,EACA1qB,EACAioB,EACA3jB,EACAujB,EACAtjB,EACAtgD,EACAkhE,EACAjlB,EACAgpB,EACAhuC,EACA+kB,EACA5d,EACA4rC,EACA1wC,EACAhtC,EACAsqD,GA2WA,SAASqzB,EAAiB9vE,GAExB,GAAIxP,EAAOzB,WAAWghF,aAAe,EAAG,CACtC,IAAIC,GAAe93E,KAAK+3E,MAAsC,EAAhCz/E,EAAOzB,WAAWghF,aAAmB,GAAGG,QAAQ,GAC9EF,GAAe,QACfhwE,EAAOyrD,WAAW0S,OAAS6R,EAI7B,GAAIx/E,EAAOzB,WAAW62E,mBAAqB,EAAG,CAC5C,IAAIuK,GAAqBj4E,KAAK+3E,MAA4C,EAAtCz/E,EAAOzB,WAAW62E,mBAAyB,GAAGsK,QAAQ,GAC1FC,GAAqB,QACrBnwE,EAAOyrD,WAAWma,kBAAoBuK,EAIpC3/E,EAAOzB,WAAWqhF,UAAY,IAChCpwE,EAAOyrD,WAAWqa,SAAwC,IAA7Bt1E,EAAOzB,WAAWqhF,UAidnD,SAASt8C,IACP,IAAIu8C,EAAe,KAEnB,OADAlxC,EAAkB39B,8BAA8BhR,EAAOzB,WAAWsjC,UAC3Di+C,IAAuBl5E,MAM9B,SAAyBs7B,GAEvB,OADA29C,EAAe39C,EACRA,KAR2Ct7B,MAoFpD,SAAgCs7B,GAC9B,OAAKA,GAOCuyC,EAAW/1D,EAAGg2D,QAElBpoC,EAAav6B,mBAAmB,CAC9BjZ,MAAO,iBACPjB,QAAS,qIACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,UACP3F,UAAW,eAGfylB,SAAU,SAAmBC,GAC3BkjE,EAAS9qF,QAAQ4nB,MAIdkjE,EAAS/tE,SAtBTgY,EAAGupB,MAAK,GAKjB,IACMwsC,KA5FyE7tE,MAqCjF,SAA8B2K,GAC5B,OAAKA,GAvFa1S,EAqPMmB,EAAOzB,WAAWg8E,kBArPL1lF,EAsPEmL,EAAOnL,QArPhDmL,EAAOrF,MAAM+/E,oBAAsB,IAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,EAC5B,GAoFE6lB,EAAGupB,QAEZjoC,EAAOrF,MAAMolF,kBAAmB,EAuFzBrhE,EAAGupB,KAAKjoC,EAAOzB,WAAWyhF,YAAc1uB,EAAatE,UAAUhtD,EAAOzB,WAAW0hF,eAAe,IArFpGr5E,KAAKs5E,GACLt5E,KAAKu5E,GACLv5E,KAAKw5E,GACLx5E,KAAKhI,GACLgI,KAAKy5E,GACLz5E,KAAK05E,GACL15E,KAAK7N,GACL2uD,MAAM64B,KAdA7hE,EAAGupB,OAxFhB,IAAsBppC,EAAmBhK,EAEnCgE,KA+CwG6uD,OA+L5G,SAAuBhiD,GACrB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAhM2FonD,SAEjI,WACE9sD,EAAOrF,MAAMolF,kBAAmB,KAQlC,SAASD,IACP,OAAO9oD,EAAUl2B,MAAM,CAAEoc,IAAK,EAAGy8B,QAAS,CAAEjrD,KAAM,CAAC,KAAOsR,EAAOwP,OAAO9gB,KAAO,QAC5EkiD,SAAShqC,MAAK,SAAwBs/B,GACrC,GAAKA,EAAW77C,OAGhB,OAAO67C,EAAW,MAEnBwhB,OAEH,SAAuBhiD,GACrB2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAIxC,SAAS06E,EAAuB/wF,GAE9B,GAD4D,IAAlBsS,EAAS/L,MACVoK,EAAOzB,WAAWiiF,cAAe,CACxE,MAAMC,EAAa,IAAMzgF,EAAOzB,WAAW0hF,cAAe,cAAe,GACzEh0B,EAAey0B,cAAcrxF,EAAK8H,GAAIwK,EAASxK,GAAIspF,EAAY,GAAG75E,MAAK,WACrE,OAAOvX,KAGX,OAAOA,EAsBT,SAASkxF,EAAsB1nF,GAC7B,IAAI47E,EAAW/1D,EAAGg2D,QASlB,OAIOoL,IAAuBl5E,MAAK,SAA2Bs7B,GAC5D,GAAIA,KAAe29C,GAAgB39C,EAAU/qC,KAAO0oF,EAAa1oF,IAC/D,OAAOo/E,EAAiBloE,OAAO6zB,GAAW,MAb3Ct7B,KAAK+5E,GACL/5E,MAAK,WACJ6tE,EAAS96D,OAAO9gB,MAEjB6uD,OAAM,SAAUk5B,GACfnM,EAAS96D,OAAOinE,MAEbnM,EAAS/tE,QAWlB,SAASi6E,IACP,GAAKd,EAGL,OAAOtJ,EAAiB3xC,gBAAgBi7C,EAAa1oF,GAAI0oF,EAAa59C,MAAM,GAAGvxC,UAAU,IA+B3F,SAASwvF,IACP,OAAKL,EAMP,SAA+BA,GAC7B,MAA2B,YAAvBA,EAAavlC,MACR57B,EAAGupB,OAELsuC,EAAiBhyC,cAAcs7C,EAAa1oF,IAP5C0pF,CAAsBhB,GAAcj5E,KAAKg+B,GAFvClmB,EAAGupB,OAYd,SAASrD,IACP,OAAO2xC,EAAiB3xC,gBAAgBi7C,EAAa1oF,GAAI0oF,EAAa59C,MAAM,GAAGvxC,UAAU,GAAK,QAOhG,SAASyvF,IACP,OAAOr1C,GAAO2F,UACZ,MAAMjhC,EA9hBZ,WACE,IAAIA,EAAShP,QAAQu0D,KAAK/0D,EAAOwP,QAgBjC,OAvNF,SAAoBA,GACd,IAAUA,EAAO48D,MAAqC,WAA7BpsE,EAAOzB,WAAWuiF,eACtCtxE,EAAO48D,IAEd58D,EAAO48D,IAAM0P,EAAgB6C,qBAAqBnvE,EAAO48D,KAoM3D2U,CAAWvxE,GAhMb,SAA2BA,IACe,WAApCxP,EAAOzB,WAAWyiF,gBAAgC,IAAUxxE,EAAO48D,MAAQ,IAAU58D,EAAO68D,eAC9F78D,EAAO68D,WAAa,MA+LtB4U,CAAkBzxE,GAnKpB,SAA8BA,GAC5B,IAAIqW,EAAOrW,EAAOyrD,WAAWC,YACzBh5B,EAAYliC,EAAOzB,WAAW2iF,iBAC9BC,EAAgBj/C,EAChBA,GAAkC,iBAAdA,IACtBi/C,EAAgB/B,EAAQ,oBAARA,CAA6Bl9C,EAAUD,MAAM,KAE/D,IAAIm/C,EAAcv7D,EAelB,GAdIs7D,IACFC,GAAe,IAAMD,EACrB3xE,EAAOyoD,SAAW,IAEpBzoD,EAAOyrD,WAAWC,YAAckmB,EAChC5xE,EAAOswC,WAAa9/C,EAAOzB,WAAWuhD,WAEtCtwC,EAAO2rD,iBAAiBC,gBAAgBgmB,GAAe,CACrDC,WAAY,CACVzhC,YAAa5/C,EAAOzB,WAAW+iF,KAC/BzhC,YAAa7/C,EAAOzB,WAAWgjF,OAI/BH,GAAe,IAAMphF,EAAOwP,OAAO2rD,iBAAiBC,gBAAgBgmB,GAAc,WAAY,CAChG,IAAI1J,EAAU13E,EAAOwP,OAAO2rD,iBAAiBC,gBAAgBgmB,GAAaxJ,QAC1EpoE,EAAO2rD,iBAAiBC,gBAAgBgmB,GAAaxJ,QAAU,IAASF,GAAUruF,IACxE,IAAa2W,EAAOwhF,cAAcrqF,GAAI9N,KAIlD,IAAIo4F,EAAa,GACbzhF,EAAOzB,WAAWmjF,YACpBD,EAAWjzF,KAAKwR,EAAOzB,WAAWmjF,YAEhC1hF,EAAOzB,WAAWojF,cACpBF,EAAWjzF,KAAKwR,EAAOzB,WAAWojF,cAEpCnyE,EAAOyrD,WAAW2mB,IAAMH,EAExBjyE,EAAOyrD,WAAW4mB,WAAa,IAC7B,IAAS7hF,EAAOzB,WAAWsjF,YAAaz1D,GAAMA,EAAE79B,QAChD,SA4HFuzF,CAAqBtyE,GAtOvB,SAA4BA,GAC1B,MAAMuyE,EAAc3wB,EAAY+M,8BAA8Bn+D,EAAOzB,WAAW0hF,eAChFzwE,EAAOsiD,MAAQiwB,EAAY3jB,UAqO3B4jB,CAAmBxyE,GAlOrB,SAA6BA,GAC3B,MAAM7P,EAAWm8E,EAAgBmG,oBAAoBzyE,EAAOyrD,WAAWinB,cACvE1yE,EAAO6rD,aAAe,GACtB,IAAU17D,GAAU,CAAC8X,EAAGltB,IAASilB,EAAO6rD,aAAa9wE,GAAO,KAC5DilB,EAAOyrD,WAAWinB,aAAeviF,EA+NjCsiF,CAAoBzyE,GA5NtB,SAAwBA,GACtB,IAAIjhB,EAAQyR,EAAOzB,WAAW4jF,QAC1BC,GAAY,EACZC,GAAM,EACI,QAAV9zF,EACF6zF,GAAY,EACO,gBAAV7zF,EACT8zF,GAAM,EACa,SAAV9zF,IACT6zF,GAAY,EACZC,GAAM,GAER7yE,EAAO+gE,UAAY6R,EACnB5yE,EAAOkvE,IAAM2D,EAgNbC,CAAe9yE,GA/LjB,SAAqCA,GACnCA,EAAO+8D,IAAMgW,EAAAA,wBAAqCviF,EAAOzB,WAAWguE,KA+LpEiW,CAA4BhzE,GA5L9B,SAAwBA,GACtB,IAAI8rD,EAAQ,GACR/U,EAAU,GAEdvmD,EAAOzB,WAAWu9D,QAAQr5D,SAAQ,SAAU+jD,GAC1C,IAAI93D,EAAO83D,EAAO93D,KACdgtE,EAAgBlV,EAAOkV,cAC3B,GAAIhtE,GAAQgtE,EAAe,CACzB,IAAIzxE,EAAOyE,EAAO,IAAMgtE,EACxBnV,EAAQmV,GAAiB,GACrBlV,EAAO3oB,WACT5zC,GAAQ,OAEVqxE,EAAM9sE,KAAKvE,OAGfulB,EAAOyrD,WAAWY,MAAQP,EAC1B9rD,EAAOssD,QAAUvV,EA4KjBk8B,CAAejzE,GA7HjB,SAAuBA,GACrB,IAAI+1B,EAAS,GACbvlC,EAAOzB,WAAWinC,OAAO/iC,SAAQ,SAAUjR,GACrCA,EAAM9C,OACJ8C,EAAMjD,MACRg3C,EAAO/zC,EAAM9C,MAAQ8C,EAAMjD,MAE3Bg3C,EAAO/zC,EAAM9C,MAAQ,OAI3B8gB,EAAOg2B,OAASD,EAmHhBm9C,CAAclzE,GAhHhB,SAAwBA,GACtB,IAAI+8B,EAAO,GACX/8B,EAAOyrD,WAAW0nB,QAAQlgF,SAAQ,SAAU0yB,GACtCA,EAAEytD,aACsB,KAAtBztD,EAAE0tD,kBACJ1tD,EAAE0tD,gBAAkB1tD,EAAEytD,YAExBr2C,EAAK/9C,KAAK,CAAEs0F,WAAY3tD,EAAEytD,WAAYG,gBAAiB5tD,EAAE0tD,gBAAiBG,kBAAmB,YAGjGxzE,EAAOyrD,WAAW0nB,QAAUp2C,EAuG5B02C,CAAezzE,GACf8vE,EAAiB9vE,GAtEnB,SAA0BA,GACxB,IAAI0zE,EAAU,GACVljF,EAAOzB,WAAWoxE,gBACpBngE,EAAOyrD,WAAWkoB,UAAY,CAAEvtF,KAAMoK,EAAOzB,WAAWoxE,eAChB,SAApC3vE,EAAOzB,WAAWoxE,gBACpB3vE,EAAOzB,WAAWqxE,cAAcntE,SAAQ,SAAU2gF,GAC5CA,EAAI10F,OACNw0F,EAAQE,EAAI10F,MAAQ00F,EAAI70F,UAGQ,IAAhC7E,OAAOD,KAAKy5F,GAAS74F,QAAgB64F,EAAQr4C,cAAgBnhD,SAC/D8lB,EAAOyrD,WAAWkoB,UAAU3kC,OAAS0kC,KA4D3CG,CAAiB7zE,GAtDnB,SAA6BA,GAC3B,IAAIw3C,EAAUhnD,EAAOzB,WAAWojD,aAAazkD,QAAO,SAAU+hC,GAC5D,OAAwB,IAAjBA,EAAK+nB,WAEVs8B,EAAatjF,EAAOzB,WAAWojD,aAAazkD,QAAO,SAAU+hC,GAC/D,OAAwB,IAAjBA,EAAK+nB,WAGVu8B,EAAa,SAAUtkD,GACzB,OAAOA,EAAK8nB,YAEdv3C,EAAOyrD,WAAWuoB,OAASx8B,EAAQj+D,IAAIw6F,GACvC/zE,EAAOyrD,WAAWwoB,QAAUH,EAAWv6F,IAAIw6F,GA2C3CG,CAAoBl0E,GAvGtB,SAAwBA,GACtB,IAAIm0E,EAAU,GACd3jF,EAAOzB,WAAWqlF,QAAQnhF,SAAQ,SAAUohF,GACtCA,EAAOn1F,MAAQm1F,EAAOt1F,QACxBo1F,EAAQE,EAAOn1F,MAAQm1F,EAAOt1F,UAGlCihB,EAAOyrD,WAAW2oB,QAAUD,EAiG5BG,CAAet0E,GAzCjB,SAA2BA,GACzB,MAAM+pE,EAAS,SACTwK,EAAa/jF,EAAOzB,WAAWylF,IAC/BC,EAAwB,IAAOjkF,EAAOwP,OAAOyrD,WAAWipB,eAAgB,CAAExlC,OAAQ66B,IAIxF,GAHI0K,GACF,IAAYz0E,EAAOyrD,WAAWipB,eAAgB,CAACD,GAAwB,WAEpEF,EAAWtgF,QACd,OAEF,MAAM0gF,EAAgB,CACpBzlC,OAAQ66B,EACR6K,OAAQ,EACRC,UAAW,GACXC,aAAc,IAGZP,EAAW9hC,cACbkiC,EAAcE,UAAYN,EAAWviC,aACrC2iC,EAAcC,MAAQ,GAExBD,EAAcG,aAAe,CAACP,EAAWpiC,cAEzCnyC,EAAOyrD,WAAWipB,eAAe11F,KAAK21F,GAmBtCI,CAAkB/0E,GACXA,EA6gBY+rE,GACf,aAAahF,EAAiBiO,wBAAwBh1E,MAI1D,SAAS5Q,EAAqB6lF,GAC5B,MAAMnoE,EAASq5C,EAAegmB,iBAAiBvmD,GACzC3/B,EAAkBgvF,EAAax/C,UAAUC,gBACzC9C,EAAcqiD,EAAattF,GAC3B0H,EAAoBmB,EAAOzB,WAAWg8E,kBAE5C,OAAOtB,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,GAAiBmR,MAAK,WAClG,OAAOw7B,KAIX,SAASi+C,EAAuBqE,GAC9B,IAAK1kF,EAAO2kF,cACV,OAAOjmE,EAAGupB,OAGZ,IAAI28C,EAAqB,IAAS5kF,EAAO2kF,eAAe,SAAU9mC,EAASI,GACzE,GAAI,IAAMJ,EAAS,WACjB,IAAI65B,EAAU,IAAS75B,EAAQ+5B,SAAUvuF,IAC/B,IAAa2W,EAAOwhF,cAAcrqF,GAAI9N,KAGlD,OAAOqsE,EAAemvB,iBAAiB5mC,EAAaymC,EAAgBhN,MAGtE,OAAOh5D,EAAGxB,IAAI0nE,GAGhB,SAAStE,IACP,IAAI7L,EAAW/1D,EAAGg2D,QAElB,GAAKmL,EAOL,OAFAtJ,EAAiBloE,OAAOwxE,GAAc,GAAMj5E,MAI5C,WACEyO,EAAcF,QAAQ,oBAAqB0qE,EAAa1oF,IACxDs9E,EAAS9qF,aANuD+9D,OASlE,SAA6BhiD,GAC3B+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OARrD+uE,EAAS/tE,QANd+tE,EAAS9qF,UA2Bb,SAASoP,IACPsc,EAAcF,QAAQ,UAAW,kCACjCm+B,EAAOr8B,GAAG,oBAAqB,GAAI,CAAE6U,QAAQ,KAYjD,SAASg5D,IACP,OAAOnvB,EAAe9gE,WAAa8gE,EAAezrD,kBAAkB,CAAC,4BAriCvElK,EAAOsjC,OAASA,EAChBtjC,EAAOwsD,OAk0BP/b,iBACEzwC,EAAOrF,MAAMolF,kBAAmB,EAChC,IAAIvwE,EAAShP,QAAQu0D,KAAK/0D,EAAOwP,QACjC8vE,EAAiB9vE,SAjBnBihC,eAA4BjhC,GAC1B,IACMxP,EAAOrF,MAAMoqF,0BACfzhD,WAEMizC,EAAiBpB,aAAakF,EAAajkF,SAAS0/B,KAAMtmB,GAChExP,EAAOwP,OAASA,EAChB6F,EAAcF,QAAQ,UAAW,mBAEnC,MAAOzP,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,uBAQhCyvE,CAAa3lE,GACnBxP,EAAOrF,MAAMolF,kBAAmB,GAt0BlC//E,EAAO2B,SAAWA,EAElB3B,EAAOzB,WAAa,CAClByhF,YAAY,EACZgE,IAAK,CACHvgF,SAAS,EACTw+C,aAAa,EACbT,aAAc,CAAC,OACfG,aAAc,CAAC,UAAW,YAE5BwgC,QAAS,OACTrmB,QAAS,GACTolB,iBAAkB,KAClB17C,OAAQ,GACRq8C,WAAY,GACZ/hC,WAAY,GACZwhC,KAAM,GACNC,KAAM,GACNG,WAAY,GACZC,aAAc,GACdpH,kBAAmB,IAAIC,EAAAA,sBACvBoF,SAAU,EACVL,YAAa,EACbnK,kBAAmB,EACnB0L,QAAS,UACTE,eAAgB,UAChBzU,IAAK,GACL1qC,SAAU,KACV8f,aAAc,GACdiiC,QAAS,GACTjU,cAAe,GACfC,cAAe,GACfqQ,cAAe,IAAI3R,EAAAA,sBACnBkS,eAAe,GAGjBxgF,EAAO2kF,cAAgB,GAEvB3kF,EAAOrF,MAAQ,CACb+/E,oBAAqB,GACrBqF,kBAAkB,EAClBl6D,KAAM,GACNm/D,mBAAmB,EACnBD,2BAA2B,GAG7B/kF,EAAOilF,mBAMP,SAA4B3kE,GAC1B,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWyhF,WAAa1/D,MAPnCtgB,EAAOklF,4BAWP,SAAqC5kE,GACnC,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOwP,OAAOyrD,WAAWkqB,gBAAkB7kE,MAZ/CtgB,EAAOolF,uBAgBP,SAAgC9kE,GAC9B,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOwP,OAAOyrD,WAAWoqB,WAAa/kE,MAjB1CtgB,EAAOslF,uBAqBP,SAAgChlE,GAC9B,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOwP,OAAOyrD,WAAWsqB,WAAajlE,MAtB1CtgB,EAAOwlF,iBA0BP,SAA0BllE,GACxB,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOwP,OAAOyrD,WAAWwqB,KAAOnlE,MAIpCtgB,EAAO0lF,sBAAwB,SAAUplE,GACvC,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWiiF,cAAgBlgE,MAItCtgB,EAAO2lF,mBACP,SAA4Bp3F,GAC1ByR,EAAOzB,WAAWguE,IAAMh+E,GAG1ByR,EAAO4lF,cAAgB,WACrB3Q,GAAS,WACPj1E,EAAO6lF,WAAW,2BAItB7lF,EAAO8lF,kBAAoB,WACzB9lF,EAAOzB,WAAWuiF,QAAU,UAC5B9gF,EAAOzB,WAAWyiF,eAAiB,WAGrChhF,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAG5DhK,EAAO+lF,qBACP,SAA8BC,GACvBA,IACHhmF,EAAOzB,WAAWyhF,YAAa,GAEjChgF,EAAOrF,MAAMqqF,kBAAoBgB,GAGnChmF,EAAOwP,OAAS,CACdsiD,MAAO,GACPya,IAAK,GACLH,IAAK,GACLtsB,WAAY,GACZub,aAAc,GACdgR,WAAY,GACZpR,WAAY,CACVgU,cAAe,CACbx3E,KAAM,MAERyqF,aAAc,GACdiD,iBAAiB,EACjBtpB,MAAO,GACPwpB,YAAY,EACZnqB,YAAa,SACbqqB,YAAY,EACZE,MAAM,EACNxU,QAAS,KACT4Q,WAAY,GACZc,QAAS,GACTuB,eAAgB,GAChBV,OAAQ,GACRC,QAAS,GACTG,QAAS,IAEXzoB,iBAAkB,CAChBC,gBAAiB,IAEnB51B,OAAQ,IAGVxlC,EAAOimF,UAAY,WACjBjmF,EAAOzB,WAAWu9D,QAAQttE,KAAK,CAAEE,KAAM,GAAIgtE,cAAe,GAAI79B,UAAU,EAAOlpC,KAAM,YAGvFqL,EAAOkmF,aAAe,SAAUn7D,GAC9B/qB,EAAOzB,WAAWu9D,QAAQjO,OAAO9iC,EAAO,IAG1C/qB,EAAOmmF,eAAiB,WACtBnmF,EAAOwP,OAAOyrD,WAAWinB,aAAa1zF,KAAK,CAAE0tE,SAAU,GAAID,cAAe,GAAIQ,SAAU,SAG1Fz8D,EAAOomF,kBAAoB,SAAUr7D,GACnC/qB,EAAOwP,OAAOyrD,WAAWinB,aAAar0B,OAAO9iC,EAAO,IAGtD/qB,EAAO4/B,SAAW,WAChB5/B,EAAOzB,WAAWinC,OAAOh3C,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAGnDyR,EAAOsvD,YAAc,SAAUvkC,GAC7B/qB,EAAOzB,WAAWinC,OAAOqoB,OAAO9iC,EAAO,IAGzC/qB,EAAOqmF,aAAe,WACpBrmF,EAAOzB,WAAWsjF,WAAWrzF,KAAK,CAAED,MAAO,MAG7CyR,EAAOsmF,gBAAkB,SAAUv7D,GACjC/qB,EAAOzB,WAAWsjF,WAAWh0B,OAAO9iC,EAAO,IAG7C/qB,EAAOumF,UAAY,WACjBvmF,EAAOwP,OAAOyrD,WAAW0nB,QAAQn0F,KAAK,CAAEo0F,WAAY,GAAIC,gBAAiB,MAG3E7iF,EAAOwmF,aAAe,SAAUz7D,GAC9B/qB,EAAOwP,OAAOyrD,WAAW0nB,QAAQ90B,OAAO9iC,EAAO,IAGjD/qB,EAAOymF,YAAc,SAAUx0F,GAC7B,OAAO64C,GAAO2F,UACZzwC,EAAOzB,WAAWylF,IAAM/xF,MAI5B+N,EAAO0mF,UAAY,WACjB1mF,EAAOzB,WAAWqlF,QAAQp1F,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAGpDyR,EAAO2mF,aAAe,SAAU57D,GAC9B/qB,EAAOzB,WAAWqlF,QAAQ/1B,OAAO9iC,EAAO,IAG1C/qB,EAAO4mF,gBAAkB,WACvB5mF,EAAOzB,WAAWqxE,cAAcphF,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAG1DyR,EAAO6mF,mBAAqB,SAAU97D,GACpC/qB,EAAOzB,WAAWqxE,cAAc/hB,OAAO9iC,EAAO,IAGhD/qB,EAAO8mF,+BAAgC,EA4RvC9mF,EAAO+mF,mBAAqB,WAC1B/mF,EAAOwP,OAAO2rD,iBAAmB,CAC/BC,gBAAiB,KAuTrBp7D,EAAOgnF,qBACP,WACEhnF,EAAOrF,MAAMoqF,2BAA4B,GAEtC/kF,EAAOwP,OAAOyrD,WAAW0S,OAAS,GAAuC,IAAlC3tE,EAAOzB,WAAWghF,aACzDv/E,EAAOwP,OAAOyrD,WAAWma,kBAAoB,GAA6C,IAAxCp1E,EAAOzB,WAAW62E,mBACpEp1E,EAAOwP,OAAOyrD,WAAWqa,SAAW,GAAoC,IAA/Bt1E,EAAOzB,WAAWqhF,YAE5D5/E,EAAOrF,MAAMoqF,2BAA4B,IApG7Ct0C,iBACE,IAAIpO,EAAWg4C,EAAajkF,SAASisC,SACrCriC,EAAOzB,WAAWsjC,SAAWQ,EAC7BsM,EAAkB39B,8BAA8BqxB,GAEhDriC,EAAOnL,QAAU8gE,EAAe9gE,UAChCmL,EAAOinF,kBA0UAtlF,EAASulF,iBAAiBC,mCAAqCrC,IAzUtE9kF,EAAOonF,gCA6UAzlF,EAASulF,iBAAiBG,2CAA6CvC,IA3U9EzL,EAAOv4E,MACL,IACA,SAAU3V,GACR6U,EAAOsnF,iBAAmBn8F,EAAE2wE,QAAQ76D,MAAK,CAACsmF,EAAMC,IACvCD,EAAK9vF,KAAKy7D,cAAcs0B,EAAK/vF,WAGxC,SAAUnO,GACR+rB,EAAcxc,MAAM,UAAWvP,EAAG,iCAItC,IAAIssB,EAAW5V,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACjDogD,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAClDN,EAAenQ,SAAsB,sBAAb3vC,GAAiD,sBAAbA,GAAkC,EAAoB,sBAAbA,GAAoCogD,GAAc,MACpJpvD,MAAK,SAAiB2+C,GACrBA,EAAS/2D,KAAK,CAAEiJ,KAAM,cACtBuI,EAAO6nD,kBAAoBtC,EAAStkD,MAAK,CAAC+xD,EAAGC,IAAMD,EAAEv7D,KAAKy7D,cAAcD,EAAEx7D,QAEtE,IAAO8tD,EAAU,CAAE9tD,KAAM,UAC3BuI,EAAOwP,OAAOyrD,WAAWC,YAAc,UAG1CxT,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAGxCsxB,EAAUl2B,MACR,IACA,SAAU3V,GACR,IAAI+6C,EAAa/6C,EACjB6U,EAAOynF,kBAAoBvhD,EAC3BlmC,EAAO0nF,UAAY,IAAM1nF,EAAQ,mCAAmC,GACpEA,EAAO2nF,WAAa,IAAM3nF,EAAQ,mCAAoC,IAClEq6E,EAAajkF,SAAS0/B,KApF9BkB,EAAUztB,IAAI,CAAErgB,GAAImxF,EAAajkF,SAAS0/B,OACvC8a,SAAShqC,MAAK,SAAiBzb,GAC9B,IA6BAy8F,EA7BIpG,EAAgB,IAAI3Z,EAAAA,0BAA0B18E,GAC9Cq2F,EAAct8C,iBAAmBs8C,EAAct8C,gBAAgBjmC,SACjEe,EAAOzB,WAAWg8E,kBAAkBsN,sBAAuB,GAE7D7nF,EAAOwhF,cAAgBA,EACvBxhF,EAAOrF,MAAMkrB,KAAO,YACpB7lB,EAAOwP,OAASssE,EAAgBgM,oBAAoBtG,EAAcp1B,OA/NlEpsD,EAAOwP,OAAO48D,MAChBpsE,EAAOwP,OAAO48D,IAAM0P,EAAgBiM,qBAAqB/nF,EAAOwP,OAAO48D,KACvEpsE,EAAOzB,WAAWuiF,QAAU,YAK1B,IAAM9gF,EAAOwP,OAAQ,gBACS,MAA5BxP,EAAOwP,OAAO68D,aAChBrsE,EAAOwP,OAAO68D,WAAa,IAE7BrsE,EAAOzB,WAAWyiF,eAAiB,YA2OjC4G,EApByBz8F,EAoBN8vE,WAAWkoB,UAClCnjF,EAAOzB,WAAWoxE,cAAgBiY,EAAUhyF,KAC5CoK,EAAOzB,WAAWqxE,cAAgB,IAAMgY,EAAUppC,QAAQ,SAAUjwD,EAAOG,GACzE,MAAO,CACLA,KAAMA,EACNH,MAAOA,MA5Ob,WACE,MAAMoR,EAAWm8E,EAAgBkM,oBAAoBhoF,EAAOwP,OAAOyrD,WAAWinB,cAC9EliF,EAAOwP,OAAOyrD,WAAWinB,aAAeviF,EAkNpCsoF,GA/MN,SAAkC98F,GAChC,IAAK,IAAIihC,KAAKjhC,EAAEowE,OACd,GAAI,GAAG9wE,eAAeC,KAAKS,EAAEowE,OAAQnvC,GAAI,CACvC,IAAIovC,EAAQrwE,EAAEowE,OAAOnvC,GACjBo6B,EAAS,CACX7xD,KAAM6mE,EAAM5lE,KACZlH,KAAM8sE,EAAM/jE,MAAQ+jE,EAAMC,OAC1BC,cAAeF,EAAMG,YACrB99B,UAAuB,IAAb29B,EAAMI,IAElB57D,EAAOzB,WAAWu9D,QAAQttE,KAAKg4D,IAsM/B0hC,CAAyB/8F,GA3L/B,SAAwCA,GAWtC,GAVA6U,EAAOwP,OAAO2rD,iBAAmB,CAC/BC,gBAAiB,IAGC,YADFjwE,EAAE8vE,WAAWC,cAE7Bl7D,EAAOwP,OAAOyrD,WAAWC,YAAc,SAClC,IAAOl7D,EAAO6nD,kBAAmB,CAAEpwD,KAAM,aAC5CuI,EAAOwP,OAAOyrD,WAAWC,YAAc,QAGwB,IAA/Dl7D,EAAOwP,OAAOyrD,WAAWC,YAAYzqE,QAAQ,cAAqB,CACpE,IAAI03F,EAAenoF,EAAOwP,OAAOyrD,WAAWC,YAAY/0C,MAAM,eAAe,GAE7E,IAAK,IAAIzP,KADT1W,EAAOwP,OAAOyrD,WAAWC,YAAc,YACzBl7D,EAAOynF,kBACfznF,EAAOynF,kBAAkB/wE,GAAGvf,IAAMgxF,IACpCnoF,EAAOzB,WAAW2iF,iBAAmBlhF,EAAOynF,kBAAkB/wE,IAgBpE,GAZA1W,EAAO8mF,8BAAgCp9F,OAAOD,KAAK0B,EAAEi6C,gBAAgBC,UAAUh7C,QAAU,EACrFc,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,cAClD/vE,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aAAammB,aAC/Dl2F,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aAAammB,WAAWzhC,cAC9E5/C,EAAOzB,WAAW+iF,KAAOn2F,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aAAammB,WAAWzhC,aAEnGz0D,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aAAammB,WAAWxhC,cAC9E7/C,EAAOzB,WAAWgjF,KAAOp2F,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aAAammB,WAAWxhC,cAI3G7/C,EAAOwP,OAAO2rD,iBAAiBC,gBAAgBp7D,EAAOwP,OAAOyrD,WAAWC,aAAe/vE,EAAEi6C,gBAAgBC,SAASrlC,EAAOwP,OAAOyrD,WAAWC,aACvIxxE,OAAOD,KAAK0B,EAAEi6C,gBAAgBC,UAAUh7C,OAAS,EAAG,CACtD,IAAI+9F,EAAej9F,EAAEi6C,gBAAgBC,SAAS37C,OAAOD,KAAK0B,EAAEi6C,gBAAgBC,UAAU,IACtFrlC,EAAOwP,OAAO2rD,iBAAiBC,gBAAgBp7D,EAAOwP,OAAOyrD,WAAWC,aAAektB,EACvFpoF,EAAO2kF,cAAgBnkF,QAAQu0D,KAAK5pE,EAAEi6C,gBAAgBC,iBAC/CrlC,EAAO2kF,cAAcj7F,OAAOD,KAAK0B,EAAEi6C,gBAAgBC,UAAU,IAYtE,GAVArlC,EAAOzB,WAAWuhD,WAAa30D,EAAEqzD,OAAOsB,WAEpC30D,EAAE8vE,WAAW2mB,KAAOz2F,EAAE8vE,WAAW2mB,IAAI,KACvC5hF,EAAOzB,WAAWmjF,WAAav2F,EAAE8vE,WAAW2mB,IAAI,GAC5Cz2F,EAAE8vE,WAAW2mB,IAAI,KACnB5hF,EAAOzB,WAAWojF,aAAex2F,EAAE8vE,WAAW2mB,IAAI,KAKlD5hF,EAAOwP,OAAOyrD,WAAW4mB,WAAY,CAEvC,IADA,IAAIwG,EAAaroF,EAAOwP,OAAOyrD,WAAW4mB,WACjC13F,EAAI,EAAGA,EAAIk+F,EAAWh+F,OAAQF,IAAK,CAC1C,IAAIy3C,EAAOymD,EAAWl+F,GACtB6V,EAAOzB,WAAWsjF,WAAWrzF,KAAK,CAAED,MAAOqzC,IAE7C5hC,EAAOwP,OAAOyrD,WAAW4mB,WAAa,IAsIpCyG,CAA+Bn9F,GAjInC6U,EAAOzB,WAAWguE,IAAMgW,EAAAA,oBAAiCviF,EAAOwP,OAAO+8D,KAGzE,WACE,IAAK,IAAIgc,KAAKvoF,EAAOwP,OAAOg2B,QACtB,IAAG/6C,eAAeC,KAAKsV,EAAOwP,OAAOg2B,OAAQ+iD,IAC/CvoF,EAAOzB,WAAWinC,OAAOh3C,KAAK,CAAEE,KAAM65F,EAAGh6F,MAAOyR,EAAOwP,OAAOg2B,OAAO+iD,KA6HrEC,GAvHAxoF,EAAOwP,OAAO+gE,WAAavwE,EAAOwP,OAAOkvE,IAC3C1+E,EAAOzB,WAAW4jF,QAAU,QAClBniF,EAAOwP,OAAO+gE,WAAavwE,EAAOwP,OAAOkvE,IACnD1+E,EAAOzB,WAAW4jF,QAAU,MACnBniF,EAAOwP,OAAO+gE,YAAcvwE,EAAOwP,OAAOkvE,IACnD1+E,EAAOzB,WAAW4jF,QAAU,cAClBniF,EAAOwP,OAAO+gE,WAAcvwE,EAAOwP,OAAOkvE,MACpD1+E,EAAOzB,WAAW4jF,QAAU,QAIhC,WACE,IAAI51C,EAAO,GACX,IAAK,IAAIk8C,KAAOzoF,EAAOwP,OAAOyrD,WAAW0nB,QACvC,GAAI,GAAGl4F,eAAeC,KAAKsV,EAAOwP,OAAOyrD,WAAW0nB,QAAS8F,GAAM,CACjE,IAAIC,EAAS1oF,EAAOwP,OAAOyrD,WAAW0nB,QAAQ8F,GAC9Cl8C,EAAK/9C,KAAK,CAAEo0F,WAAY8F,EAAO5F,WAAYD,gBAAiB6F,EAAO3F,kBAGvE/iF,EAAOwP,OAAOyrD,WAAW0nB,QAAUp2C,EAsG/Bo8C,GAnGN,WACE,MAAMxE,EAAgB,IAAOnkF,EAAOwP,OAAOyrD,WAAWipB,gBAAgB,SAAU76F,GAC9E,MAAoB,WAAbA,EAAEq1D,QAAgD,QAAzBr1D,EAAEi7F,aAAa,GAAG,MAEhDH,IACFnkF,EAAOzB,WAAWylF,IAAIvgF,SAAU,EAChCzD,EAAOzB,WAAWylF,IAAI/hC,aAAuC,IAAzBkiC,EAAcC,MAClDpkF,EAAOzB,WAAWylF,IAAIxiC,aAAe2iC,EAAcE,WAAa,GAC5DrkF,EAAOzB,WAAWylF,IAAI/hC,YACxBjiD,EAAOzB,WAAWylF,IAAIxiC,aAAe2iC,EAAcE,UAEnDrkF,EAAOzB,WAAWylF,IAAIxiC,aAAe,CAAC,OAIxCxhD,EAAOzB,WAAWylF,IAAIriC,aAAewiC,EAAcG,aAAa,GAChEtkF,EAAOzB,WAAWylF,IAAM,IAAKhkF,EAAOzB,WAAWylF,MAoF7C4E,GAvEJv3B,EAAgBw3B,uCAAuC7oF,EAAOwP,OAAOsiD,MAAOnwD,EAASxK,IAClFyP,MAAMynC,IACLruC,EAAOzB,WAAW0hF,cAAgB5xC,KAEnCqZ,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAI1C,SAAoCva,GAC9BA,EAAE8vE,WAAWqa,WACft1E,EAAOzB,WAAWqhF,SAAWz0F,EAAE8vE,WAAWqa,SAAW,KAEnDnqF,EAAE8vE,WAAW0S,SACf3tE,EAAOzB,WAAWghF,YAAcp0F,EAAE8vE,WAAW0S,OAAS,KAAO,MAE3DxiF,EAAE8vE,WAAWma,oBACfp1E,EAAOzB,WAAW62E,kBAAoBjqF,EAAE8vE,WAAWma,kBAAoB,KAAO,MAwD5E0T,CAA2B39F,GApDjC,SAAuCA,GAYrC,SAAS49F,EAAc9pD,GACrB,OAAOA,EAAK8nB,aAAeI,EAAIJ,WAZ7B57D,EAAE8vE,WAAWuoB,QACfr4F,EAAE8vE,WAAWuoB,OAAO/gF,SAAQ,SAAU0kD,GACpCnnD,EAAOzB,WAAWojD,aAAanzD,KAAK,IAAI87E,EAAAA,oBAAoBnjB,GAAK,OAGjEh8D,EAAE8vE,WAAWwoB,SACft4F,EAAE8vE,WAAWwoB,QAAQhhF,SAAQ,SAAU0kD,GACrCnnD,EAAOzB,WAAWojD,aAAanzD,KAAK,IAAI87E,EAAAA,oBAAoBnjB,GAAK,OASrE,IADA,IAAIxF,EAAe,IAAI0oB,EAAAA,sBACdlgF,EAAI,EAAGA,EAAIw3D,EAAat3D,OAAQF,IAAK,CAC5C,IAAIg9D,EAAMxF,EAAax3D,GAClB,IAAO6V,EAAOzB,WAAWojD,aAAconC,IAC1C/oF,EAAOzB,WAAWojD,aAAanzD,KAAK24D,GAIxCnnD,EAAOzB,WAAWojD,aAAa1gD,MAAK,SAAU+xD,EAAGC,GAC/C,OAAOD,EAAEjM,WAAakM,EAAElM,YAAc,EAAI,KA4BxCiiC,CAA8B79F,GAnFpC,WACE,IAAK,IAAIi7B,KAAKpmB,EAAOwP,OAAOyrD,WAAW2oB,SACjC,IAAGn5F,eAAeC,KAAKsV,EAAOwP,OAAOyrD,WAAW2oB,QAASx9D,IAC3DpmB,EAAOzB,WAAWqlF,QAAQp1F,KAAK,CAAEE,KAAM03B,EAAG73B,MAAOyR,EAAOwP,OAAOyrD,WAAW2oB,QAAQx9D,KAiFlF6iE,MAEDvhC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oCA6DlC1F,EAAOwhF,cAAgB,GACvBxhF,EAAOzB,WAAWojD,aAAe3hD,EAAOonF,gCAAkC,IAAI/c,EAAAA,sBAA0B,OAG5G,SAAU/gF,GACR+rB,EAAcxc,MAAM,UAAWvP,EAAG,4CAItCmqD,EAAc3lC,OACXlH,MAAK,SAAiBvX,GACrB2Q,EAAOkpF,kBAAoB75F,EAAK85F,SAAWz/F,OAAOD,KAAK4F,EAAK85F,UAAY,GACxEnpF,EAAOrF,MAAMyuF,aAAe,GACxB/5F,EAAKg6F,OACPrpF,EAAOrF,MAAMyuF,aAAe/5F,EAAKg6F,MAEnCrpF,EAAOrF,MAAM2uF,gBAAkB,MAC3Bj6F,EAAKk6F,WACPvpF,EAAOrF,MAAM2uF,gBAAkB5hF,KAAKwf,MAAM73B,EAAKk6F,SAAW,IAAO,SAGpE7hC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,wCAGxC1F,EAAOwpF,gBAAkB1E,KAAiCnjF,EAASulF,iBAAiBuC,+BACpFzpF,EAAO0pF,oBAAsB5E,KAAiCnjF,EAASulF,iBAAiByC,mCACxF3pF,EAAO4pF,YAAc9E,KAAiCnjF,EAASulF,iBAAiB2C,kCAEhFxK,EAAczG,eAAe5iB,EAAa,MAAMpvD,MAAK,SAAiBkjF,GACpE9pF,EAAO+pF,wBAA0BD,KA+QrC9K,O,oOClmCJx+E,QAAQ5W,OAAO,oBAAoBkW,WAAW,sBAAuB,CACnE,KACA,SACA,SACA,eACA,UACA,SACA,SACA,kBACA,mBACA,cACA,iBACA,gBACA,eACA,yBACA,kBACA,eACA,oBACA,iBACA,eACA,WACA,iBACA,gBACA,YACA,SACE4e,EACA1e,EACAszC,EACA+mC,EACA+E,EACAt0C,EACAk/C,EACAlO,EACAvF,EACAnlB,EACAsE,EACArgD,EACAi3B,EACA2sC,EACA5nB,EACAC,EACA3iB,EACAgnB,EACAnmB,EACA7tC,EACAsqD,EACAg+B,EACAh6D,GAEAjwB,EAAOrK,aAAeK,EAAAA,EAAAA,UACtBgK,EAAO2B,SAAWA,EAClB3B,EAAOnL,QAAU8gE,EAAe9gE,UAChCmL,EAAOkqF,aAAe,EACtBlqF,EAAO+7D,aAAe,GACtB/7D,EAAOmqF,uBAAwB,EAC/BnqF,EAAOoqF,sBAAuB,EAC9BpqF,EAAOqqF,eAAgB,EACvBrqF,EAAOsqF,WAAa,KACpBtqF,EAAOuqF,UAAY,KACnBvqF,EAAOkiC,UAAY,KAEnBliC,EAAOwP,OAAS,CACdywE,cAAe,IAAI3R,EAAAA,sBACnBkc,kBAAkB,GAGpBxqF,EAAOrF,MAAQ,CACb8vF,6BAA6B,EAC7BC,uBAAuB,EACvBC,wBAAwB,EACxB3F,mBAAmB,GAGrBhlF,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAG5DhK,EAAO4qF,sBAAwB,SAAUC,GACvC,OAAKl1B,EAAezrD,kBAAkB,CAAC,4BAInC2gF,GACM7qF,EAAOkK,kBAAkB,CAAC,4BAE5BlK,EAAOkK,kBAAkB,CAAC,6BAGpClK,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMqqF,kBAAoBgB,GAGnChmF,EAAO8qF,gBAAkB,SAAUrnF,GACjCzD,EAAOE,YAAW,KAChBF,EAAO+qF,cAAc/qF,EAAOkiC,WAAW,GACvCliC,EAAOqqF,cAAgB5mF,MAI3BzD,EAAOwnD,oBAiYP,SAA6BguB,EAAejuB,GAG1C,OAFAA,EAAsC,eAAlBiuB,EAAiCjuB,OAAoB9qD,EAElE85E,EAAiB/uB,oBAAoBxnD,EAAOkiC,UAAU/qC,GAAIq+E,EAAejuB,GAAmB3gD,MAEnG,WACE5G,EAAOkiC,UAAU+4B,WAAWgU,cAAgB,CAC1Cx3E,KAAM+9E,EACNE,kBAAmBnuB,GAErBlyC,EAAcF,QAAQ,UAAW,6BAPsFuyC,OAUzH,SAAuBhiD,GAErB,OADA2P,EAAcxc,MAAM,UAAW6M,EAAK,mCAC7BgZ,EAAG/E,OAAOjU,OA/YrB1F,EAAO+qF,cAAgB,SAAuB7oD,EAAW8oD,GAClDhrF,EAAOqqF,eAAiBW,IAAehrF,EAAOqqF,gBAAkBW,EACnEtK,EAAcx+C,GACLliC,EAAOqqF,eAChBp+B,EAAeY,cAAc7sD,EAAOuqF,WACjC3jF,MAAK,WACJ5G,EAAOsqF,WAAa,KACpBtqF,EAAOuqF,UAAY,QAEpB7iC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAK5C1F,EAAOirF,YAAc,WACnBh7D,EAAUL,SAAS5vB,EAAOsqF,YAC1Bn2C,EAAE,qBAAqB+gB,OACvB/gB,EAAE,qBAAqBghB,QAAQ,MAGjC,MAAMurB,EAAgB,SAAUx+C,GAE9B,MAAMu+C,EAAa,IAAMzgF,EAAOwP,OAAOywE,cAAe,cAAe,GACrEh0B,EAAey0B,cAAcx+C,EAAU/qC,GAAIwK,EAASxK,GAAIspF,EAAY,GACjE75E,MAAK,SAAiBvX,GACrB2Q,EAAOqqF,eAAgB,EACvBrqF,EAAOuqF,UAAYl7F,EAAK8H,GACxB6I,EAAOsqF,WAAaL,EAAciB,iBAAiB77F,EAAK87F,UAEzDzjC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAI1C1F,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAOorF,wBAA0B,KAC/B,MAAMrH,EAAa,IAAO/jF,EAAOkiC,UAAU+4B,WAAWipB,gBAAgB,SAAU76F,GAC9E,MAAoB,WAAbA,EAAEq1D,QAAgD,QAAzBr1D,EAAEi7F,aAAa,GAAG,MAEpD,IAAKP,EACH,MAAO,sBAET,IAAIsH,EAAS,MAOb,OAN0B,IAAtBtH,EAAWK,QACbiH,EAAU,WAAU,IAAOtH,EAAWM,UAAW,SAK3C,GAAEgH,mBADsB,IAAOtH,EAAWO,aAAa,GAAI,SAIrE,IAAI93B,EAAS,WACX,IAAInqB,EAAWg4C,EAAajkF,SAASisC,SACrCsM,EAAkB39B,8BAA8BqxB,GAChDriC,EAAOqiC,SAAWA,EAElBk0C,EAAiBr0C,UAAUm4C,EAAajkF,SAASlN,IAC9C0d,MAAK,SAAiBvX,GACrB,IAAI6yC,EAAY7yC,EAChB2Q,EAAOkiC,UAAYA,EACnBliC,EAAOkiC,UAAUopD,MAAO,EACxBtrF,EAAOkiC,UAAUqpD,iBAAmBnM,EAAQ,oBAARA,CAA6Bl9C,EAAUzqC,MAEvEyqC,EAAUoY,MAAMgd,QAClBt3D,EAAOkqF,aAAeliE,IAAAA,SAAgBA,GAAAA,CAAOka,EAAUoY,MAAMkxC,WAAWC,MAAMpjE,KAAKL,GAAAA,GAASyjE,QAAQC,WAChE,YAA3BxpD,EAAUoY,MAAMz2C,OACzB7D,EAAOkqF,aAAeliE,IAAAA,SAAgBA,GAAAA,CAAOka,EAAUujC,SAASgmB,MAAMpjE,KAAKL,GAAAA,GAASyjE,QAAQC,WAE5F1rF,EAAOkqF,aAAeliE,IAAAA,SAAgBA,GAAAA,GAASyjE,MAAMpjE,KAAKL,GAAAA,CAAOka,EAAUoY,MAAMqxC,YAAYF,QAAQC,WAGvG1rF,EAAO+7D,aAAe,GAClB75B,EAAUkD,gBAAgBM,OAC5B,IAAUh8C,OAAOD,KAAKy4C,EAAUkD,gBAAgBM,QAAQ,SAAUn7C,GAC5D23C,EAAUkD,gBAAgBM,MAAMn7C,IAClC,IAAU23C,EAAUkD,gBAAgBM,MAAMn7C,IAAOqhG,IAC/C,MAAMC,EAAU,GAChBA,EAAQ3pD,UAAY33C,EACpBshG,EAAQjqD,KAAQ,GAAEgqD,EAAYlvB,UAAUkvB,EAAYjvB,WACpD38D,EAAO+7D,aAAavtE,KAAKq9F,SAMjC7rF,EAAOkiC,UAAUsc,OAAO+tB,IAAM,IAASvsE,EAAOkiC,UAAUsc,OAAO+tB,IAAjC,KAC9B,MAAMuf,EAAU9rF,EAAOkiC,UAAUsc,OAAOhZ,OAAO,+BACzCumD,EAAa/rF,EAAOkiC,UAAU+4B,WAAWoqB,WACzC2G,EAAQr2B,EAAe9gE,WACvB,0CACJwyF,EADI,kCAEJ4E,EAFI,kCAGJ9E,EAHI,kCAIJ+E,EAJI,+BAKJzC,EALI,mCAMJE,GACEhoF,EAASulF,iBAEPiF,IACH9E,GACAoC,GACAtC,GACA+E,GACAD,GACAtC,GAIH,OAFA3pF,EAAOmqF,uBAAyB2B,IAAYC,IAAeC,IAAUG,GACrEnsF,EAAOoqF,qBAAuBpqF,EAAOmqF,sBAC9BzrE,EAAGxB,IAAI,CACZ0vC,SAAUX,EAAeW,SAAS1qB,EAAU/qC,GAAIwK,EAASxK,SAG5DyP,MAAK,SAAiBvX,GACrB,GAAIA,EAAKu9D,SAASviE,OAAS,EAAG,CAC5B,MAAM+hG,EAAU/8F,EAAKu9D,SAAS,GAC9B5sD,EAAOqqF,eAAgB,EACvBrqF,EAAOuqF,UAAY6B,EAAQj1F,GAC3B6I,EAAOsqF,WAAaL,EAAciB,iBAAiBkB,EAAQjB,WAG9DzjC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCAI1C,SAAS2mF,EAAuBnjG,EAAIoG,EAAQqsD,EAAgBC,GAC1DtsD,EAAOpG,GACJ0d,MAAK,WACJyO,EAAcF,QAAQwmC,EAAgBzyD,GACtCsjE,OAED9E,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAKk2C,MAsF1CnL,eAAe67C,IACbtsF,EAAOwP,OAAOg7E,kBAAmB,EACjC,MAAM5T,EAAgB52E,EAAOwP,OAAOywE,cAC9B8B,EAAc3wB,EAAY+M,8BAA8ByY,GAC9D,UACQoT,EAAOvX,gBAAgB,CAAEvpF,GAAImxF,EAAajkF,SAASlN,GAAIwpF,KAAMqP,EAAY3jB,YAAaxtB,SAC5Fv7B,EAAcF,QAAQ,gBAAiBklE,EAAajkF,SAASlN,IAC7DoqD,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0BACpC1F,EAAOwP,OAAOg7E,kBAAmB,GA5FrCxqF,EAAOe,MAAQ,WAGbsrF,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiBpyC,eAF7C,iCACF,8BAIrBnkC,EAAOusF,KAAO,WAGZF,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiBhyC,cAF7C,iCACF,6BAIrBvkC,EAAOwsF,KAAO,WAGZH,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiB9xC,cAF7C,gCACF,6BAIrBzkC,EAAOysF,MAAQ,WAGbJ,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiB7xC,eAF7C,gCACF,8BAIrB1kC,EAAO0sF,QAAU,WAGfL,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiB5xC,gBAF7C,iCACF,+BAIrB3kC,EAAO2sF,QAAU,WAGfN,EAAuBhS,EAAajkF,SAASlN,GAAIqtF,EAAiB/xC,iBAF7C,mCACF,gCAIrBxkC,EAAO4kC,gBAAkB,WACvB,IAAI1C,EAAYliC,EAAOkiC,UACvBq0C,EAAiB3xC,gBAAgBy1C,EAAajkF,SAASlN,GAAIg5C,EAAUqpD,kBAClE3kF,MAAK,WACJs7B,EAAUzqC,KAAOyqC,EAAUqpD,iBAC3Bl2E,EAAcF,QAAQ,iCAAkC+sB,EAAUzqC,SAEnEiwD,OAAM,SAAehiD,GACpBw8B,EAAUqpD,iBAAmBrpD,EAAUzqC,KACvC4d,EAAcxc,MAAM,UAAW6M,EAAK,iCAErConD,SAAQ,WACP9sD,EAAOkiC,UAAUopD,MAAO,MAI9BtrF,EAAO4sF,sBAAwB,SAA+B1qD,EAAW0b,GACvE59C,EAAOrF,MAAMgwF,wBAAyB,EACtCj1B,EAAe/V,oBAAoB/B,EAAW1b,EAAU/qC,IAAI,GACzDyP,MAAK,WACJyO,EAAcF,QAAQ,yBAA0B+sB,EAAU/qC,IAC1Dm8C,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kDAErConD,SAAQ,WACP9sD,EAAOrF,MAAMgwF,wBAAyB,MAI5C3qF,EAAO6sF,qBAAuB,SAA8B3qD,EAAW0b,GACrE59C,EAAOrF,MAAM+vF,uBAAwB,EACrCh1B,EAAemvB,iBAAiBjnC,EAAW1b,EAAU/qC,IAClDyP,MAAK,WACJyO,EAAcF,QAAQ,2BAA4B+sB,EAAU/qC,IAC5Dm8C,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6CAErConD,SAAQ,WACP9sD,EAAOrF,MAAM+vF,uBAAwB,MAkB3C1qF,EAAO8sF,OAAS,WACd,OAAOhiD,EAAOwhD,IAGhBtsF,EAAO+sF,cAAgB,WACrB,IAAIj0F,EAAQ,uCACRkH,EAAOkiC,UAAUoY,MAAMgd,UACzBx+D,EAAQ,iDAGVsa,EAAAA,EAAAA,IAAyBta,GAAO,SAAUma,GACxC,GAAKA,EAAL,CAGA,IAAI+5E,GAAyB,EACzB/5E,EAAO,KACT+5E,GAAyB,GAM/B,SAAyBA,GACvBzW,EAAiBloE,OAAOrO,EAAOkiC,UAAW8qD,GACvCpmF,MAAK,WACJ,OAAO8X,EAAGupB,KAAKjoC,EAAOuqF,WAAat+B,EAAeY,cAAc7sD,EAAOuqF,eAExE3jF,MAAK,WACJyO,EAAcF,QAAQ,UAAW,kCACjCm+B,EAAOr8B,GAAG,oBAAqB,GAAI,CAAE6U,QAAQ,OAE9C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAdtCm/B,CAAgBmoD,QAmHpBhtF,EAAOgrF,SAAW,WAChB,MAAMx3E,GAAmBxT,EAAOkiC,UAAUsc,OAAOsT,OAAS9xD,EAAOkiC,UAAUsc,OAAOsT,MAAMxhE,cAAck2B,WAAW,UACjH8lB,EAAa/4B,2BAA2BC,GAAiB,SAAUP,GACjE,GAAKA,EAAL,CAGA,IAAI+5C,GAAY,EACZ/5C,EAAO,KACT+5C,GAAY,GAzGlB,SAA2BA,GACzB,IAAI9qB,EAAYliC,EAAOkiC,UACnB1yB,EAASssE,EAAgBgM,oBAAoB5lD,EAAUkqB,OAC3DpsD,EAAOrF,MAAM8vF,6BAA8B,EAC3C,IAAIwC,EAAY/qD,EAAUoY,MAAMgd,SA8BzBtK,EAGEqE,EAAgBw3B,uCAAuC3mD,EAAUsc,OAAOsT,MAAOnwD,EAASxK,IAAIyP,MAAMgwE,GAChGtlB,EAAatE,UAAU4pB,GAAe,KAHtCl4D,EAAGupB,QA5BXrhC,MAWH,WACE,OAAKqmF,EAGE1W,EAAiBhyC,cAAcrC,EAAU/qC,IAFvCunB,EAAGupB,UAZXrhC,MAiBH,WACE,OAAO2vE,EAAiB3xC,gBAAgB1C,EAAU/qC,GAAI+qC,EAAUzqC,KAAO,WAjBtEmP,MAiCH,WACE,IAAI2+C,EAAW/1C,EAAO2rD,iBAAiBC,gBACnC8xB,EAAgBxjG,OAAOD,KAAK87D,GAKhC,OAJI2nC,EAAc7iG,OAAS,IACzBmlB,EAAO2rD,iBAAiBC,gBAAkB,GAC1C5rD,EAAO2rD,iBAAiBC,gBAAgB8xB,EAAc,IAAM3nC,EAAS,IAEhE7mC,EAAGxB,IAAI,CAACq5D,EAAiBX,gBAAgBpmE,GAAS+1C,OAvCxD3+C,MA0CH,SAAyCumF,GACvC,IAAI1I,EAAe0I,EAAoB,GACnC5nC,EAAW4nC,EAAoB,GAE/BvI,EADgBl7F,OAAOD,KAAK87D,GACOx8D,KAAI,SAA0B2F,GACnEgnE,EAAemvB,iBAAiBn2F,EAAM+1F,EAAattF,OAErD,OAAOunB,EAAGxB,IAAI0nE,GAAoBh+E,MAAK,WACrC,OAAO69E,QAjDR79E,MAiBH,SAAyBs7B,GAEvB,OADAliC,EAAO+qF,cAAc7oD,GAAW,GACzBA,KAlBNt7B,MA0DH,SAAgC69E,GAC9B,OAAKwI,EAGE1W,EAAiBpyC,eAAesgD,EAAattF,IAAIyP,MAAK,WAC3D,OAAO69E,KAHA/lE,EAAGupB,KAAKw8C,MA3DhB79E,MAkEH,SAA+B69E,GAC7B,MAAMnoE,EAASq5C,EAAegmB,iBAAiBvmD,GACzCg4D,EAAqBlrD,EAAUgD,gBAC/BmoD,EAAqB5I,EAAax/C,UAAUC,gBAClD,OAAO+zC,EAAuBqU,yBAAyBhxE,EAAQ8wE,EAAoBC,MArElFzmF,MAkDH,SAA4B69E,GAC1B,OAAOlO,EAAiBloE,OAAO6zB,GAAW,GAAMt7B,MAAK,WACnD,OAAO69E,QAnDR79E,MAuEH,WACEyO,EAAcF,QAAQ,UAAW,qCACjCm+B,EAAOr8B,GAAG,oBAAqB,GAAI,CAAE6U,QAAQ,OAxE5C47B,OA2EH,SAAuBhiD,GACrB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCACpC1F,EAAOrF,MAAM8vF,6BAA8B,KAc3C8C,CAAkBvgC,QAuBtB,IAAIp3C,EAAW5V,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACjDogD,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAClDN,EAAenQ,SAAsB,sBAAb3vC,GAAiD,sBAAbA,GAAkC,EAAoB,sBAAbA,GAAoCogD,GAAc,MACpJpvD,MAAK,SAAiBvX,GACrB,IAAIk2D,EAAWl2D,EACf2Q,EAAO6nD,kBAAoBtC,KAE5BmC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAGxC8mD,Q,iBCzgBJhsD,QAAQ5W,OAAO,oBAAoBkW,WAAW,6BAA8B,CAC1E,SACA,eACA,gBACA,mBACA,oBACA,SAAUE,EAAQq6E,EAAchlE,EAAekhE,EAAkB5nC,GAC/D3uC,EAAOrF,MAAQ,CACb6yF,iBAAiB,GAEnBxtF,EAAOytF,cAAgB,GAGrB9+C,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UACtEk0C,EAAiBxD,QAAQsH,EAAajkF,SAASlN,IAC5C0d,MAAK,SAAiBzb,GACrB6U,EAAOytF,cAAgBtiG,KAExBu8D,OAAM,SAAep+D,GACpB+rB,EAAcxc,MAAM,UAAWvP,EAAG,sC,iECjB5CkX,QAAQ5W,OAAO,oBAAoBkW,WAAW,0BAA2B,CACvE,SACA,eACA,YACA,mBACA,gBACA,oBACA,SAAUE,EAAQq6E,EAAc9mC,EAAWgjC,EAAkBlhE,EAAes5B,GAoB1E,SAAS++C,IACP,IAAIC,EAAW3tF,EAAO2tF,SAClBntF,QAAQotF,UAAUD,KACpBp6C,EAAU7gC,OAAOi7E,GACjBA,EAAW,MAIf,SAASE,EAAkBpsB,GACzB,IAAIqsB,EAAc9tF,EAAOrF,MAAMmzF,YAC/B9tF,EAAO2tF,SAAWp6C,GAAU,WAC1BgjC,EAAiBvV,KACfqZ,EAAajkF,SAASlN,GACtB,EACA,EACA8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EACrC7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OACpC/tF,EAAOrF,MAAMq5D,UACbyN,GAEC76D,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,KAEfq4D,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,0CAEzB,IAAdooF,GA9CL9tF,EAAOrF,MAAQ,CACbmzF,YAAa,EACb95B,UAAW,IACXD,eAAgB,GAChBF,mBAAmB,GAGrB7zD,EAAOguF,oBAAsB,SAAUC,GAChCA,EAGHJ,GAAmB7tF,EAAOkiC,UAAUsc,OAAOkgC,KAF3CgP,KAMJ1tF,EAAO49E,IAAI,YAAY,WACrB8P,OA8CA/+C,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UACtEk0C,EAAiBr0C,UAAUm4C,EAAajkF,SAASlN,IAC9C0d,MAAK,SAAiBvX,GACrB,IAhBmBoyE,EAgBfv/B,EAAY7yC,EAChB2Q,EAAOkiC,UAAYA,EAjBAu/B,GAkBFv/B,EAAUsc,OAAOkgC,IAjBtCnI,EAAiBvV,KAAKqZ,EAAajkF,SAASlN,GAAI,EAAG,EAAG8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EAAG7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OAAQ/tF,EAAOrF,MAAMq5D,UAAWyN,GAC/J76D,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,EACdw+F,EAAkBpsB,MAEnB/Z,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,2CAYrCgiD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,mD,4EC9E9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,2BAA4B,CACxE,KACA,SACA,eACA,YACA,YACA,mBACA,eACA,gBACA,oBACA,SAAU4e,EAAI1e,EAAQq6E,EAAc6T,EAAW36C,EAAWgjC,EAAkB4X,EAAc94E,EAAes5B,GAWvG,SAAS++C,IACP,IAAIC,EAAW3tF,EAAO2tF,SAClBntF,QAAQotF,UAAUD,KACpBp6C,EAAU7gC,OAAOi7E,GACjBA,EAAW,MAIf,SAASS,EAAmB7nB,EAAO8nB,GACjC,GAAI9nB,EAAMlhC,SAASh7C,OAAS,EAAG,CAC7B,IAAIs4B,EAAK4jD,EAAMlhC,SAAS,GAAGipD,SACvBC,EAAKhoB,EAAMlhC,SAAS,GAAGmpD,SACvBh9F,EAAQw2B,GAAAA,CAAOu+C,EAAMT,MAAM39C,OAAO,YAEtCgmE,EAAaM,mBAAmBj9F,EAAOmxB,EAAI4rE,EAAIF,IAInD,SAASK,EAAkBnoB,EAAO8nB,GAChC,IAAI78F,EAAQw2B,GAAAA,CAAOu+C,EAAMT,MAAM39C,OAAO,YAEtCgmE,EAAaQ,kBAAkBn9F,EAAO+0E,EAAML,YAAaK,EAAMJ,YAAakoB,GAG9E,SAASO,EAAcroB,EAAO8nB,GAC5B,IAAI78F,EAAQw2B,GAAAA,CAAOu+C,EAAMT,MAAM39C,OAAO,aACf,IAAnBo+C,EAAMsoB,UACRV,EAAaW,cAAct9F,EAAO+0E,EAAMkB,UAAWlB,EAAMoB,WAAY0mB,GAIzE,SAASU,EAAexoB,EAAO8nB,GAC7B,IAAI78F,EAAQw2B,GAAAA,CAAOu+C,EAAMT,MAAM39C,OAAO,YAClC55B,EAAQg4E,EAAMD,UAiBpB,SAAoCC,GAClC,IAAIyoB,EACFzoB,EAAMH,SAAW6oB,WAAWjnE,GAAAA,CAAOu+C,EAAMT,KAAM,kCAAkCopB,UAAYlnE,GAAAA,CAAOu+C,EAAMR,QAAS,kCAAkCmpB,WACnJC,EAAkB,EAItB,OAHIH,EAAgB,IAClBG,EAAkBF,WAAW1oB,EAAMS,qBAAuBT,EAAMG,uBAAyBuoB,WAA2B,IAAhBD,IAE/FG,EAxBuBC,CAA2B7oB,GAK3D,SAAiCA,GAC/B,IAAI8oB,EAAa,EACbC,EAAW/oB,EAAMS,qBAAuBT,EAAMG,sBAC9C6oB,EAAchpB,EAAMW,sBAAwBX,EAAMO,uBAMtD,OAJIyoB,EAAc,GAAOD,EAAW,IAClCD,EAAcC,EAAWC,EAAehpB,EAAMY,SAAW,KAGpDkoB,EAd2DG,CAAwBjpB,GAE1F4nB,EAAasB,eAAej+F,EAAOjD,EAAO8/F,GA+D5C,SAASR,EAAkB6B,EAAcC,EAAUC,EAAaC,GAC9D,IAAI/B,EAAc9tF,EAAOrF,MAAMmzF,YAC/B9tF,EAAO2tF,SAAWp6C,GAAU,WAC1B70B,EAAGxB,IAAI,CACLqpD,MAAOgQ,EAAiBJ,eAAekE,EAAajkF,SAASlN,IAC7D2pF,IAAK0D,EAAiBuZ,aAAazV,EAAajkF,SAASlN,MAExD0d,MAAK,SAAiBvX,GACrB,IAAIk3E,EAAQl3E,EAAKk3E,MACjBvmE,EAAO+vF,YAAc1gG,EAAKwjF,IAC1Bub,EAAmB7nB,EAAOmpB,GAC1BhB,EAAkBnoB,EAAOqpB,GACzBb,EAAexoB,EAAOopB,GACtBf,EAAcroB,EAAOspB,MAEtBnoC,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,gDAEzB,IAAdooF,GA/HL9tF,EAAOrF,MAAQ,CACbmzF,YAAa,IACbkC,yBAAyB,EACzBC,oBAAoB,GAGtBjwF,EAAO49E,IAAI,YAAY,WACrB8P,OA+DF1tF,EAAOkwF,qBAAuB,WAC5B,IAAIR,EAAe1vF,EAAO0vF,aACtBC,EAAW3vF,EAAO2vF,SAClBC,EAAc5vF,EAAO4vF,YACrBC,EAAU7vF,EAAO6vF,QAErBnC,IACAG,EAAkB6B,EAAcC,EAAUC,EAAaC,GACvD17C,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,OAwEhCxmB,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UACtEk0C,EAAiBr0C,UAAUm4C,EAAajkF,SAASlN,IAC9C0d,MAAK,SAAiBvX,GACrB2Q,EAAOkiC,UAAY7yC,KAEpBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+CAGxCwoF,EAAUiC,OAAM,YA9BlB,WACE,IAAIC,EAAkBj8C,EAAE,iBACpBu7C,EAAevB,EAAakC,mBAAmBD,GACnDpwF,EAAO0vF,aAAeA,EAEtB,IAAIY,EAAcn8C,EAAE,aAChBw7C,EAAWxB,EAAaoC,eAAeD,GAC3CtwF,EAAO2vF,SAAWA,EAElB,IAAIa,EAAiBr8C,EAAE,gBACnBy7C,EAAczB,EAAasC,kBAAkBD,GACjDxwF,EAAO4vF,YAAcA,EAErB,IAAIc,EAAav8C,EAAE,YACf07C,EAAU1B,EAAawC,cAAcD,GACzC1wF,EAAO6vF,QAAUA,EA/DnB,SAA0BH,EAAcC,EAAUC,EAAaC,GAC7DnxE,EAAGxB,IAAI,CACLqpD,MAAOgQ,EAAiBJ,eAAekE,EAAajkF,SAASlN,IAC7D2pF,IAAK0D,EAAiBuZ,aAAazV,EAAajkF,SAASlN,MAExD0d,MAAK,SAAiBvX,GACrB,IAAIk3E,EAAQl3E,EAAKk3E,MACjBvmE,EAAO+vF,YAAc1gG,EAAKwjF,IACI,IAA1BtM,EAAMlhC,SAASh7C,SACjB2V,EAAOrF,MAAMq1F,yBAA0B,IAElB,IAAnBzpB,EAAMsoB,WACR7uF,EAAOrF,MAAMs1F,oBAAqB,GAEpC7B,EAAmB7nB,EAAOmpB,GAC1BhB,EAAkBnoB,EAAOqpB,GACzBb,EAAexoB,EAAOopB,GACtBf,EAAcroB,EAAOspB,GACrBhC,EAAkB6B,EAAcC,EAAUC,EAAaC,MAExDnoC,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,8CA2CxCkrF,CAAiBlB,EAAcC,EAAUC,EAAaC,GAcpDgB,U,2NChKD,SAAS7tD,EAAT,GAAgD,IAArBkD,EAAqB,EAArBA,WAChC,OACE,iBAAKr6C,UAAU,aAAf,WACE,4BACE,iBAAKA,UAAU,mCAAf,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,QACLrQ,WAAW6L,EAAAA,EAAAA,GAAK,6BAChB2E,SAAO,IAERy0F,EAAwB5qD,GAN3B,eAQA,iBAAKr6C,UAAU,8BAAf,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,QACLrQ,WAAW6L,EAAAA,EAAAA,GAAK,4BAChB2E,SAAO,IAER00F,EAAwB7qD,GAN3B,kBASF,4BACE,iBAAKr6C,UAAU,mCAAf,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,QACLrQ,WAAW6L,EAAAA,EAAAA,GAAK,6BAChB2E,SAAO,IAER20F,EAAwB9qD,GAN3B,eAQA,iBAAKr6C,UAAU,8BAAf,WACE,SAACuQ,EAAA,EAAD,CACEF,KAAK,QACLrQ,WAAW6L,EAAAA,EAAAA,GAAK,4BAChB2E,SAAO,IAER40F,EAA0B/qD,GAN7B,sBAaR,SAAS4qD,EAAwB5qD,GAC/B,OAAOA,EAAWhpC,QAAO,SAACglC,GAAD,MAAoC,YAArBA,EAAUr+B,UAC/CxZ,OAEL,SAAS0mG,EAAwB7qD,GAC/B,OAAOA,EAAWhpC,QAAO,SAACglC,GAAD,MAAoC,WAArBA,EAAUr+B,UAAqBxZ,OAEzE,SAAS2mG,EAAwB9qD,GAC/B,OAAOA,EAAWhpC,QAAO,SAACglC,GAAD,MAAoC,YAArBA,EAAUr+B,UAC/CxZ,OAEL,SAAS4mG,EAA0B/qD,GACjC,OAAOA,EAAWhpC,QAAO,SAACglC,GAAD,MAAoC,cAArBA,EAAUr+B,UAC/CxZ,O,eCzDE,SAAS6mG,EAAT,GAAqD,IAA1BC,EAA0B,EAA1BA,gBAChC,OACE,iBAAKtlG,UAAU,kBAAf,WACE,SAACuQ,EAAA,EAAD,CAAMF,KAAK,YAAYrQ,WAAW6L,EAAAA,EAAAA,GAAK,eAAgB2E,SAAO,KAC7DqvF,EAAAA,EAAAA,UAASyF,MCThB3wF,IAAAA,OAAe,oBAAoBV,WAAW,sBAAuB,CACnE,SACA,KACA,iBACA,mBACA,eACA,iBACA,gBACA,gBACA,iBACA,eACA,gBACA,eACA,aACA,WACA,SACEE,EACA0e,EACAi3C,EACA4gB,EACAjlB,EACAoE,EACA07B,EACA39C,EACAsY,EACAslC,EACAh8E,EACAm6B,EACA8hD,EACA3vF,GAEA3B,EAAOuxF,wBAA0B,SAAUroG,GACzCsmD,EAAa+hD,wBAAwBroG,IAGvC8W,EAAOq5C,aAAc,EACrBr5C,EAAOwxF,YAAa,EACpBxxF,EAAOyxF,WAAa9vF,EAAS/L,OAASs+C,EAAAA,uBAAAA,8BAAuDvyC,EAAS/L,OAASs+C,EAAAA,uBAAAA,iCAE/Gl0C,EAAO0xF,aAAe,SAAUC,GAC9B,IAAIC,EAAgB,IAAIloG,OACxB,IAAK,IAAIS,EAAI,EAAGA,GAAK6V,EAAO2B,SAASokC,MAAQ,IAAI17C,OAAQF,IACvD,IAAKwnG,EAAUE,IAAI7xF,EAAO2B,SAASokC,KAAK57C,GAAGuE,MAAO,CAChD,IAAIojG,GAAQ,EACZ,IAAK,IAAIC,KAAgBH,EACnB5xF,EAAO2B,SAASokC,KAAK57C,GAAGoE,OAASwjG,IACnCH,EAAcG,IAAiB,EAC/BD,GAAQ,IAGE,IAAVA,IACFF,EAAc5xF,EAAO2B,SAASokC,KAAK57C,GAAGoE,OAAS,GAerD,OAXa7E,OAAOD,KAAKmoG,GAAevnG,OACpC,IACE,IAAMX,OAAOD,KAAKmoG,IAAiBG,IACjC,IAAIC,EAAOJ,EAAcG,GAGzB,OAFAC,GAAQ,OACAD,KAGV,OAEF,QAINthD,iBACE,MAAMwhD,EAAejyF,EAAOy1D,iBAAiB9zD,SAASkkB,KACtD7lB,EAAO2B,SAAWA,EAElB3B,EAAOwxF,iBAmDT/gD,iBAGE,OAFgBklB,EAAe9gE,WAEb8M,EAASulF,iBAAiBgL,qCAAuCv8B,EAAezrD,kBAAkB,CAAC,4BAtD3FioF,GAE1BzzE,EAAGxB,IAAI,CACLgpB,WAAYqwC,EAAiBrwC,WAAW,GACxCkf,OAAQkM,EAAalM,QAAO,GAC5BmB,QAAS6qC,EAAc7qC,UACvBhB,SAAUmQ,EAAenQ,UAAS,GAAM,GAAM,GAC9CK,SAAoC,sBAA1BqsC,EAAar8E,UAA0D,YAAtBq8E,EAAalkG,KAAqBg+D,EAAenG,WAAa,GACzHG,OAAQsrC,EAAatrC,QAAO,EAAgC,sBAA1BksC,EAAar8E,UAA0D,YAAtBq8E,EAAalkG,KAAoB4T,EAASxK,IAC7H2W,KAAM2lC,EAAc3lC,OACpBskF,KAAMd,EAAWc,SAEhBxrF,MAAK,SAAiBvX,GFnFxB,IAAqC62C,ECDAirD,ECqFlCnxF,EAAOkmC,WAAa72C,EAAK62C,WACzBlmC,EAAOqyF,0BFrF2BnsD,EEqF4B72C,EAAK62C,YFpFpE,SAAClD,EAAD,CAAiBkD,WAAYA,KEsF5BlmC,EAAOolD,OAAS/1D,EAAK+1D,OACrBplD,EAAOsyF,0BDzF2BnB,ECyF4C9hG,EAAK+1D,OA6C7E3+C,QAAO,CAAC2W,EAAKq7B,IAAUr7B,EAAMq7B,EAAM+yB,aAAa,IDrIvD,SAAC0lB,EAAD,CAAiBC,gBAAiBA,KC0FjCnxF,EAAOuyF,YAAcljG,EAAKk3D,QAAQl8D,OAClC2V,EAAOwyF,aAAenjG,EAAKk2D,SAASl7D,OACpC2V,EAAOyyF,aAAepjG,EAAKu2D,SAASv7D,OACpC2V,EAAO0yF,WAAarjG,EAAK02D,OAAO17D,OAChC2V,EAAO8N,KAAOze,EAAKye,KAEnB9N,EAAO2yF,WAAa3yF,EAAO0xF,aAAa,IAAI97D,KAC5C51B,EAAO0nF,UAAY,IAAM1nF,EAAQ,mCAAmC,GACpEA,EAAO2nF,WAAa,IAAM3nF,EAAQ,mCAAoC,IACtEA,EAAO4yF,WAAa,MACI,GAApB5yF,EAAO0nF,UAAmB1nF,EAAO4yF,WAAa,OAC7C5yF,EAAO4yF,WAAa5yF,EAAO0xF,aAAa,IAAI97D,IAAI51B,EAAO2nF,aAE5D3nF,EAAO6yF,aAAelxF,EAASmxF,OAAOzoG,OAClC,IACE,IACE,IAAMsX,EAASmxF,QAAS5pG,IACtB,MAAMq7B,EAAMl1B,EAAK+iG,KAAK/9F,MAAMkwB,GAAQA,EAAIptB,KAAOjO,IAC/C,OAAOq7B,EAAMA,EAAI9sB,KAAO,MAE1B0jC,SAEF,MAEF,IACJn7B,EAAOq5C,aAAc7W,EAAAA,EAAAA,mBAAkB7gC,MAExC+lD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAU1Cs5E,O,+FCxIW,MAAM+T,EAEnBloD,YAAYmoD,EAAYloD,EAAQ9qC,EAAQukD,EAAiBlvC,EAAem6B,GACtE5kD,KAAKooG,WAAaA,EAClBpoG,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EACdpV,KAAK25D,gBAAkBA,EACvB35D,KAAKyqB,cAAgBA,EACrBzqB,KAAK4kD,aAAeA,EAEpB5kD,KAAKqoG,eAAiBptF,EAAAA,GAAAA,wBAEtBjb,KAAK2T,WAAa,CAChB20F,8BAA8B,EAC9BC,mCAAmC,EACnCC,kCAAkC,EAClCC,sCAAsC,EACtCC,qCAAqC,EACrCC,uCAAuC,EACvCC,qCAAqC,EACrCC,6CAA6C,EAC7CC,qCAAqC,GAGvC9oG,KAAK41D,SAAU,EAEf51D,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB4T,mBAAoB,CAAEtlB,SAAS,GAC/BulB,SAAU,IAGZhpG,KAAK08D,KAAO18D,KAAK08D,KAAKr9D,KAAKW,MAC3BA,KAAKipG,cAAgBjpG,KAAKipG,cAAc5pG,KAAKW,MAC7CA,KAAKkpG,mBAAqBlpG,KAAKkpG,mBAAmB7pG,KAAKW,MACvDA,KAAKmpG,qCAAuCnpG,KAAKipG,cAAc,gCAC/DjpG,KAAKopG,0CAA4CppG,KAAKipG,cAAc,qCACpEjpG,KAAKqpG,yCAA2CrpG,KAAKipG,cAAc,oCACnEjpG,KAAKspG,6CAA+CtpG,KAAKipG,cAAc,wCACvEjpG,KAAKupG,4CAA8CvpG,KAAKipG,cAAc,uCACtEjpG,KAAKwpG,8CAAgDxpG,KAAKipG,cAAc,yCACxEjpG,KAAKypG,4CAA8CzpG,KAAKipG,cAAc,uCACtEjpG,KAAK0pG,oDAAsD1pG,KAAKipG,cAAc,+CAC9EjpG,KAAK2pG,4CAA8C3pG,KAAKipG,cAAc,uCAGxEC,mBAAmBvlG,GACjB,OAAO3D,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK+P,MAAMg5F,mBAAmBtlB,QAAU9/E,KAI5CyD,SAASC,GACP,OAAOrH,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,MAKT4hG,cAAcW,GACZ,OAAQjmG,IACN3D,KAAKoH,SAAS,CACZ,CAACwiG,GAAQjmG,KAKfkmG,0BACE,MAAM,iCACJrB,EADI,oCAEJE,EAFI,qCAGJD,EAHI,oCAIJG,EAJI,4CAKJC,EALI,oCAMJC,GACE9oG,KAAK2T,WACT,OACE60F,GACAE,GACAD,GACAG,GACAC,GACAC,EAIM,aACR,OAAO9oG,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAWM7wF,EAAW,CACfwlG,iBAZuB,CACvBxB,6BAA8BtoG,KAAK2T,WAAW20F,6BAC9CzJ,gCAAiC7+F,KAAK2T,WAAW60F,iCACjDzJ,oCAAqC/+F,KAAK2T,WAAW80F,qCACrDF,kCAAmCvoG,KAAK2T,WAAW40F,kCACnDlH,mCAAoCrhG,KAAK2T,WAAW+0F,oCACpDnM,mCAAoCv8F,KAAK2T,WAAWi1F,oCACpDtB,qCAAsCtnG,KAAK2T,WAAWg1F,sCACtDlM,2CAA4Cz8F,KAAK2T,WAAWk1F,4CAC5DvH,mCAAoCthG,KAAK2T,WAAWm1F,qCAIpDiB,aAAc/pG,KAAK+P,MAAMg5F,0BAGrB/oG,KAAK25D,gBAAgB1oC,eAAejxB,KAAK+W,SAASxK,GAAIjI,GAE5DtE,KAAK+W,SAASulF,iBAAmBh4F,EAASwlG,iBAC1C9pG,KAAK+W,SAASizF,aAAe1lG,EAASylG,aAGtC/pG,KAAKooG,WAAW6B,WAAW,qBAAsB,CAC/CnlG,SAAU,SACVF,SAAU,CACR,aAAcN,EAASylG,aAAaG,UACpC,WAAY5lG,EAASylG,aAAaI,QAClC,YAAanqG,KAAK+P,MAAMi5F,YAI5BhpG,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtC,MAAO7rB,GACPsB,KAAKyqB,cAAcxc,MAAM,UAAWvP,EAAG,0BAEzCsB,KAAK+P,MAAMolF,kBAAmB,KAIlCiV,aAEE,OADyBpqG,KAAK4kD,aAAakB,WACnB/uC,SAASkkB,KAAK0lC,WAGxCxd,UACE,MAAM2mD,EAAmB9pG,KAAK+W,SAASulF,iBAEjC1mC,EAAU51D,KAAKoqG,aACrBpqG,KAAK41D,QAAUA,EAEf51D,KAAK2T,WAAa,CAChB20F,6BAA8B1yC,GAAWk0C,EAAiBxB,6BAC1DC,kCAAmC3yC,GAAWk0C,EAAiBvB,kCAC/DC,kCAAmCsB,EAAiBjL,+BACpD4J,sCAAuCqB,EAAiB/K,mCACxD2J,qCAAsCoB,EAAiBzI,kCACvDuH,qCAAsCkB,EAAiBvN,kCACvDoM,uCAAwCmB,EAAiBxC,oCACzDuB,6CAA8CiB,EAAiBrN,0CAC/DqM,qCAAsCgB,EAAiBxI,mCAGzDthG,KAAK+P,MAAMg5F,mBAAqB/oG,KAAK+W,SAASizF,c,0KC5JlD,MAAMzpD,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,oBAAoBC,UAAU,kCAAmC,CAC9E2qC,YAAaD,EACbrrC,WAF8E,UAG9EH,SAAU,CACRgC,SAAU,Q,iECRdnB,QAAQ5W,OAAO,oBAAoBkW,WAAW,mBAAoB,CAChE,SACA,gBACA,gBACA,SAAUE,EAAQqV,EAAeo+B,GAC/B,IACM3d,EACA3/B,EADA2/B,EAAO9N,GAAAA,GAASmsC,SAAS,GAAI,QAAQ45B,OACrC53F,EAAK6xB,GAAAA,GAAS+lE,OAElBt6C,EAAc0R,OAAOrvB,EAAM3/B,GACxByQ,MAAK,SAAiBvX,GACrB2Q,EAAOmlD,OAAS91D,KAEjBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gC,iBChB9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,gBACA,gBACA,SAAmC2zC,EAAep+B,GAChD,IAAI+xC,EAAOx8D,KACXw8D,EAAKrZ,QAEL,WACE0F,EAAc3lC,OACXlH,MAAK,SAAsBg7B,GAC1BwlB,EAAKxlB,KAAOA,KAEb8lB,OAAM,SAAiBhiD,GACtB2P,EAAcxc,MAAM,sCAAuC6M,W,sBCbrE,MAAMylC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACRgC,SAAU,Q,yDCJdnB,QAAQ5W,OAAO,oBAAoBkW,WAAW,qBAAsB,CAClE,KACA,gBACA,gBACA,eACA,eACA,mBACA,iBACA,SAA4B4e,EAAI+0B,EAAep+B,EAAem6B,EAAclB,EAAcioC,EAAkB5gB,GAC1G,IAAIvO,EAAOx8D,KAEXA,KAAKmjD,QAaL,WACE,IAAI0nB,EAAmBjmB,EAAakB,WACpC0W,EAAKzsD,MAAM6lD,QAAUiV,EAAiB9zD,SAASkkB,KAAK0lC,WACpDnE,EAAKzsD,MAAM9F,QAAU8gE,EAAe9gE,UACpC,IAAI87C,EAAkB8kB,EAAiB9zD,SAASgvC,gBAChDyW,EAAKzsD,MAAMg2C,gBAAkBA,EAC7ByW,EAAKzsD,MAAMu4F,6BAA+B9rC,EAAKzlD,SAASulF,iBAAiBgM,6BAEzEx0E,EAAGxB,IAAI,CACLxvB,QAAS+lD,EAAc/lD,UACvBogB,KAAM2lC,EAAc3lC,OACpBmnF,KAAM7tC,EAAKzsD,MAAM9F,QAAU0hF,EAAiBrwC,YAAW,EAAM,CAAE10C,MAAO,CAAC,+BAAkC,KAExGoV,MAAK,SAAiBvX,GAgC3B,IAA0Bye,EA1BpB,GALAs5C,EAAKwH,cAiBX,SAA4Bv/D,GAC1B,IAAI6lG,EAAiB7lG,EAAK3B,QACtBogB,EAAOze,EAAKye,KAChB,MAAO,CACLqnF,eAAgBD,EAAenyF,QAC/BizD,WAAYk/B,EAAeE,WAC3BC,cAAevnF,EAAKwnF,cACpBC,cAAeznF,EAAK4wC,OACpB82C,cAAe1nF,EAAK2nF,cACpB/c,cAAe5qE,EAAKggE,QAAQuL,OAC5BV,eAAgB7qE,EAAKggE,QAAQsJ,SA3BNse,CAAmBrmG,GACxC+3D,EAAKuH,YA+BF,CACLnoB,GAAI,CACFmvD,MAHoB7nF,EA9BgBze,EAAKye,MAiC9Bo+D,aACXv3E,KAAMmZ,EAAK8nF,OACXlnG,KAAMof,EAAK+nF,iBAEbnnG,KAAMof,EAAKrW,KACXq+F,cAAehoF,EAAKioF,cACpBC,SAAUloF,EAAKu7E,KACf4M,YAAanoF,EAAKy7E,UAvChBniC,EAAKzsD,MAAM0+C,aAAc7W,EAAAA,EAAAA,mBAAkB4kB,EAAKzlD,UAChDylD,EAAK6tC,KAAO5lG,EAAK4lG,KAEb7tC,EAAKzsD,MAAM6lD,SAAW7P,EAAkB,GAAKyW,EAAKzsD,MAAMu4F,6BAC1D,OAAO5kD,EAAauC,SAASxhD,EAAKye,KAAKmqD,UAAUrxD,MAAK,SAAwBsvF,GAC5E9uC,EAAK56C,QAAU0pF,EAAcC,WAC7B/uC,EAAKyH,MAAQqnC,EAAcE,oBAIhC1uC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCAtC1C0hD,EAAKzsD,MAAQ,CACX6lD,SAAS,EACT3rD,SAAS,EACTwkD,aAAa,GAGfzuD,KAAKgkE,cAAgB,GACrBhkE,KAAK+jE,YAAc,GACnB/jE,KAAK4hB,QAAU,KACf5hB,KAAKikE,MAAQ,S,sBCxBjB,MAAM1jB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,WAAY,CACvD2qC,YAAaD,EACbrrC,WAAY,qBACZH,SAAU,CACRgC,SAAU,Q,iBCHd,SAAS00F,EAAqBr2F,EAAQ8qC,EAAQ+G,EAASvF,EAAcgqD,EAAcjhF,EAAes5B,GAChG3uC,EAAOrF,MAAQ,CACb47F,UAAW,SACXxW,kBAAkB,EAClByW,UAAW,EACX7b,eAAe,GAGjB36E,EAAOzB,WAAa,CAClBk4F,WAAY,CAAC,CAAEh/F,KAAM,GAAIi/F,OAAO,EAAOC,QAAQ,IAC/CC,WAAY,KACZC,kBAAmB,GACnB5kC,IAAK,GACL9gB,KAAM,aACNtP,SAAU,MAGZgQ,EAAQipC,eAAiB,KACvB,GAA+B,WAA3B96E,EAAOrF,MAAM47F,WAA0Bv2F,EAAOzB,WAAWs4F,mBAAqB72F,EAAOrF,MAAMggF,cAC7F,MAAO,IAIX36E,EAAO49E,IAAI,YAAY,WACrB59E,EAAOrF,MAAMggF,eAAgB,KAG/B36E,EAAO82F,UAAY,SAAU/rE,GAC3B,IAAIkU,EAAOj/B,EAAOzB,WAAWk4F,WAAW1rE,GAGxC,GAFAkU,EAAKy3D,OAAQ,EACbz3D,EAAK03D,QAAS,EACI,KAAd13D,EAAKxnC,OAEPuI,EAAOzB,WAAWk4F,WAAWh0F,SAAQ,CAACkyC,EAAS4gB,KACzCA,GAAOxqC,GAAS4pB,EAAQl9C,MAAQwnC,EAAKxnC,OACvCwnC,EAAKy3D,OAAQ,EACbz3D,EAAK03D,QAAS,OAGb13D,EAAKy3D,OACR,OAIJ,MAAMK,EAAQ93D,EAAKxnC,KAAK0uB,MAAM,KACxBo4C,EAAaw4B,EAAMA,EAAM1sG,OAAS,GAClC2sG,EAAmB5pD,OAAO,gDAChCnO,EAAKy3D,MAAQM,EAAiB3hG,KAAKkpE,IAGrCv+D,EAAOi3F,aAAe,WACpBj3F,EAAOzB,WAAWk4F,WAAWjoG,KAAK,CAAEiJ,KAAM,GAAIi/F,OAAO,EAAOC,QAAQ,KAGtE32F,EAAOk3F,gBAAkB,SAAUnsE,GACjC/qB,EAAOzB,WAAWk4F,WAAW5oC,OAAO9iC,EAAO,GAC3C,IAAK,IAAI5gC,EAAI,EAAGA,EAAI6V,EAAOzB,WAAWk4F,WAAWpsG,OAAQF,IACvD6V,EAAO82F,UAAU3sG,IAoBrB6V,EAAOqyE,WAEP5hC,iBACE,OAAO3F,GAAO2F,UAGZ,GAAkB,WAFFzwC,EAAOrF,MAAM47F,WAEyC,KAAxCv2F,EAAOzB,WAAWs4F,kBAAhD,CAKA72F,EAAOrF,MAAMolF,kBAAmB,EAEhC,IAAIoX,EAAan3F,EAAOzB,WAAWk4F,WAAWv5F,QAAO,SAAoB1R,GACvE,OAAOA,EAAEiM,QACR1O,KAAI,SAAkByC,GACvB,OAAOA,EAAEiM,QAGP4qC,EAAWriC,EAAOzB,WAAWsjC,SACjC8M,EAAkB39B,8BAA8BqxB,GAEhD,IACE,MAAMhzC,QAvCZ,SAAoCmc,EAAQwN,GAC1C,IAAIo+E,EAAYp3F,EAAOrF,MAAM47F,UACzBc,EAAiBr3F,EAAOzB,WAAW4yC,KAEvC,GAAkB,WAAdimD,EAAwB,CAC1B,IAAI19E,EAAO1Z,EAAOzB,WAAWq4F,WAC7B,OAAON,EAAagB,qBAAqBt+E,EAAOU,EAAM29E,GACjD,GAAkB,QAAdD,EAAqB,CAC9B,IAAInlC,EAAMjyD,EAAOzB,WAAW0zD,IAC5B,OAAOqkC,EAAaiB,kBAAkBv+E,EAAOi5C,EAAKolC,GAElD,IAAIG,EAAoBx3F,EAAOzB,WAAWs4F,kBAC1C,OAAOP,EAAamB,gCAAgCz+E,EAAOw+E,GA2BtCE,CAA2BN,EAAWD,GACzDn3F,EAAO2rE,UAAYt8E,EAAKs8E,UAEpB3rE,EAAO2rE,YACT3rE,EAAOrF,MAAMggF,eAAgB,GAG/B36E,EAAOrF,MAAM67F,UAAY,EAErBnnG,EAAKq8E,SACPr2D,EAAcxc,MAAM,iCAAkC,CAAE4M,IAAK,mCAE7D4P,EAAcF,QAAQ,UAAW,4BAEnC,MAAOzP,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,yBAhBtC,QAkBE1F,EAAOrF,MAAMolF,kBAAmB,QAjChC//E,EAAOrF,MAAM+/E,oBAAsB,2CAsCzC16E,EAAO23F,gBAAkB,WACvB,GAA2C,GAAvC33F,EAAOzB,WAAWk4F,WAAWpsG,OAC/B,OAAO,EAET,IAAK,IAAIF,EAAI,EAAGA,EAAI6V,EAAOzB,WAAWk4F,WAAWpsG,OAAQF,IACvD,IAAK6V,EAAOzB,WAAWk4F,WAAWtsG,GAAGusG,MACnC,OAAO,EAGX,OAAO,GAGT12F,EAAO46E,aAAe,SAAUgd,GAC9B53F,EAAOzB,WAAWs4F,kBAAoBe,EAAGC,WACzC73F,EAAOrF,MAAMggF,eAAgB,GAG/B/vF,KAAKktG,UAAYrnD,iBACf,GAA+B,WAA3BzwC,EAAOrF,MAAM47F,WAA0Bv2F,EAAOzB,WAAWs4F,mBAAqB72F,EAAOrF,MAAMggF,cAC7F,OAAOruC,EAAal7B,2B,0GAhJ1B5Q,QAAQ5W,OAAO,oBAAoBkW,WAAW,uBAAwBu2F,I,gICGtE71F,QAAQ5W,OAAO,oBAAoBkW,WAAW,kBAAmB,CAC/D,SACA,KACA,SACA,eACA,SACA,iBACA,eACA,cACA,kBACA,gBACA,oBACA,eACA,YACA,OACA,WACA,kBACA,uBACA,SACEgrC,EACApsB,EACA1e,EACAq6E,EACA/mC,EACAqiB,EACArE,EACAF,EACAC,EACAh8C,EACAs5B,EACArC,EACAD,EACAwB,EACAlsC,EACA4iD,EACAwzC,GAEA/3F,EAAO2B,SAAWA,EAClB3B,EAAOnL,QAAU8gE,EAAe9gE,UAEhCmL,EAAOzB,WAAa,CAClB0hF,cAAe,IAAI3R,EAAAA,uBAGrBtuE,EAAOrF,MAAQ,CACbovD,kBAAkB,EAClBi7B,mBAAmB,GAGrBhlF,EAAO8hC,SAAW,QAClB9hC,EAAOg4F,aAAc,EAErBh4F,EAAOmB,MAAQ,SAAU2gC,GACvB9hC,EAAOg4F,YAAch4F,EAAO8hC,WAAaA,IAAY9hC,EAAOg4F,YAC5Dh4F,EAAO8hC,SAAWA,GAGpB9hC,EAAOi4F,mBAAqB,SAAUC,GACpC/jD,EAAE,0BAA4B+jD,EAAU,SAASC,YAAY,4CAC7DhkD,EAAE,kBAAoB+jD,EAAU,UAAUE,SAC1CjkD,EAAE,kBAAoB+jD,EAAU,SAASE,UAG3Cp4F,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMqqF,kBAAoBgB,GAGnChmF,EAAOq4F,SAAW,WAChB,MAAMzhB,EAAgB52E,EAAOzB,WAAW0hF,cAElCxnC,EAAQ2Y,EAAY+M,8BAA8ByY,GAExDtlB,EAAa+mC,SAAShe,EAAajkF,SAASlN,GAAIuvD,EAAM2lB,WACnDx3D,MAAK,WACJyO,EAAcF,QAAQ,UAAW,6BACjCm+B,EAAOr8B,GAAG,sBAAuB,CAAE/tB,GAAImxF,EAAajkF,SAASlN,IAAM,CAAE4iC,QAAQ,OAE9E47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,2BAI1C1F,EAAOs4F,QAEP7nD,eAAuB8tB,GACrB,OAAOzzB,GAAO2F,UACZ,IACE,MAAMmmC,QAAsBmhB,EAAqBQ,cAAch6B,EAAYv+D,EAAO0xD,YAC9EklB,IACFziC,EAAE,uBAAuB+gB,aACnB5D,EAAaknC,UAAU5hB,GAC7BvhE,EAAcF,QAAQ,4BAA6BopD,IAErD,MAAO74D,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,sCARtC,QAUEyuC,EAAE,uBAAuBvzB,YAK/B5gB,EAAOy4F,QACPhoD,eAAuB8tB,GACrB,OAAOzzB,GAAO2F,UACZ,IACE,MAAMmmC,QAAsBmhB,EAAqBQ,cAAch6B,EAAYv+D,EAAO0xD,YAC9EklB,IACFziC,EAAE,yBAAyB+gB,aACrB5D,EAAatE,UAAU4pB,GAC7BvhE,EAAcF,QAAQ,4BAA6BopD,IAErD,MAAO74D,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,wCARtC,QAUEyuC,EAAE,yBAAyBvzB,YAKjC5gB,EAAO04F,UAAY,SAAUn6B,GAC3BjN,EAAaqnC,YAAYp6B,GAAY,GAClC33D,MAAK,WACiC,IAAjC5G,EAAOy4C,MAAM+e,SAASntE,QACxBgrB,EAAcF,QAAQ,6BAA8BopD,GACpDjrB,EAAOr8B,GAAG,gBAAiB,GAAI,CAAE6U,QAAQ,MAEzCzW,EAAcF,QAAQ,2BAA4BopD,GAClDjrB,EAAOr8B,GAAG,sBAAuB,CAAE/tB,GAAImxF,EAAajkF,SAASlN,IAAM,CAAE4iC,QAAQ,QAGhF47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAI1C1F,EAAO44F,YAAc,SAAU1vG,GAC7BooE,EAAaqnC,YAAYzvG,GAAI,GAC1B0d,MAAK,WACJyO,EAAcF,QAAQ,6BAA8BjsB,GACpDoqD,EAAOr8B,GAAG,gBAAiB,GAAI,CAAE6U,QAAQ,OAE1C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAqB1C1F,EAAO64F,YAAc,SAAUpgD,GACC,IAA1BA,EAAM+e,SAASntE,QAAgB,IAAWouD,EAAM+e,SAAU,UAC5DniD,EAAcD,QAAQ,GAAI,oCAI5Bk3B,EAAa15B,oBAAmB,SAAUrB,GACnCA,GAxBT,SAAqBknC,GACnB9J,EAAkB39B,8BAA8BynC,EAAM5W,UACtD7hC,EAAOrF,MAAMovD,kBAAmB,EAChCuH,EAAawnC,eAAe,CAACrgD,IAC1B7xC,MAAK,SAAiBvX,GACrB,IAAIu+C,EAAe,IAAIC,EAAK,CAACx+C,EAAKqqB,MAAO,CAAE/kB,KAAM,sBACjD03C,EAAUyB,OAAOF,EAAc,cAC/Bv4B,EAAcF,QAAQ,UAAW,oCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMovD,kBAAmB,KAclC8uC,CAAYpgD,OAIhBhI,iBACE9B,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UAEtE,IACEriC,EAAO0xD,iBAAmBL,EAAgB0nC,0BAA0Bp3F,EAASxK,IAC7E,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAG3CgZ,EAAGxB,IAAI,CACLu7B,MAAO6Y,EAAa7Y,MAAM4hC,EAAajkF,SAASlN,IAChDmqF,QAAS/hB,EAAa+hB,QAAQgH,EAAajkF,SAASlN,MAEnD0d,MAAK,SAAiBvX,GACrB2Q,EAAOy4C,MAAQppD,EAAKopD,MACpBz4C,EAAOqzE,QAAUhkF,EAAKgkF,QACtBrzE,EAAOy4C,MAAM8zB,IAAM,IAASvsE,EAAOy4C,MAAM8zB,IAAtB,QAEpB7kB,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oCACpC4tC,EAAOr8B,GAAG,oBAIhB+nE,O,4GCzMJx+E,QAAQ5W,OAAO,oBAAoBkW,WAAW,mBAAoB,CAChE,SACA,SACA,iBACA,eACA,gBACA,eACA,oBACA,YACA,OACA,WACA,SAAUE,EAAQszC,EAAQqiB,EAAgBrE,EAAcj8C,EAAei3B,EAAcqC,EAAmBtC,EAAWwB,EAAMlsC,GA6HvH,SAASq3F,IACP1nC,EAAalM,QAAO,GACjBx+C,MAAK,SAAiBvX,GACrB2Q,EAAOolD,OAAS/1D,EAChB2Q,EAAOq5C,aAAc7W,EAAAA,EAAAA,mBAAkB7gC,MAExC+lD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BACpC1F,EAAOolD,OAAS,MApItBplD,EAAO2B,SAAWA,EAClB3B,EAAOnL,QAAU8gE,EAAe9gE,UAEhCmL,EAAOrF,MAAQ,CACbolF,kBAAkB,EAClBh2B,kBAAkB,EAClBkvC,eAAe,GAGjBj5F,EAAOzB,WAAa,CAClB0hF,cAAe,IAAI3R,EAAAA,sBACnBzsC,SAAU,MAGZ7hC,EAAOgtD,UAAY,WACjB,MAAM4pB,EAAgB52E,EAAOzB,WAAW0hF,cAExC,IAAI59C,EAAWriC,EAAOzB,WAAWsjC,SACjC8M,EAAkB39B,8BAA8BqxB,GAEhDriC,EAAOrF,MAAMolF,kBAAmB,EAChCzuB,EAAatE,UAAU4pB,GAAe,GACnChwE,MAAK,SAAiBvX,GACrB,IAAIqW,EAAMrW,EAAKA,EAAKhF,OAAS,GAAGwhF,YAChC,GAAInmE,EACF,OAAO2P,EAAcxc,MAAM,UAAW6M,EAAK,wBAE7C2P,EAAcF,QAAQ,4BAA6ByhE,EAAc9kB,OACjExe,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,2BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAItC//E,EAAOk5F,qBAAuB,SAAUxkE,EAAeqQ,GACrDuH,EAAat6B,0BAAyB,SAAUT,GACzCA,GAGLvR,EAAO2nD,aAAajzB,EAAeqQ,OA2CvC/kC,EAAO6pD,eAAiB,SAAUn1B,IAvClC,SAAgCA,GAC9B,IAAK,IAAIvqC,EAAI,EAAGA,EAAIuqC,EAAcrqC,OAAQF,IAAK,CAC7C,IAAIsuD,EAAQ/jB,EAAcvqC,GAM1B,GAJe,IAAOsuD,EAAM+e,UAAU,SAAUv4B,GAC9C,OAAOA,EAAKxuC,QAAQ,WAAa,KAKjC,OADA4kB,EAAcD,QAAQ,GAAI,qCACnB,EAIX,QAAI,IAASsf,EAAe,YAAYrqC,OAAS,IAC/CgrB,EAAcD,QAAQ,GAAI,gEACnB,KAwBJ+jF,CAAuBzkE,IAI5B4X,EAAa15B,oBAAmB,SAAUrB,GAtB5C,IAAsB6zC,EAuBb7zC,IAvBa6zC,EA0BL1wB,EAzBfia,EAAkB39B,8BAA8Bo0C,EAAO,GAAGvjB,UAC1D7hC,EAAOrF,MAAMovD,kBAAmB,EAChCuH,EAAawnC,eAAe1zC,GACzBx+C,MAAK,SAAiBvX,GACrB,IAAIu+C,EAAe,IAAIC,EAAK,CAACx+C,EAAKqqB,MAAO,CAAE/kB,KAAM,sBACjD03C,EAAUyB,OAAOF,EAAc,cAC/Bv4B,EAAcF,QAAQ,UAAW,uCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMovD,kBAAmB,UAiBtC/pD,EAAO2nD,aAAe,SAAUjzB,EAAeqQ,GAC7C,IAAI4nB,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAU+jB,GACvC9J,EAAkB39B,8BAA8BynC,EAAM5W,UACtDyvB,EAAaqnC,YAAYlgD,EAAMthD,GAAI4tC,GAChCn+B,MAAK,WACJyO,EAAcF,QAAQ,6BAA8BsjC,EAAMthD,IAC1D,IAAI4zB,EAAQ/qB,EAAOolD,OAAO30D,QAAQgoD,GAClCz4C,EAAOolD,OAAOyI,OAAO9iC,EAAO,MAE7B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,gBAMjB9rB,EAAOq5C,aAAc,EAErBr5C,EAAOg5F,UAAYA,EAanBh5F,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMs+F,cAAgBjT,GAI7BgT,Q,yDC5JNx4F,QAAQ5W,OAAO,oBAAoBkW,WAAW,wBAAyB,CACrE,SACA,SACA,eACA,gBACA,oBACA,iBACA,cACA,WACA,SAAUE,EAAQszC,EAAQge,EAAcj8C,EAAes5B,EAAmBgnB,EAAgBvE,EAAazvD,GACrG3B,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB//E,EAAO2B,SAAWA,EAElB3B,EAAOnL,QAAU8gE,EAAe9gE,UAEhCmL,EAAOzB,WAAa,CAClBq4F,WAAY,KACZ/0D,SAAU,KACVo+C,cAAe,IAAI3R,EAAAA,uBAGrBtuE,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMqqF,kBAAoBgB,GAenChmF,EAAOo5F,YAAc3oD,iBACnBzwC,EAAOrF,MAAMolF,kBAAmB,EAEhC,IAAI19C,EAAWriC,EAAOzB,WAAWsjC,SACjC8M,EAAkB39B,8BAA8BqxB,GAChD,IAAI3oB,EAAO1Z,EAAOzB,WAAWq4F,WAC7B,IACE,MAAM,KAAEvnG,SAAeiiE,EAAa8nC,YAAY1/E,GAChD,GAAIrqB,EAAKwJ,MACPwc,EAAcxc,MAAM,UAAWxJ,EAAKwJ,MAAO,+BACtC,GAAIxJ,EAAKu8E,OAAQ,CACtB,IACIytB,EADQ,uBACSvmB,KAAKzjF,EAAKu8E,QAC3BytB,GAA+B,GAAnBA,EAAShvG,eAzB/BomD,eAAwBvnD,GACtB,MAAM0tF,EAAgB52E,EAAOzB,WAAW0hF,cACxC,GAAIrJ,EAAc9kB,MAAO,CACvB,MAAMrZ,EAAQ2Y,EAAY+M,8BAA8ByY,GACxD,UACQtlB,EAAa+mC,SAASnvG,EAAIuvD,EAAM2lB,WACtC,MAAO14D,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,yBAmB5B2yF,CAASgB,EAAS,IACxB/lD,EAAOr8B,GAAG,sBAAuB,CAAE/tB,GAAImwG,EAAS,IAAM,CAAEvtE,QAAQ,KAElEzW,EAAcF,QAAQ,UAAW,qCAEjCE,EAAcF,QAAQ,UAAW,iGAEnC,MAAOzP,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0BAhBtC,QAkBE1F,EAAOrF,MAAMolF,kBAAmB,Q,kJC/DxCv/E,QAAQ5W,OAAO,oBAAoBkW,WAAW,0BAA2B,CACvE,KACA,SACA,SACA,gBACA,gBACA,iBACA,cACA,iBACA,yBACA,gBACA,oBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ+rC,EAAehqE,EAAeqgD,EAAgB/F,EAAagG,EAAgBsjB,EAAwBqB,EAAe3rC,GAmF9I,SAAS2qD,EAAsBC,EAAYC,GACzC,MAAMrzE,EAAQ,IAAQozE,EAAY,KAElC,OAAqB,IAAjBpzE,EAAM97B,OACD87B,EAAM,KAAOqzE,EAEfD,IAAeC,EAiBxB,SAASC,EAA0BC,EAAYC,GAC7CD,EAAWv6C,mBAAqB,GAChC,IAAUw6C,EAAax6C,oBAAoB,CAACy6C,EAAY7uE,KACtD,MAAM5E,EAAQ,IAAQyzE,EAAY,KACb,IAAjBzzE,EAAM97B,OACRqvG,EAAWv6C,mBAAmBh5B,EAAM,IAAMA,EAAM,GAEhDuzE,EAAWv6C,mBAAmB,SAAWp0B,GAAS6uE,KAmGxD,SAASC,EAAczxF,GACrBumC,EAAkB39B,8BAA8B5I,EAAQi6B,UACxDsM,EAAkB19B,kCAAkC7I,EAAQ0xF,kBAE5D95F,EAAOrF,MAAMolF,kBAAmB,EAChCrqB,EAAepyB,OAAOl7B,EAAQivE,sBAC3BzwE,MAAK,SAAiBvX,GACrB,MAAMitB,EAASlU,EAAQszE,YAAYtmD,GAC7Bv2B,EAAoBuJ,EAAQvJ,kBAC5BpJ,EAAkBpG,EAAK41C,UAAUC,gBACvC,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,gCAC7B/M,EAAQ0jB,QACVwnB,EAAOr8B,GACL,kBACA,GACA,CACE6U,QAAQ,OAKf47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+CAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KAsDtC,IACM/pB,EAtSNh2D,EAAOzB,WAAa,CAClBw7F,cAAe,GACfC,KAAM,CACJj7C,OAAQ,GACRC,QAAS,GACTC,QAAS,GACTE,mBAAoB,IAEtB86C,KAAM,CACJl7C,OAAQ,GACRC,QAAS,GACTC,QAAS,GACTE,mBAAoB,IAEtB3Z,OAAQ,GACR+0C,kBAAmB,IAAIC,EAAAA,sBACvB34C,SAAU,KACVq4D,QAAS,IAAIhkC,EAAAA,iBAGfl2D,EAAOrF,MAAQ,CACb+/E,oBAAqB,GACrBqF,kBAAkB,GAGpB//E,EAAOm6F,wBAA0B,GAEjCn6F,EAAOwP,OAAS,CACdkvC,OAAQ,SACR07C,gBAAgB,EAChBv7C,UAAU,EACVD,YAAY,EACZy7C,YAAY,EAGZ97C,KAAM,CACJG,OAAQ,UACRF,OAAQ,IAEVhZ,OAAQ,IAGVxlC,EAAOs6F,gBAAkB,WACvBt6F,EAAOzB,WAAWw7F,cAAcvrG,KAAK,CACnCE,KAAM,GACNH,MAAO,MAIXyR,EAAOu6F,mBAAqB,SAAUxvE,GACpC/qB,EAAOzB,WAAWw7F,cAAclsC,OAAO9iC,EAAO,IAGhD/qB,EAAO4/B,SAAW,WAChB5/B,EAAOzB,WAAWinC,OAAOh3C,KAAK,CAC5BjE,IAAK,GACLgE,MAAO,MAIXyR,EAAOsvD,YAAc,SAAUvkC,GAC7B/qB,EAAOzB,WAAWinC,OAAOqoB,OAAO9iC,EAAO,IAGzC/qB,EAAOw6F,kBAAoB,WACzBx6F,EAAOzB,WAAWy7F,KAAK76C,mBAAmB3wD,KAAK,KAGjDwR,EAAOy6F,kBAAoB,WACzBz6F,EAAOzB,WAAW07F,KAAK96C,mBAAmB3wD,KAAK,KAGjDwR,EAAO06F,qBAAuB,SAAU3vE,GACtC/qB,EAAOzB,WAAWy7F,KAAK76C,mBAAmB0O,OAAO9iC,EAAO,GACxD/qB,EAAOrF,MAAMggG,4BAA4B9sC,OAAO9iC,EAAO,IAGzD/qB,EAAO46F,qBAAuB,SAAU7vE,GACtC/qB,EAAOzB,WAAW07F,KAAK96C,mBAAmB0O,OAAO9iC,EAAO,GACxD/qB,EAAOrF,MAAMkgG,4BAA4BhtC,OAAO9iC,EAAO,IAYzD/qB,EAAO86F,0BAA4B,SAAU/vE,GAC3C/qB,EAAOrF,MAAMggG,4BAA4B5vE,GAASuuE,EAAsBt5F,EAAOzB,WAAWy7F,KAAK76C,mBAAmBp0B,GAAQ/qB,EAAOzB,WAAWy7F,KAAKh7C,UAGnJh/C,EAAO+6F,0BAA4B,SAAUhwE,GAC3C/qB,EAAOrF,MAAMkgG,4BAA4B9vE,GAASuuE,EAAsBt5F,EAAOzB,WAAW07F,KAAK96C,mBAAmBp0B,GAAQ/qB,EAAOzB,WAAW07F,KAAKj7C,UAGnJh/C,EAAOxG,QAAU,WACf,MAAMwhG,GAAa,IAASh7F,EAAOrF,MAAMggG,6BAA6B,CAACv9E,EAAK6hB,IAAS7hB,GAAO6hB,IAAM,GAC5Fg8D,GAAa,IAASj7F,EAAOrF,MAAMkgG,6BAA6B,CAACz9E,EAAK6hB,IAAS7hB,GAAO6hB,IAAM,GAClG,OAAO+7D,GAAaC,GAqFtBj7F,EAAOk7F,iBAAmB,SAAUC,GAClCn7F,EAAOE,YAAW,KAChBF,EAAOwP,OAAOqvC,SAAWs8C,MAI7Bn7F,EAAOo7F,mBAAqB,SAAUD,GACpCn7F,EAAOE,YAAW,KAChBF,EAAOwP,OAAOovC,WAAau8C,MAgD/Bn7F,EAAOsjC,OAAS,WACd,IAAI+zC,EAnFN,WACE,IAAI7nE,EAAShP,QAAQu0D,KAAK/0D,EAAOwP,QAIjC,OAjDF,SAAkCA,GAChC,GAAIxP,EAAOzB,WAAWy7F,KAAKj7C,OAAQ,CACjC,IAAI26C,EAAa,GACjBA,EAAW36C,OAAS/+C,EAAOzB,WAAWy7F,KAAKj7C,OACvC/+C,EAAOzB,WAAWy7F,KAAKh7C,UACzB06C,EAAW16C,QAAUh/C,EAAOzB,WAAWy7F,KAAKh7C,SAE1Ch/C,EAAOzB,WAAWy7F,KAAK/6C,UACzBy6C,EAAWz6C,QAAUj/C,EAAOzB,WAAWy7F,KAAK/6C,SAE1Cj/C,EAAOzB,WAAWy7F,KAAK76C,mBAAmB90D,QAC5CovG,EAA0BC,EAAY15F,EAAOzB,WAAWy7F,MAE1DxqF,EAAO+uC,KAAKC,OAAOhwD,KAAKkrG,GAE1B,GAAI15F,EAAOzB,WAAW07F,KAAKl7C,OAAQ,CACjC,IAAI26C,EAAa,GACjBA,EAAW36C,OAAS/+C,EAAOzB,WAAW07F,KAAKl7C,OACvC/+C,EAAOzB,WAAW07F,KAAKj7C,UACzB06C,EAAW16C,QAAUh/C,EAAOzB,WAAW07F,KAAKj7C,SAE1Ch/C,EAAOzB,WAAW07F,KAAKh7C,UACzBy6C,EAAWz6C,QAAUj/C,EAAOzB,WAAW07F,KAAKh7C,SAE1Cj/C,EAAOzB,WAAW07F,KAAK96C,mBAAmB90D,QAC5CovG,EAA0BC,EAAY15F,EAAOzB,WAAW07F,MAE1DzqF,EAAO6qF,YAAa,EACpB7qF,EAAO+uC,KAAKC,OAAOhwD,KAAKkrG,IAkB1B2B,CAAyB7rF,GAd3B,SAA8BA,GAC5B,IAAIje,EAAU,GACdyO,EAAOzB,WAAWw7F,cAAct3F,SAAQ,SAAUzP,GAChDzB,EAAQyB,EAAOtE,MAAQsE,EAAOzE,SAEhCihB,EAAOozC,QAAUrxD,EAUjB+pG,CAAqB9rF,GAPvB,SAA6BA,GAC3BA,EAAOg2B,OAASmqB,EAAYS,wBAAwBpwD,EAAOzB,WAAWinC,QAOtE01C,CAAoB1rE,GACbA,EA8EoB+rE,GACvB18E,EAAoBmB,EAAOzB,WAAWg8E,kBACtCmB,EAAc/lB,EAAegmB,iBAGjC,GAlDF,SAAsB98E,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,GA2CJ2iF,CAAa38E,EAFJ82D,EAAe9gE,WAE7B,CAIA,IApFsD2a,EAoFlD+rF,EAAkB,CACpBl5D,SAAUriC,EAAOzB,WAAWsjC,SAC5Bi4D,kBAAkB,EAClBziB,qBAAsBA,EACtBqE,YAAaA,EACb78E,kBAAmBA,EACnBitB,QAAQ,GAOV,GAJI9rB,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,YAAiE,sBAAnDvrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,UAA6D,YAAzB5V,EAAOwP,OAAOkvC,SAC9I68C,EAAgBzB,kBAAmB,GAGR,YAAzB95F,EAAOwP,OAAOkvC,OAChB,GAAwC,UAApC1+C,EAAOzB,WAAW27F,QAAQv7C,OAlGsBnvC,EAmGH6nE,GAlG5Cx4B,SAAW,KAClBrvC,EAAOovC,WAAa,KACpBpvC,EAAOymD,YAAa,EACpBzmD,EAAOozC,QAAQ5U,OAAShuC,EAAOzB,WAAW27F,QAAQ/jC,uBAgGzC,GAAwC,UAApCn2D,EAAOzB,WAAW27F,QAAQv7C,MAAmB,CACtD,IAAI68C,EAAwBx7F,EAAOzB,WAAW27F,QAAQnkC,uBA9F5D,SAAwDvmD,EAAQgsF,GAC9DhsF,EAAOw9D,WAAa,CAClBoK,QAASokB,EAAsB/jG,MAEsB,sBAAnDuI,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACxCpG,EAAOmvC,MAAQ,QAEfnvC,EAAOmvC,MAAQ,QAwFb88C,CAA+CpkB,EAAsBmkB,GACrED,EAAgBl5D,SAAWm5D,EAAsB35D,SAIrD,GAC2B,YAAzB7hC,EAAOwP,OAAOkvC,QACsB,UAApC1+C,EAAOzB,WAAW27F,QAAQv7C,OAC1B3+C,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,YACa,sBAAnDvrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACtC,CACA,IAAI8lF,EAAgB17F,EAAOzB,WAAW27F,QAAQrkC,eAAenhC,cAC7DgnE,EAAcj5F,SAAQ,SAAUk1D,EAAMpC,GACpCgmC,EAAgBl5D,SAAWs1B,EAAKM,SAChCsjC,EAAgBzvE,OAASypC,IAAQmmC,EAAcrxG,OAAS,EACxDwvG,EAAc0B,WAGhB1B,EAAc0B,KAKZvlC,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAClDh2D,EAAOrF,MAAMggG,4BAA8B,GAC3C36F,EAAOrF,MAAMkgG,4BAA8B,GAE3Cxb,EAAc1G,eAAe3iB,EAAa,MACvCpvD,MAAK,SAAiBvX,GACrB2Q,EAAOm6F,wBAA0B9qG,EACjC2Q,EAAOm6F,wBAA0B,IAASn6F,EAAOm6F,yBAA0B5gB,GAAsB,SAAXA,GAAgC,SAAXA,OAE5G7xB,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6C,mOC7T9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,qBAAsB,CAClE,KACA,SACA,SACA,iBACA,gBACA,oBACA,WACA,eACA,SAAU4e,EAAI1e,EAAQszC,EAAQoiB,EAAgBrgD,EAAes5B,EAAmBhtC,EAAU2sC,GA4CxF,SAASqtD,IACP,MAAM1yG,EAAM,CACVs8D,SAAUmQ,EAAenQ,UAAS,GAAM,GAAM,IAG5CvlD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,YAAiE,sBAAnDvrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,WAC5F3sB,EAAIslD,OAASD,EAAaC,UAG5B7vB,EAAGxB,IAAIj0B,GACJ2d,MAAMvX,IACL2Q,EAAOq5C,aAAc7W,EAAAA,EAAAA,mBAAkB7gC,GACvC,MAAM4jD,EAAW,IAAUl2D,EAAKk2D,UAAWtmB,GAAUA,EAAKmsB,KAAO,KAC7DprD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,YAAiE,sBAAnDvrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SAC5F5V,EAAOulD,SA/Bf,SAA6CA,EAAUhX,GACrD,MAEMqtD,EAAmB,IAASr2C,GAAWtmB,GAAwB,UAAfA,EAAK0f,QACrDk9C,EAAU,IAAU,IAAUt2C,GAAWtmB,GAASA,EAAK9nC,MACvD8gC,EAAS,IAAM4jE,GAAUz5F,GAAQ,IAASA,GAAM68B,GAJrCA,CAAAA,GAAS,IAAOsP,GAAS3sB,GAAUA,EAAMigB,WAAa5C,EAAK4C,WAAUsN,SAIvB2sD,CAAQ78D,OACjE78B,EAAM,IAAM61B,GAAS+6B,IACzB,MAAM/zB,EAAO+zB,EAAE,GACf,IAAK,IAAI7oE,EAAI,EAAGA,EAAI6oE,EAAE3oE,OAAQF,IAC5B80C,EAAKmsB,KAAK58D,KAAKwkE,EAAE7oE,IAEnB,OAAO80C,KAGT,OADY,IAAS78B,KAAQw5F,GAkBLG,CAAoC1sG,EAAKk2D,SAAUl2D,EAAKk/C,QAE1EvuC,EAAOulD,SAAWA,EAGpB,IAAUvlD,EAAOulD,UAAW1H,IAC1BA,EAAQU,KAAKy9C,YAAc19C,EAAAA,QAAAA,eAAmCT,EAAQU,KAAKC,QAC3EX,EAAQU,KAAK09C,YAAc39C,EAAAA,QAAAA,eAAmCT,EAAQU,KAAKC,cAG9EkJ,OAAOhiD,IACN1F,EAAOulD,SAAW,GAClBlwC,EAAcxc,MAAM,UAAW6M,EAAK,kCArE1C1F,EAAO2nD,aAAe,SAAUjzB,GAC9B,IAAIi4B,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAUmpB,GACvClP,EAAkB39B,8BAA8B6sC,EAAQhc,UACxD6zB,EAAernD,OAAOwvC,EAAQ1mD,IAC3ByP,MAAK,WACJyO,EAAcF,QAAQ,+BAAgC0oC,EAAQpmD,MAC9D,IAAIszB,EAAQ/qB,EAAOulD,SAAS90D,QAAQotD,GACpC79C,EAAOulD,SAASsI,OAAO9iC,EAAO,MAE/B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,gBAMjB9rB,EAAOq5C,aAAc,EAErBr5C,EAAO27F,YAAcA,EAkDnBA,Q,iBCxFNn7F,QAAQ5W,OAAO,oBAAoBkW,WAAW,wBAAyB,CACrE,eACA,cACA,oBACA,gBACA,SAA+Bo8F,EAAcxsC,EAAa/gB,EAAmBt5B,GAC3E,IAAI+xC,EAAOx8D,KACXw8D,EAAKrZ,QAEL,WACEqZ,EAAK4Q,OAASkkC,EAAahzG,GAE3BwmE,EAAYiI,KAAKvQ,EAAK4Q,QACnBpxD,MAAK,SAAsB+wD,GAC1BhpB,EAAkB39B,8BAA8B2mD,EAAKM,UACrD7Q,EAAKuQ,KAAOA,KAEbjQ,OAAM,SAAiBhiD,GACtB2P,EAAcxc,MAAM,sCAAuC6M,W,sBClBrE,MAAMylC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,wBACZH,SAAU,CACRgC,SAAU,Q,iBCNdnB,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,KACA,eACA,cACA,eACA,eACA,mBACA,iBACA,SAAmC4e,EAAIw9E,EAAcxsC,EAAalgB,EAAclB,EAAcioC,EAAkB5gB,GAC9G,IAAIvO,EAAOx8D,KA2EX,SAASuxG,EAAiBC,EAAaznG,GACrC,OAAOynG,EACJl/F,QAAO,SAAUq7E,GAChB,OAAOA,EAAO3iF,OAASjB,KAExB5L,KAAI,SAAUwvF,GACb,OAAOA,EAAO9gF,QA/EpB2vD,EAAKrZ,QAOL,WACE,IAAI0nB,EAAmBjmB,EAAakB,WACpC0W,EAAKzsD,MAAM6lD,QAAUiV,EAAiB9zD,SAASkkB,KAAK0lC,WACpDnE,EAAKzsD,MAAM9F,QAAU8gE,EAAe9gE,UACpCuyD,EAAKzsD,MAAMu4F,6BAA+B9rC,EAAKzlD,SAASulF,iBAAiBgM,6BAEzE,IAAImJ,EAAYj1C,EAAKzsD,MAAM9F,SAAWuyD,EAAKzsD,MAAM6lD,QAE7CwX,EAASkkC,EAAahzG,GAC1Bw1B,EAAGxB,IAAI,CACLy6C,KAAMjI,EAAYiI,KAAKK,GACvBi9B,KAAMoH,EAAY9lB,EAAiBrwC,YAAW,EAAM,CAAE10C,MAAO,CAAC,+BAAkC,KAC/FoV,MAAK,SAAUvX,GAChB,IAAIsoE,EAAOtoE,EAAKsoE,KAMhB,GALAvQ,EAAK8I,aAAeyH,EACpBvQ,EAAKuH,YAmBT,SAA0BgJ,GACxB,MAAO,CACLnxB,GAAI,CACFmvD,KAAMh+B,EAAKyV,qBACXz4E,KAAMgjE,EAAK2V,YAEb5+E,KAAMipE,EAAKM,SACX+9B,SAAUr+B,EAAK6V,KAAO,IACtByoB,YAAat+B,EAAKgW,QA3BC2uB,CAAiB3kC,GACpCvQ,EAAKwH,cA8BT,SAA4B+I,GAC1B,MAAO,CACLw9B,eAAgBx9B,EAAKkW,cACrB6K,cAAeyjB,EAAiBxkC,EAAKmW,QAAS,UAC9C6K,eAAgBwjB,EAAiBxkC,EAAKmW,QAAS,WAC/CjU,aAAclC,EAAKoC,cAnCE27B,CAAmB/9B,GACxCvQ,EAAKm1C,YAsCT,SAA0B5kC,GACxB,MAAO,CACLjpE,KAAMipE,EAAKlgE,KACX1J,KAAM4pE,EAAK97D,KACX+zD,eAAgB+H,EAAKwW,YACrB/e,aAAcuI,EAAKxH,aACnBrtD,OAAQ60D,EAAK9zD,OACbisD,WAAY6H,EAAKnyB,QA7CEg3D,CAAiB7kC,GACpCvQ,EAAK6tC,KAAO5lG,EAAK4lG,KACb7tC,EAAKzsD,MAAM6lD,QAAS,CACtB,IAAI7P,EAAkB8kB,EAAiB9zD,SAASgvC,gBAEhD,GADAyW,EAAKzsD,MAAMg2C,gBAAkBA,EACzBA,EAAkB,IAAMyW,EAAKzsD,MAAMu4F,6BACrC,OAGF5kD,EAAauC,SAAS8mB,EAAKM,UAAUrxD,MAAK,SAAwBsvF,GAChE9uC,EAAK56C,QAAU0pF,EAAcC,WAC7B/uC,EAAKyH,MAAQqnC,EAAcE,sBAjCnChvC,EAAKzsD,MAAQ,CACX6lD,SAAS,EACT3rD,SAAS,O,sBCff,MAAMs2C,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,kBAAmB,CAC9D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACRgC,SAAU,Q,sBCNd,MAAMwpC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,oBAAoB6W,UAAU,2BAA4B,CACvE2qC,YAAaD,EACbrrC,WAAY,iCACZH,SAAU,CACRgC,SAAU,Q,yDCJd,MAAM86F,EAEJ5xD,YAAYC,EAAQwI,EAAQqiB,EAAgBtgD,EAAekvC,EAAiBm4C,EAAcC,EAAatrC,GACrGzmE,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK+qE,eAAiBA,EACtB/qE,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EACvB35D,KAAK8xG,aAAeA,EACpB9xG,KAAK+xG,YAAcA,EACnB/xG,KAAKymE,gBAAkBA,EAEvBzmE,KAAK4N,aAAe5N,KAAK4N,aAAavO,KAAKW,MAC3CA,KAAKgyG,YAAchyG,KAAKgyG,YAAY3yG,KAAKW,MAG3C4N,eACE,OAAO5N,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,UACQn1F,KAAK25D,gBAAgBs4C,qBAAqBjyG,KAAK+P,MAAMwO,WAAYve,KAAK+P,MAAM+1D,WAAY9lE,KAAKkyG,0BACnGlyG,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK0oD,OAAOxnB,SACZ,MAAOpmB,GACP9a,KAAK+P,MAAMolF,kBAAmB,EAC9Bn1F,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAK/Ck3F,YAAY/lG,GACV,MAAMkmG,EAAgBnyG,KAAK+W,SAASq7F,mBAC9BC,EAAgBryG,KAAK+W,SAASu7F,mBAE9BC,EAAqBvyG,KAAKwyG,cAAcJ,mBACxCK,EAAqBzyG,KAAKwyG,cAAcF,mBAE9C,OAAOrmG,EAAMqG,QAAQogG,IACnB,MAAMC,EAAaD,aAAsBE,EAAAA,sBAAwBT,EAAcO,EAAWnmG,KAAOgmG,EAAmBG,EAAWnmG,KACzHsmG,EAAaH,aAAsBI,EAAAA,sBAAwBT,EAAcK,EAAWnmG,KAAOkmG,EAAmBC,EAAWnmG,KAEzHwmG,EAAeJ,GAAcE,EACnC,IAAKE,EACH,OAAO,EAGT,MAAMC,EAASD,EAAaE,OACtB9vG,EAAOnD,KAAKkzG,MAAMzpG,MAAMtG,GAASA,EAAKoJ,KAAOymG,IACnD,OAAOhzG,KAAKmzG,yBAAyBhwG,MAIzCgwG,yBAAyBhwG,GACvB,OAAOA,IAASA,EAAKiwG,eAAL,wBAGlBjwD,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+qE,eAAesoC,uBAAuB,CAAC,kCAE5C,IACErzG,KAAK+P,MAAQ,CACXujG,WAAW,EACXne,kBAAkB,EAClB52E,WAAYve,KAAK0oD,OAAOl9C,OAAO+S,WAC/BunD,WAAY9lE,KAAK0oD,OAAOl9C,OAAOlN,IAEjC0B,KAAKkzG,YAAclzG,KAAK+xG,YAAYmB,QACpClzG,KAAKonE,eAAiBpnE,KAAKymE,gBAAgBW,SAASpnE,KAAK+P,MAAM+1D,WAAY9lE,KAAK+P,MAAMwO,YACtFve,KAAKkyG,yBAA2BlyG,KAAKonE,SAASmsC,iBAAiBvzG,KAAK+P,MAAMwO,aAAe,GACzFve,KAAKwyG,oBAAsBxyG,KAAK8xG,aAAa0B,MAAMxzG,KAAK+W,SAAS08F,SACjE,MAAO34F,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAZ3C,QAcE9a,KAAK+P,MAAMujG,WAAY,O,gIAM/B,YACA19F,QAAQ5W,OAAO,oBAAoBkW,WAAW,iCAAkC28F,I,yDCjFhFj8F,QAAQ5W,OAAO,oBAAoBkW,WAAW,yBAA0B,CACtE,SACA,SACA,gBACA,gBACA,cACA,iBACA,yBACA,gBACA,SAAUE,EAAQszC,EAAQj+B,EAAeipF,EAAe3uC,EAAagG,EAAgBsjB,EAAwBqB,GAC3Gt6E,EAAOzB,WAAa,CAClB9G,KAAM,GACN0tE,KAAM,GACN3/B,OAAQ,GACR+4D,cAAc,EACdhkB,kBAAmB,IAAIC,EAAAA,uBAGzBx6E,EAAOrF,MAAQ,CACb+/E,oBAAqB,GACrBqF,kBAAkB,GAGpB//E,EAAOw+F,yBAEP,SAAkCl+E,GAChC,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWggG,aAAej+E,MAIrCtgB,EAAO4/B,SAAW,WAChB5/B,EAAOzB,WAAWinC,OAAOh3C,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,MAGlDyR,EAAOsvD,YAAc,SAAUvkC,GAC7B/qB,EAAOzB,WAAWinC,OAAOqoB,OAAO9iC,EAAO,IAmCzC/qB,EAAOsjC,OAAS,WACd,MAAMzkC,EAAoBmB,EAAOzB,WAAWg8E,kBACtCmB,EAAc/lB,EAAegmB,iBAC7B9mF,EAAU8gE,EAAe9gE,UAE/B,GAjBF,SAAsBgK,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,GAUJ2iF,CAAa38E,EAAmBhK,GAArC,CAIAmL,EAAOrF,MAAMolF,kBAAmB,EAChC,IAAI0e,IA7BAjvF,EAAS,IACN/X,KAAOuI,EAAOzB,WAAW9G,KAVlC,SAA2B+X,GACrBxP,EAAOzB,WAAWggG,aACpB/uF,EAAO21D,KAAOlqD,KAAKogE,SAASC,mBAAmBt7E,EAAOzB,WAAW4mE,QAEjE31D,EAAO21D,KAAOnlE,EAAOzB,WAAW4mE,KAOlCu5B,CAAkBlvF,GAfpB,SAA6BA,GAC3BA,EAAOg2B,OAASmqB,EAAYS,wBAAwBpwD,EAAOzB,WAAWinC,QAetE01C,CAAoB1rE,GACbA,GA0BP8uF,EAAch7D,OAAOm7D,GAClB73F,MAAK,SAAiBvX,GACrB,MAAMitB,EAASo/D,EAAYtmD,GACrB3/B,EAAkBpG,EAAK41C,UAAUC,gBACvC,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,OAE3C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KA7CtC,IACMvwE,O,yDCpDVhP,QAAQ5W,OAAO,oBAAoBkW,WAAW,mBAAoB,CAChE,SACA,eACA,SACA,gBACA,gBACA,SAAUE,EAAQq6E,EAAc/mC,EAAQgrD,EAAejpF,GACrDrV,EAAOrK,aAAeK,EAAAA,EAAAA,OAEtBgK,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAO2+F,aAAe,SAAsB7lB,GAC1CwlB,EAAcjwF,OAAOyqE,GAClBlyE,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOr8B,GAAG,iBAAkB,OAE7BywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAKxC44F,EAAc54C,OAAO20B,EAAajkF,SAASlN,IACxC0d,MAAK,SAAiBvX,GACrB2Q,EAAO0lD,OAASr2D,KAEjBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4C,iBChC9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,oBAAqB,CACjE,SACA,SACA,gBACA,gBACA,SAAUE,EAAQszC,EAAQgrD,EAAejpF,GAwBvC,SAASupF,IACPN,EAAc74C,UACX7+C,MAAK,SAAiBvX,GACrB2Q,EAAOylD,QAAUp2D,KAElBq4D,OAAM,SAAehiD,GACpB1F,EAAOylD,QAAU,GACjBpwC,EAAcxc,MAAM,UAAW6M,EAAK,iCA9B1C1F,EAAO2nD,aAAe,SAAUjzB,GAC9B,IAAIi4B,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAUgxB,GACvC44C,EAAcjwF,OAAOq3C,EAAOvuD,IACzByP,MAAK,WACJyO,EAAcF,QAAQ,8BAA+BuwC,EAAOjuD,MAC5D,IAAIszB,EAAQ/qB,EAAOylD,QAAQh1D,QAAQi1D,GACnC1lD,EAAOylD,QAAQoI,OAAO9iC,EAAO,MAE9B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,gBAMjB9rB,EAAO4+F,WAAaA,EAclBA,Q,uHCnCNh/F,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OAERY,QAAQ5W,OAAO,oBAAoBkW,WAAW,0BAA2B,CACvE,KACA,SACA,SACA,WACA,UACA,gBACA,gBACA,eACA,eACA,gBACA,gBACA,iBACA,cACA,cACA,iBACA,yBACA,gBACA,gBACA,gBACA,kBACA,oBACA,cACA,iBACA,WACA,SACE4e,EACA1e,EACAszC,EACA2hC,EACA8D,EACA/sB,EACAguB,EACA6kB,EACAC,EACAR,EACAlN,EACA17B,EACAtE,EACAzB,EACAgG,EACAsjB,EACA5jE,EACAilE,EACA+E,EACAhuB,EACA1iB,EACA+gB,EACAzD,EACAtqD,GA0OA,SAASo9F,EAAe/3D,GAStB,MARa,GAAGsC,OACb3+C,MACC,GACAq8C,EAAI7gB,MAAM,KAAKp9B,KAAI,SAAUqjC,EAAGjiC,GAC9B,OAAOA,EAAI,EAAIiiC,EAAIA,EAAEjG,MAAM,SAG9BjpB,OAAOi+B,SAiTZ,IACM66B,EAliBNh2D,EAAO2B,SAAWA,EAElB3B,EAAOzB,WAAa,CAClB9G,KAAM,GACNwoF,cAAe,IAAI3R,EAAAA,sBACnBjiB,KAAM,aACNE,SAAU,EACVoZ,QAAS,GACTq5B,WAAY,GACZC,WAAY,GACZ7uB,KAAM,GACN7D,IAAK,GACL/mC,OAAQ,GACRyqC,gBAAiB,GACjBnU,QAAS,GACTsb,QAAS,GACT8nB,cAAe,GACfC,aAAc,GACdz5D,MAAO,GACP0rC,YAAa,EACbguB,qBAAsB,GACtBC,qBAAsB,GACtBhuB,YAAa,KACbG,YAAa,aACbD,cAAe,QACfT,QAAS,GACTC,QAAS,GACTwJ,kBAAmB,IAAIC,EAAAA,sBACvBoF,SAAU,EACV0f,eAAgB,EAChB/f,YAAa,EACbnK,kBAAmB,EACnBmqB,gBAAiB,KACjBC,sBAAuB,KACvBtwB,iBAAkB,MAClBE,aAAc,KACdE,mBAAoB,EACpBE,cAAe,KACfG,cAAe,GACfC,cAAe,GACf6vB,SAAS,GAGXz/F,EAAOrF,MAAQ,CACb+/E,oBAAqB,GACrBqF,kBAAkB,EAClBiF,mBAAmB,GAGrBhlF,EAAOwpF,iBAAkB,EAEzBxpF,EAAO0/F,oBAEP,SAA6Bp/E,GAC3B,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWkhG,QAAUn/E,MAIhCtgB,EAAO2lF,mBACP,SAA4Bp3F,GAC1ByR,EAAOzB,WAAWguE,IAAMh+E,GAG1ByR,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAG5DhK,EAAO4lF,cAAgB,WACrB3Q,GAAS,WACPj1E,EAAO6lF,WAAW,2BAItB7lF,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMqqF,kBAAoBgB,GAGnChmF,EAAOmmF,eAAiB,WACtBnmF,EAAOzB,WAAWmnC,MAAMl3C,KAAK,CAAEmxG,cAAe,GAAIC,WAAY,GAAIC,SAAU,MAAOC,YAAa,aAGlG9/F,EAAOomF,kBAAoB,SAAUr7D,GACnC/qB,EAAOzB,WAAWmnC,MAAMmoB,OAAO9iC,EAAO,IAGxC/qB,EAAO+/F,gBAAkB,WACvB//F,EAAOzB,WAAW2gG,cAAc1wG,KAAK,CAAEiJ,KAAM,MAG/CuI,EAAOggG,mBAAqB,SAAUj1E,GACpC/qB,EAAOzB,WAAW2gG,cAAcrxC,OAAO9iC,EAAO,IAGhD/qB,EAAOigG,cAAgB,WACrBjgG,EAAOzB,WAAW4gG,aAAa3wG,KAAK,KAGtCwR,EAAOkgG,iBAAmB,SAAUn1E,GAClC/qB,EAAOzB,WAAW4gG,aAAatxC,OAAO9iC,EAAO,IAG/C/qB,EAAOimF,UAAY,WACjBjmF,EAAOzB,WAAWu9D,QAAQttE,KAAK,CAAEitE,OAAQ,KAAM0kC,OAAQ,GAAI3vB,UAAU,EAAO56E,KAAM,YAGpFoK,EAAOkmF,aAAe,SAAUn7D,GAC9B/qB,EAAOzB,WAAWu9D,QAAQjO,OAAO9iC,EAAO,IAG1C/qB,EAAOogG,UAAY,WACjBpgG,EAAOzB,WAAWwyE,QAAQviF,KAAK,KAGjCwR,EAAO67E,aAAe,SAAU9wD,GAC9B/qB,EAAOzB,WAAWwyE,QAAQljB,OAAO9iC,EAAO,GACxC/qB,EAAOqgG,2BAGTrgG,EAAOsgG,UAAY,WACjBtgG,EAAOzB,WAAWuyE,QAAQtiF,KAAK,CAAE+xG,gBAAgB,KAGnDvgG,EAAO2+F,aAAe,SAAU5zE,GAC9B/qB,EAAOzB,WAAWuyE,QAAQjjB,OAAO9iC,EAAO,GACxC/qB,EAAOwgG,2BAGTxgG,EAAOygG,uBAAyB,WAC9BzgG,EAAOzB,WAAW6gG,qBAAqB5wG,KAAK,CAAEjE,IAAK,GAAI+4E,SAAU,KAAM/0E,MAAO,MAGhFyR,EAAO0gG,0BAA4B,SAAU31E,GAC3C/qB,EAAOzB,WAAW6gG,qBAAqBvxC,OAAO9iC,EAAO,IAGvD/qB,EAAO2gG,uBAAyB,WAC9B3gG,EAAOzB,WAAW8gG,qBAAqB7wG,KAAK,CAAE00E,SAAU,SAAU30E,MAAO,MAG3EyR,EAAO4gG,0BAA4B,SAAU71E,GAC3C/qB,EAAOzB,WAAW8gG,qBAAqBxxC,OAAO9iC,EAAO,IAGvD/qB,EAAO4/B,SAAW,WAChB5/B,EAAOzB,WAAWinC,OAAOh3C,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,MAGlDyR,EAAOsvD,YAAc,SAAUvkC,GAC7B/qB,EAAOzB,WAAWinC,OAAOqoB,OAAO9iC,EAAO,IAGzC/qB,EAAO6gG,kBAAoB,WACzB7gG,EAAOzB,WAAW0xE,gBAAgBzhF,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,MAG3DyR,EAAO8gG,qBAAuB,SAAU/1E,GACtC/qB,EAAOzB,WAAW0xE,gBAAgBpiB,OAAO9iC,EAAO,IAGlD/qB,EAAO4mF,gBAAkB,WACvB5mF,EAAOzB,WAAWqxE,cAAcphF,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAG1DyR,EAAO6mF,mBAAqB,SAAU97D,GACpC/qB,EAAOzB,WAAWqxE,cAAc/hB,OAAO9iC,EAAO,IAGhD/qB,EAAOwgG,wBAA0B,WAC/BxgG,EAAOzB,WAAWuyE,QAAQiwB,UAAW,EACrC,IAAI/gG,EAAOzB,WAAWuyE,SACnB7vE,MAAK,CAAC+xD,EAAGC,IAAMD,EAAE3kB,MAAMl3C,GAAG+7D,cAAcD,EAAE5kB,MAAMl3C,MAChD8J,MAAK,CAAC+xD,EAAGC,KACJD,EAAE3kB,MAAMl3C,KAAO87D,EAAE5kB,MAAMl3C,KACzB6I,EAAOzB,WAAWuyE,QAAQiwB,UAAW,EACrC/gG,EAAOzB,WAAWuyE,QAAQkwB,OAAS,UAAYhuC,EAAE3kB,MAAM52C,KAAO,0CAG/DuI,EAAOzB,WAAWuyE,QAAQiwB,WAC7B/gG,EAAOzB,WAAWuyE,QAAQkwB,OAAS,KAIvChhG,EAAOqgG,wBAA0B,WAC/BrgG,EAAOzB,WAAWwyE,QAAQgwB,UAAW,EACrC,IAAI/gG,EAAOzB,WAAWwyE,SACnB9vE,MAAK,CAAC+xD,EAAGC,IAAMD,EAAE3kB,MAAMl3C,GAAG+7D,cAAcD,EAAE5kB,MAAMl3C,MAChD8J,MAAK,CAAC+xD,EAAGC,KACJD,EAAE3kB,MAAMl3C,KAAO87D,EAAE5kB,MAAMl3C,KACzB6I,EAAOzB,WAAWwyE,QAAQgwB,UAAW,EACrC/gG,EAAOzB,WAAWwyE,QAAQiwB,OAAS,UAAYhuC,EAAE3kB,MAAM52C,KAAO,0CAG/DuI,EAAOzB,WAAWwyE,QAAQgwB,WAC7B/gG,EAAOzB,WAAWwyE,QAAQiwB,OAAS,KAqTvChhG,EAAOihG,gBACP,WAEE,OADgBjhG,EAAOzB,WAAWu9D,QACnB5iD,OAAOstC,GAAWA,EAAO25C,QAAU35C,EAAOiV,UAG3Dz7D,EAAOsjC,OAAS,WACd,IAlFI49D,EACA1xF,EAiFA3Q,EAAoBmB,EAAOzB,WAAWg8E,mBAnB5C,SAAsB17E,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,IAAYmL,EAAOzB,WAAWuyE,QAAQkwB,QAAUhhG,EAAOzB,WAAWwyE,QAAQiwB,UAGvIhhG,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,IAcJ2iF,CAAa38E,EAAmBmB,EAAOnL,WAI5CmL,EAAOrF,MAAMolF,kBAAmB,EApDlC,SAA0BvwE,EAAQ3Q,GAChC,MAAM+3E,EAAgB52E,EAAOzB,WAAW0hF,cACxC,IAAIpJ,EAAwBD,EAAc/kB,SAAS8D,eAAiBtE,EAAgBylB,mBAAmBF,EAAc/kB,UAAY,GACjIljB,EAAkB/9B,gCAAgCimE,GAElDkC,EAAQz1C,OAAO9zB,GACZohC,SAAShqC,MAAK,SAAiBvX,GAC9B,MAAMi8D,EAAYj8D,EAAK+lC,GACjB3/B,EAAkBpG,EAAK41C,UAAUC,gBACjC5oB,EAASq5C,EAAegmB,iBAAiBvmD,GACzC+rE,EAAYloB,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,GACnFgrF,EAAazgF,EAAOzB,WAAW0hF,cAAcpuB,SAAS16D,GACtDiqG,EAAiB1iF,EAAGupB,KAAuB,IAAlBtmC,EAAS/L,MAAcoK,EAAOzB,WAAWkhG,SAAWxzC,EAAey0B,cAAcp1B,EAAW3pD,EAASxK,GAAIspF,EAAY,IACpJ,OAAO/hE,EAAGxB,IAAI,CAACikF,EAAWC,OAE3Bx6F,MAAK,WACJyO,EAAcF,QAAQ,UAAW,gCACjCm+B,EAAOr8B,GAAG,kBAAmB,GAAI,CAAE6U,QAAQ,OAE5C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KA+BpCshB,EA1FIH,EAAQlhG,EAAOzB,WA/MrB,SAAiCiR,EAAQ0xF,GACpB,eAAfA,EAAM70C,KACR78C,EAAO68C,KAAKC,WAAa,CACvBC,SAAU20C,EAAM30C,UAGlB/8C,EAAO68C,KAAKi1C,OAAS,GAyNvBC,CAfI/xF,EAAS,CACX/X,KAAMypG,EAAMzpG,KACZmrE,aAAc,CACZ8L,cAAe,CACbnT,OAAQ,IAEVsU,UAAW,GACXpC,UAAW,CACTkB,OAAQ,GACRG,aAAc,KAGlBziB,KAAM,GACNyW,aAAc,IAEgBo+B,GAtPlC,SAA4B1xF,EAAQ0xF,GAClC,IAAInf,EAAc3wB,EAAY+M,8BAA8B+iC,EAAMjhB,eAClEzwE,EAAOozD,aAAa8L,cAAc5c,MAAQiwB,EAAY3jB,UAqPtD4jB,CAAmBxyE,EAAQ0xF,GAlP7B,SAA4B1xF,EAAQ0xF,GAClC,IAAIz+D,EAAQ,GACZy+D,EAAMx7D,MAAMjjC,SAAQ,SAAU46D,GAC5B,MAAMz6B,EAAO,CACXi9D,SAAUxiC,EAAQwiC,SAClBC,YAAaziC,EAAQyiC,aAEnBziC,EAAQuiC,aACVh9D,EAAKg9D,YAAcviC,EAAQuiC,WACvBviC,EAAQsiC,gBACV/8D,EAAK+8D,eAAiBtiC,EAAQsiC,eAEhCl9D,EAAMj0C,KAAKo0C,OAGfpzB,EAAOszD,aAAap9B,MAAQjD,EAoO5B++D,CAAmBhyF,EAAQ0xF,GA3M7B,SAA8B1xF,EAAQ0xF,GAChCA,EAAMlC,aACRxvF,EAAOozD,aAAa8L,cAAc/I,QAAUo5B,EAAemC,EAAMlC,aAE/DkC,EAAMv7B,UACRn2D,EAAOozD,aAAa8L,cAAc5G,KAAOi3B,EAAemC,EAAMv7B,UAE5Du7B,EAAM9wB,OACR5gE,EAAOozD,aAAa8L,cAAc0B,KAAO8wB,EAAM9wB,MAE7C8wB,EAAMjC,aACRzvF,EAAOozD,aAAa8L,cAAcyB,IAAM+wB,EAAMjC,YAiMhDwC,CAAqBjyF,EAAQ0xF,GA7L/B,SAA0B1xF,EAAQ0xF,GAChC1xF,EAAOozD,aAAa8L,cAAcnC,IAAMgW,EAAAA,wBAAqC2e,EAAM30B,KA6LnFm1B,CAAiBlyF,EAAQ0xF,GA1L3B,SAA6B1xF,EAAQ0xF,GACnC1xF,EAAOg2B,OAASmqB,EAAYS,wBAAwB8wC,EAAM17D,QAC1Dh2B,EAAOozD,aAAa8L,cAAclpC,OAASmqB,EAAYS,wBAAwB8wC,EAAMjxB,iBAyLrFiL,CAAoB1rE,EAAQ0xF,GAtK9B,SAAwB1xF,EAAQ0xF,GAC9BA,EAAMplC,QAAQr5D,SAAQ,SAAU+jD,GAC9B,GAAIA,EAAOiV,QAAUjV,EAAO25C,OAC1B,GAAoB,WAAhB35C,EAAO5wD,KACT4Z,EAAOozD,aAAa8L,cAAcnT,OAAO/sE,KAAKg4D,OACzC,CACL,IACIgV,GAvByBmmC,EAsBVn7C,EAAOiV,OAtBiBvxE,EAuBWs8D,EAAO25C,OAvBVhuG,EAuBkBq0D,EAAOgqB,SAtB3E,CACL2vB,OAAQj2G,EACRuxE,OAAQkmC,EAAaxqG,GACrBvB,KAAM,SACN46E,SAAUr+E,EACVyvG,cAAe,CACbp8D,OAAQm8D,EAAan8D,OACrBq8D,aAAc,CACZpqG,KAAMkqG,EAAajjD,OACnBkE,QAAS++C,EAAa/+C,YActBpzC,EAAOozD,aAAa8L,cAAcnT,OAAO/sE,KAAKgtE,GAxBtD,IAAqCmmC,EAAcz3G,EAAQiI,KAuLzDswF,CAAejzE,EAAQ0xF,GAzJzB,SAAyB1xF,EAAQ0xF,GAC/B,IAAI37C,EAAW,GACX27C,EAAM9pB,SACR7xB,EAAS/2D,KAAK,CAAE2xG,OAAQe,EAAM9pB,UAEhC8pB,EAAMhC,cAAcz8F,SAAQ,SAAUo7C,GACpC0H,EAAS/2D,KAAK,CAAE2xG,OAAQtiD,EAAQpmD,UAElC+X,EAAO61B,SAAW,IAAWkgB,EAAX,KAkJlBu8C,CAAgBtyF,EAAQ0xF,GA/I1B,SAA6B1xF,EAAQ0xF,GACnC,IAAIa,EAAe,GACfb,EAAM/B,eACR+B,EAAM/B,aAAa18F,SAAQ,SAAUu/F,GACnC,GAAIA,EAAQzzG,OAASyzG,EAAQzzG,MAAMkC,QAAQ,MAA4C,IAApCuxG,EAAQzzG,MAAM43B,MAAM,KAAK97B,OAAc,CACxF,IAAI43G,EAASD,EAAQzzG,MAAM43B,MAAM,KAEjC47E,EAAavzG,KAAKyzG,EAAO,GAAK,IAAMA,EAAO,QAG3CF,EAAa13G,OAAS,IACxBmlB,EAAOozD,aAAa8L,cAAckC,MAAQmxB,IAqI9CG,CAAoB1yF,EAAQ0xF,GAhI9B,SAA6B1xF,EAAQ0xF,GACnC1xF,EAAOqzD,aAAe,CACpBuO,YAAa8vB,EAAM9vB,aAAe,EAClC/B,MAAOrjB,EAAcm2C,8BAA8BjB,EAAM7vB,cAAgB,EACzEE,cAAe2vB,EAAM3vB,cACrB9E,MAAOy0B,EAAM1vB,aA4Hf4wB,CAAoB5yF,EAAQ0xF,GA1G9B,SAA6B1xF,EAAQ0xF,GACnC,GAAIA,EAAMnwB,QAAS,CACjB,IAAIhsB,EAAU,GACdvkD,QAAQiC,QAAQy+F,EAAMnwB,SAAS,SAAUvhE,GACvC,GAAIA,EAAO6+B,MAAO,CAChB,IAAIjoB,EAAIy4E,EAAa/lC,aAAatpD,EAAO6+B,OACzCjoB,EAAEqyC,KAAKhhE,KAAO+X,EAAOgpD,UAAYpyC,EAAEqyC,KAAKhhE,KACxCstD,EAAQv2D,KAAK43B,OAGjB5W,EAAOozD,aAAa8L,cAAcqC,QAAUhsB,GAiG9Cs9C,CAAoB7yF,EAAQ0xF,GA7F9B,SAA6B1xF,EAAQ0xF,GACnC,GAAIA,EAAMpwB,QAAS,CACjB,IAAIrrB,EAAU,GACdjlD,QAAQiC,QAAQy+F,EAAMpwB,SAAS,SAAUprB,GACvC,GAAIA,EAAOrX,MAAO,CAChB,IAAIjoB,EAAI04E,EAAav8B,aAAa7c,EAAOrX,OACzCjoB,EAAEqyC,KAAKhhE,KAAO2uB,EAAEk8C,WACZ5c,EAAO66C,gBAAkB76C,EAAOx7D,QAA4B,KAAlBw7D,EAAOx7D,SACnDk8B,EAAEqyC,KAAKhhE,KAAOiuD,EAAOx7D,QAEvBu7D,EAAQj3D,KAAK43B,OAGjB5W,EAAOozD,aAAa8L,cAAcoC,QAAUrrB,GAiF9C68C,CAAoB9yF,EAAQ0xF,GAjH9B,SAAgC1xF,EAAQ0xF,GACtC1xF,EAAOozD,aAAaiN,UAAU/V,YAAc9N,EAAcu2C,wCAAwCrB,EAAM9B,sBACxG5vF,EAAOozD,aAAaiN,UAAUC,YAAc9jB,EAAcw2C,wCAAwCtB,EAAM7B,sBAgHxGoD,CAAuBjzF,EAAQ0xF,GA9EjC,SAAmC1xF,EAAQ0xF,GAErCA,EAAMthB,SAAW,IACnBpwE,EAAOozD,aAAa6K,UAAUkB,OAAOjB,SAA4B,IAAjBwzB,EAAMthB,UAGpDshB,EAAM5B,eAAiB,IACzB9vF,EAAOozD,aAAa6K,UAAUqB,aAAapB,SAAkC,IAAvBwzB,EAAM5B,gBAwE9DoD,CAA0BlzF,EAAQ0xF,GApEpC,SAAsC1xF,EAAQ0xF,GAE5C,IAAI1hB,GAAe93E,KAAK+3E,MAA0B,EAApByhB,EAAM3hB,aAAmB,GAAGG,QAAQ,GAClEF,GAAe,QACe,OAA1B0hB,EAAM3B,kBACR/f,GAAe,MAEbA,EAAc,IAChBhwE,EAAOozD,aAAa6K,UAAUkB,OAAOf,YAAc4R,GAGrD,IAAIG,GAAqBj4E,KAAK+3E,MAAgC,EAA1ByhB,EAAM9rB,mBAAyB,GAAGsK,QAAQ,GAC9EC,GAAqB,QACe,OAAhCuhB,EAAM1B,wBACR7f,GAAqB,MAEnBA,EAAoB,IACtBnwE,EAAOozD,aAAa6K,UAAUqB,aAAalB,YAAc+R,GAoD3DgjB,CAA6BnzF,EAAQ0xF,GA7HvC,SAA8B1xF,EAAQ0xF,GACpC1xF,EAAOozD,aAAaqM,cAAgB,CAClCE,UAAW+xB,EAAMhyB,kBAAoB,MACrCG,MAAOrjB,EAAcm2C,8BAA8BjB,EAAM9xB,eAAiB,IAC1EG,YAAa2xB,EAAM5xB,oBAAsB,EACzCG,OAAQzjB,EAAcm2C,8BAA8BjB,EAAM1xB,gBAAkB,GAyH9EozB,CAAqBpzF,EAAQ0xF,GAjD/B,SAAgC1xF,EAAQ0xF,GACtC,IAAIhe,EAAU,GACVge,EAAMvxB,gBACRngE,EAAOozD,aAAa8M,UAAY,CAAEj4E,KAAMypG,EAAMvxB,eAClB,SAAxBuxB,EAAMvxB,gBACRuxB,EAAMtxB,cAAcntE,SAAQ,SAAU2gF,GAChCA,EAAI10F,OACNw0F,EAAQE,EAAI10F,MAAQ00F,EAAI70F,UAGQ,IAAhC7E,OAAOD,KAAKy5F,GAAS74F,QAAgB64F,EAAQr4C,cAAgBnhD,SAC/D8lB,EAAOozD,aAAa8M,UAAU9sB,QAAUsgC,KAuC9C2f,CAAuBrzF,EAAQ0xF,GACxB1xF,GAyDkB3Q,KA2BrBm3D,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAElDt3C,EAAGxB,IAAI,CACLqpC,QAAS6qC,EAAc7qC,UACvBhB,SAAUmQ,EAAenQ,UAAS,GAAM,GAAM,GAC9CE,QAASuQ,GAAc,KAAOsoC,EAAc74C,UAAY,GACxDV,QAASiR,GAAc,IAAMgkB,EAAcj1B,UAAY,GACvD91C,MAAOygD,EAAYzgD,QACnB86E,wBAAyB1K,EAAczG,eAAe5iB,EAAa,MACnEwzB,gBAmBJ/4C,iBACE,MAAM57C,EAAU8gE,EAAe9gE,WAEzB,+BAAE40F,GAAmC9nF,EAASulF,iBACpD,OAAOryF,GAAW40F,GAAkC9zB,EAAezrD,kBAAkB,CAAC,4BAvBnE44F,KAEhBl8F,MAAK,SAAiBvX,GACrB2Q,EAAOsnF,iBAAmBj4F,EAAKk3D,QAC/BvmD,EAAO6nD,kBAAoBx4D,EAAKk2D,SAChCvlD,EAAO+iG,iBAAmB1zG,EAAKo2D,QAC/BzlD,EAAOgjG,iBAAmB3zG,EAAK01D,QAC/B/kD,EAAO+pF,wBAA0B16F,EAAK06F,wBAxC5C,SAA6C96E,GAC3C,IAAIg0F,EAAU,EACVC,EAAY,EAChB,IAAK,IAAIz7F,KAAKwH,EACRA,EAAMxH,GAAG+lE,MAAQv+D,EAAMxH,GAAG+lE,KAAOy1B,IACnCA,EAAUh0F,EAAMxH,GAAG+lE,MAEjBv+D,EAAMxH,GAAGkmE,QAAU1+D,EAAMxH,GAAGkmE,OAASu1B,IACvCA,EAAYj0F,EAAMxH,GAAGkmE,QAIvB3tE,EAAOrF,MAAMyuF,aADX6Z,EAAU,EACgBA,EAAU,IAEV,GAG5BjjG,EAAOrF,MAAM2uF,gBADX4Z,EAAY,EACiBx7F,KAAKwf,MAAMg8E,EAAY,IAAO,KAE9B,MAsB7BC,CAAoC9zG,EAAK4f,OACzCjP,EAAOnL,QAAU8gE,EAAe9gE,UAChCmL,EAAOwpF,gBAAkBn6F,EAAKm6F,mBAE/B9hC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oC,oOCtnB9C9F,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,MACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,KACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OACRA,EAAQ,OAQRY,QAAQ5W,OAAO,oBAAoBkW,WAAW,oBAAqB,CACjE,KACA,SACA,eACA,SACA,YACA,WACA,gBACA,iBACA,gBACA,eACA,gBACA,eACA,eACA,gBACA,cACA,cACA,cACA,mBACA,aACA,gBACA,eACA,gBACA,iBACA,gBACA,cACA,iBACA,YACA,gBACA,iBACA,WACA,kBACA,kBACA,SACE4e,EACA1e,EACAq6E,EACA/mC,EACA8vD,EACAnuB,EACAouB,EACAt3C,EACAiuB,EACA6kB,EACAP,EACAhtC,EACAwtC,EACA9yC,EACA2D,EACAqpB,EACAtpB,EACA6mB,EACA+sB,EACAjuF,EACAi3B,EACA+yC,EACA1pB,EACAy7B,EACAhgC,EACAnF,EACAh8B,EACAg6D,EACAv0B,EACA/zD,EACA4iD,EACA8M,GAEArxD,EAAOrK,aAAeK,EAAAA,EAAAA,QAEtBgK,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAO2B,SAAWA,EAClB3B,EAAOrF,MAAQ,CACb4oG,kBAAkB,EAClBC,oBAAoB,EACpBC,oBAAoB,GAGtBzjG,EAAOzB,WAAa,CAClB0hF,cAAe,IAAI3R,EAAAA,uBAGrBtuE,EAAO63D,MAAQ,GACf73D,EAAO2yD,gBAAkB,GAEzB3yD,EAAO0jG,YAAc,EAErB,IAAIC,EAAkB,GAClBC,EAAwB,GAwT5B,SAASC,EAAat7F,GACpB,IAAIiH,EAASw8C,EAAcG,gBAAgB5jD,EAAQ6jD,OAMnD,GALA58C,EAAO/X,KAAO8Q,EAAQ9Q,KACtB+X,EAAOg2B,OAASmqB,EAAYS,wBAAwB7nD,EAAQu7F,eAC5Dt0F,EAAOozD,aAAa8L,cAAcnC,IAAMgW,EAAAA,wBAAqCh6E,EAAQw7F,sBACrFv0F,EAAOozD,aAAa8L,cAAclpC,OAASmqB,EAAYS,wBAAwB7nD,EAAQy7F,wBAEnFhkG,EAAO6vD,WAAWtnD,EAAS,CAAC,UAAW,CACzC,MAAMkwC,EAAQ2Y,EAAY+M,8BAA8Bn+D,EAAOzB,WAAW0hF,eAC1EzwE,EAAOozD,aAAa8L,cAAc5c,MAAQrZ,EAAM2lB,UAChD5uD,EAAOkhD,WAAa1wD,EAAOzB,WAAW0hF,cAAcpuB,SAAS16D,QAE7DqY,EAAOozD,aAAa8L,cAAc5c,MAAQvpD,EAAQupD,MAyBpD,GAtBI9xD,EAAO6vD,WAAWtnD,EAAS,CAAC,eAC9BiH,EAAO61B,SAAW,IAChB,IAAS98B,EAAQ88B,UAAWpG,GAASA,EAAK9nC,IAAM8nC,EAAKglE,YACpDhlE,IAAD,CAAakhE,OAAQlhE,EAAK9nC,OAE5BqY,EAAOozD,aAAav9B,SAAW71B,EAAO61B,UAGxC71B,EAAOozD,aAAa8L,cAAcoC,QAAUvoE,EAAQ27F,eAAiB37F,EAAQ27F,eAAen7G,IAAI+1G,EAAav8B,cAAgB,GAC7H/yD,EAAOozD,aAAa8L,cAAcqC,QAAUxoE,EAAQ47F,eAAiB57F,EAAQ47F,eAAep7G,IAAI81G,EAAa/lC,cAAgB,GAC7HtpD,EAAOozD,aAAa8L,cAAckC,MAAQroE,EAAQqoE,MAAQ5kB,EAAco4C,kCAAkC77F,EAAQqoE,OAAS,GAEtG,eAAjBroE,EAAQ8jD,OACV78C,EAAO68C,KAAKC,WAAWC,SAAWhkD,EAAQgkD,UAE5C/8C,EAAOozD,aAAa8L,cAAcnT,OAAShzD,EAAQ87F,mBACN,IAAlC70F,EAAOozD,aAAaiN,YAC7BrgE,EAAOozD,aAAaiN,UAAY,IAElCrgE,EAAOozD,aAAaiN,UAAU/V,YAAc9N,EAAcu2C,wCAAwCh6F,EAAQ+7F,oBAC1G90F,EAAOozD,aAAaiN,UAAUC,YAAc9jB,EAAcw2C,wCAAwCj6F,EAAQg8F,oBAEtGvkG,EAAO6vD,WAAWtnD,EAAS,CAAC,gBAAiB,mBAAoB,sBAAuB,2BAA4B,CAEtH,IAAIi3E,GAAe93E,KAAK+3E,MAAiC,EAA3Bl3E,EAAQsmE,kBAAwB,GAAG6Q,QAAQ,GACzEF,GAAe,QACf,IAAIG,GAAqBj4E,KAAK+3E,MAAuC,EAAjCl3E,EAAQymE,wBAA8B,GAAG0Q,QAAQ,GACrFC,GAAqB,QACrBnwE,EAAOozD,aAAa6K,UAAY,CAC9BkB,OAAQ,CACNjB,SAAkC,IAAxBnlE,EAAQqmE,cAClBhB,YAAa4R,GAEf1Q,aAAc,CACZpB,SAAwC,IAA9BnlE,EAAQwmE,oBAClBnB,YAAa+R,IAwBnB,GAnBI3/E,EAAO6vD,WAAWtnD,EAAS,CAAC,sBAAuB,cAAe,oBAAqB,kBACzFiH,EAAOqzD,aAAe,CACpBuO,YAAa7oE,EAAQ4oE,kBACrB9B,MAAOrjB,EAAcm2C,8BAA8B55F,EAAQ8oE,cAAgB,EAC3EE,cAAehpE,EAAQ+oE,oBACvB7E,MAAOlkE,EAAQipE,cAIfxxE,EAAO6vD,WAAWtnD,EAAS,CAAC,mBAAoB,eAAgB,qBAAsB,oBACxFiH,EAAOozD,aAAaqM,cAAgB,CAClCE,UAAW5mE,EAAQ2mE,iBACnBG,MAAOrjB,EAAcm2C,8BAA8B55F,EAAQ6mE,eAAiB,IAC5EG,YAAahnE,EAAQ+mE,mBACrBG,OAAQzjB,EAAcm2C,8BAA8B55F,EAAQinE,gBAAkB,IAIlFhgE,EAAOozD,aAAa8M,UAAY,KAC5BnnE,EAAQonE,gBACVngE,EAAOozD,aAAa8M,UAAY,CAAEj4E,KAAM8Q,EAAQonE,eAClB,SAA1BpnE,EAAQonE,eAA0B,CACpC,IAAIuT,EAAUl3B,EAAcw4C,iCAAiCj8F,EAAQqnE,eACjC,IAAhClmF,OAAOD,KAAKy5F,GAAS74F,QAAgB64F,EAAQr4C,cAAgBnhD,SAC/D8lB,EAAOozD,aAAa8M,UAAU9sB,QAAUsgC,GAiB9C,OAZI36E,EAAQm9B,OACVn9B,EAAQm9B,MAAMjjC,SAAQ,SAAU46D,GACA,OAA1BA,EAAQsiC,eAAoD,KAA1BtiC,EAAQsiC,sBACrCtiC,EAAQsiC,iBAKrBnwF,EAAOszD,aAAe,CACpBzW,KAAO78C,EAAOszD,cAAgBtzD,EAAOszD,aAAazW,MAAS,MAC3D3mB,MAAOn9B,EAAQm9B,OAEDl2B,EA0KlB,SAASwvE,IACP,IAAIhpB,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAC9CzK,EAAavrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,WAEnDhjD,EAAU,KACdwjD,EAAexjD,QAAQ8xE,EAAajkF,SAASlN,IAC1C0d,MAAK,SAAiBvX,GAarB,OAZAkZ,EAAUlZ,EACV2Q,EAAOykG,WAAazkG,EAAO0jG,aAAen7F,EAAQxF,QAC7C/C,EAAOykG,aACVzkG,EAAO0jG,YAAcn7F,EAAQxF,SAnCrC,SAA4BwF,GAC1BA,EAAQqmE,cAAgBrmE,EAAQqmE,cAAgB,KAAc,EAC9DrmE,EAAQwmE,oBAAsBxmE,EAAQwmE,oBAAsB,KAAc,EAC1ExmE,EAAQsmE,iBAAmBtmE,EAAQsmE,iBAAmB,KAAO,MAAQ,EACrEtmE,EAAQymE,uBAAyBzmE,EAAQymE,uBAAyB,KAAO,MAAQ,EAkC7E01B,CAAmBn8F,GAtDzB,SAAgCA,GAC9BA,EAAQ27F,eAAiB37F,EAAQuoE,QAAUvoE,EAAQuoE,QAAQ/nF,IAAI+1G,EAAa18B,eAAiB,GAC7F75D,EAAQ47F,eAAiB57F,EAAQwoE,QAAUxoE,EAAQwoE,QAAQhoF,IAAI81G,EAAaxmC,eAAiB,GAC7F9vD,EAAQw7F,qBAAuBxhB,EAAAA,oBACRh6E,EAAQgkE,KAC5BxjF,KAAKqjC,IAAD,IAAaA,EAAGsyC,OAAO,MAC3Bz9D,MAAK,CAAC0jG,EAAIC,IAAQD,EAAGj2G,KAAOk2G,EAAGl2G,KAAO,GAAK,IAC9C6Z,EAAQqnE,cAAgB5jB,EAAc64C,iCAAiCt8F,EAAQqnE,eAC/ErnE,EAAQu7F,cAAgBn0C,EAAY8O,wBAAwBl2D,EAAQi9B,QACpEj9B,EAAQy7F,uBAAyBr0C,EAAY8O,wBAAwBl2D,EAAQ0nE,iBAC7E1nE,EAAQ87F,cAAgB7jG,QAAQu0D,KAAKxsD,EAAQgzD,QAC7ChzD,EAAQ+7F,mBAAqBt4C,EAAc84C,+BAA+Bv8F,EAAQuxD,aAClFvxD,EAAQg8F,mBAAqBv4C,EAAc+4C,+BAA+Bx8F,EAAQunE,aAClFvnE,EAAQqoE,MAAQ5kB,EAAcg5C,kCAAkCz8F,EAAQqoE,OA0CpEq0B,CAAuB18F,GAhC7B,SAA4BA,GAC1BA,EAAQ6mE,aAAepjB,EAAck5C,8BAA8B38F,EAAQ6mE,eAAiB,KAC5F7mE,EAAQinE,cAAgBxjB,EAAck5C,8BAA8B38F,EAAQinE,gBAAkB,KAC9FjnE,EAAQ8oE,YAAcrlB,EAAck5C,8BAA8B38F,EAAQ8oE,cAAgB,KAC1F9oE,EAAQmoE,gBAAkBnoE,EAAQmoE,gBAAkB1kB,EAAck5C,8BAA8B38F,EAAQmoE,iBAAmB,GA6BvHy0B,CAAmB58F,GACnBvI,EAAOuI,QAAUA,EACjBo7F,EAAkBnjG,QAAQu0D,KAAKxsD,GAExBmW,EAAGxB,IAAI,CACZqpC,QAAS6qC,EAAc7qC,UACvBsR,MAAOmhB,EAAYnhB,MAAM,CAAEtvD,QAAS,CAACA,EAAQ9Q,QAC7CyuC,WAAYqlB,EAAagrB,EAAiBrwC,aAAe,GACzDj3B,MAAOygD,EAAYzgD,QACnBw2C,QAASuQ,GAAc,KAAOsoC,EAAc74C,UAAY,GACxDV,QAASiR,GAAc,IAAMgkB,EAAcj1B,UAAY,GACvD4N,gBAAiBrB,EAAalM,SAC9B2kC,wBAAyB1K,EAAczG,eAAe5iB,EAAa,MACnEnO,kBAAmB6N,EAAenQ,UAAS,GAAM,EAAMyQ,GAAc,MACrEpJ,SAAUX,EAAeW,SAASrkD,EAAQpR,GAAIwK,EAASxK,SAG1DyP,MAAK6pC,eAAuBphD,GAC3B2Q,EAAOiP,MAAQ5f,EAAK4f,MACpBjP,EAAO+kD,QAAU11D,EAAK01D,QACtB/kD,EAAOylD,QAAUp2D,EAAKo2D,QACtBzlD,EAAO2yD,gBAAkBrB,EAAaiC,2BAA2BlkE,EAAKsjE,iBACtE3yD,EAAO+pF,wBAA0B16F,EAAK06F,wBACtC/pF,EAAOsnF,iBAAmBj4F,EAAKk3D,QAC/BvmD,EAAOwpF,gBAAkB7nF,EAASulF,iBAAiBuC,+BACnDzpF,EAAOnL,QAAU8gE,EAAe9gE,UAChCmL,EAAO6nD,kBAAoBx4D,EAAKw4D,kBAChC7nD,EAAOu3E,cAAgB,IAASv3E,EAAO6nD,mBAAoBhK,GAA8B,UAAlBA,EAAQc,QAE/E,MAAMymD,EAAkB,IAAS,IAASplG,EAAOuI,QAAQ6jD,MAAM+V,KAAK98B,UAAY,GAAIrlC,EAAOuI,QAAQ6jD,MAAM+V,KAAKS,aAAav9B,UAAY,IAAK,UACtIkgB,EAAW,IACf,IAAM6/C,GAAiB,EAAGjF,OAAAA,KAAa,IAAO9wG,EAAKw4D,kBAAmB,CAAE1wD,GAAIgpG,MAC5EhlE,SAGF,GAAI,IAAOn7B,EAAOuI,QAAQm9B,OAAQ9C,GAA8B,YAArBA,EAAKk9D,cAA4B,CAC1E,MAAMuF,EAAiB,IAAOrlG,EAAO6nD,mBAAoBhK,GAAYA,EAAQkvB,UACzEs4B,GACF9/C,EAASpE,QAAQkkD,GAmBrB,GAfArlG,EAAOuI,QAAQ88B,eAAiBx+B,QAAQqW,IACtC,IAAMqoC,GAAU9U,MAAAA,IACd,IAAI60D,EAAO,GACX,GAAIrmE,EAAKsf,KAAKC,OAAOn0D,OACnBi7G,EAAOrmE,EAAKsf,KAAKC,OAAO,GAAGO,WACtB,CACL,MAAMlB,QAAgB6X,EAAe7X,QAAQ5e,EAAK9nC,IAClDmuG,EAAQznD,GAAWA,EAAQU,MAAQV,EAAQU,KAAKC,QAAUX,EAAQU,KAAKC,OAAOn0D,QAAUwzD,EAAQU,KAAKC,OAAO,GAAGO,QAAW,GAE5H,MAAO,CAAE5nD,GAAI8nC,EAAK9nC,GAAIM,KAAMwnC,EAAKxnC,KAAMs2E,KAAMu3B,EAAMrB,UAAWhlE,EAAK8tC,aAIvE42B,EAAgBt+D,SAAW7kC,QAAQu0D,KAAK/0D,EAAOuI,QAAQ88B,UAEnDh2C,EAAKu9D,SAASviE,OAAS,EAAG,CAC5B,IAAI+hG,EAAU/8F,EAAKu9D,SAAS,GAC5B5sD,EAAOqqF,eAAgB,EACvBrqF,EAAOulG,UAAYnZ,EAAQj1F,GAC3B6I,EAAOwlG,WAAavb,EAAciB,iBAAiBkB,EAAQjB,OAG7D,IAAItzB,EAAQxoE,EAAKwoE,MAEjB,GAAItM,EAEF,IADA,IAAIrlB,EAAa72C,EAAK62C,WACb/7C,EAAI,EAAGA,EAAI0tE,EAAMxtE,OAAQF,IAAK,CACrC,IAAIi8D,EAAOyR,EAAM1tE,GACjBm5G,EAAWmC,yBAAyBr/C,EAAMlgB,GAI9C8lB,EAAc05C,wBAAwBn9F,EAASsvD,GAE/C73D,EAAO63D,MAAQxoE,EAAKwoE,MAGpB,IAAIorC,EAAU,EACd,IAAK,IAAIx7F,KAAKpY,EAAK4f,MACb5f,EAAK4f,MAAMxH,GAAG+lE,MAAQn+E,EAAK4f,MAAMxH,GAAG+lE,KAAOy1B,IAC7CA,EAAU5zG,EAAK4f,MAAMxH,GAAG+lE,MAI1BxtE,EAAOrF,MAAMyuF,aADX6Z,EAAU,EACgBA,EAAU,IAEV,GAG9B,MAAMxqD,EAAQz4C,EAAOuI,QAAQ6jD,MAAM+V,KAAKS,aAAa8L,cAAc5c,MACnET,EAAgBw3B,uCAAuCpwC,EAAO92C,EAASxK,IAAIyP,MAAMynC,IAC/EruC,EAAOzB,WAAW0hF,cAAgB5xC,EAClCruC,EAAO2lG,kBAAoB,IAAMt3D,EAAO,cAAe,MAIzDruC,EAAOrF,MAAM2lG,UAAY,CAAEsF,UAAU,GAErC3wB,GAAS,WACPouB,UAGH37C,OAAM,SAAehiD,GACpB1F,EAAOylD,QAAU,GACjBzlD,EAAO+kD,QAAU,GACjB1vC,EAAcxc,MAAM,UAAW6M,EAAK,yCAiB1C,SAASmgG,EAAmBt9F,EAAS7Z,GACnCk1G,EAAsBp1G,KAAKE,GAC3B6Z,EAAQsnD,YAAa,EA7sBvB7vD,EAAO8lG,SAAW,SAAU/uC,GACtBqsC,EAAUrsC,SAAWA,EACvBqsC,EAAUrsC,KAAKA,GAEfssC,KAIJrjG,EAAO+lG,uBAAyB,SAAgCx9F,GAC9DA,EAAQw7F,qBAAqBv1G,KAAK,CAAEE,KAAM,GAAIH,MAAO,KACrDs3G,EAAmBt9F,EAAS,uBAAwBA,EAAQw7F,uBAG9D/jG,EAAOgmG,gBAEP,SAAyBpiG,GACvB,MAAM2E,EAAUvI,EAAOuI,QAEjB09F,EAAS19F,EAAQw7F,qBACvBx7F,EAAQw7F,qBAAuBngG,EAAI7a,KAAKqjC,IACtC,MAAM85E,EAASD,EAAO5xG,MAAK,EAAG3F,KAAAA,KAAW09B,EAAE19B,OAASA,IAC9CgwE,EAAQwnC,GAAUA,EAAOxnC,MAC/B,MAAO,IAAKtyC,EAAGsyC,MAAAA,MAGjBmnC,EAAmBt9F,EAAS,uBAAwBA,EAAQw7F,uBAG9D/jG,EAAOogG,UAAY,SAAmB73F,EAASiH,GAE3CA,GAGc,IAFdjH,EAAQ47F,eAAejnG,QAAO,SAAUipG,GACtC,OAAOA,EAAchvG,KAAOqY,EAAOrY,MAClC9M,SAEHke,EAAQ47F,eAAe31G,KAAK,CAAE2I,GAAIqY,EAAOrY,GAAIM,KAAM+X,EAAO/X,KAAM+gE,SAAUhpD,EAAO/X,KAAMihE,IAAK,IAAKE,IAAK,IAAKvM,KAAM,MACjHw5C,EAAmBt9F,EAAS,iBAAkBA,EAAQ47F,kBAG1DnkG,EAAO67E,aAAe,SAAsBtzE,EAASwiB,GAE5B,OADFxiB,EAAQ47F,eAAet2C,OAAO9iC,EAAO,IAExD86E,EAAmBt9F,EAAS,iBAAkBA,EAAQ47F,iBAG1DnkG,EAAOomG,aAAe,SAAsB79F,GAC1Cs9F,EAAmBt9F,EAAS,iBAAkBA,EAAQ47F,iBAExDnkG,EAAOsgG,UAAY,SAAmB/3F,EAAS89F,GAC7C,GAAIA,EAAU3gD,OAAQ,CACpB,IAAI4gD,EAAWD,EAAU3gD,OAAOjuD,KAC5B4uG,EAAUT,WACZU,EAAWD,EAAUn8G,QAKP,IAFdqe,EAAQ27F,eAAehnG,QAAO,SAAUqpG,GACtC,OAAOA,EAAcpvG,KAAOkvG,EAAU3gD,OAAOvuD,IAAMovG,EAAc/tC,WAAa8tC,KAC7Ej8G,SAEHke,EAAQ27F,eAAe11G,KAAK,CAAE2I,GAAIkvG,EAAU3gD,OAAOvuD,GAAIM,KAAM4uG,EAAU3gD,OAAOjuD,KAAM+gE,SAAU8tC,EAAU5tC,IAAK,IAAKE,IAAK,IAAKvM,KAAM,MAClIw5C,EAAmBt9F,EAAS,iBAAkBA,EAAQ27F,mBAI5DlkG,EAAO2+F,aAAe,SAAsBp2F,EAASwiB,GAE5B,OADFxiB,EAAQ27F,eAAer2C,OAAO9iC,EAAO,IAExD86E,EAAmBt9F,EAAS,iBAAkBA,EAAQ27F,iBAG1DlkG,EAAO4/B,SAAW,SAAkBr3B,GAClCA,EAAQu7F,cAAct1G,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,GAAI8gE,cAAe,KAChEw2C,EAAmBt9F,EAAS,gBAAiBA,EAAQu7F,gBAEvD9jG,EAAOsvD,YAAc,SAAqB/mD,EAASwiB,GAE1B,OADFxiB,EAAQu7F,cAAcj2C,OAAO9iC,EAAO,IAEvD86E,EAAmBt9F,EAAS,gBAAiBA,EAAQu7F,gBAGzD9jG,EAAOwvD,YAAc,SAAqBjnD,EAAS/W,GAC7CA,EAAMjD,QAAUiD,EAAM69D,eAAiB79D,EAAMjH,MAAQiH,EAAMi+D,aAC7Do2C,EAAmBt9F,EAAS,gBAAiBA,EAAQu7F,gBAGzD9jG,EAAO6gG,kBAAoB,SAA2Bt4F,GACpDA,EAAQy7F,uBAAuBx1G,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,GAAI8gE,cAAe,KACzEw2C,EAAmBt9F,EAAS,yBAA0BA,EAAQy7F,yBAEhEhkG,EAAO8gG,qBAAuB,SAAqBv4F,EAASwiB,GAEnC,OADFxiB,EAAQy7F,uBAAuBn2C,OAAO9iC,EAAO,IAEhE86E,EAAmBt9F,EAAS,yBAA0BA,EAAQy7F,yBAGlEhkG,EAAOwmG,qBAAuB,SAAqBj+F,EAAS/W,GACtDA,EAAMjD,QAAUiD,EAAM69D,eAAiB79D,EAAMjH,MAAQiH,EAAMi+D,aAC7Do2C,EAAmBt9F,EAAS,yBAA0BA,EAAQy7F,yBAGlEhkG,EAAOymG,SAAW,SAAkBl+F,GAClCA,EAAQ87F,cAAc71G,KAAK,CAAEoH,KAAM,SAAU6lE,OAAQ,KAAM0kC,OAAQ,GAAI3vB,UAAU,IACjFq1B,EAAmBt9F,EAAS,gBAAiBA,EAAQ87F,gBAEvDrkG,EAAO0mG,YAAc,SAAqBn+F,EAASwiB,GAE1B,OADFxiB,EAAQ87F,cAAcx2C,OAAO9iC,EAAO,IAEvD86E,EAAmBt9F,EAAS,gBAAiBA,EAAQ87F,gBAIzDrkG,EAAO2mG,kBAAoB,SAA2Bp+F,EAASizD,GAC7DA,EAAMC,OAAS,KACfz7D,EAAO4mG,YAAYr+F,EAASizD,IAG9Bx7D,EAAO4mG,YAAc,SAAqBr+F,GACxCs9F,EAAmBt9F,EAAS,gBAAiBA,EAAQ87F,gBAGvDrkG,EAAO6mG,WAAa,SAAoBt+F,GACjCA,EAAQ88B,WACX98B,EAAQ88B,SAAW,IAErB98B,EAAQ88B,SAAS72C,KAAK,CAAEy1G,UAAU,KAGpCjkG,EAAO8mG,cAAgB,SAAuBv+F,EAASwiB,GACrD,IAAIg8E,EAAiBx+F,EAAQ88B,SAASwoB,OAAO9iC,EAAO,GAChDg8E,GAAkBA,EAAe18G,QAAU08G,EAAe,GAAG5vG,IAC/D0uG,EAAmBt9F,EAAS,WAAYA,EAAQ88B,WAIpDrlC,EAAOgnG,cAAgB,SAAuBz+F,GAC5Cs9F,EAAmBt9F,EAAS,WAAYA,EAAQ88B,WAGlDrlC,EAAOygG,uBAAyB,SAAgCl4F,GAC9DA,EAAQ+7F,mBAAmB91G,KAAK,CAAEjE,IAAK,GAAI+4E,SAAU,KAAM/0E,MAAO,KAClEs3G,EAAmBt9F,EAAS,qBAAsBA,EAAQ+7F,qBAE5DtkG,EAAO0gG,0BAA4B,SAAmCn4F,EAASwiB,GAEtD,OADFxiB,EAAQ+7F,mBAAmBz2C,OAAO9iC,EAAO,IAE5D86E,EAAmBt9F,EAAS,qBAAsBA,EAAQ+7F,qBAG9DtkG,EAAOinG,0BAA4B,SAAU1+F,GAC3Cs9F,EAAmBt9F,EAAS,qBAAsBA,EAAQ+7F,qBAG5DtkG,EAAO2gG,uBAAyB,SAAUp4F,GACxCA,EAAQg8F,mBAAmB/1G,KAAK,CAAE00E,SAAU,SAAU30E,MAAO,KAC7Ds3G,EAAmBt9F,EAAS,qBAAsBA,EAAQg8F,qBAE5DvkG,EAAO4gG,0BAA4B,SAAUr4F,EAASwiB,GAE7B,OADFxiB,EAAQg8F,mBAAmB12C,OAAO9iC,EAAO,IAE5D86E,EAAmBt9F,EAAS,qBAAsBA,EAAQg8F,qBAG9DvkG,EAAOknG,0BAA4B,SAAU3+F,GAC3Cs9F,EAAmBt9F,EAAS,qBAAsBA,EAAQg8F,qBAG5DvkG,EAAOmnG,iBAAmB,SAA0B5+F,GAC7CA,EAAQm9B,QACXn9B,EAAQm9B,MAAQ,IAElBn9B,EAAQm9B,MAAMl3C,KAAK,CAAEmxG,cAAe,GAAIC,WAAY,GAAIC,SAAU,MAAOC,YAAa,aAExF9/F,EAAOonG,oBAAsB,SAA6B7+F,GACxDs9F,EAAmBt9F,EAAS,QAASA,EAAQm9B,QAE/C1lC,EAAOqnG,2BAA6B,SAAoC9+F,EAASwiB,GAExD,OADFxiB,EAAQm9B,MAAMmoB,OAAO9iC,EAAO,IAE/C86E,EAAmBt9F,EAAS,QAASA,EAAQm9B,QAIjD1lC,EAAO4mF,gBAAkB,SAAyBr+E,GAChDA,EAAQqnE,cAAcphF,KAAK,CAAEjE,IAAK,GAAIgE,MAAO,GAAI8gE,cAAe,KAChEw2C,EAAmBt9F,EAAS,gBAAiBA,EAAQqnE,gBAEvD5vE,EAAO6mF,mBAAqB,SAA4Bt+E,EAASwiB,GAExC,OADFxiB,EAAQqnE,cAAc/hB,OAAO9iC,EAAO,IAEvD86E,EAAmBt9F,EAAS,gBAAiBA,EAAQqnE,gBAGzD5vE,EAAOsnG,mBAAqB,SAA4B/+F,EAASoV,GAC3DA,EAASpvB,QAAUovB,EAAS0xC,eAAiB1xC,EAASpzB,MAAQozB,EAAS8xC,aACzEo2C,EAAmBt9F,EAAS,gBAAiBA,EAAQqnE,gBAGzD5vE,EAAOunG,oBAAsB,SAA6Bh/F,GACxDs9F,EAAmBt9F,EAAS,gBAAiBA,EAAQonE,gBAGvD3vE,EAAOigG,cAAgB,SAAU13F,GAC1BA,EAAQqoE,QACXroE,EAAQqoE,MAAQ,IAElBroE,EAAQqoE,MAAMpiF,KAAK,CAAE61E,SAAU,GAAItiC,GAAI,MAEzC/hC,EAAOkgG,iBAAmB,SAAU33F,EAASwiB,GAEpB,OADFxiB,EAAQqoE,MAAM/iB,OAAO9iC,EAAO,IAE/C86E,EAAmBt9F,EAAS,QAASA,EAAQqoE,QAGjD5wE,EAAOwnG,iBAAmB,SAAUj/F,GAClCs9F,EAAmBt9F,EAAS,QAASA,EAAQqoE,QAG/C5wE,EAAO8qF,gBAAkB,SAAUrnF,GACjCzD,EAAOE,YAAW,KAChBF,EAAO+qF,cAAc/qF,EAAOuI,SAC5BvI,EAAOqqF,cAAgB5mF,MAI3BzD,EAAO+qF,cAAgB,SAAuBxiF,GACxCvI,EAAOqqF,cACTp+B,EAAeY,cAAc7sD,EAAOulG,WACjC3+F,MAAK,WACJ5G,EAAOwlG,WAAa,KACpBxlG,EAAOulG,UAAY,KACnBvlG,EAAOqqF,eAAgB,KAExB3iC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAGxCumD,EAAey0B,cAAcn4E,EAAQpR,GAAIwK,EAASxK,GAAI6I,EAAO2lG,kBAAmB,GAC7E/+F,MAAK,SAAiBvX,GACrB2Q,EAAOqqF,eAAgB,EACvBrqF,EAAOulG,UAAYl2G,EAAK8H,GACxB6I,EAAOwlG,WAAavb,EAAciB,iBAAiB77F,EAAK87F,UAEzDzjC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAK5C1F,EAAOynG,wBAA0B,WAC/B,MAAMC,EAAgB,IAAM1nG,EAAOzB,WAAW0hF,cAAe,cAAe,GACtE0nB,EAAkB3nG,EAAO2lG,mBAAqB+B,EAEhD1nG,EAAOqqF,eAAiBsd,GAC1B17C,EAAe27C,qBAAqB5nG,EAAOulG,UAAWmC,GAAehgD,OAAM,SAAehiD,GACxF2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAK1C1F,EAAOirF,YAAc,WACnBh7D,EAAUL,SAAS5vB,EAAOwlG,YAC1BrxD,EAAE,qBAAqB+gB,OACvB/gB,EAAE,qBAAqBghB,QAAQ,MAGjCn1D,EAAOswD,cAAgB7f,eAA6BloC,EAAS9e,GAC3D,GAAIA,EAEF,IAAK,MAAMc,KAAOd,EAChB,GAAY,UAARc,EACFyV,EAAOzB,WAAW0hF,oBAAsB5uB,EAAgBw3B,uCAAuC8a,EAAgB7xC,MAAOnwD,EAASxK,QAC1H,CACL,IAAI4zB,EAAQ64E,EAAsBnzG,QAAQlG,GACtCwgC,GAAS,GACX64E,EAAsB/1C,OAAO9iC,EAAO,QAM1C/qB,EAAOzB,WAAW0hF,oBAAsB5uB,EAAgBw3B,uCAAuC8a,EAAgB7xC,MAAOnwD,EAASxK,IAC/H1N,EAAOC,OAAOD,KAAK8e,GACnBq7F,EAAwB,GAE1Bn6G,EAAKgZ,SAAQ,SAAUolG,GACrBt/F,EAAQs/F,GAAalE,EAAgBkE,MAEvCt/F,EAAQsnD,YAAa,GAGvB7vD,EAAO6vD,WAAa,SAAUtnD,EAASu/F,GACrC,IAAIj4C,GAAa,EAUjB,OATAi4C,EAASrlG,SAAQ,SAAUlY,GACzB,GAAY,UAARA,EAAiB,CACnB,MAAMw9G,EAAgBx/F,EAAUA,EAAQ6jD,MAAM+V,KAAKS,aAAa8L,cAAc5c,MAAQ,KAChFk2C,EAAe52C,EAAY+M,8BAA8Bn+D,EAAOzB,WAAW0hF,eAAe7hB,UAChGvO,EAAaA,GAAck4C,IAAkBC,OAE7Cn4C,EAAaA,GAAc+zC,EAAsBnzG,QAAQlG,IAAQ,KAG9DslE,GAGT7vD,EAAOioG,eACP,WAEE,OADejoG,EAAOuI,QAAQ87F,cAChBnrF,OAAOsiD,GAAUA,EAAMC,QAAUD,EAAM2kC,UAgIvDngG,EAAOkoG,gBAAkB,SAAU3/F,GACjC+jC,EAAax6B,YAAY,CACvBhZ,MAAO,mBACPjB,QAAS,qCACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,MACP3F,UAAW,eAGfylB,SAAU,SAAmBC,GACtBA,GArCX,SAAyBhJ,GACvBvI,EAAOrF,MAAM8oG,oBAAqB,EAClC,IAAIj0F,EAAS,GACHA,EAASq0F,EAAat7F,GAChCwjD,EAAeS,OAAOjkD,EAASiH,EAAQ,YACpC5I,MAAK,SAAUvX,GACVA,EAAKwI,SAAWxI,EAAKwI,QAAQu1B,MAAM,eACrC/X,EAAcxc,MAAM,UAAWxJ,EAAM,UAErCgmB,EAAcF,QAAQ,UAAW,oCACjCnV,EAAOswD,cAAc,IACrB0uB,QAGHt3B,OAAM,SAAUp+D,GACXA,EAAE+F,KAAKwI,SAAWvO,EAAE+F,KAAKwI,QAAQ9H,SAAS,iCAC5CslB,EAAcxc,MAAM,UAAW,CAAEhB,QAAS,uCAE1Cwd,EAAcxc,MAAM,UAAWvP,EAAG,iCAGrCwjE,SAAQ,WACP9sD,EAAOrF,MAAM8oG,oBAAqB,KAkBlCyE,CAAgB3/F,OAKtBvI,EAAO+lF,qBACP,SAA8BC,GAC5BhmF,EAAOrF,MAAMqqF,kBAAoBgB,GAGnChmF,EAAOmoG,cAAgB,SAAuB5/F,GAC5C,IAAIiH,EAAS,GACHA,EAASq0F,EAAat7F,GAChCwjD,EAAeS,OAAOjkD,EAASiH,GAAQ5I,MACrC,SAAUvX,GACJA,EAAKwI,SAAWxI,EAAKwI,QAAQu1B,MAAM,eACrC/X,EAAcxc,MAAM,UAAWxJ,EAAM,UAErCgmB,EAAcF,QAAQ,+BAAgC,mBACtDnV,EAAOynG,2BAETznG,EAAOswD,cAAc,IACrB0uB,OAEF,SAAU11F,GACR+rB,EAAcxc,MAAM,UAAWvP,EAAG,gCAKxC0W,EAAOooG,cAAgB,WACrB97D,EAAap6B,gBAAgB,0GAA0G,SAAmBX,GACnJA,IAQPvR,EAAOrF,MAAM6oG,oBAAqB,EAClCz3C,EAAe19C,OAAOrO,EAAOuI,SAC1B3B,MAAK,WACJ,OAAO8X,EAAGupB,KAAKjoC,EAAOulG,WAAat5C,EAAeY,cAAc7sD,EAAOulG,eAExE3+F,MAAK,WACJyO,EAAcF,QAAQ,UAAW,gCACjCm+B,EAAOr8B,GAAG,kBAAmB,OAE9BywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAErConD,SAAQ,WACP9sD,EAAOrF,MAAM6oG,oBAAqB,UAIxCxjG,EAAOitD,mBAAqB,SAAU1kD,GACpC+jC,EAAaz4B,0BAA0B,6GAA6G,SAAUZ,GAC5J,GAAKA,EAAL,CAGA,IAAI+5C,GAAY,EACZ/5C,EAAO,KACT+5C,GAAY,GAMlB,SAA4BzkD,EAASykD,GACnChtD,EAAOrF,MAAM4oG,kBAAmB,EAChCh/C,EAAgB0I,mBAAmBtrD,EAASxK,GAAIoR,EAAQpR,GAAI61D,GACzDpmD,MAAK,WACJyO,EAAcF,QAAQ,+BAAgC5M,EAAQ9Q,MAC9DuI,EAAOswD,cAAc,IACrB0uB,OAEDt3B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAAkC6C,EAAQ9Q,SAE/Eq1D,SAAQ,WACP9sD,EAAOrF,MAAM4oG,kBAAmB,KAhBlCt2C,CAAmB1kD,EAASykD,QAkDhChtD,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAG5DhK,EAAO4qF,sBAAwB,SAAUC,GACvC,OAAIA,GACM7qF,EAAOkK,kBAAkB,CAAC,4BAE5BlK,EAAOkK,kBAAkB,CAAC,4BAiIpClK,EAAOqoG,uBACP,SAAgC9/F,EAAS7Z,GACnC6Z,EAAQ7Z,KAAUi1G,EAAgBj1G,IAAWA,KAAQi1G,IACvDp7F,EAAQsnD,YAAa,GAEvB+zC,EAAsBp1G,KAAKE,IAG7BsR,EAAOsoG,eACP,SAAwB/iD,EAAUx+B,GAChC,OAAOw+B,EAASroD,QAAQ2gD,IAAaA,EAAQkvB,UAAYlvB,EAAQ1mD,KAAO4vB,EAAQ5vB,IAAM6I,EAAOuI,QAAQ88B,SAASnsB,OAAOqvF,GAAmB1qD,EAAQ1mD,KAAOoxG,EAAepxG,SAQxK6nF,Q,iECn0BJx+E,QAAQ5W,OAAO,oBAAoBkW,WAAW,wBAAyB,CACrE,SACA,eACA,YACA,iBACA,gBACA,SAAUE,EAAQq6E,EAAc9mC,EAAWwY,EAAgB12C,GAoBzD,SAASq4E,IACP,IAAIC,EAAW3tF,EAAO2tF,SAClBntF,QAAQotF,UAAUD,KACpBp6C,EAAU7gC,OAAOi7E,GACjBA,EAAW,MAIf,SAASE,IACP,IAAIC,EAAc9tF,EAAOrF,MAAMmzF,YAC/B9tF,EAAO2tF,SAAWp6C,GAAU,WAC1BwY,EAAeiV,KAAKqZ,EAAajkF,SAASlN,GAAI,EAAG,EAAG8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EAAG7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OAAQ/tF,EAAOrF,MAAMq5D,WAClJptD,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,KAEfq4D,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,wCAEzB,IAAdooF,GAtCL9tF,EAAOrF,MAAQ,CACbmzF,YAAa,EACb95B,UAAW,IACXD,eAAgB,GAChBF,mBAAmB,GAGrB7zD,EAAOguF,oBAAsB,SAAUC,GAChCA,EAGHJ,IAFAH,KAMJ1tF,EAAO49E,IAAI,YAAY,WACrB8P,OAsCA3hC,EAAexjD,QAAQ8xE,EAAajkF,SAASlN,IAC1C0d,MAAK,SAAiBvX,GACrB2Q,EAAOuI,QAAUlZ,EAdrB08D,EAAeiV,KAAKqZ,EAAajkF,SAASlN,GAAI,EAAG,EAAG8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EAAG7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OAAQ/tF,EAAOrF,MAAMq5D,WAClJptD,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,EACdw+F,OAEDnmC,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,yCAUrCgiD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iD,iBCrE9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,qBAAsB,CAClE,KACA,SACA,iBACA,gBACA,gBACA,cACA,aACA,cACA,mBACA,WACA,SAAU4e,EAAI1e,EAAQ+rD,EAAgBC,EAAe32C,EAAe2jE,EAAasqB,EAAY5zC,EAAa6mB,EAAkB50E,GAI1H,SAAS6mG,IACP,IAAIj9C,EAAavrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,WAEvD,OAAO7sC,EACJxB,IAAI,CACH0oC,SAAUmG,EAAenG,WACzBiS,MAAOmhB,EAAYnhB,QACnB3xB,WAAYqlB,EAAagrB,EAAiBrwC,WAAW,GAAK,GAC1Dj3B,MAAOygD,EAAYzgD,UAEpBrI,MAAK,SAAiBvX,GACrB,IAAIu2D,EAAWv2D,EAAKu2D,SAChBiS,EAAQxoE,EAAKwoE,MAEjB,GAAItM,EAEF,IADA,IAAIrlB,EAAa72C,EAAK62C,WACbu+B,EAAI,EAAGA,EAAI5M,EAAMxtE,OAAQo6E,IAAK,CACrC,IAAIre,EAAOyR,EAAM4M,GACjB6+B,EAAWmC,yBAAyBr/C,EAAMlgB,GAI9C,IAAK,IAAI/7C,EAAI,EAAGA,EAAIy7D,EAASv7D,OAAQF,IAAK,CACxC,IAAIoe,EAAUq9C,EAASz7D,GACvB6hE,EAAc05C,wBAAwBn9F,EAASsvD,GAGjD73D,EAAOiP,MAAQ5f,EAAK4f,MACpBjP,EAAO63D,MAAQA,EACf73D,EAAO4lD,SAAWA,KAEnB8B,OAAM,SAAehiD,GACpB1F,EAAO4lD,SAAW,GAClBvwC,EAAcxc,MAAM,UAAW6M,EAAK,kCApC1C1F,EAAOwoG,YAAcA,EACrBxoG,EAAO2B,SAAWA,EAwChB6mG,Q,gBCrDNhoG,QAAQ5W,OAAO,oBAAoBkW,WAAW,kBAAmB,CAC/D,KACA,SACA,gBACA,cACA,gBACA,eACA,iBACA,SAAU4e,EAAI1e,EAAQyzC,EAAeic,EAAar6C,EAAem6B,EAAcmmB,GAkC7E,SAAS8yC,EAAgB36F,EAAMvhB,GAC7B,IAAIorE,EAAO,GACXA,EAAKjpE,KAAOof,EAAKvhB,GAAQ,GACzBorE,EAAK51B,GAAKj0B,EAAKvhB,GAAQ,GACvBorE,EAAKxgE,GAAK2W,EAAKvhB,EAAS,GAAG,GAC3BorE,EAAK70D,OAASgL,EAAKvhB,EAAS,GAAG,GAC/BorE,EAAKzxB,WAAap4B,EAAKvhB,EAAS,GAAG,GACnCorE,EAAK+wC,IAAM56F,EAAKvhB,EAAS,GAAG,GAAG45B,MAAM,KAAK,GAC1CwxC,EAAK9zC,OAAS/V,EAAKvhB,EAAS,GAAG,GAAG45B,MAAM,KAAK,GAC7CwxC,EAAKpyB,OAASz3B,EAAKvhB,EAAS,GAAG,GAC/BorE,EAAKjqE,QAAUogB,EAAKvhB,EAAS,GAAG,GAChCyT,EAAOkmD,MAAMriD,OAAOrV,KAAKmpE,GAe3B,SAASgxC,IAEU,sBADF3oG,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,UAEnD85C,EAAYzgD,QACTrI,MAAK,SAAUvX,GACd,IAAI4f,EAAQ5f,GAjBpB,SAAkC4f,GAChC,IAAI25F,EAAM,EACR/kF,EAAS,EACXrjB,QAAQiC,QAAQwM,GAAO,SAAU0oD,GAC/BixC,GAAOjxC,EAAK6V,KACZ3pD,GAAU8zC,EAAKgW,UAEjB3tE,EAAOg2F,SAAW4S,EAAM,IACxB5oG,EAAOi2F,YAAcpyE,EAUfglF,CAAyB55F,GACzBjP,EAAOiP,MAAQA,KAEhBy4C,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCArE5C1F,EAAO8N,KAAO,GACd9N,EAAO6kB,OAAS,GAChB7kB,EAAOkmD,MAAQ,GACflmD,EAAOg2F,SAAW,EAClBh2F,EAAOi2F,YAAc,EAsDrBj2F,EAAO2oG,SAAWA,EAgBlB,WACE3oG,EAAOnL,QAAU8gE,EAAe9gE,UAEhC,IAAI+gB,EAAW5V,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACrD8I,EAAGxB,IAAI,CACLxvB,QAAS+lD,EAAc/lD,UACvBogB,KAAM2lC,EAAc3lC,SAEnBlH,MAAK,SAAiBvX,GACrB2Q,EAAO6kB,OAASx1B,EAAK3B,QACrBsS,EAAO8N,KAAOze,EAAKye,KACF,sBAAb8H,EACF+yF,IAhFR,SAA0B76F,GAExB,IAAIg7F,EAAeh7F,EAAKi7F,aAExB/oG,EAAOkmD,MAAM4iD,EAAa,GAAG,IAAMA,EAAa,GAAG,GAEnD9oG,EAAOkmD,MAAM4iD,EAAa,GAAG,IAAMA,EAAa,GAAG,GAEnD,IAAI75F,EAA+B,YAAvB65F,EAAa,GAAG,GAAmBA,EAAa,GAAG,GAAKA,EAAa,GAAG,GAChFE,EAAap5G,SAASqf,EAAO,IACjCjP,EAAOkmD,MAAM4iD,EAAa,GAAG,IAAME,EAEnChpG,EAAOkmD,MAAMriD,OAAS,GAIxB,SAA0BiK,EAAMk7F,GAI9B,IAAIC,EAA6B,YAAfn7F,EAAK,GAAG,GAAmB,EAAI,EACjD,IAAK,IAAI3jB,EAAI,EAAGA,EAAI6+G,EAAY7+G,IAC9Bs+G,EAAgB36F,EAAMm7F,GACtBA,GAAe,EAVjBC,CAAiBJ,EAAcE,GAqEzBG,CAAiB95G,EAAKye,SAGzB45C,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCAI1Cs5E,O,qCCzGJx+E,QAAQ5W,OAAO,oBAAoBkW,WAAW,4BAA6B,CACzE,KACA,SACA,YACA,YACA,cACA,iBACA,cACA,gBACA,eACA,SAAU4e,EAAI1e,EAAQkuF,EAAW36C,EAAWmc,EAAa3D,EAAgBitB,EAAa3jE,EAAem+B,GAiDnG,SAASk6C,IACP,IAAIC,EAAW3tF,EAAO2tF,SAClBntF,QAAQotF,UAAUD,KACpBp6C,EAAU7gC,OAAOi7E,GACjBA,EAAW,MAIf,SAASE,IACP,IAAIC,EAAc9tF,EAAOrF,MAAMmzF,YAC/B9tF,EAAO2tF,SAAWp6C,GAAU,WAC1B70B,EAAGxB,IAAI,CACLjO,MAAOygD,EAAYzgD,QACnB22C,SAAUmG,EAAenG,WACzBiS,MAAOmhB,EAAYnhB,UAElBjxD,MAAK,SAAiBvX,GACrB,IAAI4f,EAAQ5f,EAAK4f,MACjBjP,EAAOiP,MAAQA,EACf,IAAI22C,EAAWv2D,EAAKu2D,SACpB5lD,EAAO4lD,SAAWA,EAClB,IAAIiS,EAAQxoE,EAAKwoE,MACjB73D,EAAO63D,MAAQA,EACfuxC,EAAsBn6F,EAAO22C,EAAUiS,MAExCnQ,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,+CAEzB,IAAdooF,GAgCL,SAASsb,EAAsBn6F,EAAO22C,EAAUiS,GAC9C,IAAIwxC,EAAiB,IA9BvB,SAA2BzjD,EAAUiS,GACnC,IAAK,IAAI1tE,EAAI,EAAGA,EAAIy7D,EAASv7D,OAAQF,IAGnC,IAFA,IAAIoe,EAAUq9C,EAASz7D,GAEds6E,EAAI,EAAGA,EAAI5M,EAAMxtE,OAAQo6E,IAAK,CACrC,IAAIre,EAAOyR,EAAM4M,GAEbre,EAAKsc,YAAcn6D,EAAQpR,KAC7BivD,EAAKuc,YAAcp6D,EAAQ9Q,OAwBjC6xG,CAAkB1jD,EAAUiS,GAlB9B,SAA2B5oD,EAAO4oD,GAChC,IAAK,IAAI1tE,EAAI,EAAGA,EAAI8kB,EAAM5kB,OAAQF,IAAK,CACrC,IAAIwtE,EAAO1oD,EAAM9kB,GACjBwtE,EAAK6K,MAAQ,GAEb,IAAK,IAAIiC,EAAI,EAAGA,EAAI5M,EAAMxtE,OAAQo6E,IAAK,CACrC,IAAIre,EAAOyR,EAAM4M,GAEbre,EAAK4rB,SAAWra,EAAKxgE,IACvBwgE,EAAK6K,MAAMh0E,KAAK43D,KAUtBmjD,CAAkBt6F,EAAO4oD,GAEzBwxC,EAAep6F,MAAQA,EACvBjP,EAAOqpG,eAAiBA,EApH1BrpG,EAAOrF,MAAQ,CACb6uG,sBAAsB,EACtBC,yBAAyB,EACzBC,mBAAmB,EACnB5b,YAAa,KAGf9tF,EAAO2pG,oCAAsC,SAA6ClmG,GACxFzD,EAAOE,YAAW,KAChBF,EAAOrF,MAAM8uG,wBAA0BhmG,EACvCzD,EAAO4pG,oCAIX5pG,EAAO6pG,8BAAgC,SAAuCpmG,GAC5EzD,EAAOE,YAAW,KAChBF,EAAOrF,MAAM+uG,kBAAoBjmG,EACjCzD,EAAO8pG,8BAIX9pG,EAAO49E,IAAI,YAAY,WACrB8P,OAGF1tF,EAAO+pG,2BAA6B,SAAUx7G,GAC5CyR,EAAOrF,MAAM6uG,qBAAuBj7G,EACpCilD,EAAaw2D,6BAA6B,kBAAmBz7G,IAG/DyR,EAAO4pG,8BAAgC,WACrC,IAAIr7G,EAAQyR,EAAOrF,MAAM8uG,wBACzBj2D,EAAaw2D,6BAA6B,6BAA8Bz7G,IAG1EyR,EAAO8pG,wBAA0B,WAC/B,IAAIv7G,EAAQyR,EAAOrF,MAAM+uG,kBACzBl2D,EAAaw2D,6BAA6B,sBAAuBz7G,IAGnEyR,EAAOkwF,qBAAuB,WAC5BxC,IACAG,IACA15C,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAChC3hB,EAAaw2D,6BAA6B,eAAgBhqG,EAAOrF,MAAMmzF,cAyFvEpvE,EAAGxB,IAAI,CACLjO,MAAOygD,EAAYzgD,QACnB22C,SAAUmG,EAAenG,WACzBiS,MAAOmhB,EAAYnhB,UAElBjxD,MAAK,SAAiBvX,GACrB,IAAI4f,EAAQ5f,EAAK4f,MACjBjP,EAAOiP,MAAQA,EACf,IAAI22C,EAAWv2D,EAAKu2D,SACpB5lD,EAAO4lD,SAAWA,EAClB,IAAIiS,EAAQxoE,EAAKwoE,MACjB73D,EAAO63D,MAAQA,EACfuxC,EAAsBn6F,EAAO22C,EAAUiS,GACvCg2B,OAEDnmC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8CA/B1C,WACE,IAAIukG,EAAgBz2D,EAAa02D,2BAA2B,mBACxDD,MAAAA,IAAuDjqG,EAAOrF,MAAM6uG,qBAAuBS,GAE/F,IAAIE,EAA0B32D,EAAa02D,2BAA2B,8BAClEC,MAAAA,IAA2EnqG,EAAOrF,MAAM8uG,wBAA0BU,GAEtH,IAAIC,EAAoB52D,EAAa02D,2BAA2B,uBAC5DE,MAAAA,IAA+DpqG,EAAOrF,MAAM+uG,kBAAoBU,GAEpG,IAAItc,EAAct6C,EAAa02D,2BAA2B,gBACtDpc,MAAAA,IAAmD9tF,EAAOrF,MAAMmzF,YAAcA,GAuBlFuc,O,iBCpKN7pG,QAAQ5W,OAAO,oBAAoBkW,WAAW,iBAAkB,CAC9D,SACA,eACA,cACA,iBACA,gBACA,SAAUE,EAAQq6E,EAAcrB,EAAajtB,EAAgB12C,GAEzD2jE,EAAY5yB,KAAKi0B,EAAajkF,SAASlN,IACpC0d,MAAK,SAAiBvX,GACrB,IAAI+2D,EAAO/2D,EAEX,OADA2Q,EAAOomD,KAAOA,EACP2F,EAAexjD,QAAQ69C,EAAKsc,cAEpC97D,MAAK,SAAiBvX,GACrB,IAAIkZ,EAAUlZ,EACd2Q,EAAOuI,QAAUA,KAElBm/C,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,0C,iECjB9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,qBAAsB,CAClE,SACA,eACA,YACA,cACA,iBACA,gBACA,SAAUE,EAAQq6E,EAAc9mC,EAAWylC,EAAajtB,EAAgB12C,GAoBtE,SAASq4E,IACP,IAAIC,EAAW3tF,EAAO2tF,SAClBntF,QAAQotF,UAAUD,KACpBp6C,EAAU7gC,OAAOi7E,GACjBA,EAAW,MAIf,SAASE,IACP,IAAIC,EAAc9tF,EAAOrF,MAAMmzF,YAC/B9tF,EAAO2tF,SAAWp6C,GAAU,WAC1BylC,EAAYhY,KAAKqZ,EAAajkF,SAASlN,GAAI,EAAG,EAAG8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EAAG7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OAAQ/tF,EAAOrF,MAAMq5D,WAC/IptD,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,KAEfq4D,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,qCAEzB,IAAdooF,GAtCL9tF,EAAOrF,MAAQ,CACbmzF,YAAa,EACb95B,UAAW,IACXD,eAAgB,GAChBF,mBAAmB,GAGrB7zD,EAAOguF,oBAAsB,SAAUC,GAChCA,EAGHJ,IAFAH,KAMJ1tF,EAAO49E,IAAI,YAAY,WACrB8P,OAsCA1U,EAAY5yB,KAAKi0B,EAAajkF,SAASlN,IACpC0d,MAAK,SAAiBvX,GACrB,IAAI+2D,EAAO/2D,EAEX,OADA2Q,EAAOomD,KAAOA,EACP2F,EAAexjD,QAAQ69C,EAAKsc,cAEpC97D,MAAK,SAAiBvX,GACrB,IAAIkZ,EAAUlZ,EACd2Q,EAAOuI,QAAUA,EApBrBywE,EAAYhY,KAAKqZ,EAAajkF,SAASlN,GAAI,EAAG,EAAG8W,EAAOrF,MAAMk5D,kBAAoB,EAAI,EAAG7rC,GAAAA,CAAOhoB,EAAOrF,MAAMo5D,gBAAgBg6B,OAAQ/tF,EAAOrF,MAAMq5D,WAC/IptD,MAAK,SAAiBvX,GACrB2Q,EAAOghE,KAAO3xE,EACdw+F,OAEDnmC,OAAM,SAAehiD,GACpBgoF,IACAr4E,EAAcxc,MAAM,UAAW6M,EAAK,sCAgBrCgiD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,0C,iBCzE9C,SAAS4kG,EAAuBtqG,EAAQq6E,EAAc7qC,EAAc7tC,GAEhE3B,EAAOyuC,SAAW4rC,EAAajkF,SAASlN,GACxC8W,EAAOqiC,SAAWg4C,EAAajkF,SAASisC,SACxCriC,EAAO2wC,gBAAkBnB,EAAaE,qBACtC1vC,EAAOmJ,WAAaxH,EAASxK,G,8DARjCqJ,QAAQ5W,OAAO,oBAAoBkW,WAAW,yBAA0BwqG,I,8ECIxE9pG,QAAQ5W,OAAO,oBAAoBkW,WAAW,yBAA0B,CACtE,KACA,SACA,SACA,gBACA,gBACA,yBACA,iBACA,gBACA,gBACA,oBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ89C,EAAe/R,EAAepG,EAAwBtjB,EAAgBtgD,EAAeilE,EAAe3rC,GAmIhI,IACMqnB,EAnINh2D,EAAOzB,WAAa,CAClBmgD,OAAQ,QACRq7C,cAAe,GACfxf,kBAAmB,IAAIC,EAAAA,sBACvB34C,SAAU,KACV0oE,QAAS,IAAI7zC,EAAAA,mBACb8zC,SAAU,IAAIp0C,EAAAA,qBAGhBp2D,EAAOrF,MAAQ,CACb+/E,oBAAqB,GACrBqF,kBAAkB,GAGpB//E,EAAOyqG,uBAAyB,GAEhCzqG,EAAOs6F,gBAAkB,WACvBt6F,EAAOzB,WAAWw7F,cAAcvrG,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAG1DyR,EAAOu6F,mBAAqB,SAAUxvE,GACpC/qB,EAAOzB,WAAWw7F,cAAclsC,OAAO9iC,EAAO,IAGhD/qB,EAAO0qG,eAEP,SAAwBpqF,GACtB,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWgsG,QAAQ5zC,OAASr2C,EACnCtgB,EAAOzB,WAAWisG,SAASn0C,SAAU,MAIzCr2D,EAAO2qG,gBAEP,SAAyBrqF,GACvB,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAWisG,SAASn0C,QAAU/1C,EACrCtgB,EAAOzB,WAAWgsG,QAAQ5zC,QAAS,MAgDvC32D,EAAOsjC,OAAS,WACd,IAAI50C,EAAOsR,EAAOzB,WAAW9G,KACzB8hF,EAASv5E,EAAOzB,WAAWmgD,OAC3B86B,EAAgBx5E,EAAOzB,WAAWw7F,cAElC/5F,EAAOzB,WAAWgsG,QAAQ5zC,QApBhC,SAAiC6iB,GAC/B,IAAInqF,EAAO2Q,EAAOzB,WAAWgsG,QAE7B/wB,EAAchrF,KAAK,CAAEE,KAAM,OAAQH,MAAO,QAE1C,IAAIgD,EAAU,QAAUlC,EAAKinE,cAAgB,IAAMjnE,EAAKkC,QACnC,SAAjBlC,EAAK3B,UACP6D,GAAoB,cAEtBioF,EAAchrF,KAAK,CAAEE,KAAM,IAAKH,MAAOgD,IAEvC,IAAIqlE,EAAoC,MAAvBvnE,EAAKunE,WAAW,GAAavnE,EAAKunE,WAAa,IAAMvnE,EAAKunE,WAC3E4iB,EAAchrF,KAAK,CAAEE,KAAM,SAAUH,MAAOqoE,IAS1Cg0C,CAAwBpxB,GAGtBx5E,EAAOzB,WAAWisG,SAASn0C,SAzCjC,SAAkCmjB,GAChC,MAAMnqF,EAAO2Q,EAAOzB,WAAWisG,SAE/BhxB,EAAchrF,KAAK,CAAEE,KAAM,OAAQH,MAAO,SAE1C,IAAI81B,EAAQh1B,EAAKg1B,MAAM4B,QAAQ,KAAM,KACpB,MAAb5B,EAAM,KACRA,EAAQ,IAAMA,GAEhB,MAAMqkE,EAAS,KAAOr5F,EAAKinE,cAAgBjyC,EAC3Cm1D,EAAchrF,KAAK,CAAEE,KAAM,SAAUH,MAAOm6F,IAE5C,MAAMmiB,EAAgBx7G,EAAKmnE,eAAennE,EAAKknE,SAAS9lE,QAAQpB,EAAK3B,UAC/D6D,EAAU,QAAUlC,EAAKinE,cAAgB,aAAejnE,EAAK0jD,SAAW,aAAe1jD,EAAKonE,SAAW,SAAWo0C,EACxHrxB,EAAchrF,KAAK,CAAEE,KAAM,IAAKH,MAAOgD,IA4BrCu5G,CAAyBtxB,GAG3B,IAAIG,EAAsByX,EAAc2Z,0BAA0Br8G,EAAM6qF,EAAQC,GAC5E36E,EAAoBmB,EAAOzB,WAAWg8E,kBACtCmB,EAAc/lB,EAAegmB,iBAC7B9mF,EAAU8gE,EAAe9gE,UAE7B,GA9DF,SAAsBgK,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,GAuDJ2iF,CAAa38E,EAAmBhK,GAArC,CAIA,IAAIwtC,EAAWriC,EAAOzB,WAAWsjC,SACjC8M,EAAkB39B,8BAA8BqxB,GAEhDriC,EAAOrF,MAAMolF,kBAAmB,EAChCqR,EAActX,aAAaH,GACxB/yE,MAAK,SAAiBvX,GACrB,MAAMitB,EAASo/D,EAAYtmD,GACrB3/B,EAAkBpG,EAAK61C,gBAC7B,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,OAE3C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8CAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,OAKhC/pB,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAElDqpB,EAAc3G,cAAc1iB,EAAa,MACtCpvD,MAAK,SAAiBvX,GACrB2Q,EAAOyqG,uBAAyBp7G,KAEjCq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4C,yDCxJ9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,mBAAoB,CAChE,SACA,SACA,eACA,KACA,eACA,gBACA,mBACA,gBACA,oBACA,SAAUE,EAAQszC,EAAQ+mC,EAAc37D,EAAI4tB,EAAc8kD,EAAe7a,EAAkBlhE,EAAes5B,GACxG3uC,EAAOrK,aAAeK,EAAAA,EAAAA,OAEtBgK,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAOkmF,aAAe,WACpB55C,EAAap6B,gBAAgB,sCAAuCX,IAC9DA,GACF6/E,EAAc/iF,OAAOrO,EAAOwmD,QACzB5/C,MAAK,WACJyO,EAAcF,QAAQ,8BAA+BklE,EAAajkF,SAASlN,IAC3EoqD,EAAOr8B,GAAG,iBAAkB,OAE7BywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAa5CipC,EAAkB39B,8BAA8BqpE,EAAajkF,SAASisC,UAEtE+uD,EAAc5qC,OAAO6zB,EAAajkF,SAASlN,IACxC0d,MAAK,SAAiBvX,GACrB,IAAIm3D,EAASn3D,EACb2Q,EAAOwmD,OAASA,EAChB,IAAIwkD,EAAkB,CAAExkD,OAAQ,CAACA,EAAOrvD,KAExC,OAAOo/E,EAAiBrwC,WAAW,EAAG8kE,MAEvCpkG,MAAK,SAAiBvX,GACrB,IAEI62C,GAFiBlmC,EAAOirG,YAAc57G,EAAK62C,WAAa72C,GAE5BtG,KAAI,SAAUm5C,GAE5C,OADAA,EAAUgpE,WArBlB,SAAoChpE,EAAWuM,GAC7C,OAAOvM,EAAUq5B,OAAOlnE,MAAK,SAAUmyD,GACrC,OAAOA,EAAO/uD,OAASg3C,KAmBI08D,CAA2BjpE,EAAWliC,EAAOwmD,OAAOrvD,IACpE+qC,KAETliC,EAAOorG,sBAAwBllE,KAEhCwhB,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4C,wDC3D9ClF,QAAQ5W,OAAO,oBAAoBkW,WAAW,oBAAqB,CACjE,KACA,SACA,SACA,gBACA,iBACA,eACA,gBACA,oBACA,eACA,WACA,SAAU4e,EAAI1e,EAAQszC,EAAQ89C,EAAerlC,EAAgButB,EAAcjkE,EAAes5B,EAAmBrC,EAAc3qC,GA8BzH,SAAS0pG,IACP,IAAIC,EAAmBtrG,EAAOy1D,iBAAiB9zD,SAASkkB,KAAKjQ,SACzD21F,EAAevrG,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK93B,KAEzD2wB,EAAGxB,IAAI,CACLsuF,SAAUpa,EAAc7qC,QAAQ,CAAE5M,QAAS,CAAE+U,SAAU,CAAC,YACxDA,SAAU0iC,EAAc7qC,QAAQ,CAAE5M,QAAS,CAAE+U,SAAU,CAAC,WACxD9I,SAA+B,sBAArB0lD,GAA6D,YAAjBC,EAA6Bx/C,EAAenG,WAAa,KAE9Gh/C,MAAK,SAAiBvX,GACrB,IAAIu2D,EAAWv2D,EAAKu2D,SACpB5lD,EAAOq5C,aAAc7W,EAAAA,EAAAA,mBAAkB7gC,GACvC3B,EAAOumD,QAAUl3D,EAAKm8G,SACnBziH,KAAI,SAAUy9D,GAEb,OADAA,EAAOkI,UAAW,EACXlI,KAERld,OACCj6C,EAAKq/D,SAAS3lE,KAAI,SAAUy9D,GAK1B,OAJAA,EAAOkI,UAAW,EACd4qB,EAAamyB,uBAAuBjlD,EAAQZ,KAC9CY,EAAOkI,UAAW,GAEblI,SAIdkB,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAzD1C1F,EAAO2nD,aAAe,SAAUjzB,GAC9B4X,EAAap6B,gBAAgB,iDAAkDX,IAC7E,GAAIA,EAAW,CACb,IAAIo7C,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAU8xB,GACvC7X,EAAkB39B,8BAA8Bw1C,EAAO3kB,UACvDuvD,EAAc/iF,OAAOm4C,GAClB5/C,MAAK,WACJyO,EAAcF,QAAQ,8BAA+BqxC,EAAOrvD,IAC5D,IAAI4zB,EAAQ/qB,EAAOumD,QAAQ91D,QAAQ+1D,GACnCxmD,EAAOumD,QAAQsH,OAAO9iC,EAAO,MAE9B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,oBAQrB9rB,EAAOq5C,aAAc,EAErBr5C,EAAOqrG,WAAaA,EAkClBA,IAEArrG,EAAOuuD,iBAAmBvuD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,e,mICtEzDxO,EAAmBv8C,IAAAA,OACtB,sBAAuB,IAC9BC,UACC,kBACAlN,EAAAA,EAAAA,GAAIs0C,EAAAA,EAAgB,CAClB,WACA,WACA,sBACA,mBAGHpnC,UAAU,2BAA4B9M,EAAAA,GACtC8M,UAAU,yBAA0BnN,EAAAA,IAA+B5E,K,wsBCQtE,WAA+BiC,GAA/B,yGAEUC,EAAAA,GAAAA,KAAA,qBAAyBD,EAAzB,gBAFV,6DAIUG,EAAAA,EAAAA,IAAgB,EAAD,GAAa,8BAJtC,yD,8ICHA,IAAMigC,EAA0C,CAC9C,CACEK,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIl9B,MACvBvO,GAAI,OACJgwC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,UAEZ,CACE1Q,OAAQ,UACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIvvB,QACvBlc,GAAI,UACJgwC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,WAWP,SAAS4pE,EAAT,GAKG,IDrBFC,E,IA5BAr0F,EC6CN9K,EAIQ,EAJRA,QACAklB,EAGQ,EAHRA,WACA13B,EAEQ,EAFRA,UACAqH,EACQ,EADRA,WAEMuqG,GDlDAt0F,GAAcC,EAAAA,EAAAA,mBAEb9e,EAAAA,EAAAA,cACL,SAACozG,GAAD,OACEtlG,EAAAA,EAAAA,GAAgBslG,EAAI9iH,KAAI,SAACG,GAAD,OAAQ,kB,SAeP,G,+BAfa4iH,CAAgB5iH,UACxD,CACE6P,UAAW,WACTue,EAAYI,kBAAkB,CAAC,kBAEjC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,mCCwCXk0G,MDxBAJ,GAAiBj9F,EAAAA,EAAAA,OAGrBi9F,EAAe38F,UAAY28F,EAAe58F,YAAYE,OACtD08F,EAAe58F,YAAYpa,OAAS2Z,EAAAA,EAAAA,YCsBtC,G,GAA4C+jB,EAAAA,EAAAA,GAAkBX,G,EAA9D,E,8zBAAOY,EAAP,KAAuBC,EAAvB,KACA,GAAuC4K,EAAAA,EAAAA,KAA/BjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAElB,GAaI/K,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMmd,EAENqmB,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,QAClBC,aAAcV,GAEhBL,gBAVF,WAWI,OAAO,GAETgB,uBAAuB,EACvBlB,SAdF,SAcWi6E,GACP,OAAOA,EAAY70G,GAAG1I,YAExBw9G,kBAAmB,GAErBv4E,EAAAA,gBACAC,EAAAA,UAEAC,EAAAA,cACAC,EAAAA,aACAE,EAAAA,IArCAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAJ,EANF,EAMEA,iBAEAK,EARF,EAQEA,SACAb,EATF,EASEA,YAEAc,EAXF,EAWEA,gBAXF,IAYE35B,MAAS45B,EAZX,EAYWA,UAAWzB,EAZtB,EAYsBA,SA6BhB0B,EAAaP,IACbQ,EAAaP,IAEnB,OACE,gBAAKroC,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAAC,eAAD,YACE,UAAC,WAAD,CAAa2F,MAAM,4BAA4B0K,KAAK,MAAMC,aAAW,EAArE,WACE,SAACk6B,EAAA,EAAD,CACErkC,SA6FZ,SAA+BzD,GAC7B+lC,EAAgB/lC,GAChBgkC,EAAkBhkC,IA9FRA,MAAO+jC,KAET,UAAC,aAAD,YACE,SAAC,KAAD,CACEx4B,QAAS,kBA6FvB,SAA+B0S,GAC7Bo/F,EAAkBzxG,OAChBqS,EAAQzjB,KAAI,SAACoC,GAAD,OAAOA,EAAEgM,MACrB,CACE4B,UADF,YAEIqB,EAAAA,EAAAA,IAAc,UAAW,2CAjGjB8xG,CAAsBl4E,EAAiBjrC,KAAI,SAACo4E,GAAD,OAAOA,EAAEvsC,cAEtDhiC,SAAsC,IAA5BohC,EAAiB3pC,QAAgB0hH,EAJ7C,8BAQCA,GACC,gBAAKlgH,UAAU,YAAf,UACE,SAACyiC,EAAA,EAAD,CAASz0B,MAAM,SAAf,6FAKA,YAGR,UAAC,KAAD,CACEhO,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAG9B,OACE,SAAC,eAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAWb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAAC,aAAD,CACEspC,aAAa,wBACbZ,WAAYA,EACZW,KAAM/wB,EACNhK,UAAWA,EACXi7B,UAAW,SAACN,EAAD,OAAQpqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAA9B,OACT,SAAC,SAAD,CACEwpC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,YAUf,UAAC,YAAD,YACE,SAACmsC,EAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,EAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYA,EACZ+sB,kBAYZ,SAA+B0E,GAC7BU,EAAYV,GACZ0K,EAAiB,CAAE1K,SAAAA,iBANrB,SAASq5E,EAAiB96E,EAAekC,GACvCiK,EAAiB,CAAEzK,OAAQ,CAAE7pC,GAAImoC,EAAOkC,KAAAA,MC5IrC,IAAM64E,GAAyB74G,EAAAA,EAAAA,IA/C/B,WACL,IAAMm+B,EAAa,4BAEnB,IADehc,EAAAA,EAAAA,cACiC3R,EAAAA,EAAAA,IAAmB,CACjEsoG,YAAY,EACZC,qBAAqB,EACrBC,MAAOhoG,EAAAA,MAHDH,EAAR,EAAQA,aAAcpK,EAAtB,EAAsBA,UAAWqH,EAAjC,EAAiCA,WAWjC,OACE,iCACE,SAACwqB,EAAA,EAAD,CACE/yB,MAAM,eACN4xB,YAAa,CACX,CAAEl5B,MAAO,eAAgB05B,KAAM,gBAC/B,CAAE15B,MAAO,oBAIb,SAACi1B,EAAA,EAAD,WACE,SAAC6H,EAAA,EAAD,CAASz0B,MAAM,OAAf,8JAOF,SAAC,IAAD,CACEyjC,SAAU,CAAExK,SAAU,GAAIC,OAAQ,CAAEQ,MAAM,EAAOrqC,GAAI,SACrDwoC,WAAYA,EAFd,UAIE,SAACg6E,EAAD,CACEl/F,QAASpI,EACT/C,WAAYA,EACZrH,UAAWA,EACX03B,WAAYA,WAOqC,I,yFCzD9CsU,EACC,SAACwmE,EAA8B77G,GAA/B,MACV,CAAC,cAAe67G,EAAa,OAAQ77G,I,2pBCsB1B87G,EAAY,G,gFAA3B,6GAA6BD,EAA7B,EAA6BA,YAAa77G,EAA1C,EAA0CA,cAA1C,kBAEUC,EAAAA,GAAAA,IAAA,uBAA0B47G,EAA1B,iBAA8C77G,IAFxD,6DAIUG,EAAAA,EAAAA,IAAgB,EAAD,GAAiB,mCAJ1C,yD,irBCAe47G,EAAW,G,mFAA1B,6GAA4BF,EAA5B,EAA4BA,YAAa77G,EAAzC,EAAyCA,cAAzC,kBAEUC,EAAAA,GAAAA,OAAA,uBAA6B47G,EAA7B,iBAAiD77G,GAAiB,CACtEm/C,aAAc,OACdvuC,QAAS,CACPorG,OAAQ,eALhB,6DASU77G,EAAAA,EAAAA,IAAgB,EAAD,GAAa,IATtC,yD,iYCPe0kE,GAAa,G,oFAA5B,uHAA8Bg3C,EAA9B,EAA8BA,YAAa77G,EAA3C,EAA2CA,cAA3C,kBAEoCC,EAAAA,GAAAA,IAAA,uBACd47G,EADc,iBACM77G,EADN,SAE9B,CACEm/C,aAAc,OACdvuC,QAAS,CACPorG,OAAQ,eAPlB,gBAEYprG,EAFZ,EAEYA,QAASlS,EAFrB,EAEqBA,KASXu9G,EAA2BrrG,EAAQ,uBACnC+kG,EAAWsG,EACd3mF,QAAQ,wBAAyB,IACjCpP,QACHi3B,EAAAA,GAAAA,QAAOz+C,EAAMi3G,GAfjB,yDAiBUx1G,EAAAA,EAAAA,IAAgB,EAAD,GAAa,IAjBtC,2D,sVCZO,SAAS+7G,GACdL,EACA77G,GAEA,OAAOK,EAAAA,EAAAA,UACLg1C,EAAqBwmE,EAAa77G,IAClC,kB,SAiByB,EAAdm8G,G,gCAjBLA,CAAcN,EAAa77G,KACjC,CACEuT,gBADF,SACkBpB,GACd,MAAe,YAAXA,GACK,O,oDAajB,WACE0pG,EACA77G,GAFF,iHAK2BC,EAAAA,GAAAA,IAAA,uBACL47G,EADK,iBACe77G,IAN1C,uBAKYtB,EALZ,EAKYA,KALZ,kBAQWA,EAAKyT,QARhB,uCAUUhS,EAAAA,EAAAA,IAAgB,EAAD,GAAiB,kCAV1C,0D,sBCdO,SAASi8G,GAAT,GAA4D,IJP3Dz1F,EIOsB3mB,EAAqC,EAArCA,cAAe67G,EAAsB,EAAtBA,YACrCQ,EAAkBH,GAAcL,EAAa77G,GAC7Cs8G,GJTA31F,GAAcC,EAAAA,EAAAA,mBAEb9e,EAAAA,EAAAA,aAAYg0G,E,+VAAD,EAChB1zG,UADgB,SACN1J,EAAMqJ,GACd,OAAO4e,EAAYI,kBACjBsuB,EAAqBttC,EAAU8zG,YAAa9zG,EAAU/H,mBAGvD4S,EAAAA,EAAAA,IAAU,8BIET2pG,GFXCz0G,EAAAA,EAAAA,aACL+8D,IACAv5C,EAAAA,EAAAA,KAAgB1Y,EAAAA,EAAAA,IAAU,6BEUtB4pG,EHZD,WACL,IAAM71F,GAAcC,EAAAA,EAAAA,kBAEpB,OAAO9e,EAAAA,EAAAA,aAAYi0G,E,+VAAD,EAChB3zG,UADgB,SACN1J,EAAMqJ,GACd,OAAO4e,EAAYI,kBACjBsuB,EAAqBttC,EAAU8zG,YAAa9zG,EAAU/H,mBAGvD4S,EAAAA,EAAAA,IAAU,2BGGY6pG,GAE3B,IAAKJ,EAAgBtxG,UACnB,OAAO,KAGT,IAAMoH,EAASkqG,EAAgB39G,KAEzBg+G,EAAaJ,EAAoBjzG,WAAwB,YAAX8I,EAEpD,OACE,iCACE,SAAC,KAAD,CAAQjJ,MAAM,OAAOf,MAAM,gBAAgBgB,QAwC/C,WACiB,YAAXgJ,GAIJmqG,EAAoB9yG,OAClB,CACEqyG,YAAAA,EACA77G,cAAAA,GAEF,CACEoI,UADF,YAEIqB,EAAAA,EAAAA,IAAc,UAAW,+BApD7B,UACE,cACEvO,WAAW6L,EAAAA,EAAAA,GAAK,KAAM,CACpB,eAAgB21G,EAChB,0BAA2BA,IAE7B,cAAY,YAGhB,SAAC,KAAD,CACExzG,MAAM,OACNf,MAAM,gBACNlG,SAAqB,cAAXkQ,EACVhJ,QA6CN,WACEozG,EAAqB/yG,OAAO,CAC1BqyG,YAAAA,EACA77G,cAAAA,KApDA,UAME,cACE9E,WAAW6L,EAAAA,EAAAA,GAAK,KAAM,CACpB,yBAA0Bw1G,EAAqBlzG,UAC/C,0BAA2BkzG,EAAqBlzG,YAElD,cAAY,YAGhB,SAAC,KAAD,CACEH,MAAM,OACNf,MAAM,cACNlG,SAAqB,cAAXkQ,EACVhJ,QAsCN,WACEqzG,EAAmBhzG,OACjB,CACEqyG,YAAAA,EACA77G,cAAAA,GAEF,CACEoI,UADF,YAEIqB,EAAAA,EAAAA,IAAc,UAAW,oBAlD7B,UAME,cACEvO,WAAW6L,EAAAA,EAAAA,GAAK,KAAM,CACpB,gBAAiBy1G,EAAmBnzG,UACpC,0BAA2BmzG,EAAmBnzG,YAEhD,cAAY,cCpDtB,SAASszG,GAAcxqG,GACrB,OAAQA,GACN,IAAK,YACH,MAAO,8BACT,IAAK,UACH,MAAO,uEACT,QACE,OAAO,MCjBN,IAAMi6C,GAAmBv8C,IAAAA,OACtB,kCAAmC,IAC1CC,UACC,+BACAlN,EAAAA,EAAAA,ICIG,YAAiE,IAAnC+R,EAAmC,EAAnCA,YAAaknG,EAAsB,EAAtBA,YAChD,OACE,iBAAK3gH,UAAU,YAAf,UACGyZ,EAAYq/D,UAAUt6E,OAAS,IAC9B,SAAC6L,EAAA,EAAD,CACEC,GAAG,0BACHC,OAAQ,CAAEzF,cAAe2U,EAAYnO,GAAIq1G,YAAAA,GACzC3gH,UAAU,oCAHZ,UAKE,SAAC,KAAD,CAAQgO,MAAM,OAAOf,MAAM,kBAA3B,UACE,cAAGjN,UAAU,eAAe,cAAY,aAI7CyZ,EAAYlC,KAAKC,YAChB,SAAC0pG,GAAD,CAAap8G,cAAe2U,EAAYnO,GAAIq1G,YAAaA,SDnBrC,CAAC,cAAe,iBAEzC/rG,UACC,yBACAlN,EAAAA,EAAAA,IDJG,YAA6D,IAArC5C,EAAqC,EAArCA,cACvBq8G,EAAkBH,GAD0C,EAAtBL,YACO77G,GAEnD,OAAO,8BAAG28G,GAAcN,EAAgB39G,UCCpB,CAAC,cAAe,mBAClCX,K,+SEHJ,QACEwnC,EAAAA,GAAAA,KADmBq3E,GAArB,GAAQp3E,YAA+BC,GAAvC,GAAuCA,cAShC,SAASD,GAAT,GAGsB,I,IAF3BxlC,EAE2B,EAF3BA,cACAuH,EAC2B,EAD3BA,SAEA,GAAqCwC,EAAAA,GAAAA,aAAW,SAACC,GAAD,OAAYA,KAAO,GAAnE,G,EAAA,E,4CAAA,I,kxBAAOX,EAAP,KAAkBwzG,EAAlB,KAEMplG,GAAUsB,EAAAA,GAAAA,UACd,iBAAO,CACL1P,UAAAA,EACAwzG,gBAAAA,EACA78G,cAAAA,KAEF,CAACA,EAAeqJ,IAGlB,OAAO,SAACuzG,GAAD,CAAkBnlG,QAASA,EAA3B,SAAqClQ,IChCvC,ICGFu1G,GAQAC,GDXQrpC,GAA2B,CACtCjzC,OAAQ,WACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI0vC,UAAY,KACnCn7E,GAAI,WACJgwC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,OENH7+B,GAAyB,CACpCsuB,OAAQ,aACRloC,GAAI,SACJgwC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVL,KAIK,YAAsE,IAA/BinD,EAA+B,EAAhD/zD,IAAOC,SAClC,OACE,iBAAM/oC,WAAW6L,EAAAA,EAAAA,GAAK,CAAE,eAAgBgxF,EAAOilB,mBAA/C,SACGjlB,EAAOilB,iBAAmB,YAAc,kBAN7ChsE,OAAQ,kBAAM,Q,SDLX8rE,GAAAA,EAAAA,QAAAA,UAAAA,EAAAA,MAAAA,QAAAA,EAAAA,IAAAA,MAAAA,EAAAA,UAAAA,YAAAA,EAAAA,WAAAA,c,CAAAA,KAAAA,GAAAA,K,SAQAC,GAAAA,EAAAA,EAAAA,GAAAA,GAAAA,KAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,UAAAA,GAAAA,YAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,UAAAA,GAAAA,YAAAA,EAAAA,EAAAA,QAAAA,GAAAA,UAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,gBAAAA,IAAAA,kB,CAAAA,KAAAA,GAAAA,KAWE,IAAME,GAA6B,CACxCx8E,OAAQ,cACRoQ,SAAU,SAAC7M,GAAD,OAASk5E,GAAgBl5E,EAAIi5E,aACvC1kH,GAAI,aACJgwC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVL,KAIK,YAEe,IADHinD,EACG,EADpB/zD,IAAOC,SAEC56B,EAAco8B,KAAdp8B,UACR,OACE,iCACE,iBACEnO,WAAW6L,EAAAA,EAAAA,GAAK,CACd,eAAgBgxF,EAAOklB,aAAeF,GAAeI,KAFzD,SAKGD,GAAgBnlB,EAAOklB,eAE1B,0BAAO5zG,IAAa,cAAGnO,UAAU,uCAhBrC81C,OAAQ,kBAAM,OAqBhB,SAASksE,GAAgBt/G,GAEvB,OAAQA,GACN,KAAKm/G,GAAeI,GAClB,OAAOL,GAAWn2C,QACpB,KAAKo2C,GAAeK,WACpB,KAAKL,GAAeM,UAClB,OAAOP,GAAWQ,MACpB,KAAKP,GAAeQ,QACpB,KAAKR,GAAeS,QACpB,KAAKT,GAAeU,gBAClB,OAAOX,GAAWY,IACpB,KAAKX,GAAeY,UAClB,OAAOb,GAAWa,UACpB,KAAKZ,GAAea,WAClB,OAAOd,GAAWc,WACpB,QACE,MAAO,K,4BEhEN,SAASC,GAAT,GAA+C,IAAnBt2G,EAAmB,EAAnBA,SACjC,OAAO,gBAAKrM,UCRsB,+EDQ3B,SAA2CqM,IERpD,ICcKu2G,GCLE,SAASC,GAAT,GAA0C,IAAnBx2G,EAAmB,EAAnBA,SAC5B,OACE,SAAC,MAAD,CAAMrM,UFXgB,8DEWtB,SACG,gBAAGolC,EAAH,EAAGA,WAAH,OACC,iCACE,SAAC,MAAD,CACEplC,WAAW6L,EAAAA,EAAAA,GFfiR,6EEiB1Ru5B,GFjB0F,sEEc9F,UAME,cAAGplC,UAAU,mBAAmB,cAAY,YAE9C,SAAC,MAAD,WACE,gBAAKA,UFvBmL,8EEuBxL,SAA8CqM,Y,0UDTrDu2G,GAAAA,EAAAA,QAAAA,WAAAA,EAAAA,SAAAA,YAAAA,EAAAA,QAAAA,U,CAAAA,KAAAA,GAAAA,KAME,IAAMjzE,GAA0B,CACrCpK,OAAQ,UACRoQ,SAAU,iBAAM,WAChBt4C,GAAI,UACJgwC,gBAAgB,EAChBwI,SAAS,EACT1I,iBAAiB,EACjBluC,MAAO,MACPg3C,SAAU,SACVH,OAAQ,kBAAM,MACdF,KAGK,YAAuE,IAA/BinD,EAA+B,EAAhD/zD,IAAOC,SAC7Btd,GAAcC,EAAAA,EAAAA,kBAEpB,EAAsD6e,KAA9Cp8B,EAAR,EAAQA,UAAWwzG,EAAnB,EAAmBA,gBAAiB78G,EAApC,EAAoCA,cAE9Bg+G,GAAeljF,EAAAA,EAAAA,SAAQ,mCAAoC,CAC/DviC,GAAIyH,EACJ0a,SAAUq9E,EAAOkmB,KACjBC,WAAYnmB,EAAOrkB,WAGrB,OACE,UAACqqC,GAAD,YACE,SAACF,GAAD,6BACA,SAAC,MAAD,CACE57G,SAAUoH,EACV2vB,SAAU,kBAAMmlF,EAAwBL,GAAaM,UAFvD,uBAMA,SAAC,MAAD,CACEn8G,SAAUoH,EACV2vB,SAAU,kBAAMmlF,EAAwBL,GAAaO,WAFvD,wBAMA,SAAC,MAAD,CACEp8G,SAAUoH,EACV2vB,SAAU,kBAAMmlF,EAAwBL,GAAaQ,UAFvD,sBAMA,SAAC,MAAD,CACEt4F,KAAMg4F,EAAah4F,KACnB7c,QAAS60G,EAAa70G,QACtBlH,SAAUoH,EAHZ,oBAhCwE,SA0C7D80G,EA1C6D,oFA0C5E,WAAuCx/G,GAAvC,iGAC0B+K,EAAAA,GAAAA,IAAa,CACnCvB,MAAO,iBACPjB,QAAS,4BAAF,OAA8BvI,EAA9B,gBACPgL,QAAS,CACPoY,OAAQ,CACNlhB,MAAO,SACP3F,UAAW,eAEb0O,QAAS,CACP/I,MAAO,UACP3F,UAAW,kBAXnB,kFAqBI2hH,IArBJ,UAsBU/gG,EAAAA,GAAAA,IAAoB9b,EAAe+3F,EAAOkmB,KAAMt/G,GAtB1D,cAuBIusD,EAAAA,GAAA,UACKvsD,EADL,6BAEEo5F,EAAOrkB,UAzBb,UA2BU/sD,EAAYI,kBAAkB,CAAC,cAAe/mB,IA3BxD,0DA6BIkrD,EAAAA,GACE,UADF,yBAGevsD,EAHf,gBA7BJ,yBAmCIk+G,IAnCJ,8EA1C4E,yBEjBvE,SAAS0B,GAAT,GAAsE,IAAvCv+G,EAAuC,EAAvCA,cAC9BogC,GCVCrnB,EAAAA,GAAAA,UAAQ,iBAAM,CAAC26D,GAAUvhE,GAAQ8qG,GAAYpyE,MAAU,IDY9D,EEZK,SAAuB7qC,GAC5B,OAA4CK,EAAAA,EAAAA,UAC1C,CAAC,cAAeL,IAChB,kBAAM4b,EAAAA,GAAAA,IAAW5b,MAFXqJ,EAAR,EAAQA,UAAW3K,EAAnB,EAAmBA,KAAM8/G,EAAzB,EAAyBA,QAASt2G,EAAlC,EAAkCA,MAiBlC,OAZA1E,EAAAA,GAAAA,YAAU,WACJg7G,GACFtzD,EAAAA,GACE,UACAhjD,EACA,mCAGH,CAACs2G,EAASt2G,IAIN,CACLmB,UAAAA,EACAwS,SAJc9C,EAAAA,GAAAA,UAAQ,kBAAMra,GAAQ,KAAI,CAACA,IAKzCwJ,MAAOs2G,EAAWt2G,OAA2B4D,GFTT2yG,CAAcz+G,GAA5CqJ,EAAR,EAAQA,UAAWwS,EAAnB,EAAmBA,QAAS3T,EAA5B,EAA4BA,MAE5B,GACE45B,EAAAA,EAAAA,UACE,CACE1B,QAAAA,EACA1hC,KAAMmd,GAERonB,EAAAA,eANIK,EAAR,EAAQA,cAAeC,EAAvB,EAAuBA,kBAAmBC,EAA1C,EAA0CA,aAAcnwB,EAAxD,EAAwDA,KAAMowB,EAA9D,EAA8DA,WASxDI,EAAaP,IACbQ,EAAaP,IAEnB,OACE,SAAC+B,GAAA,EAAD,WACE,SAAC,KAAD,WACE,UAAC,KAAD,CACEpqC,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,SAJhBhX,SASb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKIsO,GAAawS,GAAWA,EAAQniB,OAAS,EACzC2Z,EAAKjb,KAAI,SAAC4rC,GACRP,EAAWO,GACX,MAAwCA,EAAIoD,cAApCxtC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAACyqC,GAAD,CAAuBxlC,cAAeA,EAAtC,UACE,SAAC,KAAD,CACEukC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,IAHSA,OAYtB,yBACE,eAAI4N,QAAS,EAAGtM,UAAU,yBAA1B,SACGwjH,GAAYr1G,EAAWnB,gBAW1C,SAASw2G,GAAYr1G,EAAoBnB,GACvC,OAAImB,EACK,aAGLnB,EACKA,EAAMhB,QAGR,mB,IG/EJy3G,G,wVAKE,SAASC,GAAT,GAMG,IALR76E,EAKQ,EALRA,cACA86E,EAIQ,EAJRA,iBACAC,EAGQ,EAHRA,aACAC,EAEQ,EAFRA,kBACAC,EACQ,EADRA,oBAEMl6F,GAASC,EAAAA,EAAAA,aAEf,OACE,iBAAK7pB,UAAU,YAAf,WACE,SAAC,KAAD,CACE+G,SAAU8hC,EAAcrqC,OAAS,EACjCwP,MAAM,SACNC,QAAS,kBARP,0CAQa81G,IACf1zG,KAAK,UACLC,aAAW,EALb,qBAUA,SAAC,KAAD,CAAQrC,QAAS,kBAfb,0CAemB+1G,IAAuB3zG,KAAK,OAAOC,aAAW,EAArE,wBAICqzG,IACC,SAAC,KAAD,CACE58G,SAAmC,IAAzB8hC,EAAcrqC,OACxByP,QAAS,kBAtBT,2CAsBeg2G,CAAwBp7E,IACvCx4B,KAAK,OACLC,aAAW,EAJb,oCAUDwzG,IACC,SAACz5G,EAAA,EAAD,CAAMC,GAAG,4BAAT,UACE,SAAC,KAAD,gCAhCA,kDAsCR,8GAC0Bqb,EAAAA,GAAAA,IAAwB,CAC9C1Y,MAAO,iBACPjB,QACE,0FACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,iBARnB,kFAgBQgb,QAAQqW,IACZwX,EAAc3rC,IAAd,6CAAkB,WAAOuc,GAAP,0GAERrD,EAAAA,GAAAA,IAAeqD,EAAYnO,IAFnB,OAId0kD,EAAAA,GACE,mCACAv2C,EAAY7N,MANA,+CASdokD,EAAAA,GACE,UADF,KAGE,gCAZY,wDAAlB,wDAjBJ,uBAmCQpmC,EAAOuB,aAAa8U,SAnC5B,2CAtCQ,0EA4ER,uGACiB2jF,EADjB,iCAEY18F,EAAAA,GAAAA,IAAY,CAChBja,MAAO,4CACPoa,UAAW,QACXC,aAAc,CACZ,CACEE,KAAM,uCACN9kB,MAAO+gH,GAAWS,KAEpB,CACE18F,KAAM,wBACN9kB,MAAO+gH,GAAWU,SAGtB11G,QAAS,CACPC,QAAS,CACP/I,MAAO,UACP3F,UAAW,kBAlBvB,8CAsBMyjH,GAAWU,OAtBjB,OACQ/8F,EADR,UAwBUA,EAxBV,cAyBSq8F,GAAWS,IAzBpB,UA4BST,GAAWU,OA5BpB,2BA0BMv6F,EAAOuB,aAAaC,GAAG,oCA1B7B,oCA6BMxB,EAAOuB,aAAaC,GAAG,6BAA8B,CACnDo1F,YAAY,IA9BpB,sGA5EQ,wEAkHR,WAAuC33E,GAAvC,6FACQu7E,EAAsBv7E,EAAc,GAD5C,UAG0Br6B,EAAAA,GAAAA,IAAa,CACnCvB,MAAO,GACPjB,QAAS,aAAF,OAAeo4G,EAAoBx4G,KAAnC,iBACP6C,QAAS,CACPoY,OAAQ,CACNlhB,MAAO,SACP3F,UAAW,eAEb0O,QAAS,CACP/I,MAAO,UACP3F,UAAW,kBAbnB,kFAuBI6jH,EACE,iEAxBN,WA0BUpjG,EAAAA,GAAAA,IAAe2jG,EAAoB94G,IA1B7C,QA2BI0kD,EAAAA,GACE,uCACAo0D,EAAoBx4G,MA7B1B,kDAgCIokD,EAAAA,GACE,UADF,KAGE,oCAnCN,yBAsCI6zD,EAAkB,IAtCtB,6EAlHQ,0B,SAXLJ,GAAAA,EAAAA,IAAAA,MAAAA,EAAAA,OAAAA,S,CAAAA,KAAAA,GAAAA,K,gBClBE,SAASY,KACd,OACE/yE,EAAAA,EAAAA,KADMjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAGlB,OACE,SAACjE,GAAA,EAAD,CACEhrC,MAAOW,EAAS20C,gBAChB7xC,SAIJ,SAAiC6xC,GAC/BrG,EAAiB,CAAEqG,gBAAAA,OCVvB,QAAuC3N,EAAAA,GAAAA,KAA/BC,GAAR,GAAQA,YAAaC,GAArB,GAAqBA,c,YCER1nC,GAA4B,CACvC0iC,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIl9B,MACvBvO,GAAI,OACJu4C,KAOK,YAAgE,IAArC/yC,EAAqC,EAA5CH,MAAaomC,EAA+B,EAA/BA,IAEhCw7E,KADuB/5E,KAArBg6E,kBAGNz7E,EAAIC,SAASy7E,eACb17E,EAAIC,SAASy7E,cAAchmH,OAAS,GAEtC,OACE,SAACirC,GAAA,EAAD,CAAeX,IAAKA,EAAKY,gBAAiB46E,EAA1C,UACE,SAACj6G,EAAA,EAAD,CACEC,GAAG,+BACHC,OAAQ,CAAElN,GAAIyrC,EAAIC,SAASz9B,IAC3B2B,MAAOpK,EAHT,SAKGA,OApBPwqC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,U,YCZCve,GAAiC,CAC5C6N,OAAQ,YACRoQ,SAAU,SACVt4C,GAAI,SACJu4C,KAKK,YAEoB,IADRn8B,EACQ,EADzBqvB,IAAOC,SAEP,OAAO,SAACztB,GAAA,EAAD,CAAe7B,YAAaA,KAPnC4zB,gBAAgB,EAChBwI,SAAS,GCHE08D,GAA6B,CACxChtE,OAAQ,QACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI0pE,SACvB58D,KAMF,WAGE,OAFsBrL,KAAdk6E,WANRpnH,GAAI,YACJy4C,O,SAAQlM,EACRiM,SAAS,G,YCHElG,GAA+B,CAC1CpK,OAAQ,UACRoQ,SAAU,iBAAM,WAChBt4C,GAAI,UACJgwC,gBAAgB,EAChBwI,SAAS,EACT1I,iBAAiB,EACjBluC,MAAO,MACPg3C,SAAU,SACVH,OAAQ,kBAAM,MACdF,KAGK,YAEoB,IADRn8B,EACQ,EADzBqvB,IAAOC,SAID27E,IAFS76F,EAAAA,EAAAA,cAEUrQ,EAAAA,GAAAA,IAAkBC,IACrCkrG,GAAkB/kF,EAAAA,EAAAA,SAAQ8kF,EAAkB,CAChDrnH,GAAIoc,EAAYnO,GAChBgS,WAAY7D,EAAYnO,KAGpBs5G,GAAoBhlF,EAAAA,EAAAA,SAAQ,0BAA2B,CAC3D96B,cAAe2U,EAAYnO,KAK7B,OACE,UAACu3G,GAAD,WACGppG,EAAYlC,KAAKC,WAChB,SAAC,MAAD,CACExX,UAAU,oCACV8qB,KAAM85F,EAAkB95F,KACxB7c,QAAS22G,EAAkB32G,QAH7B,8BAQA,SAAC,MAAD,CAAU6c,KAAM65F,EAAgB75F,KAAM7c,QAAS02G,EAAgB12G,QAA/D,qBAbsB,O,6rBCavB,SAAS42G,GAAT,GAamB,IAZxBC,EAYwB,EAZxBA,aACAP,EAWwB,EAXxBA,iBACAT,EAUwB,EAVxBA,oBACAiB,EASwB,EATxBA,UACAn/E,EAQwB,EARxBA,QACAo/E,EAOwB,EAPxBA,eACAp8C,EAMwB,EANxBA,OACA9zD,EAKwB,EALxBA,OACA+uG,EAIwB,EAJxBA,kBACAoB,EAGwB,EAHxBA,WACAC,EAEwB,EAFxBA,mBACA1vG,EACwB,EADxBA,WAEA,GACE87B,EAAAA,EAAAA,KADMjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAGZzM,GC7DCrnB,EAAAA,GAAAA,UAAQ,iBAAM,CAAChb,GAAM60B,GAAW66E,GAAO5iE,MAAU,ID+DxD,GASI/I,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMoiC,EACNkB,YAAa,CAAEC,SAAAA,GAAAA,GACfC,aAAc,CACZ6Q,cAAex0C,EAASw0C,cACxB3Q,OAAQ,CAAC7jC,EAAS6jC,SAEpBd,gBATF,WAUI,OAAO,GAET++E,mBAAmB,EACnB/9E,uBAAuB,EACvBlB,SAdF,SAcWi6E,GACP,OAAOA,EAAY70G,GAAG1I,YAExBw9G,kBAAmB,GAErBx4E,EAAAA,WACAE,EAAAA,UACAs9E,EAAAA,YACAp9E,GAAAA,EACAE,EAAAA,IAhCAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAY,EAJF,EAIEA,KACAX,EALF,EAKEA,WACAJ,EANF,EAMEA,iBACAspB,EAPF,EAOEA,WACA3Z,EARF,EAQEA,iBA4BI0Z,EAAgBC,EAAWpgD,QAAO,SAACqgD,GACvC,IAAM2zD,EAAYngF,EAAQ18B,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAOq0D,EAAYr0D,MAC3D,OAAOgoH,MAAAA,OAAP,EAAOA,EAAWxvE,WAGdlN,EAAaP,IACbQ,EAAaP,IAEbi9E,EAA4B1/E,EAAQl2B,MACxC,SAAC+J,GAAD,OACEA,EAAY+qG,eAA+C,KAA9B/qG,EAAY+qG,iBAGvCe,EAAa,KAAUzwG,EAAQ,MAErC,OACE,gBAAK9U,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAAC,KAAD,YACE,UAAC,KAAD,CAAYqQ,KAAK,MAAMC,aAAW,EAAC3K,MAAM,eAAzC,WACE,SAAC6kC,EAAA,EAAD,CAAW9nC,MAAOkmE,EAAQziE,SAoIpC,SAA+BzD,GAC7BsiH,EAAetiH,OApIP,SAAC,KAAD,WACE,SAACghH,GAAD,CACE76E,cAAeV,EAAiBjrC,KAAI,SAAC4rC,GAAD,OAASA,EAAIC,YACjD66E,aAAckB,EACdnB,iBAAkBY,EAClBV,kBAAmBA,EACnBC,oBAAqBA,OAGzB,UAAC,KAAD,YACE,SAAC7+E,GAAA,EAAD,CACEC,QAASssB,EACTrrD,SAkHd,SAAuC0xC,GACrCC,EAAiBD,GACjBlG,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8Bw0C,cAAAA,QAnHnCn1C,MAAOW,EAASw0C,iBAElB,SAAC,KAAD,WACE,SAACwsE,GAAD,YAILE,GAAoBe,IACnB,gBAAKtlH,UEpJQ,iGFoJb,UACE,UAACyiC,EAAA,EAAD,CAASz0B,MAAM,OAAf,yHAEkD,KAChD,cACE8c,KAAI,kBAAai6F,GACjB1mH,OAAO,SACP0sB,IAAI,aACJ/qB,UAAU,cAJZ,kBAHF,0CAeJ,UAAC,KAAD,CACEA,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAAC,aAAD,CACE0oC,WAAYA,EACZW,KAAMA,EACNE,UAAW,SAACN,EAAD,GAA0C,MAAlCpqC,EAAkC,EAAlCA,IAAKsB,EAA6B,EAA7BA,UAAWkC,EAAkB,EAAlBA,KAAMrC,EAAY,EAAZA,MACjC0yG,EAAQgT,EAAWz8E,EAAIC,SAASypE,SAEtC,OACE,UAAC,GAAD,CAEEj2F,QAAS,CAAEgoG,iBAAAA,EAAkBE,UAAS,UAAElS,EAAM,UAAR,aAAE,EAAU3mG,MAFpD,WAIE,SAAC,KAAD,CACEy9B,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,GAKNoqC,EAAI1D,aACH,2BACE,mBACA,eAAI94B,QAASw8B,EAAIO,MAAM7qC,OAAS,EAAhC,UACE,SAAC6kH,GAAD,CACEv+G,cAAegkC,EAAIC,SAASz9B,YAf/B5M,YA0BjB,UAACqtC,GAAA,EAAD,YACE,SAAClB,EAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,EAAA,EAAD,CACEE,oBAAkB,EAClBpqB,UAAW6sG,EAAW7sG,UACtBD,KAAM8sG,EAAW9sG,KACjB6oB,aAAc,SAACsI,GAWzB47E,EAAmB,CAAE/sG,KAXmBmxB,KAC9B9zB,WAAYA,EACZ+sB,kBAgBZ,SAA8B0E,IAJ9B,SAAqBA,GACnBi+E,EAAmB,CAAE9sG,UAAW6uB,KAIhCU,CAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8B4jC,SAAAA,oBAYjD,SAASq5E,EAAiBjjH,EAAYqqC,GACpCiK,GAAiB,SAACtuC,GAAD,UAAC,MACbA,GADY,IAEf6jC,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,S,+nDGxPb,SAAS89E,GAAT,GAUJ,IATExmH,EASF,oBASK6mC,EAAa,cAEnB,OACE,SAAC,IAAD,CAAuB4L,SAXD,CACtBuG,gBAAiB,EACjBI,mBAAoB,GACpBP,cAAe,GACf5Q,SAAU,GACVC,OAAQ,CAAE7pC,GAAI,QAASqqC,MAAM,IAMqB7B,WAAYA,EAA9D,UACE,SAAC4/E,GAAD,CAAQ5/E,WAAYA,EAApB,SACG,gBACCttB,EADD,EACCA,aACA0sG,EAFD,EAECA,WACAzvG,EAHD,EAGCA,WACAkwG,EAJD,EAICA,cACA98C,EALD,EAKCA,OACA+8C,EAND,EAMCA,UAND,OAQC,SAACd,GAAD,SAEM7lH,GAFN,IAGE6mC,WAAYA,EACZD,QAASrtB,EACT0sG,WAAYA,EACZC,mBAAoBQ,EACpBlwG,WAAYA,EACZozD,OAAQA,EACRo8C,eAAgBW,UAoB5B,SAASF,GAAT,GAAuD,IAArCp5G,EAAqC,EAArCA,SAAUw5B,EAA2B,EAA3BA,WAClBxiC,GAAaiuC,EAAAA,EAAAA,KAAbjuC,SACR,MAAoC6E,EAAAA,GAAAA,UAAS,CAC3CkQ,UAAW/U,EAAS4jC,SACpB9uB,KAAM,IAFR,GAAO8sG,EAAP,KAAmBS,EAAnB,KAKA,MAA4Bl/E,EAAAA,EAAAA,GAAkBX,GAA9C,GAAO+iC,EAAP,KAAe+8C,EAAf,KACMC,GAAuB/oG,EAAAA,GAAAA,GAAY+rD,GAEzC,GAAgD1wD,EAAAA,EAAAA,IAAmB,IAE/DsoG,YAAY,EACZ53C,OAAQg9C,EACRlF,MAAOhoG,EAAAA,IACJusG,GAEsB,IAA3B5hH,EAAS20C,iBAPHz/B,EAAR,EAAQA,aAAcpK,EAAtB,EAAsBA,UAAWqH,EAAjC,EAAiCA,WAUjC,OAAIrH,EACK,MAIP,8BACG9B,EAAS,CACRkM,aAAAA,EACA/C,WAAAA,EACAyvG,WAAAA,EACAS,cAON,SAA6BhjH,GAC3BgjH,GAAc,SAACG,GAAD,UAAC,MAAeA,GAASnjH,OAPnCkmE,OAAAA,EACA+8C,UAAAA,M,m7BCpFD,WACL7gH,EACAyF,GAFK,iHAKoBxF,EAAAA,GAAAA,KACrBw1C,EAAAA,GAAAA,IAAiCz1C,GACjC,CAAEyF,OAAAA,IAPD,uBAKK/G,EALL,EAKKA,KALL,kBASIA,EAAKtG,KAAI,SAAC2tB,GAAD,OAAOsuB,EAAAA,GAAAA,GAAetuB,OATnC,uCAWG5lB,EAAAA,EAAAA,IAAgB,EAAD,IAXlB,0D,kDCzBA,SAASD,GAAS3H,EAAsBoG,GAC7C,IAAM4S,EAAU,eACV7Q,EAAMnI,EAAK,GAAH,OAAMgZ,EAAN,YAAiBhZ,GAAOgZ,EACtC,OAAO5S,EAAS,GAAH,OAAM+B,EAAN,YAAa/B,GAAW+B,E,4sBCUhC,WAA4BnI,GAA5B,2FACAA,EADA,yCAEI,MAFJ,gCAMoB0H,EAAAA,GAAAA,IAAqBC,GAAS3H,IANlD,uBAMKmG,EANL,EAMKA,KANL,kBAOIA,GAPJ,yCASGyB,EAAAA,EAAAA,IAAgB,EAAD,IATlB,2D,kDCVM2nD,GAAiC,CAC5CrnB,OAAQ,QACRoQ,SAAU,SAAC7M,GAAD,OAASpkC,EAAAA,GAAAA,GAAQokC,EAAIm9B,QAC/B5oE,GAAI,QACJgwC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,OCSVjQ,GAAa,wBACb0qB,IAAW/Y,EAAAA,GAAAA,GAAY3R,IACvBX,GAAU,CAACriC,GAAAA,EAAMiM,GAAAA,EAAO89C,GAAOlX,GAAAA,EAASQ,GAAAA,GAAIH,GAAAA,EAAMa,GAAAA,G,4sBCAjD,WACL9xC,EACAyxC,GAFK,iHAKoBxxC,EAAAA,GAAAA,KACrBw1C,EAAAA,GAAAA,IAAiCz1C,EAAeyxC,IAN/C,uBAKK/yC,EALL,EAKKA,KALL,mBAQI21C,EAAAA,GAAAA,GAAe31C,IARnB,uCAUGyB,EAAAA,EAAAA,IAAgB,EAAD,IAVlB,0D,6JCdA,SAAS6gH,GAAT,GAAiD,QAAxBpsD,SAAAA,OAAwB,MAAb,GAAa,EAChDqsD,EAAeloH,OAAOyG,QAAQo1D,GAEpC,OAA4B,IAAxBqsD,EAAavnH,OACR,MAIP,gBAAKwB,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,GAAA,GAAD,YACE,SAACA,GAAA,GAAD,CAAan2B,MAAM,qBAAqBoD,KAAK,gBAC7C,SAAC+yB,GAAA,GAAD,CAAYpjC,UAAU,OAAtB,UACE,SAACw1B,GAAA,EAAD,CACE9f,QAAS,CAAC,UAAW,aAAc,UAAW,eADhD,SAGGqwG,EAAa7oH,KAAI,gB,IAAA,G,EAAA,E,4CAAA,I,kxBAAE2F,EAAF,KAAQmvD,EAAR,YAChB,2BACE,wBAAKnvD,KACL,wBAAKmvD,MAAAA,OAAL,EAAKA,EAASvY,aACd,yBAAKuY,MAAAA,OAAA,EAAAA,EAASmB,UAAW,OACzB,wBAAKnB,MAAAA,OAAL,EAAKA,EAASiC,eAJPpxD,iBCjBlB,SAASmjH,GAAT,GAA8C,QAAtBrtC,OAAAA,OAAsB,MAAb,GAAa,EACnD,OAAsB,IAAlBA,EAAOn6E,OACF,MAIP,gBAAKwB,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,GAAA,GAAD,YACE,SAACA,GAAA,GAAD,CAAan2B,MAAM,UAAUoD,KAAK,YAClC,SAAC+yB,GAAA,GAAD,CAAYpjC,UAAU,OAAtB,UACE,SAACw1B,GAAA,EAAD,CAAc9f,QAAS,CAAC,cAAe,qBAAvC,SACGijE,EAAOz7E,KAAI,SAACyyE,GACX,IAAM9sE,EAAsB,SAAf8sE,EAAM5lE,KAAkB4lE,EAAMC,OAASD,EAAM/jE,KAE1D,OACE,SAAC4pB,GAAA,MAAD,CAAkB7vB,MAAO9C,GAAQ8sE,EAAMC,OAAvC,SACGD,EAAMG,aAD2CjtE,iB,oICjB/D,SAASojH,GAAT,GAA2C,QAAtBvsE,OAAAA,OAAsB,MAAb,GAAa,EAC1CwsE,EAAYroH,OAAOyG,QAAQo1C,GAEjC,OAAyB,IAArBwsE,EAAU1nH,OACL,MAIP,SAAC+2B,GAAA,EAAD,CAAY5vB,MAAM,SAAlB,UACE,kBAAO3F,UAAU,uCAAjB,UACE,2BACGkmH,EAAUhpH,KAAI,gB,IAAA,G,EAAA,E,4CAAA,I,kxBAAEyI,EAAF,KAASjD,EAAT,YACb,2BACE,wBAAKiD,KACL,wBAAKjD,MAFEiD,Y,iCChBd,SAASwgH,GAAT,GAMJ,IALDlvG,EAKC,EALDA,OACAnI,EAIC,EAJDA,MAKMsyF,EAAY,CAACjqD,GAAAA,EAAAA,QAAyBA,GAAAA,EAAAA,SAAyBjzC,SACnE+S,GAGF,OACE,iCACE,cACEjX,WAAW6L,EAAAA,EAAAA,GAAK,8BAA+B,CAC7C,aAAcu1F,EACd,YAAaA,MAIhBtyF,KCjBA,IAAMomD,GAAcvgD,IAAAA,OACjB,6BAA8B,IACrCC,UAAU,mBAAmBlN,EAAAA,EAAAA,ICCzB,WACL,I,IAAA,G,GAA4CQ,EAAAA,GAAAA,UAAS,I,EAArD,E,g0BAAOk+G,EAAP,KAAuBvC,EAAvB,KAEMz7G,GAAgBC,EAAAA,GAAAA,MAChBg+G,GAActxG,EAAAA,GAAAA,KAEpB,IAAK3M,EAAc5E,OAAS6iH,EAAY7iH,KACtC,OAAO,KAGT,IAAMH,EAAW+E,EAAc5E,KAE/B,OACE,iCACE,SAACw8B,EAAA,EAAD,CACE/yB,MAAM,eACNgzB,QAAM,EACNpB,YAAa,CAAC,CAAEl5B,MAAO,kBAGxBygH,GACC,SAACrjF,GAAA,EAAD,CAAa/2B,QAASo6G,KAEtB,SAACZ,GAAD,CACE3B,kBAAmBA,EACnBiB,aACEzhH,EAASijH,2BACTjjH,EAASkjH,iBAAiB3uG,QAE5BksG,oBAEEzgH,EAASijH,4BACRjjH,EAASmjH,oBAEZjC,iBACElhH,EAASijH,2BACTjjH,EAASojH,qBAAqB7uG,QAEhCmtG,UAAW1hH,EAASojH,qBAAqB1B,UACzCjwG,OAAQuxG,EAAY7iH,KACpBqiC,WAAW,qBDzCgC,KAClDjxB,UAAU,4BAA4BlN,EAAAA,EAAAA,INelC,WAA0B,MFhBJrK,EEiB3B,GAEIggB,EAAAA,EAAAA,4BADF9S,OAAUzF,EADZ,EACYA,cAAe67G,EAD3B,EAC2BA,YAGrBt9G,EAAWktD,KAEXm2D,GAAmBjvG,EAAAA,GAAAA,IAAe3S,GAElC6hH,GFzBqBtpH,EEyBSsjH,GFxB7Bx7G,EAAAA,EAAAA,UAAS,CAAC,cAAe9H,IAAK,kBAKhC,SAAP,mCAL6CupH,CAAavpH,K,kWAAzC,KACVqa,EAAAA,EAAAA,IAAU,gCEyBT4iC,EJtBD,SACLx1C,EACAyF,GAEA,OAAOpF,EAAAA,EAAAA,UACLg1C,GAAAA,GAAAA,gBAA0Br1C,EAAeyF,IACzC,kBAOG,SAAP,qCAPUs8G,CAAiC/hH,EAAeyF,K,kWAFzC,KAIRmN,EAAAA,EAAAA,IAAU,wCIcOovG,CAA4BhiH,EAAe,CACjE67G,YAAAA,IAGF,IAAK77G,EACH,MAAM,IAAIpH,MAAM,mCAGlB,IACGgpH,EAAiBljH,OACjB82C,EAAgB92C,MAChBm9G,IAAgBgG,EAAenjH,KAEhC,OAAO,KAGT,IAAciW,EAAgBitG,EAAtBljH,KAER,OACE,iCACE,SAACw8B,EAAA,EAAD,CACE/yB,MAAM,aACN4xB,YAAa,CACX,CAAEl5B,MAAO,eAAgB05B,KAAM,gBAC/B,CAAE15B,MAAO8T,EAAY7N,MACrB,CAAEjG,MAAO,iBAIZghH,EAAenjH,OACd,gBAAKxD,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACojC,GAAA,GAAD,WACE,SAACA,GAAA,QAAD,WACE,UAACX,EAAA,EAAD,CAASz0B,MAAM,OAAf,kDACwC,IADxC,UAEG24G,EAAenjH,YAFlB,aAEG,EAAqBoI,KAFxB,gBAUV,SAAC,KAAD,CAAa2Q,QAAS,CAAE9C,YAAAA,GAAxB,UACE,SAACisB,GAAA,EAAD,CACEW,aAAc,CACZh2B,KAAM,WACNpD,MAAO,cAET44B,WAAYA,GACZD,QAAS0U,EAAgB92C,KACzB0hC,QAASA,GACTc,cAAe3iC,EACf4iC,eAAa,EACbK,kBAAkB,+BMjFiC,KAC1D1xB,UAAU,2BAA2BlN,EAAAA,EAAAA,IEIjC,WAAyB,MAC9B,GAEI2V,EAAAA,EAAAA,4BADF9S,OAAUzF,EADZ,EACYA,cAAeyxC,EAD3B,EAC2BA,YAGrBmwE,GAAmBjvG,EAAAA,GAAAA,IAAe3S,GAElCiiH,EPZD,SACLjiH,EACAyxC,GAEA,OAAOpxC,EAAAA,EAAAA,UACLg1C,GAAAA,GAAAA,UAAoBr1C,EAAeyxC,IACnC,kBAOG,SAAP,qCAPUswE,CAAiC/hH,EAAeyxC,K,kWAFzC,KAIR7+B,EAAAA,EAAAA,IAAU,wCOIMsvG,CAA2BliH,EAAeyxC,GAEjE,IAAKzxC,IAAkByxC,EACrB,MAAM,IAAI74C,MAAM,4DAGlB,IAAKgpH,EAAiBljH,OAASujH,EAAevjH,KAC5C,OAAO,KAGT,IAAciW,EAAgBitG,EAAtBljH,KACM6yC,EAAc0wE,EAApBvjH,KAEFX,EAAOwzC,EAAUD,MAAM,GAAGvxC,UAAU,GAE1C,OACE,iCACE,SAACm7B,EAAA,EAAD,CACE/yB,MAAM,aACN4xB,YAAa,CACX,CAAEl5B,MAAO,eAAgB05B,KAAM,gBAC/B,CAAE15B,MAAO8T,EAAY7N,MACrB,CAAEjG,MAAO,aAAc05B,KAAM,KAC7B,CAAE15B,MAAO9C,OAIb,gBAAK7C,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,GAAA,GAAD,YACE,SAACA,GAAA,GAAD,CAAan2B,MAAM,mBAAmBoD,KAAK,eAC3C,SAAC+yB,GAAA,GAAD,CAAYpjC,UAAU,OAAtB,UACE,UAACw1B,GAAA,EAAD,YACE,SAACA,GAAA,MAAD,CAAkB7vB,MAAM,KAAxB,SAA8B0wC,EAAU/qC,MACxC,SAACkqB,GAAA,MAAD,CAAkB7vB,MAAM,OAAxB,SAAgC9C,KAChC,SAAC2yB,GAAA,MAAD,CAAkB7vB,MAAM,SAAxB,UACE,SAACwgH,GAAD,CACElvG,OAAQo/B,EAAUr+B,OAClBlJ,MAAOunC,EAAUoY,WAGrB,SAACj5B,GAAA,MAAD,CAAkB7vB,MAAM,UAAxB,UACGwW,EAAAA,GAAAA,sBAAqBk6B,EAAUujC,wBAQ5C,gBAAK55E,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,GAAA,GAAD,YACE,SAACA,GAAA,GAAD,CAAan2B,MAAM,oBAAoBoD,KAAK,eAC5C,SAAC+yB,GAAA,GAAD,CAAYpjC,UAAU,OAAtB,UACE,UAACw1B,GAAA,EAAD,YACE,SAACA,GAAA,MAAD,CAAkB7vB,MAAM,QAAxB,SACG0wC,EAAU4vB,SAEb,SAACzwC,GAAA,MAAD,CAAkB7vB,MAAM,MAAxB,SACG0wC,EAAUyjC,WAEb,SAACmsC,GAAD,CAAWvsE,OAAQrD,EAAUsD,sBAOvC,SAACqsE,GAAD,CAAcrtC,OAAQtiC,EAAUq5B,UAEhC,SAACo2C,GAAD,CAAepsD,SAAQ,UAAErjB,EAAUkD,uBAAZ,aAAE,EAA2BC,gBFlFC,KAAK32C,KGNnDm0D,GAAcriD,IAAAA,OAAe,uBAAwB,CAChEugD,GACAhE,KACCruD,KCDH8R,IAAAA,OACU,iBAAkB,CAACsyG,EAAAA,QAAiB/1D,EAAkB8F,KAC7DpiD,UAAU,kBAAmB2rG,GAC7B58F,OAHH,0BAGU,SAAgBoxC,GAwGtBA,EAAuBC,SAAS,CAC9BnyD,KAAM,eACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBAMfmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,4BACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBAMnBmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,0BACN2C,IAAK,yCACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,+BAKjBmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,oCACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BAKjBmgD,EAAuBC,SAjJV,CACXnyD,KAAM,OACN2C,IAAK,QACL28C,OAAQ,OACRsW,UAAU,IA+IZ1D,EAAuBC,SA5IR,CACbnyD,KAAM,cACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAwIjBmgD,EAAuBC,SAnIL,CAChBnyD,KAAM,kBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,0BA+HjBmgD,EAAuBC,SA1HJ,CACjBnyD,KAAM,mBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,wBAuHjBmgD,EAAuBC,SAlHR,CACbnyD,KAAM,cACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBA8GjBmgD,EAAuBC,SAzGL,CAChBnyD,KAAM,kBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,0BAqGjBmgD,EAAuBC,SAhGJ,CACjBnyD,KAAM,mBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBAGfrK,OAAQ,CACN28G,IAAK,KAyFTnyD,EAAuBC,SArFN,CACfnyD,KAAM,YACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mBAiFjBmgD,EAAuBC,SA5EP,CACdnyD,KAAM,gBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,gBAGfrK,OAAQ,CACN28G,IAAK,KAoETnyD,EAAuBC,SAhEC,CACtBnyD,KAAM,gBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4B,uIC3Gd,MAAMuyG,EAEXnoE,YAAY7qC,EAAQkoD,EAAaC,EAAkB8qD,GACjDroH,KAAKsoH,wBAAwBhrD,EAAaloD,GAC1CpV,KAAKu9D,iBAAmBA,EACxBv9D,KAAKqoH,kBAAoBA,EAEzBroH,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC6wC,QAAS5gD,KAAK4gD,QACdzf,SAAS,EACTs/B,gBAAiB,GACjB8nD,qBAAsB,EACtBnlF,WAAY,IAGdpjC,KAAKiiC,aAAejiC,KAAKiiC,aAAa5iC,KAAKW,MAC3CA,KAAKwoH,kBAAoBxoH,KAAKwoH,kBAAkBnpH,KAAKW,MAGvDsoH,wBAAwBhrD,EAAaloD,GAEnC,MAAM+tC,EAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MAC5ByoH,EAAwBzoH,KAAKyoH,sBAAsBppH,KAAKW,MACxDy+D,EAAqBz+D,KAAKy+D,mBAAmBp/D,KAAKW,MACxD4V,IAAAA,OAAe5V,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KACjEpV,KAAKmjD,QAAUA,EACfnjD,KAAKyoH,sBAAwBA,EAC7BzoH,KAAKy+D,mBAAqBA,EAG5Btb,UACEnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAEL,IAAIC,EAAcp+D,KAAKu9D,iBAAiBc,kBAAkBr+D,KAAK2gD,UAC3C,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAav+D,KAAKu9D,iBAAiBiB,wBAAwBx+D,KAAK2gD,UACjD,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgB1+D,KAAKu9D,iBAAiBoB,oBAAoB3+D,KAAK2gD,UAC7C,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B5+D,KAAKwoH,oBAGPx0F,YAAW,UAAE00F,IACPA,EAAUC,eAAiBD,EAAUE,iBACvC5oH,KAAKwoH,oBAITvmF,aAAa4mF,GACX7oH,KAAK+P,MAAMqzB,WAAaylF,EACxB7oH,KAAKwoH,oBAMPC,wBACEzoH,KAAKqoH,kBAAkBS,mBAAmB9oH,KAAK2gD,SAAU3gD,KAAK+P,MAAMg5G,oBACpE/oH,KAAKwoH,oBAMP/pD,qBACE,IAAIj2B,EAAcxoC,KAAK+P,MAAMwuD,WAC7Bv+D,KAAKu9D,iBAAiByrD,wBAAwBhpH,KAAK2gD,SAAUnY,GAC7DxoC,KAAKwoH,oBAGPA,oBACExoH,KAAK+P,MAAMoxB,SAAU,EACrBnhC,KAAK+P,MAAM0wD,gBAAkB,GAC7B,MAAMtqD,GAASnW,KAAK+P,MAAMqzB,WAAa,GAAKpjC,KAAK+P,MAAMg5G,mBAAqB,EAC5E/oH,KAAKipH,aAAa9yG,EAAOnW,KAAK+P,MAAMg5G,mBAAoB/oH,KAAK+P,MAAMwuD,YAChEviD,MAAMvX,IACLzE,KAAK+P,MAAM0wD,gBAAkBh8D,EAAKykH,UAClClpH,KAAK+P,MAAMo5G,qBAAuB1kH,EAAKgS,cAExCyrD,SAAQ,KACPliE,KAAK+P,MAAMoxB,SAAU,M,wJCjG7B,MAAMof,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,+BAAgC,CACzE2qC,YAAaD,EACbrrC,WAAYkzG,EAAAA,uCACZrzG,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXC,SAAU,IACVC,QAAS,IACTC,aAAc,IACdooE,aAAc,IACdP,UAAW,Q,kEChBf,MAAMnoE,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,kBAAkBC,UAAU,qBAAsB,CAC/D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACP2lE,MAAO,IACPhiH,SAAU,Q,2JCNP,MAAMiiH,EAEXppE,cACEjgD,KAAK+P,MAAQ,CACX+/E,oBAAqB,IAGvB9vF,KAAKspH,eAAiB,CACpB,CACEC,UAAW,aACXC,KAAM,aAER,CACED,UAAW,gBACXC,KAAM,eAER,CACED,UAAW,YACXC,KAAM,cAIVxpH,KAAK2T,WAAa,CAChB81G,SAAUrsF,GAAAA,GACVssF,cAAe1pH,KAAKspH,eAAe,GACnCK,WAAY,QACZ/oG,OAAQ,UAIV5gB,KAAK4pH,UACH,4KAEF5pH,KAAK0E,OAAS1E,KAAK0E,OAAOrF,KAAKW,MAC/BA,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAK6pH,kBAAoB7pH,KAAK6pH,kBAAkBxqH,KAAKW,MACrDA,KAAK8pH,mBAAqB9pH,KAAK8pH,mBAAmBzqH,KAAKW,MAGzD+pH,cAActmE,GACZ,MAAMumE,EAAc5sF,GAAAA,GAAS6N,IAAI,QAAS,GAC1CjrC,KAAK2T,WAAa,CAChB81G,SAAUhmE,EAAMwmE,eAAiBC,EAAezmE,EAAMwmE,eAAgBD,GAAeA,EACrFN,cAAe1pH,KAAK2T,WAAW+1G,cAC/BC,WAAYlmE,EAAM0mE,UAAY,WAAa,QAC3CvpG,OAAQ5gB,KAAK2T,WAAWiN,QAI5Blc,SAGE,GAFA1E,KAAK+P,MAAM+/E,oBAAsB,GAEF,WAA3B9vF,KAAK2T,WAAWiN,QAAkD,KAA3B5gB,KAAKyjD,MAAM2mE,YAAtD,CAKA,GAAmC,UAA/BpqH,KAAK2T,WAAWg2G,WAAwB,CAC1C,KAAK3pH,KAAKyjD,MAAM0mE,gBAA2Ct4G,IAA7B7R,KAAK2T,WAAW81G,UAA2BzpH,KAAK2T,WAAW81G,SAAS76G,WAEhG,YADA5O,KAAK+P,MAAM+/E,oBAAsB,mCAEvB9vF,KAAKyjD,MAAM0mE,UAGrBnqH,KAAKyjD,MAAMwmE,eAAiBjqH,KAAK2T,WAAW+1G,cAAcF,KAF1DxpH,KAAKyjD,MAAMwmE,gBAyCKR,EAzC2BzpH,KAAK2T,WAAW81G,SA2C1D,EADHY,EAAOjtF,GAAAA,CAAOqsF,IACLa,UAAWD,EAAKE,QAASF,EAAKA,OAAQA,EAAKG,QAAU,EAAG,KAAKr9G,KAAK,WAtC3EnN,KAAKyjD,MAAM0mE,WAAY,EAoC7B,IAAwBV,EAClBY,EAlCFrqH,KAAKyqH,WAAWzqH,KAAK2T,WAAWiN,aAjB9B5gB,KAAK+P,MAAM+/E,oBAAsB,wCAoBrCE,aAAagd,GACXhtG,KAAKyjD,MAAM2mE,YAAcpd,EAAGC,WAC5BjtG,KAAK+vF,eAAgB,EAGvB85B,kBAAkB9yG,GACX,IAAW/W,KAAKyjD,MAAMinE,UAAW3zG,EAASxK,MAC7CvM,KAAKyjD,MAAMinE,UAAY,IAAI1qH,KAAKyjD,MAAMinE,UAAW3zG,EAASxK,KAI9Du9G,mBAAmB/yG,GACjB/W,KAAKyjD,MAAMinE,UAAY,IAAS1qH,KAAKyjD,MAAMinE,WAAYpsH,GAAOA,IAAOyY,EAASxK,KAGhF42C,UACEnjD,KAAK+pH,cAAc/pH,KAAKyjD,QAI5B,SAASymE,EAAeV,EAAMQ,EAAc5sF,GAAAA,IAC1C,IAAIutF,EAAUnB,EAAKjuF,MAAM,KACzB,OAAIovF,EAAQlrH,OAAS,GACnBkrH,EAAUA,EAAQnhH,MAAM,EAAG,GAItB4zB,GAAAA,CAAOosF,EAAM,YAFXQ,E,yFCrGX,MAAMzpE,EAAgCvrC,EAAQ,MAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,cAAe,CACxD2qC,YAAaD,EACbrrC,WAAYm0G,EAAAA,sBACZt0G,SAAU,CACR0uC,MAAO,IACP1tC,OAAQ,IACRyxF,KAAM,IACNojB,eAAgB,IAChBC,kBAAmB,IACnBJ,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClBpF,cAAe,Q,sJCfZ,MAAMg7B,EAEX9qE,YAAYqd,EAAaloD,EAAQszC,GAC/B1oD,KAAK0oD,OAASA,EACd9yC,IAAAA,OAAe5V,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KAGnEysG,eAAe79G,GACbhE,KAAKsE,SAASy+F,SAASioB,aAAc,EACrChrH,KAAKsE,SAASy+F,SAASG,YAAc,IACrCljG,KAAK2/D,2BACL3/D,KAAKirH,sBAAsBjnH,GAG7BgwB,YAAW,QAAE6S,IACPA,GAAWA,EAAQ8hF,cACrB3oH,KAAKkrH,gBAAgBrkF,EAAQ8hF,cAIjCuC,gBAAgBrkF,GACd,MAAMskF,EAAgB,IAAOtkF,GAAUwN,GAA6B,IAApBA,EAAK+2E,aACrDprH,KAAKsE,SAASy+F,SAASioB,YAAcG,EACrCnrH,KAAKsE,SAASy+F,SAASG,YAAc,IACrCljG,KAAK2/D,4B,0HC3BT,MAAMpf,EAAgCvrC,EAAQ,OAO9CY,IAAAA,OAAe,kBAAkBC,UAAU,0BAA2B,CACpE2qC,YAAaD,EACbrrC,WAAY61G,EAAAA,kCACZh2G,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdwqE,oBAAqB,IACrBJ,mBAAoB,IACpBK,iBAAkB,IAClBtuD,gBAAiB,Q,kECpBrB,MAAMzc,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,kBAAkBC,UAAU,oBAAqB,CAC9D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,Q,w3BC0DX,IAAMwuD,GAAyC71G,EAAAA,EAAAA,IArD/C,YAMG,IALR/R,EAKQ,EALRA,MACAyD,EAIQ,EAJRA,SACAokH,EAGQ,EAHRA,kBACAC,EAEQ,EAFRA,gBACAC,EACQ,EADRA,iBAEMC,EAAiD,CAAC,EAAD,KAEhDz2F,EAAAA,GAFgD,IAGnDvxB,MAAO+F,EAAAA,EAAAA,QACP1B,SAAU,kBAAM0jH,GAChB1kH,QAAS,kBACP0kH,EACI,mDACA,MAR6C,OAWhD12F,EAAAA,GAXgD,IAYnDrxB,MAAO+F,EAAAA,EAAAA,WACP1B,SAAU,kBAAMwjH,GAAqBE,GACrC1kH,QAAS,kBACPwkH,GAAqBE,EACjB,kEACA,MAER,CACEptH,GAAI,mBACJgT,KAAMs6G,EAAAA,EACNhlH,MAAO,QACPgM,YAAa,mBACbjP,MAAO+F,EAAAA,EAAAA,MACP1B,SAAU,kBAAMwjH,GAAqBC,GACrCzkH,QAAS,kBACPwkH,GAAqBC,EACjB,uEACA,MAIV,OACE,iCACE,gBAAKxqH,UAAU,+BAAf,+BACA,SAACqS,EAAA,EAAD,CACEC,UAAU,iBACV5P,MAAOA,EACPgD,QAASglH,EACTvkH,SAAUA,SAQhB,CACE,QACA,WACA,oBACA,kBACA,qBC3EJwO,IAAAA,OAAe,kBAAkBC,UAAU,kCAAmC01G,I,sICFvE,MAAMM,EAEX5rE,YAAYC,EAAQ9qC,EAAQkoD,EAAaC,EAAkB8qD,EAAmB59F,GAC5EzqB,KAAKsoH,wBAAwBhrD,EAAaloD,GAC1CpV,KAAKu9D,iBAAmBA,EACxBv9D,KAAKqoH,kBAAoBA,EACzBroH,KAAKyqB,cAAgBA,EACrBzqB,KAAKkgD,OAASA,EAEdlgD,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC6wC,QAAS5gD,KAAK4gD,QACdzf,SAAS,EACTs/B,gBAAiB,GACjB8nD,qBAAsB,EACtBnlF,WAAY,IAGdpjC,KAAKiiC,aAAejiC,KAAKiiC,aAAa5iC,KAAKW,MAC3CA,KAAKwoH,kBAAoBxoH,KAAKwoH,kBAAkBnpH,KAAKW,MACrDA,KAAK8rH,uBAAyB9rH,KAAK8rH,uBAAuBzsH,KAAKW,MAE/DA,KAAK+rH,UAAY,CACf,EAAG,KACH,EAAG,QACH,EAAG,gBAIPzD,wBAAwBhrD,EAAaloD,GAEnC,MAAM+tC,EAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MAC5ByoH,EAAwBzoH,KAAKyoH,sBAAsBppH,KAAKW,MACxDy+D,EAAqBz+D,KAAKy+D,mBAAmBp/D,KAAKW,MACxD4V,IAAAA,OAAe5V,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KACjEpV,KAAKmjD,QAAUA,EACfnjD,KAAKyoH,sBAAwBA,EAC7BzoH,KAAKy+D,mBAAqBA,EAG5ButD,kBAAkBztG,GAChB,OAAOve,KAAKisH,gBAAgB1tG,GAG9B2tG,oBAAoB3tG,GAClB,MAAMrG,EAASlY,KAAKgsH,kBAAkBztG,GAEtC,OAAOrG,EAASlY,KAAK+rH,UAAU7zG,EAAOlN,MAAQ,UAGhDmhH,oBAAoB5tG,GAClB,MAAMrG,EAASlY,KAAKgsH,kBAAkBztG,GAEtC,OAAOrG,GAAUA,EAAOvZ,MAAQuZ,EAAOvZ,MAAQ,IAGjDwkD,UACEnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAEL,IAAIC,EAAcp+D,KAAKu9D,iBAAiBc,kBAAkBr+D,KAAK2gD,UAC3C,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAav+D,KAAKu9D,iBAAiBiB,wBAAwBx+D,KAAK2gD,UACjD,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgB1+D,KAAKu9D,iBAAiBoB,oBAAoB3+D,KAAK2gD,UAC7C,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B5+D,KAAKwoH,oBAGPvmF,aAAa4mF,GACX7oH,KAAK+P,MAAMqzB,WAAaylF,EACxB7oH,KAAKwoH,oBAMPC,wBACEzoH,KAAKqoH,kBAAkBS,mBAAmB9oH,KAAK2gD,SAAU3gD,KAAK+P,MAAMg5G,oBACpE/oH,KAAKwoH,oBAMP/pD,qBACE,IAAIj2B,EAAcxoC,KAAK+P,MAAMwuD,WAC7Bv+D,KAAKu9D,iBAAiByrD,wBAAwBhpH,KAAK2gD,SAAUnY,GAC7DxoC,KAAKwoH,oBAGPA,oBACExoH,KAAKkgD,OAAOlgD,KAAK8rH,wBAGS,+BAC1B9rH,KAAK+P,MAAMoxB,SAAU,EACrBnhC,KAAK+P,MAAM0wD,gBAAkB,GAC7B,MAAMtqD,GAASnW,KAAK+P,MAAMqzB,WAAa,GAAKpjC,KAAK+P,MAAMg5G,mBAAqB,EAC5E,IACE,MAAM,UAAEG,EAAF,WAAazyG,SAAqBzW,KAAKipH,aAAa9yG,EAAOnW,KAAK+P,MAAMg5G,mBAAoB/oH,KAAK+P,MAAMwuD,YAC3Gv+D,KAAK+P,MAAM0wD,gBAAkByoD,EAC7BlpH,KAAK+P,MAAMo5G,qBAAuB1yG,EAClC,MAAOqE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAL3C,QAOE9a,KAAK+P,MAAMoxB,SAAU,I,iLCzH3B,MAAMof,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,8BAA+B,CACxE2qC,YAAaD,EACbrrC,WAAY22G,EAAAA,sCACZ92G,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXC,SAAU,IACVC,QAAS,IACTC,aAAc,IACdooE,aAAc,IACdrH,YAAa,IACbqK,gBAAiB,Q,gGCjBrB,MAAMF,EAAY,CAChB,EAAG,KACH,EAAG,QACH,EAAG,gBAGE,MAAMK,EACXp4F,YAAW,YAAEq4F,IACX,IAAKA,IAAgBA,EAAY1D,aAC/B,OAEF,MAAM2D,EAAkB,CAAEC,GAAI,EAAGt+G,MAAO,EAAGu+G,aAAc,GACzD,IAAK,IAAIjuG,KAAc8tG,EAAY1D,aAAc,CAC/C,MAAM5xG,EAAWs1G,EAAY1D,aAAapqG,GAE1C+tG,EAD0BP,EAAUh1G,EAAS/L,SAG/ChL,KAAKkY,OAASo0G,K,2ECjBlB,MAAM/rE,EAAgCvrC,EAAQ,OAO9CY,IAAAA,OAAe,kBAAkBC,UAAU,kBAAmB,CAC5D2qC,YAAaD,EACbrrC,WAAYk3G,EAAAA,0BACZr3G,SAAU,CACRs3G,YAAa,Q,kECXjB,MAAM9rE,EAAgCvrC,EAAQ,MAI9CY,IAAAA,OAAe,kBAAkBC,UAAU,sBAAuB,CAChE2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,Q,8HCZd,MAAMyvD,EAEXxsE,YAAYC,EAAQz1B,EAAeiiG,EAAkBjmD,EAAiBxf,EAAS7xC,GAC7EtW,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,EAAeiiG,iBAAAA,EAAkBjmD,gBAAAA,EAAiBxf,QAAAA,EAAS7xC,OAAAA,IAEzFpV,KAAK+P,MAAQ,CACXnG,cAAe,IAGjB5J,KAAK2sH,aAAe,CAClB,EAAG,GACH,EAAG,GACH,EAAG,IAGL3sH,KAAK2T,WAAa,CAChBi5G,gBAAiB,IAGnB5sH,KAAKmuD,UAAW,EAEhBnuD,KAAK6sH,cAAgB7sH,KAAK6sH,cAAcxtH,KAAKW,MAC7CA,KAAK8sH,iBAAmB9sH,KAAK8sH,iBAAiBztH,KAAKW,MACnDA,KAAK+sH,sBAAwB/sH,KAAK+sH,sBAAsB1tH,KAAKW,MAC7DA,KAAKgtH,gBAAkBhtH,KAAKgtH,gBAAgB3tH,KAAKW,MACjDA,KAAKitH,qBAAuBjtH,KAAKitH,qBAAqB5tH,KAAKW,MAE3DA,KAAKktH,eAAiBltH,KAAKktH,eAAe7tH,KAAKW,MAC/CA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKotH,sBAAwBptH,KAAKotH,sBAAsB/tH,KAAKW,MAC7DA,KAAKqtH,iBAAmBrtH,KAAKqtH,iBAAiBhuH,KAAKW,MACnDA,KAAKstH,qBAAuBttH,KAAKstH,qBAAqBjuH,KAAKW,MAC3DA,KAAKwrH,kBAAoBxrH,KAAKwrH,kBAAkBnsH,KAAKW,MACrDA,KAAK0rH,iBAAmB1rH,KAAK0rH,iBAAiBrsH,KAAKW,MACnDA,KAAKyrH,gBAAkBzrH,KAAKyrH,gBAAgBpsH,KAAKW,MACjDA,KAAKutH,uBAAyBvtH,KAAKutH,uBAAuBluH,KAAKW,MAC/DA,KAAKwtH,iBAAmBxtH,KAAKwtH,iBAAiBnuH,KAAKW,MACnDA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MAG3DytH,gBAAgB3mD,GACd,OAAOA,EAAWx4C,OAAO3qB,GAAUA,IAAUmjE,EAAW,KAG1DgmD,iBAAiBpuH,GACf,OAAOsB,KAAKkgD,QAAO2F,UACjB,MAAMinE,EAAmBpuH,EACzBsB,KAAK61F,WAAai3B,EAAiBvgH,GACnCvM,KAAKyjD,MAAMiqE,WAAW,GAAK1tH,KAAK61F,cAIpCm3B,kBACEhtH,KAAKyjD,MAAMiqE,WAAa,GACxB1tH,KAAK61F,WAAa,GAGpBg3B,gBACE,OAAO7sH,KAAKkgD,QAAO2F,UACjB7lD,KAAK61F,WAAa,GAClB71F,KAAKgxD,aAAe,GACpBhxD,KAAK2tH,QAAS,EACd,IAAIj3G,EAAW,GAEf1W,KAAK4tH,WAAa5tH,KAAKyjD,MAAM52C,KAAX7M,UAElB0W,QAAiB1W,KAAK+sH,sBAAsB/sH,KAAK4tH,WAAY5tH,KAAK2tH,QAElE,IACqC,IAA/Bj3G,EAASg3G,WAAWjuH,OACAO,KAAKytH,gBAAgB/2G,EAASg3G,aAElD1tH,KAAK61F,WAAan/E,EAASg3G,WAAW,GACtC1tH,KAAKyjD,MAAMiqE,WAAW,GAAK1tH,KAAK61F,aAEhC71F,KAAK61F,WAAa,GAClB71F,KAAKgxD,aAAe,qEAGtBhxD,KAAK61F,WAAa,GAEpB,MAAO/6E,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAd3C,QAgBE9a,KAAK2tH,QAAS,MAKpBZ,sBAAsBjpH,EAAM6pH,GAC1B,MAAM,iBAAEE,EAAF,OAAoBpoC,EAApB,eAA4BqoC,GAAmB9tH,KAAK2T,WAC1D,OAAO3T,KAAK0sH,iBAAiBqB,2BAC3B,CACEjqH,KAAAA,EACA+pH,iBAAAA,EACAG,WAAYvoC,EACZqoC,eAAAA,GAEFH,GAIJlC,kBACE,OAAOzrH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,kCAG3CkiE,oBACE,OAAOxrH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,8BAG3CoiE,mBACE,OAAO1rH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,6BAG3C4jE,eAAen3G,GACb/V,KAAKyjD,MAAMuqE,WAAaj4G,EAExB/V,KAAKiuH,mBAAmBl4G,GAG1Bm4G,cACE,OAAOluH,KAAKyjD,MAAMuqE,WAAWvuH,QAAUO,KAAKyjD,MAAMoqE,kBAAoB7tH,KAAKmuH,iCAG7EF,mBAAmBl4G,GACjB,MAAMq4G,EAAar4G,EAAO5X,KAAKG,GAAO0B,KAAKouH,WAAW3kH,MAAM/K,GAAMA,EAAE6N,KAAOjO,MAC3E0B,KAAK+P,MAAMnG,cAAgBwkH,EAAWC,SAAS7a,GAAUA,EAAM8a,gBAC/DtuH,KAAKuuH,4BAGPA,4BACE,MAAMC,GAAa7kH,EAAAA,EAAAA,GAAoB3J,KAAK+P,MAAMnG,eAE7C4kH,EAAWrpH,SAASnF,KAAKyjD,MAAMqqE,iBAClC9tH,KAAKutH,uBAAuBiB,EAAW,IAI3ChB,iBAAiB7pH,GACf,OAAOA,EAAM03B,QAAQ,iBAAkB,IAGzC8xF,oBAAoBpjH,EAAMpG,GACxB,MAAM8qH,EAAWzuH,KAAK2sH,aAAa5iH,GAC/B/J,KAAKwtH,iBAAiBiB,KAAczuH,KAAKwtH,iBAAiB7pH,KAC5D3D,KAAKyjD,MAAMoqE,iBAAmBlqH,EAC9B3D,KAAK2sH,aAAa5iH,GAAQpG,EAC1B3D,KAAK+vF,eAAgB,GAIzBs9B,iBAAiB1pH,GACf3D,KAAKmtH,oBAAoB,EAAGxpH,GAG9B2pH,qBAAqB3pH,GACnB3D,KAAKmtH,oBAAoB,EAAGxpH,GAC5B3D,KAAK2T,WAAWk6G,iBAAmBlqH,EAGrCypH,sBAAsBzpH,GACpB3D,KAAKmtH,oBAAoB,EAAGxpH,GAC5B3D,KAAK2T,WAAWk6G,iBAAmBlqH,EAGrC4pH,uBAAuBmB,GACrB1uH,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMqqE,eAAiBY,EAC5B1uH,KAAKyjD,MAAMoqE,iBAAmB7tH,KAAK2sH,aAAa+B,MAIpDP,iCACE,OAAoC,GAA7BnuH,KAAKyjD,MAAMqqE,iBAAwB9tH,KAAKwrH,oBAGjDyB,uBACE,OAAOjtH,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAWi5G,sBAAwB5sH,KAAKymE,gBAAgBK,gBAIjE3jB,UACEnjD,KAAK2sH,aAAa3sH,KAAKyjD,MAAMqqE,gBAAkB9tH,KAAKyjD,MAAMoqE,iBAC1D7tH,KAAKiuH,mBAAmBjuH,KAAKyjD,MAAMuqE,YACnChuH,KAAKitH,uBAELjtH,KAAK2T,WAAWk6G,iBAAmB7tH,KAAKyjD,MAAMoqE,iBAC9C7tH,KAAK2T,WAAWm6G,eAAiB9tH,KAAKyjD,MAAMqqE,eAC5C9tH,KAAK2T,WAAW8xE,OAASzlF,KAAKyjD,MAAMuqE,WAEN,OAA1BhuH,KAAKyjD,MAAMiqE,YAAwD,IAAjC1tH,KAAKyjD,MAAMiqE,WAAWjuH,SAC1DO,KAAKmuD,UAAW,I,2KCnMtB,MAAM5N,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,oBAAqB,CAC9D2qC,YAAaD,EACbrrC,WAAYu3G,EAAAA,4BACZ13G,SAAU,CACR0uC,MAAO,IACP0xC,iBAAkB,IAClBw5B,aAAc,IACdP,WAAY,IACZr+B,cAAe,Q,6KCTZ,MAAM6+B,EAEX3uE,YAAYC,EAAQ9qC,GAClBpV,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EAEdpV,KAAKkpH,UAAY,CACfn5G,MAAO,CACLqG,MAAO,KACP9D,OAAQ,GACR8wB,WAAY,EACZ3sB,WAAY,GAEd9S,MAAO,MAGT3D,KAAK6pH,kBAAoB7pH,KAAK6pH,kBAAkBxqH,KAAKW,MACrDA,KAAK8pH,mBAAqB9pH,KAAK8pH,mBAAmBzqH,KAAKW,MACvDA,KAAK6uH,yBAA2B7uH,KAAK6uH,yBAAyBxvH,KAAKW,MACnEA,KAAK8uH,oBAAsB9uH,KAAK8uH,oBAAoBzvH,KAAKW,MACzDA,KAAK+uH,aAAe/uH,KAAK+uH,aAAa1vH,KAAKW,MAE3CoV,EAAO4xD,QACL,IAAMhnE,KAAKyjD,QACX,KACMzjD,KAAKyjD,MAAMurE,SACbhvH,KAAK8uH,yBAGT,GAIJC,aAAaprH,GACX,OAAO3D,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAKyjD,MAAMykD,OAASvkG,KAIxBkmH,kBAAkB9yG,GACX,IAAW/W,KAAKyjD,MAAMinE,UAAW3zG,EAASxK,MAC7CvM,KAAKyjD,MAAMinE,UAAY,IAAI1qH,KAAKyjD,MAAMinE,UAAW3zG,EAASxK,KAI9Du9G,mBAAmB/yG,GACjB,OAAO/W,KAAKkgD,QAAO2F,gBACOj/B,EAAAA,EAAAA,IAAwB,CAC9C1Y,MAAO,iBACPjB,QAAS,qFACTyC,QAAS,CACPoY,OAAQ,CACNlhB,MAAO,SACP3F,UAAW,eAEb0O,QAAS,CACP/I,MAAO,UACP3F,UAAW,oBASjBjB,KAAKyjD,MAAMinE,UAAY,IAAS1qH,KAAKyjD,MAAMinE,WAAYpsH,GAAOA,IAAOyY,EAASxK,SAIlFuiH,sBACE,OAAO9uH,KAAKkgD,OAAOlgD,KAAK6uH,0BAGI,iCAC5B,MAAM,WAAEzrF,EAAF,MAAchtB,EAAd,OAAqByzD,GAAW7pE,KAAKkpH,UAAUn5G,MAC/CoG,GAASitB,EAAa,GAAKhtB,EAAQ,EACnCF,EAAQ,CAAE2zD,OAAAA,EAAQ83C,MAAOhoG,EAAAA,GAAWnD,OAAQxW,KAAKyjD,MAAMykD,OAAQ+mB,iBAAkBjvH,KAAKyjD,MAAMyrE,cAE5Fx4G,QAAiBT,EAAAA,EAAAA,IAAgB,CAAEE,MAAAA,EAAOC,MAAAA,EAAOF,MAAAA,IAEjDO,EAAazR,SAAS0R,EAASD,WAAY,IACjDzW,KAAKkpH,UAAUvlH,MAAQ+S,EAAS/S,MAChC3D,KAAKkpH,UAAUn5G,MAAM0G,WAAaA,G,4GCxFtC,MAAM8pC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,gBAAiB,CAC1D2qC,YAAaD,EACbrrC,WAAY05G,EAAAA,wBACZ75G,SAAU,CACR0uC,MAAO,IACP1tC,OAAQ,IACR+0G,gBAAiB,IACjBL,WAAY,IACZt1B,iBAAkB,IAClBrC,OAAQ,IACRq8B,SAAU,Q,6HCdP,MAAMC,EAEXnvE,YAAY7qC,EAAQkoD,GAClB,MAAMiD,EAAiBvgE,KAAKugE,eAC5B3qD,IAAAA,OAAe5V,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAKugE,eAAiBA,EAAelhE,KAAKW,MAM5CugE,eAAelsB,GACb,OAAQA,EAAKg7E,c,gHCdjB,MAAM9uE,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,sBAAuB,CAChE2qC,YAAaD,EACbrrC,WAAYk6G,EAAAA,8BACZr6G,SAAU,CACR8xB,QAAS,IACT6Z,UAAW,IACXC,SAAU,IACVC,QAAS,IACTmc,aAAc,IACdoF,aAAc,IACdthB,aAAc,Q,+DCdlBjrC,GAAAA,OAAe,kBAAkBmvC,QAAQ,aAAzC,wCAAuD,SAA2BN,EAAWqH,GAC3F,OAAOrH,EACLqH,EAA2B,eAC3B,GACA,CACEpT,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,iBCThD,SAASgxH,EAAsB7qE,EAAWsH,GACxC,OAAOtH,EACLsH,EAAyB,6BACzB,GACA,CACE71C,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAElN,GAAI,QACrDixH,QAAS,CAAE3uG,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAO2vD,OAAQ,UAAWvpD,OAAQ,SAC1E8qH,UAAW,CAAE5uG,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,MAAO2vD,OAAQ,UAAWvpD,OAAQ,SAC/Em9G,YAAa,CAAEjhG,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAO2vD,OAAQ,UAAWvpD,OAAQ,W,iDAVrFkR,QAAQ5W,OAAO,kBAAkB+lD,QAAQ,iBAAkBuqE,I,gBCE3D,SAASG,EAAgBhrE,EAAWsH,GAClC,OAAOtH,EACLsH,EAAyB,eACzB,GACA,CACErT,OAAQ,CAAE93B,OAAQ,QAClB1K,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1CwwB,KAAM,CAAElO,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SACpDuoE,MAAO,CAAErsD,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,Y,iDAb1EkR,QAAQ5W,OAAO,kBAAkB+lD,QAAQ,WAAY0qE,I,+DCErD75G,GAAAA,OAAe,kBAAkBmvC,QAAQ,aAAzC,wCAAuD,SAA2BN,EAAWuH,GAC3F,OAAOvH,EACLuH,EAA2B,eAC3B,GACA,CACEtT,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1CwwB,KAAM,CAAElO,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,e,+DCV1DkR,GAAAA,OAAe,kBAAkBmvC,QAAQ,gBAAzC,2CAA0D,SAA2BN,EAAWwH,GAC9F,OAAOxH,EACLwH,EACA,GACA,CACE/1C,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,S,6DCLvCrqB,GAAAA,OAAe,kBAAkBmvC,QAAQ,mBAAzC,cAA6D,SAAiCipE,GAuB5F,MAtBc,CAEdrwG,MAAgB,SAAexG,GAC7B,OAAO62G,EAAWrvG,IAAI,CAAErgB,GAAI6Y,IAAW6uC,UAGzCroC,OAAiB,WACf,OAAOqwG,EAAW93G,MAAM,IAAI8vC,UAG9BroC,OAAiB,SAAgBxG,GAC/B,OAAO62G,EAAWvqG,OAAO,CAAEnlB,GAAI6Y,IAAW6uC,UAG5CroC,OAAiB,SAAgB61F,GAC/B,OAAOwa,EAAWt1E,OAAO86D,GAAOxtD,UAGlCroC,OAAiB,SAAgB61F,GAC/B,OAAOwa,EAAWpsD,OAAO4xC,GAAOxtD,e,6EClBpC,SAAS0pE,EAAeC,EAAUC,EAAgBhmC,GAChD,IAAIjsE,EAAU,CAEdA,QACAkoC,eAAuBgqE,GACrB,IACE,aAAaF,EAAShxG,IAAI,CAAErgB,GAAIuxH,IAAa7pE,SAC7C,MAAOlrC,GACP,KAAM,CAAED,IAAK,6BAA8BC,IAAKA,KAIpD6C,SACAkoC,iBACE,IACE,aAAa8pE,EAASz5G,QAAQ8vC,SAC9B,MAAOlrC,GACP,KAAM,CAAED,IAAK,8BAA+BC,IAAKA,KAIrD6C,WACAkoC,eAA0BgqE,GACxB,IACE,aAAaD,EAAe15G,MAAM,CAAE5X,GAAIuxH,IAAa7pE,SACrD,MAAOlrC,GACP,KAAM,CAAED,IAAK,uDAAwDC,IAAKA,KAI9E6C,QACA,SAAiBrf,EAAI2vD,GACnB,OAAO2hE,EAAeL,QAAQ,CAAEjxH,GAAAA,EAAI2vD,OAAAA,IAAUjI,UAGhDroC,YACA,SAAqBrf,EAAI2vD,GACvB,OAAO2hE,EAAe/N,YAAY,CAAEvjH,GAAAA,EAAI2vD,OAAAA,IAAUjI,UAGpDroC,UACA,SAAmBrf,EAAI2vD,GACrB,OAAO2hE,EAAeJ,UAAU,CAAElxH,GAAAA,EAAI2vD,OAAAA,IAAUjI,UAGlDroC,6BAAuC,SAAU8lC,GAC/C,IAAI3iC,EAAU,IAAIgvG,EAAAA,sBAAsBrsE,GACxC,OAAOksE,EAASj3E,OAAO,CAAE93B,OAAQ,UAAYE,GAASklC,UAGxDroC,4BAAsC,SAAU8lC,GAC9C,IAAI3iC,EAAU,IAAIgvG,EAAAA,sBAAsBrsE,GACxC,OAAOmmC,EAAkBmmC,eAAejvG,IAG1CnD,cAAwB,SAAU8lC,GAChC,IAAI3iC,EAAU,IAAIkvG,EAAAA,sBAAsBvsE,GACxC,OAAOksE,EAAS/tD,OAAO9gD,GAASklC,UAGlCroC,OAAiB,SAAUkyG,GACzB,OAAOF,EAASlsG,OAAO,CAAEnlB,GAAIuxH,IAAa7pE,UAG5CroC,cAAwB,SAAUkyG,GAChC,OAAOF,EAAS7gG,KAAK,CAAExwB,GAAIuxH,IAAa7pE,WAG1C,OAAOroC,E,4DAGT/H,IAAAA,OAAe,kBAAkBmvC,QAAQ,iBAAkB2qE,I,+DCzE3D95G,GAAAA,OAAe,kBAAkBmvC,QAAQ,mBAAzC,kCAA6D,SAAiCkrE,EAAYrmC,GAmExG,MAlEc,CAEdjsE,MAAgB,SAAerf,GAC7B,OAAO2xH,EAAWtxG,IAAI,CAAErgB,GAAAA,IAAM0nD,UAGhCroC,OAAiB,WACf,OAAOsyG,EAAW/5G,MAAM,IAAI8vC,UAG9BroC,OAAiB,SAAgBrf,GAC/B,OAAO2xH,EAAWxsG,OAAO,CAAEnlB,GAAAA,IAAM0nD,UAGnCroC,UAAoBkoC,eAAyBvnD,GAC3C,IACE,MAAM,iBAAEuvH,SAA2BoC,EAAWnhG,KAAK,CAAExwB,GAAAA,IAAM0nD,SAC3D,OAAO6nE,EACP,MAAO/yG,GACP,KAAM,CAAED,IAAK,mCAAoCC,IAAAA,KAIrD6C,YAAsBkoC,eAA2BvnD,EAAIiqD,EAAOue,GAC1D,OAAOmpD,EAAWruD,OAAO,CAAEtjE,GAAAA,GAAMiqD,EAAOue,GAAY9gB,UAGtDroC,2BAAqCkoC,eAA0C/kC,EAAS6sG,GACtF,IACE,aAAasC,EAAWv3E,OAAO,CAAE93B,OAAQ,SAAU+sG,OAAQA,EAAS,OAAS,SAAW7sG,GAASklC,SACjG,MAAOlrC,GACP,KAAM,CAAED,IAAK,6BAA8BC,IAAAA,KAI/C6C,0BAAoCkoC,eAAyC/kC,EAASgO,EAAM6+F,GAC1F,IACE,aAAa/jC,EAAkBsmC,gBAAgBpvG,EAASgO,EAAM6+F,GAC9D,MAAO7yG,GACP,KAAM,CAAED,IAAK,6BAA8BC,IAAAA,KAI/C6C,6BAAuCkoC,eAA4C/kC,EAASqvG,GAC1F,IACE,aAAaF,EAAWv3E,OACtB,CAAE93B,OAAQ,cACV,IACKE,EACHsvG,cAAeD,EAAkBC,cACjCC,wBAAyBF,EAAkBE,wBAC3CC,qBAAsBH,EAAkBG,qBACxCC,yBAA0BJ,EAAkBI,yBAC5CC,mBAAoBL,EAAkBK,mBACtCC,mBAAoBN,EAAkBM,qBAExCzqE,SACF,MAAOlrC,GACP,KAAM,CAAED,IAAK,6BAA8BC,IAAAA,KAI/C6C,OAAiB,SAAgB4qC,GAC/B,OAAO0nE,EAAWruD,OAAOrZ,GAAOvC,e,kEChEpC,MAAM0qE,EAEJzwE,YAAY0wE,GACV3wH,KAAK2wH,cAAgBA,EAGvBC,gBACE,OAAO5wH,KAAK2wH,cAAcz6G,QAAQ8vC,SAGlB,mBAAClxC,GACjB,MAAM4B,QAAiBm6G,MAAM/7G,EAASg8G,WACtC,IAAKp6G,EAAS61G,GACZ,MAAM,IAAI5tH,MAAM+X,EAASikE,YAG3B,OAAOjkE,EAAS+R,Q,4BAIpB7S,IAAAA,OAAe,kBAAkB+H,QAAQ,sBAAuB+yG,I,kGCtBzD,MAAMK,EAEX9wE,YAAY+wE,EAAkBlf,EAAcrnF,EAAei+B,EAAQxI,GACjElgD,KAAKgxH,iBAAmBA,EACxBhxH,KAAK8xG,aAAeA,EACpB9xG,KAAKyqB,cAAgBA,EACrBzqB,KAAK0oD,OAASA,EACd1oD,KAAKkgD,OAASA,EAEdlgD,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBrC,QAAQ,GAGV9yF,KAAKyjD,MAAQ,CACX52C,KAAM,GACN69G,UAAW,GACXsE,SAAS,EACT9mB,OAAQ,GACRgnB,cAAc,GAGhBlvH,KAAKixH,YAAcjxH,KAAKixH,YAAY5xH,KAAKW,MACzCA,KAAKkxH,iBAAmBlxH,KAAKkxH,iBAAiB7xH,KAAKW,MAGxC,gBACX,MAAMmxH,QAAuBnxH,KAAK8xG,aAAa/7F,SAE/C/V,KAAKmxH,eAAiBA,EACtBnxH,KAAK+P,MAAM+iF,QAAS,EAGtBm+B,cACE,OAAOjxH,KAAKkgD,OAAOlgD,KAAKkxH,kBAGJ,yBACpBlxH,KAAK+P,MAAMolF,kBAAmB,EAC9B,UACQn1F,KAAKgxH,iBAAiBt4E,OAAO14C,KAAKyjD,OACxCzjD,KAAKyqB,cAAcF,QAAQ,UAAW,mCACtCvqB,KAAK0oD,OAAOr8B,GAAG,eACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAL3C,QAOE9a,KAAK+P,MAAMolF,kBAAmB,I,8JC9CpC,MAAM50C,EAAgCvrC,EAAQ,MAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,sBAAuB,CAChE2qC,YAAaD,EACbrrC,WAAY67G,EAAAA,6B,qHCNP,MAAMK,EAEXnxE,YAAYC,EAAQwI,EAAQsoE,EAAkBvmG,GAC5CzqB,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKgxH,iBAAmBA,EACxBhxH,KAAKyqB,cAAgBA,EAErBzqB,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MAG1C,gBACX,IACEA,KAAKopH,YAAcppH,KAAKgxH,iBAAiBj7G,SACzC,MAAO+E,GACP9a,KAAKopH,MAAQ,GACbppH,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAI7CiiD,aAAajzB,GACX,OAAO9pC,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,GAGtB,wBAACA,GACtB,IAAK,IAAIuK,KAAQvK,EACf,UACQ9pC,KAAKgxH,iBAAiBvtG,OAAO4wB,EAAK9nC,IAExCvM,KAAKyqB,cAAcF,QAAQ,kCAAmC8pB,EAAKxnC,MACnE,IAAS7M,KAAKopH,MAAO/0E,GACrB,MAAOv5B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAI7C9a,KAAK0oD,OAAOxnB,U,+ICvChB,MAAMqf,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,iBAAkB,CAC3D2qC,YAAaD,EACbrrC,WAAYk8G,EAAAA,wB,gGCRP,MAAMC,EAEXpxE,YAAY+wE,EAAkBlf,EAAcrnF,EAAei+B,EAAQxI,GACjElgD,KAAKgxH,iBAAmBA,EACxBhxH,KAAK8xG,aAAeA,EACpB9xG,KAAKyqB,cAAgBA,EACrBzqB,KAAK0oD,OAASA,EACd1oD,KAAKkgD,OAASA,EAEdlgD,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBrC,QAAQ,GAGV9yF,KAAKsxH,YAActxH,KAAKsxH,YAAYjyH,KAAKW,MACzCA,KAAKuxH,iBAAmBvxH,KAAKuxH,iBAAiBlyH,KAAKW,MAGxC,gBACX,MAAOmxH,EAAgB3d,SAAev3F,QAAQqW,IAAI,CAACtyB,KAAK8xG,aAAa/7F,SAAU/V,KAAKgxH,iBAAiBxd,MAAMxzG,KAAK0oD,OAAOl9C,OAAO2L,WAEzHq8F,IACHxzG,KAAKyqB,cAAcxc,MAAM,4BAA6B,IACtDjO,KAAK0oD,OAAOr8B,GAAG,gBAEjBrsB,KAAKmxH,eAAiBA,EACtBnxH,KAAKyjD,MAAQ+vD,EACbxzG,KAAK+P,MAAM+iF,QAAS,EAGtBw+B,cACE,OAAOtxH,KAAKkgD,OAAOlgD,KAAKuxH,kBAGJ,yBACpBvxH,KAAK+P,MAAMolF,kBAAmB,EAC9B,UACQn1F,KAAKgxH,iBAAiBpvD,OAAO5hE,KAAKyjD,OACxCzjD,KAAKyqB,cAAcF,QAAQ,UAAW,mCACtCvqB,KAAK0oD,OAAOr8B,GAAG,eACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAL3C,QAOE9a,KAAK+P,MAAMolF,kBAAmB,I,8JC3CpC,MAAM50C,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,oBAAqB,CAC9D2qC,YAAaD,EACbrrC,WAAYm8G,EAAAA,2B,mGCRP,MAAMG,EAEXvxE,YAAYC,EAAQpsB,EAAI40B,EAAQzB,EAASvF,EAAcguE,EAAgB5d,EAAcrnF,EAAei8E,GAClG1mG,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBpF,eAAe,GAGjB/vF,KAAKyjD,MAAQ,CACX52C,KAAM,GACNs9G,WAAW,EACXF,eAAgB,GAChBS,UAAW,GACXN,YAAa,GACbv8C,KAAM,MAGR7tE,KAAKkgD,OAASA,EACdlgD,KAAK8zB,GAAKA,EACV9zB,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAK8xG,aAAeA,EACpB9xG,KAAK0vH,eAAiBA,EACtB1vH,KAAK0mG,WAAaA,EAElB1mG,KAAK04C,OAAS14C,KAAK04C,OAAOr5C,KAAKW,MAC/BA,KAAKyxH,cAAgBzxH,KAAKyxH,cAAcpyH,KAAKW,MAC7CA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MAG3C04C,OAAO93B,GACL,OAAO5gB,KAAKkgD,OAAOlgD,KAAKiwF,YAAarvE,GAGtB,kBAACA,GAChB5gB,KAAK+P,MAAMolF,kBAAmB,EAE9B,UACQn1F,KAAKyxH,cAAc7wG,EAAQ5gB,KAAKyjD,OACtCzjD,KAAKyqB,cAAcF,QAAQ,UAAW,iCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,YAAa,GAAI,CAAE6U,QAAQ,IAC1C,MAAOpmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAG3C9a,KAAK+P,MAAMolF,kBAAmB,EAGhCs8B,cAAc7wG,EAAQ6iC,GACpB,MAAe,WAAX7iC,EACK5gB,KAAK0vH,eAAegC,6BAA6BjuE,GAEnDzjD,KAAK0vH,eAAeiC,4BAA4BluE,GAG1C,kBACb,GAAIzjD,KAAKyjD,MAAM2mE,aAAepqH,KAAK+P,MAAMggF,cACvC,OAAO/vF,KAAK0hD,aAAal7B,0BAI7B6N,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAGhB,gBACX,IACE,MAAOh6E,EAAQyxF,SAAcvrF,QAAQqW,IAAI,CAACtyB,KAAK8xG,aAAa/7F,SAAU/V,KAAK0mG,WAAWc,SACtFxnG,KAAK+V,OAASA,EACd/V,KAAKwnG,KAAOA,EACZ,MAAO1sF,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCAG3C9a,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAKyjD,MAAM2mE,aAAepqH,KAAK+P,MAAMggF,cACvC,MAAO,K,sMC/Ef,MAAMxvC,EAAgCvrC,EAAQ,MAK9CY,IAAAA,OAAe,kBAAkBC,UAAU,oBAAqB,CAC9D2qC,YAAaD,EACbrrC,WAAYs8G,EAAAA,+B,iJCJP,MAAMI,EAEX3xE,YAAYC,EAAQpsB,EAAI40B,EAAQzB,EAASvF,EAAcguE,EAAgBjuE,EAAWqwD,EAActwD,EAAoB/2B,EAAei8E,GACjI1mG,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB08B,eAAe,EACf9hC,eAAe,GAGjB/vF,KAAKkgD,OAASA,EACdlgD,KAAK8zB,GAAKA,EACV9zB,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAK0hD,aAAeA,EACpB1hD,KAAK0vH,eAAiBA,EACtB1vH,KAAKyhD,UAAYA,EACjBzhD,KAAK8xG,aAAeA,EACpB9xG,KAAKwhD,mBAAqBA,EAC1BxhD,KAAKyqB,cAAgBA,EACrBzqB,KAAK0mG,WAAaA,EAElB1mG,KAAK4hE,OAAS5hE,KAAK4hE,OAAOviE,KAAKW,MAC/BA,KAAK8xH,YAAc9xH,KAAK8xH,YAAYzyH,KAAKW,MACzCA,KAAK4qE,aAAe5qE,KAAK4qE,aAAavrE,KAAKW,MAC3CA,KAAK+xH,kBAAoB/xH,KAAK+xH,kBAAkB1yH,KAAKW,MACrDA,KAAK6hH,YAAc7hH,KAAK6hH,YAAYxiH,KAAKW,MACzCA,KAAKgyH,iBAAmBhyH,KAAKgyH,iBAAiB3yH,KAAKW,MACnDA,KAAKwvH,UAAYxvH,KAAKwvH,UAAUnwH,KAAKW,MACrCA,KAAKiyH,eAAiBjyH,KAAKiyH,eAAe5yH,KAAKW,MAC/CA,KAAKkyH,QAAUlyH,KAAKkyH,QAAQ7yH,KAAKW,MACjCA,KAAKmyH,aAAenyH,KAAKmyH,aAAa9yH,KAAKW,MAC3CA,KAAKoyH,WAAapyH,KAAKoyH,WAAW/yH,KAAKW,MAGzC4hE,SACE,OAAO5hE,KAAKkgD,OAAOlgD,KAAK8xH,aAGT,oBACf,MAAMruE,EAAQzjD,KAAKqyH,QACnBryH,KAAK+P,MAAMolF,kBAAmB,EAE9B,UACQn1F,KAAK0vH,eAAe4C,cAAc7uE,GACxCzjD,KAAKyqB,cAAcF,QAAQ,UAAW,iCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,YAAa,GAAI,CAAE6U,QAAQ,IAC1C,MAAOpmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAG3C9a,KAAK+P,MAAMolF,kBAAmB,EAGhCvqB,aAAarsD,GACX,OAAOve,KAAKkgD,OAAOlgD,KAAK+xH,kBAAmBxzG,GAEtB,wBAACA,GACtB,IACE,MAAM9Z,QAAazE,KAAK0vH,eAAeH,QAAQvvH,KAAKqyH,QAAQ9lH,GAAIgS,GAC1DykC,EAAe,IAAIC,KAAK,CAACx+C,EAAK2lH,aAAc,CAChDrgH,KAAM,6BAEFwoH,EAAe,OAAMvyH,KAAKqyH,QAAQ9lH,WAAWgS,QACnDve,KAAKyhD,UAAUyB,OAAOF,EAAcuvE,GACpC,MAAOz3G,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAI7C03G,4BAA4BC,EAASvJ,GACnC,OAAO,IAAMuJ,GAAUpqG,IACrB,MAAMtR,EAAW,IAAOmyG,GAAYnyG,GAAaA,EAASxK,KAAO8b,EAAOqqG,aAExE,OADArqG,EAAO+9D,SAAWrvE,EACXsR,KAIXw5F,YAAYtjG,GACV,OAAOve,KAAKkgD,OAAOlgD,KAAKgyH,iBAAkBzzG,GAGtB,uBAACA,GACrB,UACQve,KAAK0vH,eAAe7N,YAAY7hH,KAAKqyH,QAAQ9lH,GAAIgS,GACxC,IAAOve,KAAKyyH,SAAUpqG,GAAWA,EAAOqqG,aAAen0G,IAC/D6sG,WAAa,EACpB,MAAOtwG,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAI7C00G,UAAUjxG,GACR,OAAOve,KAAKkgD,OAAOlgD,KAAKiyH,eAAgB1zG,GAEtB,qBAACA,GACnB,UACQve,KAAK0vH,eAAeF,UAAUxvH,KAAKqyH,QAAQ9lH,GAAIgS,GACtC,IAAOve,KAAKyyH,SAAUpqG,GAAWA,EAAOqqG,aAAen0G,IAC/D6sG,WAAa,EACpB,MAAOtwG,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yBAI7Co3G,UACE,OAAOlyH,KAAKkgD,OAAOlgD,KAAKmyH,cAER,qBAChB,MAAM,GAAE7zH,GAAO0B,KAAK0oD,OAAOl9C,OACrBinH,QAAgBzyH,KAAK0vH,eAAeiD,WAAWr0H,GACrD,GAAIm0H,EAAQhzH,OAAS,EAAG,CACtB,MAAMmzH,EAAc,IAAMH,GAAUpqG,GAAWA,EAAOqqG,aAChDxJ,QAAkBjzG,EAAAA,EAAAA,IAAgB,CAAEC,MAAO,CAAE08G,YAAAA,KACnD5yH,KAAKyyH,QAAUzyH,KAAKwyH,4BAA4BC,EAASvJ,EAAUvlH,YAEnE3D,KAAKyyH,QAAUA,EAInBL,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAGd,kBACb,GAAI7xH,KAAKqyH,SAAWryH,KAAKqyH,QAAQjI,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cACjF,OAAO/vF,KAAK0hD,aAAal7B,0BAIhB,gBACX,MAAM,GAAEloB,EAAF,IAAM6pH,GAAQnoH,KAAK0oD,OAAOl9C,OAChCxL,KAAK+P,MAAM67F,UAAYuc,EAClBA,GAAe,IAARA,IACVnoH,KAAK+P,MAAM8hH,eAAgB,GAG7B,IACE,MAAOQ,EAASvjG,EAAM2jG,EAAS18G,EAAQyxF,SAAcvrF,QAAQqW,IAAI,CAC/DtyB,KAAK0vH,eAAe2C,QAAQ/zH,GAC5B0B,KAAK0vH,eAAeoD,cAAcx0H,GAClC0B,KAAK0vH,eAAeiD,WAAWr0H,GAC/B0B,KAAK8xG,aAAa/7F,SAClB/V,KAAK0mG,WAAWc,SASlB,GANA6qB,EAAQjI,YAAct7F,EAAKs7F,YAC3BpqH,KAAK6yH,eAAiBR,EAAQjI,YAC9BpqH,KAAKqyH,QAAUA,EACfryH,KAAK+V,OAASA,EACd/V,KAAKwnG,KAAOA,EAERirB,EAAQhzH,OAAS,EAAG,CACtB,MAAMmzH,EAAc,IAAMH,GAAUpqG,GAAWA,EAAOqqG,aAChDxJ,QAAkBjzG,EAAAA,EAAAA,IAAgB,CAAEC,MAAO,CAAE08G,YAAAA,KACnD5yH,KAAKyyH,QAAUzyH,KAAKwyH,4BAA4BC,EAASvJ,EAAUvlH,YAEnE3D,KAAKyyH,QAAUA,EAEjB,MAAO33G,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAG3C9a,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAKqyH,SAAWryH,KAAKqyH,QAAQjI,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cACjF,MAAO,IAKb17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,G,uOC9K/B,MAAMxvC,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,kBAAkBC,UAAU,cAAe,CACxD2qC,YAAaD,EACbrrC,WAAY08G,EAAAA,qB,uHCLP,MAAMmB,EAEX9yE,YAAYC,EAAQwI,EAAQgnE,EAAgBhuE,EAAcj3B,GACxDzqB,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK0vH,eAAiBA,EACtB1vH,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EAErBzqB,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKgzH,gBAAkBhzH,KAAKgzH,gBAAgB3zH,KAAKW,MACjDA,KAAKizH,WAAajzH,KAAKizH,WAAW5zH,KAAKW,MAGzC+8D,aAAajzB,GACX9pC,KAAK0hD,aAAap6B,gBAAgB,oDAAqDX,IAChFA,GAGL3mB,KAAKizH,WAAWnpF,MAIpBmpF,WAAWC,GACT,OAAOlzH,KAAKkgD,OAAOlgD,KAAKgzH,gBAAiBE,GAGtB,sBAACA,GACpB,IAAK,IAAIb,KAAWa,EAClB,UACQlzH,KAAK0vH,eAAejsG,OAAO4uG,EAAQ9lH,IACzCvM,KAAKyqB,cAAcF,QAAQ,gCAAiC8nG,EAAQxlH,MACpE,IAAS7M,KAAKkzH,SAAUb,GACxB,MAAOv3G,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAA+Bu3G,EAAQxlH,MAIpF7M,KAAK0oD,OAAOxnB,SAGD,gBACX,IACE,MAAMgyF,QAAiBlzH,KAAK0vH,eAAewD,WAC3ClzH,KAAKkzH,SAAWA,EAChB,MAAOp4G,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCACzC9a,KAAKkzH,SAAW,K,4JCjDtB,MAAM3yE,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,kBAAkBC,UAAU,eAAgB,CACzD2qC,YAAaD,EACbrrC,WAAY69G,EAAAA,0B,qHCHC,MAAMI,EAEnBlzE,YAAYyI,EAAQzB,EAASvF,EAAcgrE,EAAkBsE,EAAkBvmG,EAAey1B,EAAQ9qC,EAAQqxD,GAC5G3nE,OAAOM,OAAOY,KAAM,CAAE0oD,OAAAA,EAAQzB,QAAAA,EAASvF,aAAAA,EAAcgrE,iBAAAA,EAAkBsE,iBAAAA,EAAkBvmG,cAAAA,EAAey1B,OAAAA,EAAQumB,gBAAAA,EAAiBrxD,OAAAA,IAEjIpV,KAAK2T,WAAa,CAChB9G,KAAM,GACNghH,iBAAkB,GAClBuF,UAAW,KACXhD,cAAe,GACfC,wBAAyB,GACzBE,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GACpB9uC,IAAK,GACL0xC,4BAA6B,GAC7B5tC,OAAQ,GACRqoC,eAAgBpkH,EAAAA,EAAAA,QAChBkjH,gBAAiB,GACjBc,WAAY,IAGd1tH,KAAK+P,MAAQ,CACXujH,OAAQ,SACRxjC,oBAAqB,GACrBqF,kBAAkB,EAClBo+B,UAAW,KACXxjC,eAAe,EACfnmF,cAAe,IAGjB5J,KAAKouH,WAAa,KAElBpuH,KAAKwzH,YAAcxzH,KAAKwzH,YAAYn0H,KAAKW,MACzCA,KAAK4wF,aAAe5wF,KAAK4wF,aAAavxF,KAAKW,MAC3CA,KAAKyzH,oBAAsBzzH,KAAKyzH,oBAAoBp0H,KAAKW,MACzDA,KAAK+tH,2BAA6B/tH,KAAK+tH,2BAA2B1uH,KAAKW,MACvEA,KAAK0zH,0BAA4B1zH,KAAK0zH,0BAA0Br0H,KAAKW,MACrEA,KAAK2zH,6BAA+B3zH,KAAK2zH,6BAA6Bt0H,KAAKW,MAC3EA,KAAKktH,eAAiBltH,KAAKktH,eAAe7tH,KAAKW,MAC/CA,KAAK6sH,cAAgB7sH,KAAK6sH,cAAcxtH,KAAKW,MAC7CA,KAAKgtH,gBAAkBhtH,KAAKgtH,gBAAgB3tH,KAAKW,MACjDA,KAAK8sH,iBAAmB9sH,KAAK8sH,iBAAiBztH,KAAKW,MACnDA,KAAKwrH,kBAAoBxrH,KAAKwrH,kBAAkBnsH,KAAKW,MACrDA,KAAKyrH,gBAAkBzrH,KAAKyrH,gBAAgBpsH,KAAKW,MACjDA,KAAK0rH,iBAAmB1rH,KAAK0rH,iBAAiBrsH,KAAKW,MACnDA,KAAKutH,uBAAyBvtH,KAAKutH,uBAAuBluH,KAAKW,MAGjE4zH,2BACE,MACMhvH,EAAW,CAAEmF,KAQnB,SAAqB6W,GACnB,OAAQA,GACN,IAAK,SACH,MAAO,aACT,IAAK,aACH,MAAO,MACT,IAAK,SACH,MAAO,cACT,IAAK,WACH,MAAO,YAjBYizG,CAAY7zH,KAAK+P,MAAMujH,QAAS/1F,OAD1C,WAOf,MAJsB,aAAlB34B,EAASmF,OACXnF,EAASkvH,aAAe9zH,KAAK+zH,iBAAiB7lH,OAGzC,CAAEtJ,SAAAA,GAgBI,kBACb,GAA0B,WAAtB5E,KAAK+P,MAAMujH,QAAuBtzH,KAAK2T,WAAWk6G,kBAAoB7tH,KAAK+P,MAAMggF,cACnF,OAAO/vF,KAAK0hD,aAAal7B,0BAIhB,gBAEXxmB,KAAK2T,WAAWi5G,sBAAwB5sH,KAAKymE,gBAAgBK,aAE7D9mE,KAAK61F,WAAa,GAClB71F,KAAKgxD,aAAe,GACpBhxD,KAAK2tH,QAAS,EAEd,IACE3tH,KAAKouH,iBAAmBpuH,KAAKgxH,iBAAiBj7G,SAC9C/V,KAAKg0H,SAAsC,IAA3Bh0H,KAAKouH,WAAW3uH,OAChC,MAAOqb,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAG3C9a,KAAKinD,QAAQipC,eAAiB,KAC5B,GAA0B,WAAtBlwF,KAAK+P,MAAMujH,QAAuBtzH,KAAK2T,WAAWk6G,kBAAoB7tH,KAAK+P,MAAMggF,cACnF,MAAO,IAKb17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAG7B09B,gBAAgB3mD,GACd,OAAOA,EAAWx4C,OAAO3qB,GAAUA,IAAUmjE,EAAW,KAG1DkmD,kBACEhtH,KAAK2T,WAAW+5G,WAAa,GAC7B1tH,KAAK61F,WAAa,GAClB71F,KAAK2tH,QAAS,EAGhBb,iBAAiBpuH,GACf,OAAOsB,KAAKkgD,QAAO2F,UACjB,MAAMinE,EAAmBpuH,EACzBsB,KAAK61F,WAAai3B,EAAiBvgH,GACnCvM,KAAK2T,WAAW+5G,WAAa,CAAC1tH,KAAK61F,eAIvCg3B,gBACE,OAAO7sH,KAAKkgD,QAAO2F,UACjB,MAAM/hD,EAAO9D,KAAK2T,WAAW9G,KAC7B7M,KAAK+P,MAAMolF,kBAAmB,EAC9Bn1F,KAAKgxD,aAAe,GACpBhxD,KAAK2tH,QAAS,EACd,IAAIj3G,EAAW,GACXkK,EAAS5gB,KAAK+P,MAAMujH,OAMxB,GAJe,aAAX1yG,IACFA,EAAS,UAGI,WAAXA,GAAkC,WAAXA,EACzB,IACiB,WAAXA,IACFlK,QAAiB1W,KAAK+tH,2BAA2BjqH,EAAM9D,KAAK2tH,SAE/C,WAAX/sG,IAEFlK,SADiC1W,KAAK0zH,0BAA0B5vH,EAAM9D,KAAK2tH,SAC7ClpH,MAEG,IAA/BiS,EAASg3G,WAAWjuH,OACAO,KAAKytH,gBAAgB/2G,EAASg3G,aAElD1tH,KAAK61F,WAAan/E,EAASg3G,WAAW,GACtC1tH,KAAK2T,WAAW+5G,WAAa,CAAC1tH,KAAK61F,cAEnC71F,KAAK61F,WAAa,GAClB71F,KAAKgxD,aAAe,qEAGtBhxD,KAAK61F,WAAa,GAEpB,MAAO/6E,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCArB3C,QAuBE9a,KAAK2tH,QAAS,EACd3tH,KAAK+P,MAAMolF,kBAAmB,OAIhCn1F,KAAK2tH,QAAS,EACd3tH,KAAK+P,MAAMolF,kBAAmB,KAKpCq+B,cACE,OAAOxzH,KAAKkgD,QAAO2F,UACjB,MAAM/hD,EAAO9D,KAAK2T,WAAW9G,KAC7B,IAAI+T,EAAS5gB,KAAK+P,MAAMujH,OAMxB,GAJe,aAAX1yG,IACFA,EAAS,UAGN5gB,KAAK4wF,aAAahwE,GAAvB,CAIA5gB,KAAK+P,MAAMolF,kBAAmB,EAC9B,UACQn1F,KAAKyzH,oBAAoB3vH,EAAM8c,EAAQ5gB,KAAK2tH,QAElD3tH,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,eACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,mBAAoB6M,EAAK,0BAPpD,QASE9a,KAAK+P,MAAMolF,kBAAmB,OAKpC+3B,eAAen3G,GACb/V,KAAK2T,WAAW8xE,OAAS1vE,EAEzB/V,KAAKi0H,qBAAqBl+G,GAG5Bk+G,qBAAqBl+G,GACnB,MAAMq4G,EAAar4G,EAAO5X,KAAKG,GAAO0B,KAAKouH,WAAW3kH,MAAM/K,GAAMA,EAAE6N,KAAOjO,MAC3E0B,KAAK+P,MAAMnG,cAAgBwkH,EAAWC,SAAS7a,GAAUA,EAAM8a,gBAC/DtuH,KAAKuuH,4BAGPA,4BACE,MAAMC,GAAa7kH,EAAAA,EAAAA,GAAoB3J,KAAK+P,MAAMnG,eAE7C4kH,EAAWrpH,SAASnF,KAAK2T,WAAWm6G,iBACvC9tH,KAAKutH,uBAAuBiB,EAAW,IAI3C/C,kBACE,OAAOzrH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,kCAG3CkiE,oBACE,OAAOxrH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,8BAG3CoiE,mBACE,OAAO1rH,KAAK+P,MAAMnG,cAAczE,SAASmkD,EAAAA,uBAAAA,6BAG3CsnC,aAAahwE,GAGX,GAFA5gB,KAAK+P,MAAM+/E,oBAAsB,GAElB,WAAXlvE,GAA4D,KAArC5gB,KAAK2T,WAAWk6G,iBAK3C,OAAO,EAJL7tH,KAAK+P,MAAM+/E,oBAAsB,uCAOrC2jC,oBAAoB3vH,EAAM8c,EAAQ+sG,GAChC,OAAQ/sG,GACN,IAAK,SACH,OAAO5gB,KAAK+tH,2BAA2BjqH,EAAM6pH,GAC/C,IAAK,SACH,OAAO3tH,KAAK0zH,0BAA0B5vH,EAAM6pH,GAC9C,IAAK,aACH,OAAO3tH,KAAK2zH,6BAA6B7vH,IAI/CiqH,2BAA2BjqH,EAAM6pH,GAC/B,MAAM,iBAAEE,EAAF,OAAoBpoC,EAApB,eAA4BqoC,EAA5B,WAA4CJ,GAAe1tH,KAAK2T,WACtE,OAAO3T,KAAK0sH,iBAAiBqB,2BAC3B,CACEjqH,KAAAA,EACA+pH,iBAAAA,EACAG,WAAYvoC,EACZqoC,eAAAA,EACAJ,WAAYC,EAAS,GAAKD,GAE5BC,GAIJ+F,0BAA0B5vH,EAAM6pH,GAC9B,MAAM,UAAEyF,EAAF,OAAa3tC,EAAb,eAAqBqoC,EAArB,WAAqCJ,GAAe1tH,KAAK2T,WAC/D,OAAO3T,KAAK0sH,iBAAiBgH,0BAC3B,CACE7mH,KAAM/I,EACNkqH,WAAYvoC,EACZqoC,eAAAA,EACAJ,WAAYC,EAAS,GAAKD,GAE5B0F,EACAzF,GAIJgG,6BAA6B7vH,GAC3B,MAAM,OAAE2hF,EAAF,eAAUqoC,EAAV,WAA0BJ,GAAe1tH,KAAK2T,WAC9Cw8G,EAAoB,CACxBC,cAAepwH,KAAK2T,WAAWy8G,cAC/BC,wBAAyBrwH,KAAK2T,WAAW08G,wBACzCC,qBAAsBtwH,KAAK2T,WAAW0/G,4BACtC9C,yBAA0BvwH,KAAK2T,WAAW48G,yBAC1CC,mBAAoBxwH,KAAK2T,WAAW68G,mBACpCC,mBAAoBzwH,KAAK2T,WAAW88G,oBAGtC,OAAOzwH,KAAK0sH,iBAAiBiH,6BAC3B,CACE7vH,KAAAA,EACAkqH,WAAYvoC,EACZqoC,eAAAA,EACAJ,WAAYA,GAEdyC,GAIJ5C,uBAAuBmB,GACrB,OAAO1uH,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK2T,WAAWm6G,eAAiBY,EACjC1uH,KAAK+P,MAAMujH,OAAS,SACpBtzH,KAAK2T,WAAWk6G,iBAAmB,MAIvCqG,gBACE,OACEl0H,KAAKgpE,KAAKmtC,WACTn2G,KAAK2T,WAAW8xE,OAAOhmF,QACvB,CAAC,WAAY,UAAU0F,SAASnF,KAAK+P,MAAMujH,UAAYtzH,KAAK2T,WAAWk6G,kBACvE,WAAa7tH,KAAK+P,MAAMujH,SAAWtzH,KAAK2T,WAAWy/G,W,oPChU1D,MAIae,EAAsB,CACjC3zE,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,yDCJZ,MAAMk/G,EAEJn0E,YAAYC,EAAQwwE,EAAqBjmG,GACvC3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwwE,oBAAAA,EAAqBjmG,cAAAA,IAEnDzqB,KAAKq0H,cAAgB,CAAC5/F,EAAAA,GAAQE,EAAAA,GAAQE,EAAAA,GAAK/f,EAAAA,IAE3C9U,KAAK+zH,iBAAmB,KAExB/zH,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKs0H,aAAet0H,KAAKs0H,aAAaj1H,KAAKW,MAC3CA,KAAKu0H,iBAAmBv0H,KAAKu0H,iBAAiBl1H,KAAKW,MACnDA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAC/CA,KAAKy0H,mBAAqBz0H,KAAKy0H,mBAAmBp1H,KAAKW,MAGzDy0H,mBAAmBptH,GACjBrH,KAAK2T,WAAatM,EAGpBmtH,eAAe5zG,GACb5gB,KAAK+P,MAAMujH,OAAS1yG,EACpB5gB,KAAK2T,WAAWk6G,iBAAmB,GACnC7tH,KAAK+zH,iBAAmB,KAG1BQ,iBAAiBz/G,GACf,OAAO9U,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAWk6G,iBAAmB,GACnC,IACE,MAAM9xD,QAAoB/7D,KAAK0wH,oBAAoBgE,aAAa5/G,GAChE9U,KAAK2T,WAAWk6G,iBAAmB9xD,EACnC,MAAOjhD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAK/CqyG,oBAAoBxpH,GAClB3D,KAAK2T,WAAWk6G,iBAAmBlqH,EAGrC2wH,aAAa3wH,GACX,OAAO3D,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAWy/G,UAAYzvH,KAInB,gBACX,OAAO3D,KAAKkgD,QAAO2F,UACjB,IACE,MAAM6V,QAAkB17D,KAAK0wH,oBAAoBE,gBACjD5wH,KAAK07D,UAAYA,EAAUv9D,KAAK2W,IAAD,IAAoBA,EAAUlO,MAAQ,GAAEkO,EAAS5G,WAAW4G,EAASlC,kBACpG,MAAOkI,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qC,2DAMjD,a,mHC9DA,MAIa65G,EAA8B,CACzCn0E,YALoCxrC,EAAQ,MAM5CE,WAFyC,UAIzCH,SAAU,CACRpB,WAAY,IACZ5D,MAAO,O,uxCCNJ,IAAM6kH,GAA6Bl/G,EAAAA,EAAAA,ICmBnC,YAUG,IATR/R,EASQ,EATRA,MACAmjE,EAQQ,EARRA,WACA1/D,EAOQ,EAPRA,SACAytH,EAMQ,EANRA,YACA7jE,EAKQ,EALRA,aACAjyB,EAIQ,EAJRA,SACAovB,EAGQ,EAHRA,SACA6+D,EAEQ,EAFRA,gBACApsG,EACQ,EADRA,OAEA,KAA8BzX,EAAAA,EAAAA,UAASglD,GAAvC,GAAOz4B,EAAP,KAAgBo/F,EAAhB,KACA,KAAgC3rH,EAAAA,EAAAA,UAASxF,GAAzC,GAAOq7B,EAAP,KAAiB6R,EAAjB,KA2BA,OAtBAtnC,EAAAA,EAAAA,YAAU,WACJmsB,EACFtuB,IAEA4lH,MAGD,CAACt3F,KAEJnsB,EAAAA,EAAAA,YAAU,WACRsnC,EAAYltC,KACX,CAACA,KAYF,iCACE,gBAAK1C,UAAU,+BAAf,yBACA,gBAAKA,UAAU,aAAf,UACE,iBAAKA,UAAU,4BAAf,WACE,mBAAOA,UAAU,+CAAjB,UACG,IADH,oBAEkB,SAAC+L,EAAA,EAAD,CAASC,QA/BjC,yEAiCM,mBAAOhM,UAAU,cAAjB,WACE,kBACE8I,KAAK,WACLjG,KAAK,kBACLsD,SAjBZ,WACE0tH,GAAYp/F,IAiBF1tB,SAAU6sH,EACVE,eAAgB5mE,KAElB,iBAAMltD,UAAU,yBAIrBy0B,IACC,gCACc,eAAX9U,IACC,iCACE,eAAG3f,UAAU,mBAAb,WACE,cACEA,UAAU,0CACV,cAAY,SAHhB,wGAQA,SAAC,KAAD,CAAQiO,QA1CpB,WACE9H,IACAypC,EAAYltC,IAwCF,wBAGFqtD,IACA,SAACp/C,EAAA,EAAD,CAAahL,MAAM,WAAWiB,QAAQ,iBAAtC,UACE,SAAC,IAAD,CACElE,MAAOmjE,EAAWx0D,QAChB,SAAC80D,GAAD,OAAcA,EAAS76D,KAAOyyB,KAEhCr4B,QAASmgE,EACT30D,eAAgB,SAACi1D,GAAD,OAAcA,EAASv6D,MACvCuF,eAAgB,SAACg1D,GAAD,OAAcA,EAAS76D,IACvCnF,SAAU23B,MAIfiyB,IACC,iBAAK/vD,UAAU,6CAAf,WACE,cAAGA,UAAU,+BACZ+vD,aD9G8D,CAC3E,QACA,aACA,WACA,cACA,eACA,WACA,WACA,kBACA,WEJF,EAAep7C,IAAAA,OACL,+BAAgC,IACvCC,UAAU,sBAAuBs+G,EAAAA,qBACjCt+G,UAAU,8BAA+B8+G,EAAAA,6BACzC9+G,UAAU,6BAA8Bm/G,EAAAA,kBACxCn/G,UAAU,yBAA0Bo/G,EAAAA,cACpCp/G,UAAU,wBAAyBq/G,EAAAA,uBACnCr/G,UAAU,sBAAuB++G,GAPpC,M,8FCTA,MAEaM,EAAwB,CACnC10E,YAHoCxrC,EAAQ,S,wGCA9C,MAIaggH,EAAmB,CAC9Bx0E,YALoCxrC,EAAQ,OAM5CE,WAF8B,UAI9BH,SAAU,CACRpB,WAAY,IACZ5D,MAAO,O,yDCRX,MAAMolH,EAEJl1E,YAAYC,GACVphD,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,IAEtBlgD,KAAKq0H,cAAgB,CAAC5/F,EAAAA,GAAQE,EAAAA,GAAQE,EAAAA,IAEtC70B,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKy0H,mBAAqBz0H,KAAKy0H,mBAAmBp1H,KAAKW,MACvDA,KAAKs0H,aAAet0H,KAAKs0H,aAAaj1H,KAAKW,MAC3CA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAGjDy0H,mBAAmBptH,GACjBrH,KAAK2T,WAAatM,EAGpB8lH,oBAAoBxpH,GAClB3D,KAAK2T,WAAWk6G,iBAAmBlqH,EAGrC2wH,aAAa3wH,GACX,OAAO3D,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAWy/G,UAAYzvH,KAIhC6wH,eAAe5zG,GACb5gB,KAAK+P,MAAMujH,OAAS1yG,G,qBAIxB,a,oGClCA,MAIaq0G,EAAe,CAC1Bz0E,YALoCxrC,EAAQ,OAM5CE,WAF0B,UAI1BH,SAAU,CACRpB,WAAY,IACZ5D,MAAO,O,yDCRX,MAAMqlH,EAEJn1E,YAAYC,GACVphD,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,IAEtBlgD,KAAKq0H,cAAgB,CAAC5/F,EAAAA,GAAQE,EAAAA,GAAQE,EAAAA,IAEtC70B,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKy0H,mBAAqBz0H,KAAKy0H,mBAAmBp1H,KAAKW,MACvDA,KAAKs0H,aAAet0H,KAAKs0H,aAAaj1H,KAAKW,MAC3CA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAGjDy0H,mBAAmBptH,GACjBrH,KAAK2T,WAAatM,EAGpB8lH,oBAAoBxpH,GAClB3D,KAAK2T,WAAWk6G,iBAAmBlqH,EAGrC2wH,aAAa3wH,GACX,OAAO3D,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAWy/G,UAAYzvH,KAIhC6wH,eAAe5zG,GACb5gB,KAAK+P,MAAMujH,OAAS1yG,G,qBAIxB,a,yHChCO,MAAMy0G,EAEXp1E,YAAYyI,EAAQj+B,EAAeiiG,EAAkBt3G,EAAQ8qC,GAC3DlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK0sH,iBAAmBA,EACxB1sH,KAAKoV,OAASA,EACdpV,KAAKkgD,OAASA,EAEdlgD,KAAKm7D,YAAStpD,EAEd7R,KAAKs1H,UAAYt1H,KAAKs1H,UAAUj2H,KAAKW,MACrCA,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MAGvDmjD,UACEnjD,KAAKs1H,YAGPv4D,aAAa5B,GACX,OAAOn7D,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBl0B,GAGtB,wBAACA,GACtB,IAAK,IAAI5S,KAAS4S,EAChB,UACQn7D,KAAK0sH,iBAAiBjpG,OAAO8kC,EAAMh8C,IACzCvM,KAAKyqB,cAAcF,QAAQ,6BAA8Bg+B,EAAM17C,MAC/D,IAAS7M,KAAKm7D,OAAQ5S,GACtB,MAAOztC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAA4BytC,EAAM17C,MAI/E7M,KAAK0oD,OAAOxnB,SAGC,kBACb,IACElhC,KAAKm7D,aAAen7D,KAAK0sH,iBAAiBvxD,SAC1C,MAAOrgD,GACP9a,KAAKm7D,OAAS,GACdn7D,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+B,wJC7C/C,MAAMylC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,iBAAkB,CAC3D2qC,YAAaD,EACbrrC,WAAYmgH,EAAAA,4B,+KCJP,MAAME,EAEXt1E,YAAYC,EAAQwI,EAAQzB,EAASvF,EAAcsvE,EAAkBtE,EAAkBjiG,GACrFzqB,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAK0hD,aAAeA,EACpB1hD,KAAKgxH,iBAAmBA,EACxBhxH,KAAK0sH,iBAAmBA,EACxB1sH,KAAKyqB,cAAgBA,EAErBzqB,KAAKuoD,MAAQ,KACbvoD,KAAKouH,WAAa,KAClBpuH,KAAKw1H,kBAAoB,KAEzBx1H,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClByW,UAAW,EACX7b,eAAe,GAGjB/vF,KAAKy1H,YAAcz1H,KAAKy1H,YAAYp2H,KAAKW,MACzCA,KAAK01H,iBAAmB11H,KAAK01H,iBAAiBr2H,KAAKW,MACnDA,KAAK21H,sBAAwB31H,KAAK21H,sBAAsBt2H,KAAKW,MAC7DA,KAAK41H,2BAA6B51H,KAAK41H,2BAA2Bv2H,KAAKW,MAG5D,gBACX,OAAOA,KAAKkgD,QAAO2F,UACjB,MAAM,QAAEuM,EAAF,IAAW+1D,GAAQnoH,KAAK0oD,OAAOl9C,OACrCxL,KAAK+P,MAAM67F,UAAYuc,EACvB,IACE,MAAOiG,EAAY3qE,EAAO30B,SAAc7S,QAAQqW,IAAI,CAACtyB,KAAKgxH,iBAAiBj7G,SAAU/V,KAAK0sH,iBAAiBnkE,MAAM6J,GAAUpyD,KAAK0sH,iBAAiBoE,UAAU1+D,KAE3JpyD,KAAKouH,WAAaA,EAClBpuH,KAAKuoD,MAAQ9E,EACbzjD,KAAK61H,iBAAmB71H,KAAK81H,qBAAqBryE,EAAMuqE,WAAYI,GACpEpuH,KAAK+1H,oBAAsBjnG,EAC3B9uB,KAAK2T,WAAa,CAChBk6G,iBAAkB/+F,EAClBk/F,WAAYhuH,KAAKuoD,MAAMylE,WACvBF,eAAgB9tH,KAAKuoD,MAAMulE,eAC3BjhH,KAAM7M,KAAKuoD,MAAM17C,KACjB6gH,WAAY1tH,KAAKuoD,MAAMmlE,YAEzB1tH,KAAK6yH,eAAiB7yH,KAAK2T,WAAWk6G,iBACtC,MAAO/yG,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAG3C9a,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAK2T,WAAWk6G,mBAAqB7tH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cACzE,MAAO,OAMf17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAGd,kBACb,GAAI/vF,KAAK2T,WAAWk6G,iBAAiBxyF,QAAQ,iBAAkB,MAAQr7B,KAAK6yH,eAAex3F,QAAQ,iBAAkB,KAAOr7B,KAAK+P,MAAMggF,cACrI,OAAO/vF,KAAK0hD,aAAal7B,0BAI7BsvG,qBAAqB1+G,EAAUrB,GAC7B,OAAO,IACL,IAAMqB,GAAW7K,GACD,IAAOwJ,EAAQ,CAAExJ,GAAAA,IAClBm+G,aAKnB+K,cACE,OAAOz1H,KAAKkgD,OAAOlgD,KAAK01H,kBAGJ,yBACpB11H,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACMn1F,KAAK+1H,qBAAuB/1H,KAAK2T,WAAWk6G,kBAAoB7tH,KAAK2T,WAAW+5G,WAAW,KAAO1tH,KAAKuoD,MAAMmlE,WAAW,KAC1H1tH,KAAK2T,WAAWwE,QAAUnY,KAAKuoD,MAAMpwC,QAAU,SAE3CnY,KAAK0sH,iBAAiBsJ,YAAYh2H,KAAKuoD,MAAMh8C,GAAIvM,KAAK2T,YAC5D3T,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,eACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,mBAAoB6M,EAAK,0BATpD,QAWE9a,KAAK+P,MAAMolF,kBAAmB,GAIlCwgC,yBAAyB3xH,GACvB,OAAOhE,KAAKkgD,OAAOlgD,KAAK41H,8BAA+B5xH,GAGzB,iCAACiyH,EAAQ7/G,EAAOyzD,GAC9C,IACE,GAAqC,IAAjC7pE,KAAK61H,iBAAiBp2H,OACxB,MAAO,CAAEypH,UAAW,GAAIzyG,WAAY,GAGtC,MAAMP,EAAQ,CAAE2zD,OAAAA,EAAQ+oD,YAAa5yH,KAAK61H,mBACpC,MAAElyH,EAAF,WAAS8S,SAAqBR,EAAAA,EAAAA,IAAgB,CAAEE,MAAO8/G,EAAQ7/G,MAAAA,EAAOF,MAAAA,IAE5E,MAAO,CAAEgzG,UAAWvlH,EAAO8S,WAAAA,GAC3B,MAAOqE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gD,2LCrH/C,MAAMylC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,kBAAkBC,UAAU,oBAAqB,CAC9D2qC,YAAaD,EACbrrC,WAAYqgH,EAAAA,+B,4ECJd,UAAe3/G,IAAAA,OAAe,wBAAyB,CAACsgH,EAAAA,UAAxD,M,iGCCAC,EAAAA,EAAAA,IACOC,EAAAA,GACJ5wG,IAAI6wG,EAAAA,GACJ7wG,IAAI8wG,EAAAA,IACJh7G,KAAK,CACJi7G,OAAO,EACPC,YAAa,KACbC,cAAe,CACbC,aAAa,KAInB,I,+GCfavkE,EAAmBv8C,IAAAA,OAC9B,mCACA,IACA9R,K,m4BCaK,SAAS6yH,EAAT,GAMG,IAiCe7yH,EAtCvBuD,EAKQ,EALRA,OACAD,EAIQ,EAJRA,SACAwvH,EAGQ,EAHRA,UACA3jH,EAEQ,EAFRA,cACApE,EACQ,EADRA,OAEQ5E,GAAY0D,EAAAA,EAAAA,MAAZ1D,QAEF4sH,EACJxvH,EAAO8C,YAAcE,EAAAA,EAAAA,OACvB,OACE,iCACIusH,IAAa,SAACziF,EAAA,EAAD,8BAEf,gBAAKlzC,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,EAAA,EAAD,CACErkC,OAAO,6BACP0jB,QAASmhG,EACT/yH,MAmBaA,EAnBO,uBAoBrBmP,EAAgB,GAAH,OAAMA,EAAN,YAAuBnP,GAASA,GAnB5C8C,MAAM,wBACNI,QAAQ,6EACRI,SAoBV,SAA4ByvH,GAC1B,IAAI1sH,EAAYE,EAAAA,EAAAA,OACZwsH,IACF1sH,EAAYF,EACRI,EAAAA,EAAAA,eACAA,EAAAA,EAAAA,SAENjD,EAAS,EAAD,KAAMC,GAAN,IAAc8C,UAAAA,YAtBnB0sH,IACC,SAAC/nH,EAAA,EAAD,CACE1H,SAAUA,EACVC,OAAQA,EACRwH,OAAQA,EACRoE,cAAeA,O,qzBCzBlB,SAAS6jH,EAAT,GAMG,IALRnzH,EAKQ,EALRA,MAKQ,IAJRyD,SAAAA,OAIQ,MAJG,aAIH,EAHRyH,EAGQ,EAHRA,OACA7G,EAEQ,EAFRA,SACAirC,EACQ,EADRA,SAEA,OACE,iCACE,SAACyB,EAAA,EAAD,CACE9tC,MAAM,eACNjD,MAAOA,EACPyD,SAAUA,EACV4tC,SAAS,sBACTL,YAAa,iBAAO,CAClBqC,KAAM,EACNM,UAAW,EACXu6B,SAAU,QAEZx9B,KAAMU,EACNlmC,OAAQA,EACR7G,SAAUA,EACVirC,SAAUA,IAEO,iBAAXpkC,IACN,gBAAK5N,UAAU,uBAAf,UACE,SAACyS,EAAA,EAAD,UAAY7E,SAOtB,SAASkmC,EAAT,GAM2B,IALzB3tC,EAKyB,EALzBA,SACAitC,EAIyB,EAJzBA,KACApmC,EAGyB,EAHzBA,MACAjG,EAEyB,EAFzBA,SACAirC,EACyB,EADzBA,SAEA,OACE,iBAAKhyC,UClEc,gFDkEnB,WACE,iBAAKA,UAAU,0BAAf,WACE,UAACszC,EAAA,EAAD,CAAYvlC,KAAK,QAAjB,WACE,SAACulC,EAAA,QAAD,oBACA,SAACA,EAAA,EAAAtmB,MAAD,CACEhc,YAAY,UACZtO,MAAO0wC,EAAK2C,KACZ5vC,SAAU,SAAC1I,GAAD,OACRqJ,EAAa,OAAQ/C,SAAStG,EAAEY,OAAOqE,OAAS,IAAK,MAEvDqE,SAAUA,EACVirC,SAAUA,EACVlpC,KAAK,eAIT,iBAAM9I,UAAU,OAAhB,UACE,cAAGA,UAAU,6BAA6B,cAAY,YAGxD,UAACszC,EAAA,EAAD,CAAYvlC,KAAK,QAAjB,WACE,SAACulC,EAAA,QAAD,yBACA,SAACA,EAAA,EAAAtmB,MAAD,CACEhc,YAAY,UACZtO,MAAO0wC,EAAKiD,UACZlwC,SAAU,SAAC1I,GAAD,OACRqJ,EAAa,YAAa/C,SAAStG,EAAEY,OAAOqE,OAAS,IAAK,MAE5DqE,SAAUA,EACVirC,SAAUA,EACVlpC,KAAK,eAIT,SAACipC,EAAA,EAAD,CACE5rC,SAAU,SAACzD,GAAD,OAAWoE,EAAa,WAAYpE,IAC9CA,MAAO0wC,EAAKw9B,SACZlrE,QAAS,CAAC,CAAEhD,MAAO,OAAS,CAAEA,MAAO,QACrCqE,SAAUA,EACVirC,SAAUA,SAGXhlC,IACD,gBAAKhN,UC7GmG,kFD6GxG,UACE,SAACyS,EAAA,EAAD,UAAY5U,OAAOuI,OAAO4G,GAAO,UAMzC,SAASlG,EAAajE,EAAyBH,GAC7CyD,EAAS,OAAKitC,GAAN,QAAavwC,EAAOH,M,2GEpHzB,SAASozH,EAAiBx0G,GAAwB,UACjDtV,GACJ,UAACsV,EAAW7L,gBAAZ,iBAAC,EAAqBjS,YAAtB,iBAAC,EAA2BwJ,aAA5B,aAAC,EAAkChB,UACnC,uBAEF,MAAO,CACLgB,MAAO,IAAItP,MAAMsO,GACjBmY,QAASnY,G,syBCPN,IAAMmuC,GAAY,CACvB47E,cAAe,SAACjxH,GAAD,MACb,CAAC,QAASA,EAAe,kBAC3BkxH,aAAc,SAAClxH,EAA8BmxH,GAA/B,kBACR97E,GAAU47E,cAAcjxH,IADhB,CACgCmxH,KAC9CC,eAAgB,SAACpxH,EAA8BmxH,GAA/B,kBAET97E,GAAU67E,aAAalxH,EAAemxH,IAF7B,CAGZ,oBAEJE,cAAe,SACbrxH,EACAmxH,EACAG,GAHa,kBAMRj8E,GAAU+7E,eAAepxH,EAAemxH,IANhC,CAOXG,KAEJrsG,SAAU,SAACjlB,EAA8BmxH,GAA/B,kBAEH97E,GAAU67E,aAAalxH,EAAemxH,IAFnC,CAGN,cAEJI,gBAAiB,SAACvxH,EAA8BmxH,GAA/B,kBAEV97E,GAAU67E,aAAalxH,EAAemxH,IAF5B,CAGb,qBAEJK,eAAgB,SACdxxH,EACAmxH,EACAG,EACAG,GAJc,kBAOTp8E,GAAUg8E,cACXrxH,EACAmxH,EACAG,IAVU,CAYZ,kBACAG,M,sgCCaSC,GAA6B,EAA7BA,G,oFAAf,WACE1xH,EACAmxH,GAFF,0GAKUzwH,EALV,qBAK8BV,EAL9B,gCAKmEmxH,EALnE,mDAM2BlxH,EAAAA,GAAAA,IAA4BS,EAAK,CACtD+E,OAAQ,CAAE,cAAe,gBAP/B,uBAMY/G,EANZ,EAMYA,KANZ,kBAUW21C,GAAe31C,IAV1B,uCAYUyB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,8BACA6wH,GAfN,0D,sBAmBA,SAAS38E,GAAT,GAIwC,IAHtC97C,EAGsC,EAHtCA,GACA6pE,EAEsC,EAFtCA,UACAuvD,EACsC,EADtCA,cAKA,GAH2B,IAAOA,EAAe,CAC/C3sH,aAAc,qBAEiC,IAAzC4sH,UACR,MAAO,CAAEr5H,GAAAA,EAAI6pE,UAAAA,EAAWwvD,eADxB,MAAoB,GAApB,GClFK,SAASC,GACd7xH,EACAzH,GAEA,IAAImI,EAAM,cAAH,OAAiBV,EAAjB,wBAKP,OAJIzH,IACFmI,GAAO,IAAJ,OAAQnI,IAGNmI,EAGF,SAASoxH,GACd9xH,EACAmxH,EACAG,GAEA,IAAI5wH,EAAM,GAAH,OAAMmxH,GACX7xH,EACAmxH,GAFK,mBASP,OAJIG,IACF5wH,GAAO,IAAJ,OAAQ4wH,IAGN5wH,EAGF,SAASqxH,GACd/xH,EACAmxH,EACAG,EACAG,GAEA,IAAI/wH,EAAMmxH,GAAsB7xH,EAAemxH,GAY/C,OAVIG,IACF5wH,GAAO,mBAAJ,OAAuB4wH,IAG5B5wH,GAAO,yDAEH+wH,IACF/wH,GAAO,IAAJ,OAAQ+wH,IAGN/wH,E,6/BCpCF,SAASsxH,GACdhyH,GAEA,IADAixH,EACA,uDADgC,GAE1BpkG,GAAUolG,EAAAA,EAAAA,YACdhB,EAAc74H,KAAI,SAAC84H,GAAD,WAChBgB,SAAU78E,GAAU+7E,eAClBpxH,EACAkxH,EAAaC,gBAEfgB,SAAO,8BAAE,mHACcC,GACnBpyH,EACAkxH,EAAaC,gBAHR,cACDnhH,EADC,yBAKA,CAACkhH,EAAaC,eAAgBnhH,IAL9B,2CAAF,8CAOJ4C,EAAAA,EAAAA,IAAU,6CAPJ,IAAF,MAWX,MAAO,CACLw+G,eAAgBr4H,OAAOwG,YACrB,IACEstB,EAAQz0B,KAAI,SAACi6H,GACX,OAAIA,EAAE3zH,KACG2zH,EAAE3zH,KAGJ,UAIb2K,UAAWwjB,EAAQjiB,MAAK,SAACynH,GAAD,OAAOA,EAAEhpH,aACjCm1G,QAAS3xF,EAAQjiB,MAAK,SAACynH,GAAD,OAAOA,EAAE7T,Y,SAIpB4T,GAAkB,EAAlBA,G,oFAAf,WACEpyH,EACAmxH,GAFF,iHAOclxH,EAAAA,GAAAA,IACR6xH,GAAsB9xH,EAAemxH,GACrC,CAAE1rH,OAAQ,CAAE,cAAe,gBATjC,uBAMc7H,EANd,EAMMc,KAAQd,MANd,kBAYWA,GAZX,uCAcUuC,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,qCACA6wH,GAjBN,0D,8qBCvCO,SAASsB,GAAiBtyH,GAC/B,OAAOK,EAAAA,EAAAA,UACLg1C,GAAU47E,cAAcjxH,IACxB,kB,SAO4B,G,gCAPtBuyH,CAAiBvyH,K,kWAFV,KAIR4S,EAAAA,EAAAA,IAAU,4C,oDAKnB,WAAgC5S,GAAhC,iHAE2BC,EAAAA,GAAAA,IACrB4xH,GAAsB7xH,GACtB,CAAEyF,OAAQ,CAAE,cAAe,gBAJjC,uBAEY/G,EAFZ,EAEYA,KAFZ,kBAMWA,EAAKd,OANhB,uCAQUuC,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,mCACA6wH,GAXN,0D,sBCpBO,SAASwB,GACdrB,EACAC,GAEA,OAAKD,GAAmBC,GAAmBA,EAAeD,GAInDC,EAAeD,GAAgB/4H,KAAI,gBAAG2F,EAAH,EAAGA,KAAH,MAAmB,CAC3DH,MADwC,EAASrF,GAEjDsI,MAAO9C,MALA,GASJ,SAAS00H,GACdtB,EACAuB,GAEA,IAAKvB,IAAmBuB,EACtB,MAAO,GAGT,IAAMztG,EAAWytG,EAA2BvB,GAC5C,OAAKlsG,EAIEA,EAAS2sG,UAAUx5H,KAAI,SAACg1F,GAAD,MAAe,CAC3CxvF,MAAOwvF,EACPvsF,MAAOusF,MALA,G,oXCpBJ,WACL1vC,EACA19C,EACAmxH,EACAG,GAJK,iGAMCv2G,EAAU43G,GAAmBj1E,GAN9B,kBAQoBz9C,EAAAA,GAAAA,IACrB8xH,GACE/xH,EACAmxH,EACAG,EACA5zE,EAAM3/C,MAERgd,EACA,CAAEtV,OAAQ,CAAE,cAAe,gBAhB1B,uBAQK/G,EARL,EAQKA,KARL,kBAkBIA,GAlBJ,uCAoBGyB,EAAAA,EAAAA,IAAgB,EAAD,IApBlB,0D,0EAwBA,WACLH,EACA4yH,GAFK,yGAKG3yH,EAAAA,GAAAA,OAAA,qBAA2BD,EAA3B,iBAAiD4yH,GAAoB,CACzEntH,OAAQ,CAAE,cAAe,gBANxB,6DASGtF,EAAAA,EAAAA,IAAgB,EAAD,GAAa,oCAT/B,yD,sBAaP,SAASwyH,GAAmBj1E,GAM1B,IALA,IAAMm1E,EAAiB,GACjBC,EAAe,GAEfhhF,EAAQ4L,EAAM5L,MAAMvlC,QAAO,SAACi4B,GAAD,OAAOA,EAAE+M,WAAa/M,EAAEyM,QAEhDz3C,EAAI,EAAGA,EAAIs4C,EAAMp4C,OAAQF,GAAK,EAAG,CACxC,IAAMkzE,EAAU56B,EAAMt4C,GAEtBq5H,EAAeh1H,KAAK,CAClBo0C,KAAMy6B,EAAQn7B,YAGhBuhF,EAAaj1H,KAAK,CAChBo0C,KAAMy6B,EAAQz7B,KACd66B,SAAUY,EAAQZ,WAItB,MAAO,CACLshB,SAAU1vC,EAAM0vC,SAChBxuF,WAAY,CACVm0H,OAAQr1E,EAAM7H,GACdN,WAAY,CACV,CACEx3C,KAAM2/C,EAAM3/C,KACZa,WAAY,CACVkpD,MAAOpK,EAAMoK,MACbhW,MAAO+gF,EACPG,UAAW,CACTC,SAAU,CACRlb,IAAKr6D,EAAMq6D,IACXmb,WAAYx1E,EAAMxqB,YAM5BigG,UAAW,CACTnvH,KAAM05C,EAAM01E,iBAAmB,SAAW,UAC1CthF,MAAOghF,K,+dC5DR,SAASO,KACd,IAAMrzH,GAAgBsY,EAAAA,EAAAA,KACdpU,GAAY0D,EAAAA,EAAAA,MAAZ1D,QAER,ECTK,SAA0BlE,GAC/B,MACEsyH,GAAiBtyH,GADLixH,EAAd,EAAQvyH,KAAgC40H,EAAxC,EAA6BjqH,UAE7B,EACE2oH,GAAkBhyH,EAAeixH,GAD3BG,EAAR,EAAQA,eAA2BmC,EAAnC,EAAwBlqH,UAExB,EPXK,SACLrJ,GAEA,IADAixH,EACA,uDADgC,GAE1BpkG,GAAUolG,EAAAA,EAAAA,YACdhB,EAAc74H,KAAI,SAAC84H,GAAD,WAChBgB,SAAU78E,GAAUpwB,SAASjlB,EAAekxH,EAAaC,gBACzDgB,SAAO,8BAAE,mHACgBT,GACrB1xH,EACAkxH,EAAaC,gBAHR,cACDlsG,EADC,yBAKA,CAACisG,EAAaC,eAAgBlsG,IAL9B,2CAAF,8CAOJrS,EAAAA,EAAAA,IAAU,uCAPJ,IAAF,MAWX,MAAO,CACL4gH,UAAWz6H,OAAOwG,YAChB,IACEstB,EAAQz0B,KAAI,SAACi6H,GACX,OAAIA,EAAE3zH,KACG2zH,EAAE3zH,KAGJ,UAIb2K,UAAWwjB,EAAQjiB,MAAK,SAACynH,GAAD,OAAOA,EAAEhpH,cOnBkBoqH,CACnDzzH,EACAixH,GAFMuC,EAAR,EAAQA,UAAsBE,EAA9B,EAAmBrqH,UAQnB,MAAO,CAAEA,UAFPiqH,GAA0BC,GAA2BG,EAEnCzC,cAAAA,EAAeG,eAAAA,EAAgBoC,UAAAA,GDHjDG,CAAiB3zH,GADXwzH,EAAR,EAAQA,UAAWvC,EAAnB,EAAmBA,cAAeG,EAAlC,EAAkCA,eAAgB/nH,EAAlD,EAAkDA,UAGlD,ECIK,WAIL,IAHA4nH,EAGA,uDAHgC,GAChCG,EAEA,uDAFkD,GAClDoC,EACA,uDAD+C,GAEzCtvH,GAAUoW,EAAAA,EAAAA,MAEVs5G,EAAsB3C,EAAc74H,KAAI,SAACq9B,GAAD,MAAQ,CACpD73B,MAAO63B,EAAE07F,eACTtwH,MAAO40B,EAAE5H,gBAGLgmG,EAAqBC,EAAcF,GAEnCG,EAA6BvB,GACjCqB,EACAzC,GAsBF,MAAO,CACL/oH,cAfiD,CACjDtK,KAAM,GACNqvF,SAAU0mC,EAPkBrB,GAC5BoB,EACAL,IAMAtC,aAAc2C,EACdxC,cAAeyC,EAAcC,GAC7BjsE,MAAO,GACPjS,GAAI,QACJ3iB,OAAQ,EACR6kF,IAAK,EACLjmE,MAAO,CAAC,CAAEP,UAAW,GAAIN,KAAM,GAAI66B,SAAU,QAC7CsnD,kBAAkB,EAClB9qH,eAAeC,EAAAA,EAAAA,GAA2BrE,IAK1C0vH,oBAAAA,GAGF,SAASE,EAAiBriH,GACxB,GAAmB,IAAfA,EAAI/X,OAIR,OAAO+X,EAAI,GAAG7T,ODpD+Bo2H,CAC7C/C,EACAG,EACAoC,GAHMnrH,EAAR,EAAQA,cAAeurH,EAAvB,EAAuBA,oBAMjB9uG,GAASC,EAAAA,EAAAA,aAEPkvG,EEvBH,SACL7C,EAGApxH,GAEA,IAAM2mB,GAAcC,EAAAA,EAAAA,kBACpB,OAAO9e,EAAAA,EAAAA,cACL,SAACxG,GACC,IAAKA,EAAO4vH,aACV,MAAM,IAAIr8G,GAAAA,EAAe,4BAG3B,IAIMw8G,EAJ4BmB,GAChClxH,EAAO4vH,aACPE,GAE8C1tH,MAC9C,SAAC8sE,GAAD,OAAOA,EAAE5yE,QAAU0D,EAAO+vH,iBAE5B,IAAKA,EACH,MAAM,IAAIx8G,GAAAA,EAAe,4BAG3B,OHjCC,SAAP,yCGiCaq/G,CACL5yH,EACAtB,EACAsB,EAAO4vH,aACPG,EAAcxwH,SAGlB,CACQuH,UADR,SACkBopH,EAAgBlwH,GAAQ,O,EAAA,mIAChCwD,EADgC,UACd0sH,EAAel9E,iBADD,aACd,EAA0BC,gBADZ,sBAG9B,IAAI1/B,GAAAA,EAAe,4CAHW,cAMhC3G,EAAoB5M,EAAOgH,cANK,UAOhC2F,EAAAA,GAAAA,GAAqBC,EAAmBpJ,GAPR,gCAQ/B6hB,EAAYI,kBACjBsuB,GAAU47E,cAAcjxH,KATY,0C,4LFTpBm0H,CACtB/C,EACApxH,GAFMi0H,YAKR,OAAI5qH,EACK,MAIP,SAAC,KAAD,CACEhB,cAAeA,EACfpE,iBAAkB,kBG5CjB,SAA0BC,GAC/B,OAAO3B,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMsG,EAAAA,EAAAA,MAAS5B,SAAS,qBACxBqlD,OAAOzjD,EAAAA,EAAAA,MAAS5B,SAAS,sBACzByuH,cAAc7sH,EAAAA,EAAAA,MAAS5B,SAAS,6BAChC4uH,eAAehtH,EAAAA,EAAAA,MAAS5B,SAAS,+BACjC2qF,UAAU/oF,EAAAA,EAAAA,MAAS5B,SAAS,yBAC5BozC,IAAIxxC,EAAAA,EAAAA,MAAS3B,MAAM,CAAC,QAAS,YAC7Bq1G,KAAKv1G,EAAAA,EAAAA,MAAS4xH,WACdlhG,QAAQ1wB,EAAAA,EAAAA,MAAS4xH,WACjBhB,kBAAkB/7E,EAAAA,EAAAA,MAClBvF,OCdKttC,EAAAA,EAAAA,KACLjC,EAAAA,EAAAA,MAAS4B,MAAM,CACb8sC,MAAM5sC,EAAAA,EAAAA,MAAS5B,SAAS,oBACxB8uC,WAAWltC,EAAAA,EAAAA,MAAS5B,SAAS,yBAC7BqpE,UAAUznE,EAAAA,EAAAA,MAAS3B,MAAM,CAAC,MAAO,WAEnCsU,IAAI,EAAG,yCDSP1O,eAAe+rH,EAAAA,EAAAA,GAAoBnwH,KHgCTD,CAAiBC,IACzCsE,SA5BwC,4CA6BxCC,iBAAe,EACfC,kBAAgB,EAChBmf,oBAAkB,EANpB,SAQG,gBACC/e,EADD,EACCA,OACAgf,EAFD,EAECA,aACAlf,EAHD,EAGCA,aACAC,EAJD,EAICA,QACAvH,EALD,EAKCA,OACAqH,EAND,EAMCA,cAND,OAQC,UAAC,KAAD,CAAMzN,UAAU,kBAAkBsN,SAAUsf,EAAcE,YAAU,EAApE,WACE,SAAComB,EAAA,EAAD,8BACA,SAACviC,EAAA,EAAD,CACEhL,MAAM,eACNiB,QAAQ,qBACRgH,OAAQA,EAAOooH,aAHjB,UAKE,SAAC,KAAD,CACEnzH,KAAK,eACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,qBACHqI,QAASgzH,OAIb,SAAC/nH,EAAA,EAAD,CACEhL,MAAM,iBACNiB,QAAQ,sBACRgH,OAAQA,EAAOuoH,cAHjB,UAKE,SAAC,KAAD,CACEtzH,KAAK,gBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,sBACHqI,QAAS4xH,GACPlxH,EAAO4vH,aACPE,QAKN,SAACvlH,EAAA,EAAD,CACEhL,MAAM,WACNiB,QAAQ,iBACRgH,OAAQA,EAAOskF,SAHjB,UAKE,SAAC,KAAD,CACErvF,KAAK,WACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,iBACHqI,QAAS6xH,GAAyBnxH,EAAO4vH,aAAcsC,QAI3D,SAACplF,EAAA,EAAD,uCAEA,SAACviC,EAAA,EAAD,CAAahL,MAAM,OAAOiB,QAAQ,aAAagH,OAAQA,EAAO/K,KAA9D,UACE,SAAC,KAAD,CACEA,KAAK,OACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,aACH2T,YAAY,wBAIhB,SAACL,EAAA,EAAD,CACEhL,MAAM,QACNiB,QAAQ,cACRgH,OAAQA,EAAOg/C,MAHjB,UAKE,SAAC,KAAD,CACE/pD,KAAK,QACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,cACH2T,YAAY,yBAIhB,SAACL,EAAA,EAAD,CAAahL,MAAM,KAAKiB,QAAQ,WAAWgH,OAAQA,EAAO+sC,GAA1D,UACE,SAAC,KAAD,CACE93C,KAAK,KACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,WACHqI,QAAS,CACP,CAAEC,MAAO,QAASjD,MAAO,SACzB,CAAEiD,MAAO,UAAWjD,MAAO,iBAKjC,SAACmzH,EAAD,CACEnzH,MAAO0D,EAAOwwC,MACdzwC,SAAU,SAACzD,GAAD,OAAW+K,EAAc,QAAS/K,IAC5CkL,OAAQA,EAAOgpC,SAGjB,gBAAK52C,UAAU,aAAf,UACE,gBAAKA,UAAU,6BAAf,oFAMF,SAACkzC,EAAA,EAAD,mCAEA,SAACviC,EAAA,EAAD,CAAahL,MAAM,MAAMiB,QAAQ,YAAYgH,OAAQA,EAAOivG,IAA5D,UACE,SAAC,KAAD,CACEh6G,KAAK,MACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,YACHyL,KAAK,SACLkI,YAAY,SAIhB,SAACL,EAAA,EAAD,CACEhL,MAAM,SACNiB,QAAQ,YACRgH,OAAQA,EAAOoqB,OAHjB,UAKE,SAAC,KAAD,CACEn1B,KAAK,SACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,eACHyL,KAAK,SACLkI,YAAY,SAIhB,SAAC0kH,EAAD,CACE1jH,cAAc,gBACd7L,SAAU,SAACC,GAAD,OAAYqH,EAAc,gBAAiBrH,IACrDA,OAAQA,EAAOgH,cACfQ,OAAQA,EAAOR,iBAGjB,gBAAKpN,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACEnH,UAAW4G,EACXQ,UAAWT,EACXU,YAAY,4BAHd,WAKE,cAAGpO,UAAU,yBAAyB,cAAY,SALpD,oCAzKgC,kDAwL5C,WAAwBoG,GAAxB,yGAEU2yH,EAAY3yH,GAFtB,OAGI4pD,EAAAA,GAAsB,iCAAkC5pD,EAAOvD,MAC/D+mB,EAAOuB,aAAaC,GAAG,4BAJ3B,gDAMI4kC,EAAAA,GAAoB,UAApB,KAA2C,8BAN/C,0DAxL4C,uB,ivBKc9C,WACElrD,EACAmxH,EACAG,EACAG,GAJF,iHAO2BxxH,EAAAA,GAAAA,IACrB8xH,GACE/xH,EACAmxH,EACAG,EACAG,GAEF,CAAEhsH,OAAQ,CAAE,cAAe,gBAdjC,uBAOY/G,EAPZ,EAOYA,KAPZ,kBAiBWA,GAjBX,uCAmBUyB,EAAAA,EAAAA,IAAgB,EAAD,IAnBzB,0D,kuBCXO,WACLH,EACAmxH,EACAG,GAHK,iHAMoBrxH,EAAAA,GAAAA,IACrB6xH,GAAsB9xH,EAAemxH,EAAgBG,GACrD,CAAE7rH,OAAQ,CAAE,cAAe,gBAR1B,uBAMK/G,EANL,EAMKA,KANL,kBAWIA,GAXJ,uCAaGyB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,oCACA6wH,GAhBC,0D,kuBCDP,WACEhxH,EACAmxH,GAFF,iHAK2BlxH,EAAAA,GAAAA,IACrB4xH,GAAsB7xH,EAAemxH,GACrC,CAAE1rH,OAAQ,CAAE,cAAe,gBAPjC,uBAKY/G,EALZ,EAKYA,KALZ,kBAUWA,GAVX,uCAYUyB,EAAAA,EAAAA,IAAgB,EAAD,GAEnB,kCACA6wH,GAfN,0D,ygDCmBO,SAAesD,GAAtB,qC,oDAAO,WACLt0H,EACAmxH,GAFK,iHAKoBlxH,EAAAA,GAAAA,IACrB8xH,GAAuB/xH,EAAemxH,GACtC,CAAE1rH,OAAQ,CAAE,cAAe,gBAP1B,uBAKK/G,EALL,EAKKA,KALL,kBAUIA,EAAKd,OAVT,uCAYGuC,EAAAA,EAAAA,IAAgB,EAAD,GAAa,uCAZ/B,0D,+OCtCMpC,GAA+B,CAC1C0iC,OAAQ,OACRoQ,SAAU,SAACU,GAAD,OAAeA,EAAUxzC,MACnCxF,GAAI,OACJu4C,KAOK,YAG+B,IAF7B/yC,EAE6B,EAFpCH,MACiB2zC,EACmB,EADpCvN,IAAOC,SAEP,OACE,SAAC1+B,GAAA,EAAD,CACEC,GAAG,qCACHC,OAAQ,CAAElN,GAAIg5C,EAAUh5C,IACxB2C,UAAU,kBAHZ,SAKG6C,KAhBLwqC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,UCVCi8C,GAAmC,CAC9C3sD,OAAQ,WACRoQ,SAAU,SAACU,GAAD,OAAeA,EAAU67C,UACnC70F,GAAI,WACJgwC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,UCNCW,GAAgC,CAC3CrR,OAAQ,kBACRoQ,SAAU,SAACU,GAAD,OCLL,SAAkBigF,GACvB,IAAMsB,EAAetB,EAAe5yH,WAAWu0H,UAC3C3B,EAAe5yH,WAAWu0H,UAAUrhF,MACpC,GACEP,EAAYigF,EAAe5yH,WAAW22C,WAAW77C,OACnD83H,EAAe5yH,WAAW22C,WAAW,GACrC,KACEs9E,EAAiBthF,EAAYA,EAAU3yC,WAAWkzC,MAAQ,GAEhE,OAAOghF,EAAa16H,KAAI,SAACs0E,EAAStyC,GAEhC,MAAO,CACLmX,UAFWshF,EAAez4F,GAASy4F,EAAez4F,GAAO6X,UAAOnmC,EAGhEmlC,KAAMy7B,EAAQz6B,KACd65B,SAAUY,EAAQZ,aDTGyoD,CAAShjF,IAClCh5C,GAAI,QACJgwC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTD,KAGF,YAG2D,IAFlDgB,EAEkD,EAFzDl0C,MACiB2zC,EACwC,EADzDvN,IAAOC,SAEDmN,EAAKG,EAAU3yC,WAAWu0H,UAC5B5hF,EAAU3yC,WAAWu0H,UAAU/hF,GAC/B,GACJ,OAAqB,IAAjBU,EAAMp4C,QAAiB03C,EAIpBU,EAAM15C,KAAI,SAAC65C,GAAD,OACf,eAAG/2C,UAAU,YAAY8qB,KAAI,iBAAYorB,EAAZ,YAAkBa,EAAKhB,MAApD,WACE,cAAG/1C,UAAU,0BAA0B,cAAY,SADrD,IACgEk2C,EADhE,IAEGa,EAAKhB,OAFyDgB,EAAKhB,SAJ/D,M,wBEfE7sC,GAAoC,CAC/Cq8B,OAAQ,YACRloC,GAAI,YACJs4C,SAAU,SAAC7M,GAAD,OACRA,EAAIsQ,WAAatQ,EAAIsQ,UAAUC,iBAC3B/lC,EAAAA,GAAAA,GAAmBw1B,EAAIsQ,UAAUC,iBACjCjwC,EAAAA,EAAAA,gBACNwsC,KAWF,YAAyC,IAAhBlzC,EAAgB,EAAhBA,MACvB,OACE,iCACE,cACE1C,WAAW6L,EAAAA,GAAAA,IAAKC,EAAAA,GAAAA,eAAcpJ,GAAQ,eACtC,cAAY,SAEbA,MAjBL2qC,gBAAgB,EAChBwI,SAAS,EACTI,SAAU,SACVH,OAAQ,kBAAM,O,wmCCwBT,SAASoe,GAAT,GAIG,I,IAHRtuB,EAGQ,EAHRA,QACA8Z,EAEQ,EAFRA,SACAiQ,EACQ,EADRA,cAEA,GAAuCre,EAAAA,GAAAA,KAA/BjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAClB,G,GAA4CnL,EAAAA,GAAAA,GAAkBkZ,G,EAA9D,E,g0BAAOjZ,EAAP,KAAuBC,EAAvB,KAEMxB,GC3CCrnB,EAAAA,GAAAA,UAAQ,iBAAM,CAAChb,GAAMqvF,GAAUt7C,GAAO1tC,MAAY,ID4CzD,GAWI09B,EAAAA,GAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMoiC,EACNkB,YAAa,CAAEC,SAAAA,GAAAA,GACfC,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,QAClBC,aAAcV,GAEhB6yF,wBAAyBxrF,GAAAA,EACzB1G,uBAAuB,EACvBlB,SAZF,SAYW4C,GACP,OAAOA,EAAIzrC,KAGfwqC,GAAAA,gBACAC,GAAAA,UACAC,GAAAA,cACAC,GAAAA,EACAE,GAAAA,IA/BAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAJ,EANF,EAMEA,iBACAK,EAPF,EAOEA,SACAb,EARF,EAQEA,YACAc,EATF,EASEA,gBATF,IAUE35B,MAAS45B,EAVX,EAUWA,UAAWzB,EAVtB,EAUsBA,SAyBhB2+E,GAAuB/oG,EAAAA,GAAAA,GAAY4pB,IAEzCn+B,EAAAA,GAAAA,YAAU,WACRmgC,EAAgBm9E,KACf,CAACA,EAAsBn9E,IAE1B,IAAME,EAAaP,IACbQ,EAAaP,IAEnB,OACE,gBAAKroC,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAAC,MAAD,YACE,UAAC,MAAD,CAAYqQ,KAAMkpH,GAAAA,EAAK5zH,MAAM,aAA7B,WACE,SAAC6kC,GAAA,EAAD,CACE9nC,MAAO+jC,EACPtgC,SAsGZ,SAA+BzD,GAC7BgkC,EAAkBhkC,OApGV,UAAC,MAAD,YACE,SAAC,KAAD,CAAYyb,eAAe,4BAA3B,UACE,SAAC,MAAD,CACEnQ,MAAM,cACNjH,SAAsC,IAA5BohC,EAAiB3pC,OAC3ByP,QAAS,kBAhEjB,2CAiEUurH,CACErxF,EAAiBjrC,KAAI,SAAC4rC,GAAD,OAASA,EAAIC,SAAS1rC,QAG/CgT,KAAMu/C,GAAAA,EARR,uBAcF,SAAC,KAAD,CAAYzxC,eAAe,4BAA3B,UACE,SAAC9T,GAAA,EAAD,CAAMC,GAAG,+BAA+BtK,UAAU,aAAlD,UACE,SAAC,MAAD,CAAQqQ,KAAMw/C,GAAAA,EAAd,sCAKR,UAAC,MAAD,CACE7vD,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAG9B,OACE,SAAC,MAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAAC,cAAD,CACE0oC,WAAYA,EACZa,UAAW,SAACN,EAAD,OAAQpqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAA9B,OACT,SAAC,MAAD,CACEwpC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,IAMTwqC,KAAM/wB,EACNgxB,aAAa,kCAKnB,UAAC4C,GAAA,EAAD,YACE,SAAClB,GAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,GAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYowB,EAAQpnC,OACpB+jC,kBAmBZ,SAA8B0E,GAC5BU,EAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8B4jC,SAAAA,oBA3JzC,kDA8IR,WAAiCwyF,GAAjC,iGAC0B3yG,EAAAA,GAAAA,IACtB,4DAFJ,0DAKW,MALX,gCAQS6oC,EAAc8pE,IARvB,4CA9IQ,sBAkKR,SAASnZ,EAAiBjjH,EAAYqqC,GACpCiK,GAAiB,SAACtuC,GAAD,UAAC,MACbA,GADY,IAEf6jC,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,S,sVEpNhBzpC,G,oCAEJ,SAASC,KAAiS,OAApRA,GAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,GAASY,MAAMC,KAAMR,WAItU,IAgBA,GAhB0B,SAA6BS,GACrD,OAAoB,iBAAoB,MAAOd,GAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,KAAUA,GAAqB,iBAAoB,OAAQ,CACpEqB,EAAG,oeACH6B,OAAQ,UACRC,YAAa,IACbC,cAAe,QACf20B,eAAgB,aCVPk/B,GAAcvgD,IAAAA,OACjB,8BAA+B,IACtCC,UAAU,yBAAyBlN,EAAAA,EAAAA,ICc/B,WACL,IACYrK,GACRggB,EAAAA,EAAAA,4BADF9S,OAAUlN,GAEZ,EAqKF,SAAiBA,GACf,IAAMkkC,EAAQlkC,EAAGkkC,MACf,yFAGF,IAAKA,EACH,MAAM,IAAI7jC,MAAM,mCAGlB,I,IAAA,G,EAAA,E,4CAAgE6jC,I,kxBAEhE,MAAO,CAAE00F,eAFT,KAEyByD,gBAFzB,KAE0ChC,iBAF1C,MA9K8DiC,CAAQt8H,GAA9D44H,EAAR,EAAQA,eAAgByD,EAAxB,EAAwBA,gBAAiBhC,EAAzC,EAAyCA,iBAEnC5yH,GAAgBsY,EAAAA,EAAAA,KAEhBqO,GAAcC,EAAAA,EAAAA,kBAEdkuG,EXtBD,SACL90H,EACAmxH,GAEA,OAAO9wH,EAAAA,EAAAA,UACLg1C,GAAU67E,aAAalxH,EAAemxH,IACtC,kB,SAO2B,EAAhB4D,G,gCAPLA,CAAgB/0H,EAAemxH,K,kWAFxB,KAIRv+G,EAAAA,EAAAA,IAAU,2CWcSoiH,CAAgBh1H,EAAemxH,GACnD8D,EZvBD,SACLj1H,EACAmxH,EACAG,GAEA,OAAOjxH,EAAAA,EAAAA,UACLg1C,GAAUg8E,cAAcrxH,EAAemxH,EAAgBG,IACvD,kBAOG,SAAP,uCAPU4D,CAAiBl1H,EAAemxH,EAAgBG,K,kWAFzC,KAIR1+G,EAAAA,EAAAA,IAAU,6CYcUuiH,CACzBn1H,EACAmxH,EACAyD,GAGI3S,Eb9BD,SACLjiH,EACAmxH,EACAG,EACAG,GAEA,OAAOpxH,EAAAA,EAAAA,UACLg1C,GAAUm8E,eACRxxH,EACAmxH,EACAG,EACAG,IAEF,kB,SAa6B,EAAlB2D,EAAAA,EAAAA,G,gCAZTA,CACEp1H,EACAmxH,EACAG,EACAG,K,kWAZS,KAeR7+G,EAAAA,EAAAA,IAAU,8CaSMyiH,CACrBr1H,EACAmxH,EACAyD,EACAhC,GAGF,IACGkC,EAAkB/pH,YAClBkqH,EAAmBlqH,YACnBk3G,EAAel3G,UAEhB,OAAO,KAGT,IAwJAmmH,EACAG,EACAG,EACA,EACM8D,EAEAxwH,EA9JAysC,GAwJN2/E,EAvJE4D,EAAkBp2H,KAwJpB2yH,EAvJE4D,EAAmBv2H,KAwJrB8yH,EAvJEvP,EAAevjH,KAyJX42H,EAiBN,WACE,IAAMA,EAAwB9D,EAAe5yH,WAAW22C,WAAW,GAEnE,IAAK+/E,EACH,MAAO,CACLxjF,MAAO,IAIX,IAAMyjF,EAA8BD,EAAsB12H,WAEpDi0H,EAAiB0C,EAA4BzjF,MAkBnD,MAAO,CACLjyC,UAjBgB01H,EAA4BztE,MAkB5ChW,MAhBY0/E,EAAe5yH,WAAWu0H,UAAUrhF,MAAM15C,KACtD,SAACs0E,EAAStyC,GAKR,MAAO,CACLmX,UAJAshF,GAAkBA,EAAez4F,GAC7By4F,EAAez4F,GAAO6X,UACtBnmC,EAGJmlC,KAAMy7B,EAAQz6B,KACd65B,SAAUY,EAAQZ,aAQtBisC,IAAKwd,EAA4BvC,UAAUjb,IAC3C7kF,OAAQqiG,EAA4BvC,UAAUE,YAlDpBsC,GAExB1wH,EAAkB,UAAA0sH,EAAel9E,iBAAf,SAA0BC,gBAC9C,IAAIlmC,GAAAA,EAAyBmjH,EAAel9E,UAAUC,sBACtDzoC,E,kWAEJ,EACE/N,KAAMyzH,EAAezzH,KACrB03H,iBAAkBvE,EAAarjG,YAC/ByjG,kBAAmBD,EAActzH,KACjCqvF,SAAUokC,EAAepkC,SACzB2lC,OAAQvB,EAAe5yH,WAAWm0H,OAClCI,UAAW3B,EAAe5yH,WAAWu0H,UAAU/hF,GAC/CtsC,gBAAAA,GACGwwH,IApKL,OACE,iCACE,SAACp6F,EAAA,EAAD,CACE/yB,MAAM,qBACN4xB,YAAa,CACX,CAAEQ,KAAM,2BAA4B15B,MAAO,uBAC3C,CAAEA,MAAO0wC,EAAUxzC,UAIvB,gBAAK7C,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACojC,EAAA,GAAD,WACE,UAACA,EAAA,GAAD,CAAYpjC,UAAU,kBAAtB,WACE,SAACkzC,EAAA,EAAD,8BACA,SAACviC,EAAA,EAAD,CAAahL,MAAM,eAAeiB,QAAQ,qBAA1C,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,eACLxF,GAAG,qBACHqF,MAAO2zC,EAAUkkF,iBACjBvoF,UAAQ,OAIZ,SAACrhC,EAAA,EAAD,CAAahL,MAAM,iBAAiBiB,QAAQ,sBAA5C,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,gBACLxF,GAAG,sBACHqF,MAAO2zC,EAAU+/E,kBACjBpkF,UAAQ,OAIZ,SAACrhC,EAAA,EAAD,CAAahL,MAAM,WAAWiB,QAAQ,iBAAtC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,WACLxF,GAAG,iBACHqF,MAAO2zC,EAAU67C,SACjBlgD,UAAQ,OAIZ,SAACkB,EAAA,EAAD,uCAEA,SAACviC,EAAA,EAAD,CAAahL,MAAM,OAAOiB,QAAQ,aAAlC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,OACLxF,GAAG,aACH20C,UAAQ,EACRtvC,MAAO2zC,EAAUxzC,UAIrB,SAAC8N,EAAA,EAAD,CAAahL,MAAM,QAAQiB,QAAQ,cAAnC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,QACLxF,GAAG,cACHqF,MAAO2zC,EAAU1xC,UACjBqtC,UAAQ,OAIZ,SAACrhC,EAAA,EAAD,CAAahL,MAAM,KAAKiB,QAAQ,WAAhC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,KACLxF,GAAG,WACH20C,UAAQ,EACRtvC,MAAO2zC,EAAUwhF,YAIrB,SAAChC,EAAD,CAAmBnzH,MAAO2zC,EAAUO,MAAO5E,UAAQ,KAEnD,SAACrhC,EAAA,EAAD,CAAahL,MAAM,YAAYiB,QAAQ,YAAvC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,YACLxF,GAAG,YACH20C,UAAQ,EACRtvC,MAAO2zC,EAAU4hF,eAIrB,SAAC/kF,EAAA,EAAD,mCAEA,SAACviC,EAAA,EAAD,CAAahL,MAAM,MAAMiB,QAAQ,YAAjC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,MACLxF,GAAG,YACHyL,KAAK,SACLkI,YAAY,IACZghC,UAAQ,EACRtvC,MAAO2zC,EAAUwmE,SAIrB,SAAClsG,EAAA,EAAD,CAAahL,MAAM,SAASiB,QAAQ,YAApC,UACE,SAAComB,EAAAoU,EAAD,CACEv+B,KAAK,SACLxF,GAAG,eACHyL,KAAK,SACLkI,YAAY,IACZghC,UAAQ,EACRtvC,MAAO2zC,EAAUre,qBAQ7B,SAACrpB,GAAA,EAAD,CACElC,gBAAiB,kBACfgf,EAAYI,kBAAkB,CAC5B,QACA/mB,EACA,gBACAmxH,EACA,iBACA8D,EAAmBv2H,KAAKX,KACxB,kBACAkkH,EAAevjH,KAAKX,QAGxBoH,WAAY5M,EACZuM,gBAAiBysC,EAAUzsC,gBAC3BE,aAAcK,EAAAA,EAAAA,sBDjL8B,KACjDyK,UAAU,+BAA+BlN,EAAAA,EAAAA,IENrC,WACL,OACE,iCACE,SAACs4B,EAAA,EAAD,CACE/yB,MAAM,4BACN4xB,YAAa,CACX,CAAEQ,KAAM,2BAA4B15B,MAAO,uBAC3C,CAAEA,MAAO,qBAIb,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACojC,EAAA,GAAD,WACE,SAACA,EAAA,GAAD,WACE,SAAC+0F,GAAD,iBFT8C,KACzDvjH,UAAU,0BAA0BlN,EAAAA,EAAAA,IGIhC,WACL,IAKMg4C,EAAW,kBAEX56C,GAAgBsY,EAAAA,EAAAA,KAEhBo9G,EAAqBpD,GAAiBtyH,GAEtCuhH,EZfD,SACLvhH,GAGA,IAFAixH,EAEA,uDAFgC,GAChCn+G,EACA,uCACM+Z,GAAUolG,EAAAA,EAAAA,aACdl5G,EAAAA,GAAAA,UACE,kBACEk4G,EAAc74H,KAAI,SAAC84H,GAAD,UAAC,IACjBgB,SAAU78E,GAAUk8E,gBAClBvxH,EACAkxH,EAAaC,gBAEfgB,SAAO,8BAAE,sHACPmC,GAAmBt0H,EAAekxH,EAAaC,iBADxC,2CAAF,8CAEJv+G,EAAAA,EAAAA,IAAU,8CAPG,IAQhBE,QAAAA,IAHS,IAAF,OAKX,CAACm+G,EAAen+G,EAAS9S,KAI7B,OAAO+Y,EAAAA,GAAAA,UACL,iBAAO,CACLw4G,gBAAiB,KAAU,IAAU1kG,EAAQz0B,KAAI,SAACi6H,GAAD,OAAOA,EAAE3zH,UAC1D2K,UAAWwjB,EAAQjiB,MAAK,SAACynH,GAAD,OAAOA,EAAEhpH,gBAEnC,CAACwjB,IYZiB8oG,CAClB31H,EACA01H,EAAmBh3H,KACnBg3H,EAAmB3qH,WAGrB,EAwBF,SAA2B/K,GACzB,IAAM2mB,GAAcC,EAAAA,EAAAA,kBAEdgvG,GAAiB9tH,EAAAA,EAAAA,cACrB,SAAC+tH,GAAD,OACEjgH,EAAAA,GAAAA,GACEigH,EAAkBz9H,KAChB,SAACG,GAAD,OAAQ,kBrBnCX,SAAP,qCqBmCwBu9H,CAAqB91H,EAAezH,UAIxD,CACE6P,UADF,WAEI,OAAOue,EAAYI,kBAAkB,CACnC,QACA/mB,EACA,mBAGJ6d,QARF,SAQU9I,IACN+I,EAAAA,EAAAA,IACE,UACA/I,EACA,wCAMR,MAAO,CAAEghH,aA7B8C,+FA+BvD,WAA4B1kH,GAA5B,gFACEukH,EAAepsH,OAAO6H,EAAU,CAC9BjJ,UAAW,YACTqB,EAAAA,EAAAA,IAAc,UAAW,4CAH/B,4CA/BuD,uBAxB9BusH,CAAkBh2H,GAAnC+1H,EAAR,EAAQA,aAER,OAAIxU,EAAYl4G,WAAaqsH,EAAmBrsH,UACvC,MAIP,iCACE,SAAC6xB,EAAA,EAAD,CACEnB,YAAY,sBACZoB,QAAM,EACNhzB,MAAM,oBAER,SAAC,KAAD,CAAuBwkC,SA9BY,CACrCxK,SAAU,GACVC,OAAQ,CAAE7pC,GAAI,QAASqqC,MAAM,IA4BuB7B,WAAY6Z,EAA9D,UACE,SAACwU,GAAD,CACExU,SAAUA,EACV9Z,QAASygF,EAAYgQ,gBACrB1mE,cAAekrE,WHvC4B,KAClDjmH,UAAU,iBAAiBlN,EAAAA,EAAAA,IIAvB,WAAyB,MACxB5C,GAAgBsY,EAAAA,EAAAA,KAEhBo9G,EAAqBpD,GAAiBtyH,GAEtCi2H,EAAsBjE,GAC1BhyH,EACA01H,EAAmBh3H,MAGfw3H,EAAkB,UAAGR,EAAmBh3H,YAAtB,aAAG,EAAyBhF,OAC9Cy8H,EAAsBp9H,OAAOuI,OACjC20H,EAAoB7E,gBACpB9I,SAAQ,SAACztH,GAAD,OAAO9B,OAAOuI,OAAOzG,MAAInB,OAEnC,OACE,iCACE,SAACwhC,EAAA,EAAD,CAAY/yB,MAAM,OAAO4xB,YAAa,CAAC,CAAEl5B,MAAO,iBAEhD,gBAAK3F,UAAU,OAAf,SACGw6H,EAAmBh3H,OAClB,UAAC6xB,GAAA,EAAD,YACE,SAACC,GAAA,EAAD,CACE5yB,MAAOs4H,EACP3qH,KAAM6qH,GACNpyH,KAAK,kBAELiyH,EAAoBzX,UAAYyX,EAAoB5sH,YACpD,SAACmnB,GAAA,EAAD,CACE5yB,MAAOu4H,EACP5qH,KAAM8qH,GAAAA,EACNryH,KAAK,6BJ/B4B,KAAKjG,KKRzCm0D,GAAcriD,IAAAA,OAAe,wBAAyB,CACjEugD,GACAhE,IACCruD,K,sWCCI,IAAMu4H,GAAczmH,IAAAA,OACjB,kBAAmB,CAACqiD,KAC3BrzC,OAAOA,IAAQ9gB,KAGlB,SAAS8gB,GAAOoxC,GACd,IAAMxlC,EAAQ,CACZ1sB,KAAM,QACN2C,IAAK,SACL28C,OAAQ,WACRsW,UAAU,EACVxQ,QAAO,gEAAkB,SACvBhJ,EACAwI,EACA3xC,EACA4tC,EACAC,GAEA,OAAO1E,EAAM,4BAAC,gGACU,IAAlBnpC,EAAS/L,KADD,uBAEV09C,EAAOr8B,GAAG,kBAFA,0CAMVs4B,EAAiBoV,cAAchjD,EAASxK,IACxCo4C,EAAiBqV,qBAAqBjjD,EAASghC,WAC/C4M,EAAiBsV,yBAAyBljD,EAASkC,QARzC,SASJ2rC,EAAasV,oBAAoBnjD,GAT7B,0DAWV8M,EAAAA,EAAAA,IAAY,6BAAD,MACX6kC,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,IAZhC,8DA0DlB80B,EAAuBC,SAASzlC,GAChCwlC,EAAuBC,SAzCI,CACzBnyD,KAAM,2BACN2C,IAAK,sBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BAqCjBmgD,EAAuBC,SAhCG,CACxBnyD,KAAM,qCACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4BA4BjBmgD,EAAuBC,SAvBW,CAChCnyD,KAAM,+BACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,kCAmBjBmgD,EAAuBC,SAdL,CAChBnyD,KAAM,kBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,oB,4FCzDnBymH,EAAAA,GAAAA,IAAmBvhH,GAAAA,GAAO,IAE1BnF,IAAAA,OACU,YAAa,CACnB,eACA,YACA2mH,EAAAA,GACA,YACA,uBACA,aACA,eACA,aACA,aACA,wCACA,qBACA,cACA,oBACA,sBACA,oBACA,cACA,mBACA,gBACA,kBACAF,GACA,mBACA,uBACAG,GAAAA,YACA,iBACA,WACA,gBACA,cACAC,EAAAA,UAEDC,IAAIl0E,GAAAA,kBACJ5jC,OAAOwlC,GAAAA,WAEG,CACX,MAAM/rD,EAAM2W,EAAAA,OACZ3W,EACGQ,OACAyT,QAAQqvC,IAAUA,EAAKx8C,SAAS,WAChC0S,SAAQ,SAAUlY,GACjBtB,EAAIsB,Q,mGC/DGwyD,EAAmBv8C,IAAAA,OAC9B,wCACA,IACA9R,KCHWqyD,EAAcvgD,IAAAA,OACzB,mCACA,IACA9R,KCAWm0D,EAAcriD,IAAAA,OAAe,6BAA8B,CACtEugD,EACAhE,IACCruD,KCRH,MAAMy8C,EAAgCvrC,EAAQ,OAO9CY,QAAQ5W,OAAO,uBAAwB,CAAC,gBAAiB29H,EAAAA,QAAkBC,EAAAA,QAAsB3kE,IAAcrzC,OAAO,CACpH,yBACA,SAAUoxC,GAGR,MAAMhhC,EAAa,CACjBlxB,KAAM,aACN2C,IAAK,cACL28C,OAAQ,WACRsW,UAAU,EAEVxQ,QAAO,uIAAkB,SAAiBhJ,EAAQwI,EAAQ3xC,EAAU4tC,EAAkBk4E,EAAyBC,EAA4BryG,EAAem6B,GACxJ,OAAO1E,GAAO2F,UACZ,GAAK,CAAC,EAAG,EAAG,GAAG1gD,SAAS4R,EAAS/L,MAIjC,IACE,GAAsB,IAAlB+L,EAAS/L,KAEX,UACQ6xH,EAAwB91H,KAAKgQ,EAASxK,IAC5CwK,EAASkC,OAAS,EAClB,MAAOva,GACPqY,EAASkC,OAAS,EAOtB,GAHA0rC,EAAiBoV,cAAchjD,EAASxK,UAClCq4C,EAAasV,oBAAoBnjD,GAEjB,IAAlBA,EAAS/L,MAAkC,IAApB+L,EAASkC,OAClC,MAAM,IAAIta,MAAM,mHAGZm+H,EAA2Bn+G,MACjC,MAAOjgB,GACP+rB,EAAcxc,MAAM,6BAA8BvP,GAClDgqD,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,SAxB1CwnB,EAAOr8B,GAAG,wBAiTZ0wG,EAAkC,CACtCj5H,KAAM,2BACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,EACbrrC,WAAY,gCACZklD,aAAc,UAepBpE,EAAuBC,SAASjhC,GAChCghC,EAAuBC,SA1SC,CACtBnyD,KAAM,kBACN2C,IAAK,yBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,oCAsSjBmgD,EAAuBC,SAjSD,CACpBnyD,KAAM,4BACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,wBA6RjBmgD,EAAuBC,SAxRF,CACnBnyD,KAAM,0BACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iCAoRjBmgD,EAAuBC,SA/QK,CAC1BnyD,KAAM,8BACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sCA2QjBmgD,EAAuBC,SAtQH,CAClBnyD,KAAM,sCACN2C,IAAK,oBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,gCAkQjBmgD,EAAuBC,SA7PC,CACtBnyD,KAAM,2CACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sCAyPjBmgD,EAAuBC,SApPI,CACzBnyD,KAAM,8CACN2C,IAAK,2BACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,uCAgPjBmgD,EAAuBC,SA3OC,CACtBnyD,KAAM,2CACN2C,IAAK,wBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,oCAuOjBmgD,EAAuBC,SAlOE,CACvBnyD,KAAM,4CACN2C,IAAK,yBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qCA8NjBmgD,EAAuBC,SAzNR,CACbnyD,KAAM,oBACN2C,IAAK,UACLizD,UAAU,IAuNZ1D,EAAuBC,SApNT,CACZnyD,KAAM,0BACN2C,IAAK,oBACLizD,UAAU,IAkNZ1D,EAAuBC,SA/ML,CAChBnyD,KAAM,+BACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BA2MjBmgD,EAAuBC,SAtMA,CACrBnyD,KAAM,4BACN2C,IAAK,kBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mCAkMjBmgD,EAAuBC,SA7LO,CAC5BnyD,KAAM,gCACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,wCAyLjBmgD,EAAuBC,SApLD,CACpBnyD,KAAM,0CACN2C,IAAK,oBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,kCAgLjBmgD,EAAuBC,SA3KP,CACdnyD,KAAM,qBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4BAuKjBmgD,EAAuBC,SA9IL,CAChBnyD,KAAM,uBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BA0IjBmgD,EAAuBC,SArIR,CACbnyD,KAAM,oBACN2C,IAAK,qBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,yBAGfrK,OAAQ,CACNwxH,WAAY,MA6HhBhnE,EAAuBC,SApKV,CACXnyD,KAAM,0BACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,yBAgKjBmgD,EAAuBC,SA3JL,CAChBnyD,KAAM,gCACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BAuJjBmgD,EAAuBC,SA3HD,CACpBnyD,KAAM,2BACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,kCAuHjBmgD,EAAuBC,SAlHM,CAC3BnyD,KAAM,+BACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,uCA8GjBmgD,EAAuBC,SAzGF,CACnBnyD,KAAM,wCACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iCAqGjBmgD,EAAuBC,SAhGI,CACzBnyD,KAAM,+CACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,uCA4FjBmgD,EAAuBC,SAvFP,CACdnyD,KAAM,qBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4BAmFjBmgD,EAAuBC,SA9ER,CACbnyD,KAAM,4BACN2C,IAAK,oBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,2BA0EjBmgD,EAAuBC,SArEJ,CACjBnyD,KAAM,wBACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BAiEjBmgD,EAAuBC,SA5DE,CACvBnyD,KAAM,+BACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mCAwDjBmgD,EAAuBC,SAAS8mE,GAChC/mE,EAAuBC,SAxCsB,CAC3CnyD,KAAM,wCACN2C,IAAK,sBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iD,sBCvVrB,MAAM0qC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,gCAAiC,CAChF2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACToc,gBAAiB,IACjBigE,YAAa,IACbC,WAAY,IACZC,MAAO,IACPC,iBAAkB,Q,yDCbtB,gBACEj6E,UACE,MAAM0X,GAAW76D,KAAKq9H,gBAAkB,IACrC/qH,QAAQsS,GAAWA,EAAO21D,MAAQ31D,EAAO5Z,OAASsyH,EAAAA,6BAAAA,SAClDjP,SAASzpG,GAAW9lB,OAAOyG,QAAQqf,EAAO21D,QAC1Cp8E,KAAI,EAAEwB,EAAKgE,MAAP,CAAqBhE,IAAAA,EAAKgE,MAAAA,MAEjC3D,KAAK+P,MAAQ,CAAE8qD,QAAAA,M,4ECTnB,MAAMta,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,yCAA0C,CACzF2qC,YAAaD,EACbrrC,WAFyF,UAGzFH,SAAU,CACRsoH,eAAgB,Q,kECTpB,MAAM98E,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,qCAAsC,CACrF2qC,YAAaD,EACbxrC,SAAU,CACRwoH,aAAc,Q,0CCRlB,MAAMh9E,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,kCAAmC,CAClF2qC,YAAaD,EACbrrC,WAAY,4CACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACV68E,YAAa,IACb58E,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,IACjBygE,sBAAuB,IACvBC,UAAW,Q,4GCZf9nH,QAAQ5W,OAAO,oBAAoBkW,WAAW,4CAA6C,CACzF,SACA,cACA,mBACA,iBACA,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GAC/Cn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,MAAMonD,EAAOx8D,KAEbA,KAAKsE,SAAWxF,OAAOM,OAAOY,KAAKsE,SAAU,CAC3Cq5H,YAAY,IAGd39H,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC2tD,WAAW,EACXD,cAAe,KAGjBz9D,KAAK+uD,QAAU,CACbh/C,MAAO,CACL6uD,MAAM,EACN/lD,SAAS,EACTxR,OAAQ,KAIZrH,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC19D,KAAK+P,MAAM0wD,gBAAgB5oD,SAASw8B,GAASr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,cAGhF19D,KAAK49H,eAAiB,SAAUvpF,GAC9B,OAAOr0C,KAAK+P,MAAM0tD,cAAct4D,SAASkvC,EAAK9nC,KAGhDvM,KAAK69H,aAAe,SAAUxpF,GAC5B,OAAOA,EAAKypF,wBAA0B99H,KAAK+9H,wBAAwB1pF,MAAWr0C,KAAKg+H,gBAAgB3pF,GAAM50C,QAG3GO,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAE3BA,EAGMA,IAAa59D,KAAK+P,MAAM0tD,cAAct4D,SAASkvC,EAAK9nC,MAC7DvM,KAAK+P,MAAM0tD,cAAgB,IAAIz9D,KAAK+P,MAAM0tD,cAAeppB,EAAK9nC,KAH9DvM,KAAK+P,MAAM0tD,cAAgBz9D,KAAK+P,MAAM0tD,cAAcnrD,QAAQhU,GAAOA,IAAO+1C,EAAK9nC,KAKjFgxD,EAAiB2F,0BAA0BljE,KAAK2gD,SAAU3gD,KAAK+P,MAAM0tD,gBAGvEz9D,KAAKmjE,YAAc,SAAUR,GAC3B3iE,KAAK+P,MAAM0tD,cAAgBkF,EACvB3iE,KAAK+P,MAAM0tD,cAAch+D,SAAWO,KAAK6mC,QAAQpnC,SACnDO,KAAK+P,MAAM2tD,WAAY,IAI3B19D,KAAKqjE,cAAgB,WACnB,MAAMV,EAAsBpF,EAAiB+F,0BAA0BtjE,KAAK2gD,UAChD,OAAxBgiB,GACF3iE,KAAKmjE,YAAYR,IAIrB3iE,KAAKi+H,2BAA6B,WAChC1gE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKm+H,sBAAwB,SAAU9pF,GACrC,OAAO+pF,EAAAA,QAAAA,sBAAkD/pF,IAG3Dr0C,KAAKq+H,kBAAoB,SAAUhqF,GAEjC,OAAIA,EAAKypF,wBAA0BzpF,EAAKypF,uBAAuBr+H,OAAS,EAC/D40C,EAAKypF,uBAAuBntH,MAAM2tH,GAAQC,EAAAA,QAAAA,kBAA4CD,EAAIE,gBAE5FD,EAAAA,QAAAA,kBAA4ClqF,EAAKmqF,eAG1Dx+H,KAAKy+H,YAAc,SAAUpqF,GAC3B,OAAQmoB,EAAK6hE,kBAAkBhqF,IAASmoB,EAAKl4D,SAASq5H,YAGxD39H,KAAKg+H,gBAAkB,SAAU3pF,GAE/B,MAAMqqF,EAAcrqF,EAAKsqF,eAAetQ,SAASuQ,GAAOA,EAAGC,eACxDvsH,QAAO,EAAGszC,KAAAA,EAAMxO,GAAAA,KAASwO,GAAQxO,IACjCj5C,KAAI,EAAGynD,KAAAA,EAAMxO,GAAAA,EAAI0nF,KAAAA,EAAMv4E,KAAAA,KAEd,GADc,MAATu4E,EAAe,QAAU,YAChBl5E,GAAQxO,IAAKmP,MAIvC,IAAIw4E,EAAmB,GACnB1qF,EAAK2qF,wBACPD,EAAmB1qF,EAAKsqF,eAAexgI,KAAKygI,GAAQ,UAASvqF,EAAK2qF,yBAAyBJ,EAAGE,UAIhG,MAAMG,EAAgB,IAAIP,KAAgBK,GAG1C,OAAOE,EAAcx/H,OAAS,EAAIw/H,EAAc,GAAK,IAGvDj/H,KAAK+9H,wBAA0B,SAAU1pF,GACvC,OAAOA,EAAK6qF,gBAAkB7qF,EAAK6qF,eAAevuH,MAAMiU,GAAWA,EAAO21D,MAAQ31D,EAAO5Z,OAASsyH,EAAAA,6BAAAA,UAMpGt9H,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKq+H,kBAAkBhqF,IAGjCr0C,KAAKs/D,aAAe,SAAUjrB,GAC5B,OAAOmoB,EAAKzN,QAAQh/C,MAAM1I,OAAOsJ,MAAM2B,GAAW+hC,EAAK8qF,kBAAoB7sH,EAAOvI,MAAQuI,EAAOwuD,WAGnG9gE,KAAK+gE,oBAAsB,WACzB/gE,KAAK+uD,QAAQh/C,MAAM8I,QAAU7Y,KAAK+uD,QAAQh/C,MAAM1I,OAAOsJ,MAAM2B,IAAYA,EAAOwuD,WAGlF9gE,KAAKm+D,wBAA0B,WAC7B,MAAMihE,EAAuBp/H,KAAK6mC,QAAQ1oC,KAAKk2C,IAAD,CAAatqC,KAAMsqC,EAAK8qF,gBAAiBr+D,SAAS,MAChG9gE,KAAK+uD,QAAQh/C,MAAM1I,OAAS,IAAS+3H,EAAsB,SAG7Dp/H,KAAKmjD,QAAU,WACbnjD,KAAKq/H,qCAAuCA,EAAAA,qCAC5Cr/H,KAAKs/H,2BAA6BA,EAAAA,2BAClCt/H,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,MAAMwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACxC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,MAAM2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC9C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,MAAMC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UAC1C,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,MAAM+D,EAAsBpF,EAAiB+F,0BAA0BtjE,KAAK2gD,UAChD,OAAxBgiB,GACF3iE,KAAKmjE,YAAYR,GAGnB,MAAM9D,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAKw9H,aAC3C,OAAnB3+D,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElBmM,EAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACpF39H,KAAKsE,SAASq5H,YAAa,EAC3BpgE,EAAiB2gE,qBAAqBl+H,KAAKw9H,YAAax9H,KAAKsE,WAE/DtE,KAAK2/D,gC,sBClLX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,uCAAwC,CACvF2qC,YAAaD,EACbrrC,WAAY,iDACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,gICNrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,iDAAkD,CAC9F,SACA,cACA,mBACA,iBACA,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GAC/Cn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb,IAAIlB,EAAOx8D,KACXA,KAAKu/H,uBAAyBA,EAAAA,uBAE9Bv/H,KAAKsE,SAAWxF,OAAOM,OAAOY,KAAKsE,SAAU,CAC3Cq5H,YAAY,IAGd39H,KAAKi+H,2BAA6B,WAChC1gE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKm+H,sBAAwB,SAAU9pF,GACrC,OAAO+pF,EAAAA,QAAAA,sBAAkD/pF,IAG3Dr0C,KAAKq+H,kBAAoB,SAAUhqF,GACjC,OAAOkqF,EAAAA,QAAAA,kBAA4ClqF,EAAKmqF,eAG1Dx+H,KAAKy+H,YAAc,SAAUpqF,GAC3B,OAAQmoB,EAAK6hE,kBAAkBhqF,IAASmoB,EAAKl4D,SAASq5H,YAGxD39H,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,KAIvB/9D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAOA,EAAKyG,MAAMr7C,OAAS,GAAK40C,EAAKyG,MAAM,GAAG+jF,aAAap/H,OAAS,GAGtEO,KAAKw/H,oBAAsB,SAAUC,GAEnC,MAAO,WADUA,EAAK75E,KAAO65E,EAAK75E,KAAO65E,EAAKroF,IAChBqoF,EAAKl5E,MAGrCvmD,KAAK0/H,oBAAsB,SAAU1nF,GACnC,OAAOA,EAAK6mF,aAAap/H,OAAS,GAGpCO,KAAK2/H,mBAAqB,SAAUF,GAClC,SAAQA,EAAK75E,OAAS65E,EAAKroF,KAG7Bp3C,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKq/H,qCAAuCA,EAAAA,qCAC5Cr/H,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElBmM,EAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACpF39H,KAAKsE,SAASq5H,YAAa,EAC3BpgE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAE5DtE,KAAK2/D,gC,sBCrHX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,wCAAyC,CACxF2qC,YAAaD,EACbrrC,WAAY,kDACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,IACjBD,aAAc,Q,qHCRlBnnD,QAAQ5W,OAAO,wBAAwBkW,WAAW,kDAAmD,CACnG,SACA,cACA,mBACA,iBACA,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GAC/Cn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb,IAAIlB,EAAOx8D,KAEXA,KAAKsE,SAAWxF,OAAOM,OAAOY,KAAKsE,SAAU,CAC3Cq5H,YAAY,IAGd39H,KAAKi+H,2BAA6B,WAChC1gE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKm+H,sBAAwB,SAAU9pF,GACrC,OAAO+pF,EAAAA,QAAAA,sBAAkD/pF,IAM3Dr0C,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKq+H,kBAAkBhqF,EAAKmqF,eAOtCx+H,KAAKq+H,kBAAoB,SAAUl2D,GACjC,OAAOo2D,EAAAA,QAAAA,kBAA4Cp2D,IAGrDnoE,KAAKy+H,YAAc,SAAUpqF,GAC3B,OAAQmoB,EAAK6hE,kBAAkBhqF,EAAKmqF,eAAiBhiE,EAAKl4D,SAASq5H,YAGrE39H,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,KAIvB/9D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAOA,EAAKurF,aAAangI,OAAS,GAGpCO,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKq/H,qCAAuCA,EAAAA,qCAC5Cr/H,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElBmM,EAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACpF39H,KAAKsE,SAASq5H,YAAa,EAC3BpgE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAE5DtE,KAAK2/D,gC,sBCjHX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,oCAAqC,CACpF2qC,YAAaD,EACbrrC,WAAY,8CACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACToc,gBAAiB,IACjBD,aAAc,Q,mECTlBnnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,8CAA+C,CAC3F,SACA,cACA,mBACA,iBACA,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GAC/Cn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,MAAMonD,EAAOx8D,KAEbA,KAAKsE,SAAWxF,OAAOM,OAAOY,KAAKsE,SAAU,CAC3Cq5H,YAAY,IAGd39H,KAAKi+H,2BAA6B,WAChC1gE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKq+H,kBAAoB,SAAUhqF,GACjC,OAAOkqF,EAAAA,QAAAA,kBAA4ClqF,EAAKwrF,YAG1D7/H,KAAK8/H,cAAgB,SAAUzrF,GAC7B,OAAO0rF,EAAAA,QAAAA,cAA4C1rF,IAGrDr0C,KAAKggI,eAAiB,SAAU3rF,GAC9B,OAAOmoB,EAAK6hE,kBAAkBhqF,IAASmoB,EAAKsjE,cAAczrF,IAASA,EAAK4rF,kBAG1EjgI,KAAKkgI,wBAA0B,SAAU7rF,GACvC,OAAO0rF,EAAAA,QAAAA,wBAAsD1rF,IAG/Dr0C,KAAKy+H,YAAc,SAAUpqF,GAC3B,OAAQmoB,EAAKwjE,eAAe3rF,IAASmoB,EAAKl4D,SAASq5H,YAMrD39H,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKggI,eAAe3rF,KAAUA,EAAK8rF,MAG7CngI,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElBmM,EAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACpF39H,KAAKsE,SAASq5H,YAAa,EAC3BpgE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAE5DtE,KAAK2/D,gC,sBClFX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,4BAA6B,CAC5E2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACd1f,QAAS,IACT67B,gBAAiB,Q,sBCbrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,4CAA6C,CAC5F2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,sBCZrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,sCAAuC,CACtF2qC,YAAaD,EACbrrC,WAAY,gDACZH,SAAU,CACR0rC,UAAW,IACX5Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,4ECPrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,gDAAiD,CAC7F,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKq+H,kBAAoB,SAAUhqF,GACjC,OAAOkqF,EAAAA,QAAAA,kBAA4ClqF,EAAKmqF,eAG1Dx+H,KAAKm+H,sBAAwB,SAAU9pF,GACrC,OAAO+pF,EAAAA,QAAAA,sBAAkD/pF,IAG3Dr0C,KAAKmjD,QAAU,WACbnjD,KAAKq/H,qCAAuCA,EAAAA,qCAC5Cr/H,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBClDX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,2BAA4B,CAC3E2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACToc,gBAAiB,IACjBojE,mBAAoB,IACpBhD,iBAAkB,Q,sBCbtB,MAAM78E,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,8CAA+C,CAC9F2qC,YAAaD,EACbrrC,WAAY,wDACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,yDCVrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,wDAAyD,CACrG,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKm+H,sBAAwB,SAAU9pF,GACrC,OAAO+pF,EAAAA,QAAAA,sBAAkD/pF,IAG3Dr0C,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBC3CX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,mCAAoC,CACnF2qC,YAAaD,EACbrrC,WAAY,6CACZH,SAAU,CACRgC,SAAU,IACV0pC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,Q,wDCZrBpnD,QAAQ5W,OAAO,oBAAoBkW,WAAW,6CAA8C,CAC1F,SACA,cACA,iBACA,mBACA,SAAUE,EAAQkoD,EAAayN,EAAgBxN,GAC7C3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzE,IAAIonD,EAAOx8D,KAEXA,KAAKsE,SAAWxF,OAAOM,OAAOY,KAAKsE,SAAU,CAC3Cq5H,YAAY,IAGd39H,KAAKi+H,2BAA6B,WAChC1gE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKqgI,gBAAkB,SAAUhsF,GAC/B,OAAKr0C,KAAK+W,SAASke,WAAWqrG,cAAcC,2BAClChC,EAAAA,QAAAA,mBAA6ClqF,EAAKwrF,UAAUhzH,SAE5D7M,KAAKq+H,kBAAkBhqF,IAInCr0C,KAAKsgE,cAAgB,SAAUjsB,GAC7B,OAAOr0C,KAAKq+H,kBAAkBhqF,IAASkqF,EAAAA,QAAAA,mBAA6ClqF,EAAKwrF,UAAUhzH,OAGrG7M,KAAKq+H,kBAAoB,SAAUhqF,GACjC,OAAOkqF,EAAAA,QAAAA,kBAA4ClqF,EAAKwrF,UAAUhzH,OAGpE7M,KAAKy+H,YAAc,SAAUpqF,GAC3B,OAAQmoB,EAAK6hE,kBAAkBhqF,IAASmoB,EAAKl4D,SAASq5H,YAGxD39H,KAAKwgI,qBAAuB,SAAUtoH,GACpC,OAAQA,EAAOxS,eACb,IAAK,SACH,MAAO,UACT,IAAK,cACH,MAAO,SACT,QACE,MAAO,YAOb1F,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKsgE,cAAcjsB,IAG7Br0C,KAAKmjD,QAAU,WACbnjD,KAAKiK,QAAU8gE,EAAe9gE,UAC9BjK,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElBmM,EAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACpF39H,KAAKsE,SAASq5H,YAAa,EAC3BpgE,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAE5DtE,KAAK2/D,gC,sBC7FX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,6BAA8B,CAC7E2qC,YAAaD,EACbrrC,WAAY,uCACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdC,gBAAiB,Q,uFCRrB,MAAMyjE,EAEJxgF,YAAYC,EAAQod,EAAaC,EAAkBwN,GACjD/qE,KAAKkgD,OAASA,EACdlgD,KAAKs9D,YAAcA,EACnBt9D,KAAKu9D,iBAAmBA,EACxBv9D,KAAK+qE,eAAiBA,EAEtB/qE,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKugE,eAAiBvgE,KAAKugE,eAAelhE,KAAKW,MAC/CA,KAAKy+H,YAAcz+H,KAAKy+H,YAAYp/H,KAAKW,MAG3Ci+H,6BACEj+H,KAAKu9D,iBAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,UAGjEg8D,cAAcjsB,GACZ,OAAOr0C,KAAKq+H,kBAAkBhqF,IAASr0C,KAAK2gI,OAAOtsF,GAGrDssF,OAAOtsF,GACL,OAAOusF,EAAAA,QAAAA,OAA8BvsF,GAGvCgqF,kBAAkBhqF,GAChB,OAAOkqF,EAAAA,QAAAA,kBAA4ClqF,EAAKmqF,aAAaqB,UAAUhzH,MAGjF4xH,YAAYpqF,GACV,OAAQr0C,KAAKq+H,kBAAkBhqF,IAASr0C,KAAKsE,SAASq5H,WAGxDkD,iBAAiBxsF,GACf,OAAOusF,EAAAA,QAAAA,iBAAwCvsF,GAGjDksB,eAAelsB,GACb,OAAQr0C,KAAKsgE,cAAcjsB,GAGjB,eACVr0C,KAAKk+D,cACLl+D,KAAKm+D,0BACLn+D,KAAKsE,SAASq5H,YAAa,EAE3B39H,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcp+D,KAAKu9D,iBAAiBc,kBAAkBr+D,KAAK2gD,UAC3C,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAav+D,KAAKu9D,iBAAiBiB,wBAAwBx+D,KAAK2gD,UACjD,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgB1+D,KAAKu9D,iBAAiBoB,oBAAoB3+D,KAAK2gD,UAC7C,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiB7+D,KAAKu9D,iBAAiBuB,qBAAqB9+D,KAAK2gD,UAC9C,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,IAElB5+D,KAAK+qE,eAAezrD,kBAAkB,CAAC,+BAAiCtf,KAAKsE,SAASq5H,aACzF39H,KAAKsE,SAASq5H,YAAa,EAC3B39H,KAAKu9D,iBAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAEjEtE,KAAK2/D,2BAGPxc,UACE,MAAMqZ,EAAO5mD,IAAAA,OAAe,GAAI5V,KAAKs9D,YAAY,8BAA+Bt9D,MAEhF,OADA4V,IAAAA,OAAe5V,KAAMw8D,GACdx8D,KAAKkgD,OAAOlgD,KAAK0gI,S,uEAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,uCAAwCurH,I,gFC5F3E,MAAMK,EAEnB7gF,YAAYyI,EAAQxI,EAAQ6gF,EAAat2G,GACvCzqB,KAAK0oD,OAASA,EACd1oD,KAAKkgD,OAASA,EACdlgD,KAAK+gI,YAAcA,EACnB/gI,KAAKyqB,cAAgBA,EAGvBu2G,gBACE,QAAKhhI,KAAK+P,MAAM4jE,YAIT3zE,KAAKihI,MAAM97H,SAASnF,KAAK+P,MAAM4jE,WAAWjuE,cAAc21B,QAAQ,MAAO,KAG7D,sBACjBr7B,KAAK+P,MAAMmxH,cAAe,EAC1B,UACQlhI,KAAK+gI,YAAYI,kBAAkBnhI,KAAK+W,SAASxK,GAAI,CAAE9F,IAAKzG,KAAK+P,MAAM4jE,aAC7E3zE,KAAKyqB,cAAcF,QAAQ,UAAW,sCACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,qBAAsB6M,GALjD,QAOE9a,KAAK+P,MAAMmxH,cAAe,GAI9B/9E,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAQ,CACXmxH,cAAc,EACdvtD,WAAY,Q,0IClCpB,MAAMpzB,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,oBAAqB,CACpE2qC,YAAaD,EACbrrC,WAFoE,UAGpEH,SAAU,CACRksH,MAAO,IACPlqH,SAAU,Q,kECVd,MAAMwpC,EAAgCvrC,EAAQ,MAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,wBAAyB,CACxE2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACP1kB,SAAU,KAEZihC,WAAY,CACVpvB,QAAS,2B,gFCZE,MAAMwwF,EAEnBnhF,YAAYC,EAAQqd,EAAkBwjE,EAAat2G,GACjDzqB,KAAKkgD,OAASA,EACdlgD,KAAKu9D,iBAAmBA,EACxBv9D,KAAK+gI,YAAcA,EACnB/gI,KAAKyqB,cAAgBA,EAErBzqB,KAAKqhI,iBAAmBrhI,KAAKqhI,iBAAiBhiI,KAAKW,MAG/B,yBACpB,IACE,MAAMshI,EAAuBthI,KAAKuhI,OAC/BpjI,KAAKshD,GAAMA,EAAE+hF,cACblvH,QAAQ81D,GAAMA,IACdjqE,KAAK2tB,GAAMA,EAAEhnB,WACV28H,EAAsB,IAAI,IAAIz2F,IAAIs2F,IAAuBjrH,OAC/DrW,KAAK+P,MAAMpN,WAAa8+H,EACxB,MAAO3mH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8CAI7C2jD,qBACEz+D,KAAKu9D,iBAAiByrD,wBAAwBhpH,KAAK2gD,SAAU3gD,KAAK+P,MAAMwuD,YAG1EmjE,gBACE1hI,KAAK+P,MAAM4xH,iBAAmB,GAGhC3tG,aACMh0B,KAAKuhI,OAAO9hI,OAAS,GACvBO,KAAKqhI,mBAITl+E,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAQ,CACXwuD,WAAY,GACZojE,iBAAkB,GAClBh/H,WAAY,IAGd,MAAM47D,EAAav+D,KAAKu9D,iBAAiBiB,wBAAwBx+D,KAAK2gD,UACnD,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,O,oJChDhC,MAAMhe,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,oBAAqB,CACpE2qC,YAAaD,EACbrrC,WAFoE,UAGpEH,SAAU,CACRosB,QAAS,IACTsf,UAAW,IACXC,UAAW,IACX6gF,OAAQ,IACR5gF,SAAU,IACVihF,aAAc,Q,kHCXH,MAAMC,EAEnB5hF,YAAYmoD,EAAYloD,EAAQwI,EAAQzB,EAASwxD,EAAe1tC,EAAgBg2D,EAAae,EAA+Br3G,EAAei3B,GACzI1hD,KAAKooG,WAAaA,EAClBpoG,KAAKkgD,OAASA,EACdlgD,KAAKinD,QAAUA,EACfjnD,KAAK0oD,OAASA,EACd1oD,KAAKy4G,cAAgBA,EACrBz4G,KAAK+qE,eAAiBA,EACtB/qE,KAAK+gI,YAAcA,EACnB/gI,KAAK8hI,8BAAgCA,EACrC9hI,KAAKyqB,cAAgBA,EACrBzqB,KAAK0hD,aAAeA,EAEpB1hD,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAKktG,UAAYltG,KAAKktG,UAAU7tG,KAAKW,MACrCA,KAAK+hI,iBAAmB/hI,KAAK+hI,iBAAiB1iI,KAAKW,MACnDA,KAAKgiI,cAAgBhiI,KAAKgiI,cAAc3iI,KAAKW,MAC7CA,KAAKiiI,gBAAkBjiI,KAAKiiI,gBAAgB5iI,KAAKW,MACjDA,KAAKkiI,gBAAkBliI,KAAKkiI,gBAAgB7iI,KAAKW,MACjDA,KAAKmiI,gBAAkBniI,KAAKmiI,gBAAgB9iI,KAAKW,MACjDA,KAAKoiI,iBAAmBpiI,KAAKoiI,iBAAiB/iI,KAAKW,MAEnDinD,EAAQipC,eAAiB,KACvB,GAAIlwF,KAAK+P,MAAMggF,cACb,MAAO,IAKbC,aAAaqyC,GACPriI,KAAK+P,MAAMuyH,iBAAmBD,EAChCriI,KAAK+P,MAAMggF,eAAgB,GAE3B/vF,KAAK+P,MAAM1I,OAASg7H,EACpBriI,KAAK+P,MAAMggF,eAAgB,GAIhB,kBACb,GAAI/vF,KAAK+P,MAAMggF,cACb,OAAO/vF,KAAK0hD,aAAal7B,0BAIP,yBACpBxmB,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACE,MAAMr0E,EAAU,CACdjU,KAAM7M,KAAK+P,MAAMwyH,QACjBC,KAAMxiI,KAAK+P,MAAM0zF,MAAM3b,KACvB26C,MAAOziI,KAAK+P,MAAM0zF,MAAM3/F,KACxB4+H,OAAQ1iI,KAAK+P,MAAM1I,OACnBw4H,UAAW7/H,KAAK+P,MAAM4yH,aAAa9C,UAAUhzH,YAEzC7M,KAAK+gI,YAAY6B,QAAQ5iI,KAAK+W,SAASxK,GAAIuU,GACjD9gB,KAAKyqB,cAAcF,QAAQ,UAAW,qCACtCvqB,KAAKooG,WAAW6B,WAAW,0BAA2B,CAAEnlG,SAAU,aAAcF,SAAU,CAAE,aAAc5E,KAAK+P,MAAM0zF,MAAM3/F,QAC3H9D,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,2BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,qBAAsB6M,GAdjD,QAgBE9a,KAAK+P,MAAMolF,kBAAmB,GAIf,sBACjBn1F,KAAK+P,MAAM8yH,eAAgB,EAC3B,IACE,MAAM,OAAEx7H,SAAiBrH,KAAK+gI,YAAY15H,OAAOrH,KAAK+P,MAAM0zF,MAAM3b,KAAM9nF,KAAK+P,MAAM0zF,MAAM3/F,MACzF9D,KAAK+P,MAAM1I,OAASA,EACpBrH,KAAK+P,MAAMuyH,eAAiBj7H,EAC5B,MAAOyT,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yCAL3C,QAOE9a,KAAK+P,MAAM8yH,eAAgB,GAIV,sBAACp/B,GACpB1/F,OAAO++H,SAAS,EAAG,GACnB9iI,KAAK+P,MAAMgzH,kBAAmB,EAC9B/iI,KAAK+P,MAAM0zF,MAAQA,QACbzjG,KAAKgiI,gBAOQ,wBACnBhiI,KAAK+P,MAAMizH,cAAe,EAC1B,IAEE,MAAM,iBAAEC,EAAF,iBAAoBC,SAA2BljI,KAAK+gI,YAAYoC,oBAAoBnjI,KAAK+W,SAASxK,IACxGvM,KAAK+P,MAAMqzH,iBAAmBH,EAC9B,MAAMI,EAAoBH,EAAiB/kI,KAAK2pF,GAASA,EAAKzgB,MACxDi8D,EAAkB,IAAI,IAAIt4F,IAAI,CAACi4F,KAAqBI,KAAqBllI,KAAKsI,GAAQA,EAAIf,gBAAe4M,QAAQ7L,GAAQA,IAE/H,OADAzG,KAAK+P,MAAMkxH,MAAQqC,EACZA,EACP,MAAOxoH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,sCAT3C,QAWE9a,KAAK+P,MAAMizH,cAAe,GAST,sBAACO,GACpBvjI,KAAK+P,MAAMyzH,eAAgB,EAC3B,IACE,MAAMC,EAAcF,EAAUplI,KAAK2pF,GAAS9nF,KAAK+gI,YAAYl3D,OAAOie,KAG9D47C,QAAsBznH,QAAQ0nH,WAAWF,GACzCG,EAAeF,EAClBpxH,QAAQuxH,GAAqB,cAAdA,EAAG3rH,SAClB/Z,KAAK0lI,IAAD,CAAWt+H,QAASs+H,EAAGlgI,MAAM4B,QAASuiF,KAAMy7C,EAAUG,EAAc79H,QAAQg+H,QAChFxV,SACC,EAAG9oH,QAAAA,EAASuiF,KAAAA,KAAWhpF,OAAOuI,OAAO9B,GAASpH,KAAKojI,IAAD,IAAkBA,EAAO,GAAIz5C,KAAAA,QAGnF9nF,KAAK+P,MAAMwxH,OAASqC,EACpB,MAAO9oH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wCAd3C,QAgBE9a,KAAK+P,MAAMyzH,eAAgB,GAIT,yBACpBxjI,KAAK+P,MAAM+zH,sBAAuB,EAClC,IACE,MAEMC,SAFsB/jI,KAAK8hI,8BAA8BnjH,OAErBrM,QAAQqwH,IAAkBpE,EAAAA,QAAAA,kBAA4CoE,EAAa9C,UAAUhzH,QACvI7M,KAAK+P,MAAMi0H,cAAgB,IAASD,GAAqB,EAAGlE,UAAAA,KAAoC,YAAnBA,EAAUhzH,KAAqB,EAAI,IAChH7M,KAAK+P,MAAM4yH,aAAe3iI,KAAK+P,MAAMi0H,cAAc,GACnD,MAAOlpH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yCAP3C,QASE9a,KAAK+P,MAAM+zH,sBAAuB,GAItC3gF,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAQ,CACXwyH,QAAS,GACT9+B,MAAO,KACPs/B,kBAAkB,EAClB5tC,kBAAkB,EAClB6uC,cAAe,GACfrB,aAAc,GACdt7H,OAAQ,KACRi7H,eAAgB,KAChBrB,MAAO,GACPM,OAAQ,GACRsB,eAAe,EACf9yC,eAAe,EACfyzC,eAAe,EACfM,sBAAsB,EACtBG,gBAAiBjkI,KAAK+qE,eAAezrD,kBAAkB,CAAC,qBACxDg0F,WAAW,EACXrpG,QAASjK,KAAK+qE,eAAe9gE,UAC7Bm5H,sBAAkBvxH,GAGpB,MAAM0xH,QAAkBvjI,KAAKkiI,wBACvBjmH,QAAQqW,IAAI,CAACtyB,KAAKmiI,gBAAgBoB,GAAYvjI,KAAKoiI,qBAEzDpiI,KAAK+P,MAAMujG,WAAY,KAI3Bj/E,aACEr0B,KAAK+P,MAAMggF,eAAgB,G,iPCxL/B,MAAMxvC,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,oBAAqB,CACpE2qC,YAAaD,EACbrrC,WAFoE,UAGpEH,SAAU,CACRgC,SAAU,Q,oJCHC,MAAMmtH,EAEnBjkF,YAAY0E,EAAkBomB,GAC5B/qE,KAAK2kD,iBAAmBA,EACxB3kD,KAAK+qE,eAAiBA,EACtB/qE,KAAKmkI,qCAAuCA,EAAAA,qCAG9CC,UACE,MAAMpsF,EAAO,IAAIqsF,EAAAA,sBAMjB,GALArsF,EAAKssF,SAAW,GAChBtsF,EAAKA,KAAO,GACZA,EAAKusF,WAAa,GAClBvsF,EAAK65B,SAAW,MAEZ7xE,KAAKwkI,YAAa,CACpB,MAAMhrG,EAAQ,IAAIirG,EAAAA,8BAClBjrG,EAAMu+C,YAAc/3E,KAAK0kI,YAErB1kI,KAAK2kI,cAAgBR,EAAAA,qCAAAA,YAAmDnkI,KAAK4kI,kBAAkBnlI,OAAS,IACrG+5B,EAAMqrG,cACTrrG,EAAMqrG,YAAc7kI,KAAK4kI,kBAAkB,GAAG/3H,MAG3C2sB,EAAMosB,OACTpsB,EAAMosB,KAAO5lD,KAAK4kI,kBAAkB,GAAG5+C,MAAM,KAIjDhuC,EAAK8sF,QAAUtrG,EACfwe,EAAKmqC,SAAU,EAEjBniF,KAAK+kI,aAAanhI,KAAKo0C,GAGzBgtF,WAAW7kG,GACTngC,KAAK+kI,aAAa9hE,OAAO9iC,EAAO,GAGlC8kG,YAAY9kG,GACV,MAAMokG,EAAavkI,KAAK+kI,aAAa5kG,GAAOokG,WAC5CvkI,KAAK+kI,aAAa5kG,GAAO6X,KAAOusF,EAGlCt6H,UACE,OAAOjK,KAAK+qE,eAAe9gE,UAG7Bi7H,wBACE,MAAMn1H,EAAQ/P,KAAK+P,MAAMo1H,WAAWZ,WAC9B7kI,EAAS,IAAMM,KAAK+kI,cAAeK,GAAOA,EAAGb,aAC7CY,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,EAGnD+lI,sBACE,MAAMz1H,EAAQ/P,KAAK+P,MAAMo1H,WAAWF,YAC9BvlI,EAAS,IAAMM,KAAK+kI,cAAeK,GAAOA,EAAGptF,OAC7CmtF,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,EAGnDgmI,mBACE,MAAM11H,EAAQ/P,KAAK+P,MAAMo1H,WAAWb,SAC9B5kI,EAAS,IAAMM,KAAK+kI,cAAeK,GAAOA,EAAGd,WAC7Ca,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,EAGnD0jD,UACmC,IAA7BnjD,KAAK+kI,aAAatlI,QACpBO,KAAKokI,UAGPpkI,KAAK+P,MAAQ,CACXo1H,WAAY,CACVZ,WAAY,IAAImB,EAAAA,mCAChBT,YAAa,IAAIS,EAAAA,mCACjBpB,SAAU,IAAIoB,EAAAA,oCAEhBnnH,WAAYve,KAAK2kD,iBAAiBE,e,6HCzFxC,MAAMtE,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,uBAAwB,CACvE2qC,YAAaD,EACbrrC,WAFuE,UAGvEH,SAAU,CACR4vH,YAAa,IACbI,aAAc,IACdY,cAAe,IACfnB,YAAa,IACbI,kBAAmB,IACnBgB,OAAQ,IACRlB,YAAa,IACbmB,iBAAkB,IAClBC,aAAc,IACdC,oBAAqB,Q,0GCfV,MAAMC,EAEnB/lF,YAAYC,EAAQyE,EAAkBomB,GACpC/qE,KAAKkgD,OAASA,EACdlgD,KAAK2kD,iBAAmBA,EACxB3kD,KAAK+qE,eAAiBA,EAGxBk7D,SAAStoH,GACP,MAAM4sB,EAAI,IAAI27F,EAAAA,kBACVvoH,IAAYwmH,EAAAA,qCAAAA,SACd55F,EAAEv/B,KAAOm5H,EAAAA,qCAAAA,WACT55F,EAAE43C,SAAU,GAEZ53C,EAAEv/B,KAAO2S,EAGX4sB,EAAE47F,SAAWnmI,KAAK2T,WAAWwyH,SAE7B57F,EAAE19B,KAAO7M,KAAKomI,cACdpmI,KAAK2T,WAAW0yH,SAASziI,KAAK2mC,GAGhC67F,cAEE,IAAIE,EAAY,EACZC,EAAWvmI,KAAK2T,WAAW9G,KAC/B,MAEM25H,EAFWxmI,KAAK2T,WAAW0yH,SAEHhwH,MAAK,CAAC+xD,EAAGC,IAC9BD,EAAEv7D,KAAKy7D,cAAcD,EAAEx7D,QAWhC,OAR4B,IAAxB25H,EAAa/mI,QACf+mI,EAAa3uH,SAAS8F,IAChBA,EAAQ9Q,OAAS05H,IACnBA,EAAWvmI,KAAK2T,WAAW9G,KAAO,IAAMy5H,EACxCA,GAAa,MAIZC,EAGTE,cAActmG,GACZngC,KAAK2T,WAAW0yH,SAASpjE,OAAO9iC,EAAO,GAGzCikG,QAAQjkG,GACN,MAAMoK,EAAI,IAAI85F,EAAAA,sBACdrkI,KAAK2T,WAAW0yH,SAASlmG,GAAO2a,MAAMl3C,KAAK2mC,GAG7Co6F,YAAY56H,GACV,OAAQA,GACN,KAAKo6H,EAAAA,qCAAAA,WACH,OAAO5E,EAAAA,uBAAAA,WACT,KAAK4E,EAAAA,qCAAAA,UACH,OAAO5E,EAAAA,uBAAAA,UACT,KAAK4E,EAAAA,qCAAAA,cACH,OAAO5E,EAAAA,uBAAAA,cACT,KAAK4E,EAAAA,qCAAAA,QACH,OAAO5E,EAAAA,uBAAAA,SAIbt1H,UACE,OAAOjK,KAAK+qE,eAAe9gE,UAG7BioD,UAAUnoD,GACR,OAAQA,GACN,KAAKo6H,EAAAA,qCAAAA,WACH,MAAO,iBACT,KAAKA,EAAAA,qCAAAA,UACH,MAAO,aACT,KAAKA,EAAAA,qCAAAA,cACH,MAAO,wBACT,KAAKA,EAAAA,qCAAAA,QACH,MAAO,eAGbhhF,UACEnjD,KAAK+P,MAAQ,CACX40H,YAAa,CACX,CACE+B,SAAUnH,EAAAA,uBAAAA,WACVoH,UAAWxC,EAAAA,qCAAAA,YAEb,CACEuC,SAAUnH,EAAAA,uBAAAA,UACVoH,UAAWxC,EAAAA,qCAAAA,WAEb,CACEuC,SAAUnH,EAAAA,uBAAAA,cACVoH,UAAWxC,EAAAA,qCAAAA,eAEb,CACEuC,SAAUnH,EAAAA,uBAAAA,QACVoH,UAAWxC,EAAAA,qCAAAA,UAGfnlG,SAAUmlG,EAAAA,qCAAAA,WACV5lH,WAAYve,KAAK2kD,iBAAiBE,e,uIC1GxC,MAAMtE,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,mBAAoB,CACnE2qC,YAAaD,EACbrrC,WAFmE,UAGnEH,SAAU,CACRpB,WAAY,IACZiyH,OAAQ,IACRG,oBAAqB,Q,qBCXzB,MAAMxlF,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,8BAA+B,CAC9E2qC,YAAaD,EACbrrC,WAAY,wCACZH,SAAU,CACRpB,WAAY,IACZ/E,QAAS,IACTg4H,WAAY,IACZ72C,cAAe,Q,iKCAnB,MAAM82C,EAEJ5mF,YAAYC,GACVlgD,KAAKkgD,OAASA,EAEdlgD,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAK8mI,kBAAoB9mI,KAAK8mI,kBAAkBznI,KAAKW,MACrDA,KAAK+mI,WAAa/mI,KAAK+mI,WAAW1nI,KAAKW,MACvCA,KAAKgnI,gBAAkBhnI,KAAKgnI,gBAAgB3nI,KAAKW,MACjDA,KAAKinI,eAAiBjnI,KAAKinI,eAAe5nI,KAAKW,MAC/CA,KAAKuoE,iBAAmBvoE,KAAKuoE,iBAAiBlpE,KAAKW,MAGrDknI,YAAY3tD,GACNA,GAASA,EAAM4mD,OAInBngI,KAAK+P,MAAMo3H,cAAgB9B,EAAAA,QAAAA,cAA6C,IAAMrlI,KAAK2T,WAAW4mE,MAAO91E,GAASA,EAAK2iI,OACnHpnI,KAAK+P,MAAMs3H,YAAchC,EAAAA,QAAAA,eAA8C,IAAMrlI,KAAK2T,WAAW4mE,MAAO91E,GAASA,EAAK2iI,OAClHpnI,KAAK4O,QAA2D,IAAjD9P,OAAOD,KAAKmB,KAAK+P,MAAMo3H,eAAe1nI,QAA+D,IAA/CX,OAAOD,KAAKmB,KAAK+P,MAAMs3H,aAAa5nI,QAG3GwmI,WACEjmI,KAAK2T,WAAW4mE,KAAK32E,KAAK,IAAI0jI,EAAAA,wCAGhCC,YAAYpnG,EAAOo5C,GACbA,EAAM4mD,OAIVngI,KAAK2T,WAAW4mE,KAAKtX,OAAO9iC,EAAO,GACnCngC,KAAKknI,eAGgB,wBAACvjI,GAClB3D,KAAK2T,WAAW6zH,WAAa7jI,IAC/B3D,KAAK2T,WAAW6zH,SAAW7jI,EAC3B3D,KAAK+vF,eAAgB,GAIzBC,aAAarsF,GACX,OAAO3D,KAAKkgD,OAAOlgD,KAAK8mI,kBAAmBnjI,GAGxB,sBAACgwC,GACpB,MAAM4lC,EAAQ,IAAI+tD,EAAAA,uCACZG,EAAWC,IAAAA,OAAeC,EAAAA,GAAAA,KAAYh0F,EAAMr0C,OAAO+oB,SACnDu/G,EAAU,IAAIC,YAAYJ,GAKhC,GAHAluD,EAAM6tD,IAAMzzF,EAAMr0C,OAAOyjD,SACzBw2B,EAAMuuD,SAAW/H,EAAAA,QAAAA,SAAuC0H,GAEnDluD,EAAMuuD,SAEJ,CACL,MAAMC,EAAcH,EAAQI,OAAOr0F,EAAMr0C,OAAO+oB,QAChDkxD,EAAM0uD,MAAQC,EAAAA,GAAAA,OAAcH,QAH5BxuD,EAAM0uD,MAAQL,EAAQI,OAAOr0F,EAAMr0C,OAAO+oB,QAM5CroB,KAAK2T,WAAW4mE,KAAK32E,KAAK21E,GAC1Bv5E,KAAKknI,cAGPH,WAAWpzF,GACT,OAAO3zC,KAAKkgD,OAAOlgD,KAAKgnI,gBAAiBrzF,GAG3Cw0F,iBAAiBr5G,GACf,GAAIA,EAAM,CACR,MAAMs5G,EAAsB,IAAIn5G,WAChCm5G,EAAoBrlF,SAAWj0B,EAAKhrB,KACpCskI,EAAoBj5G,OAASnvB,KAAK+mI,WAClCqB,EAAoBl5G,kBAAkBJ,IAI1Cm4G,iBACEjnI,KAAK2T,WAAW00H,UAAW,EAC3BroI,KAAK2T,WAAW4mE,KAAOwlD,EAAAA,QAAAA,UAAwC//H,KAAK2T,YACpE3T,KAAKknI,cAGP3+D,mBACEvoE,KAAK2T,WAAW00H,UAAW,EAC3BroI,KAAK2T,WAAW6zH,SAAWzH,EAAAA,QAAAA,UAAwC//H,KAAK2T,YAG1EwvC,UACEnjD,KAAK+P,MAAQ,CACXo3H,cAAe,GACfE,YAAa,K,qBAKnB,YACAzxH,IAAAA,OAAe,wBAAwBV,WAAW,wCAAyC2xH,I,sBC5G3F,MAAMtmF,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,gCAAiC,CAChF2qC,YAAaD,EACbrrC,WAAY,0CACZH,SAAU,CACRnC,YAAa,IACb01H,eAAgB,IAChBC,SAAU,IACVC,SAAU,IACVzzC,kBAAmB,IACnB0zC,YAAa,IACb7zC,YAAa,IACb8zC,aAAc,Q,kECXlB,MAAMC,EACJC,cACM5oI,KAAKwoI,WACPxoI,KAAK6oI,sBAAwB/rH,KAAK+3E,MAAO70F,KAAKsoI,eAAiBtoI,KAAKwoI,SAAY,MAE9ExoI,KAAK40F,cACP50F,KAAK8oI,yBAA2BhsH,KAAK+3E,MAAO70F,KAAK+0F,kBAAoB/0F,KAAK40F,YAAe,MAGvF50F,KAAK0oI,cAAgB1oI,KAAKwoI,UAAYxoI,KAAK40F,cAC7C50F,KAAK+oI,gBAAkBjsH,KAAK+3E,MAAO70F,KAAKuoI,SAAWvoI,KAAKwoI,SAAY,KACpExoI,KAAKgpI,mBAAqBlsH,KAAK+3E,MAAO70F,KAAKyoI,YAAczoI,KAAK40F,YAAe,MAIjFzxC,UACEnjD,KAAK4oI,cAGP50G,aACEh0B,KAAK4oI,eAIT,YACAhzH,IAAAA,OAAe,wBAAwBV,WAAW,0CAA2CyzH,I,sBC3B7F,MAAMpoF,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,wBAAyB,CACxE2qC,YAAaD,EACbxrC,SAAU,CACRu+F,UAAW,Q,sBCLf,MAAM/yD,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,0BAA2B,CAC1E2qC,YAAaD,EACbrrC,WAAY,oCACZH,SAAU,CACRpV,IAAK,IACL8E,KAAM,Q,6ECLV,MAAMwkI,EAGJhpF,YAAY5a,GACVrlC,KAAKqlC,UAAYA,EACjBrlC,KAAK49D,UAAW,EAGlBsrE,WACElpI,KAAKqlC,UAAUL,SAAShlC,KAAKyE,MAC7B8kD,EAAE,yBAAyB+gB,OAAOC,QAAQ,MAG5C4+D,+BACE,IACIhpI,EAASH,KAAK49D,SAAW,QAAU,OACvCrU,EAFe,0DAEHzgC,IAAI,CAAE3oB,OAAQA,IAC1BH,KAAK49D,UAAY59D,KAAK49D,U,wBAI1B,YACAhoD,IAAAA,OAAe,wBAAwBV,WAAW,oCAAqC+zH,I,mYC6BvF,MAAMG,EACoB,yBAACC,EAAK5kI,EAAM6kI,EAAM3rH,EAAS4rH,GACjD,MAAMjuF,EAAa72C,EAAK+kI,KAAK10H,SAAW,IAAU,IAASrQ,EAAK+kI,KAAK10H,SAAS00H,KAAKluF,WAAY72C,EAAK+kI,KAAK10H,SAAS00H,KAAKC,qBAAiB53H,GAAapN,EAAK+kI,KAAKluF,WAK/J,GAJA+tF,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIM,SAAWllI,EAAKG,SAEhBH,EAAKG,SAAS+1C,OAAQ,CACxB,MAAM,OAAEA,GAAWl2C,EAAKG,SACxBykI,EAAIO,QAAUjvF,EAAOkvF,EAAAA,4CAA8C7kI,SAAS21C,EAAOkvF,EAAAA,4CAA6C,IAAM,KACtIR,EAAIpuF,UAAYN,EAAOmvF,EAAAA,+CAAiD,GACxET,EAAIU,gBAAkBpvF,EAAOqvF,EAAAA,0CAA4C,GACzEX,EAAIY,iBAAmBtvF,EAAOuvF,EAAAA,2CAA6C,GAC3Eb,EAAIc,gBAAkBxvF,EAAOyvF,EAAAA,0CAA4Cf,EAAIx8H,KAmD/E,GAhDAw8H,EAAIgB,KAAO5lI,EAAKG,SAAS48H,aAAc/8H,EAAKG,SAAS48H,YAAY8I,EAAAA,qCAA4C,GAC7GjB,EAAI7K,aAAe/5H,EAAKG,SAASujE,UAC7B7sB,EAAW77C,SACb4pI,EAAIniE,MAAQ5rB,EAAW,GAAGuS,OAExBppD,EAAK+kI,KAAK10H,UAAYrQ,EAAK+kI,KAAK10H,SAAS00H,MAAQ/kI,EAAK+kI,KAAK10H,SAAS00H,KAAKe,kBAAoB9lI,EAAK+kI,KAAK10H,SAAS00H,KAAKe,iBAAiB9qI,SACxI4pI,EAAImB,WAAaxlI,SAASP,EAAK+kI,KAAK10H,SAAS00H,KAAKe,iBAAiB,GAAGzmI,KAAKu3B,QAAQ,YAAa,IAAK,KAEvGguG,EAAIoB,aAAehmI,EAAKG,SAAS8lI,kBACjCrB,EAAI1nD,IAAM,IAAU,IAAU,IAAMrmC,EAAY,aAASzpC,GACzDw3H,EAAIsB,KAAOlmI,EAAK+kI,KAAKoB,SAAWxM,EAAAA,QAAAA,4BAAwDkL,EAAM7kI,EAAK+kI,KAAKoB,UAAY,CAACnmI,GAMrH4kI,EAAItlD,OAAS,IACXzoC,GACA,CAAC9oB,EAAK6hB,KACAA,EAAK0kF,UAAU3zE,QAAU/Q,EAAK0kF,UAAU3zE,OAAO04D,MACjDtrF,EAAIq4G,KAAOC,EAAAA,QAAAA,SAA6Cz2F,EAAK0kF,UAAU3zE,OAAO04D,MAE5EzpE,EAAK0kF,UAAU3zE,QAAU/Q,EAAK0kF,UAAU3zE,OAAOnsB,SACjDzG,EAAIuwD,QAAUgoD,GAAAA,CAAe12F,EAAK0kF,UAAU3zE,OAAOnsB,OAAQ,CAAE+xG,KAAM,MAE9Dx4G,IAbI,CACbq4G,IAAK,EACL9nD,OAAQ,IAoBVsmD,EAAI4B,SAAW,IACb3vF,GACA,CAAC9oB,EAAK6hB,KACAA,EAAK0kF,UAAUC,UAAY3kF,EAAK0kF,UAAUC,SAASlb,MACrDtrF,EAAIq4G,KAAOC,EAAAA,QAAAA,SAA6Cz2F,EAAK0kF,UAAUC,SAASlb,MAE9EzpE,EAAK0kF,UAAUC,UAAY3kF,EAAK0kF,UAAUC,SAAS//F,SACrDzG,EAAIuwD,QAAUgoD,GAAAA,CAAe12F,EAAK0kF,UAAUC,SAAS//F,OAAQ,CAAE+xG,KAAM,MAEhEx4G,IAbM,CACfq4G,IAAK,EACL9nD,OAAQ,IAgBNplE,EAAS,CACX,MAAMgnH,EAAchnH,EAAQ6rH,KAAKz/H,KACjCs/H,EAAI6B,YAAcvG,EAClB0E,EAAIvxD,UAAYn6D,EAAQ/Y,SAAS8kI,IACjCL,EAAItxD,YAAcp6D,EAAQ/Y,SAASd,KACnCulI,EAAI8B,UAAYxtH,EAAQ6rH,KAAK4B,UAC7B/B,EAAIgC,WAAa1tH,EAAQ6rH,KAAK8B,WAE1B3G,IAAgBpF,EAAAA,uBAAAA,eACd5hH,EAAQzF,OAAOqzH,aAAazG,SAAWnnH,EAAQzF,OAAOqzH,aAAazG,QAAQrlI,OAAS,IACtF4pI,EAAIrK,sBAAwBrhH,EAAQzF,OAAOqzH,aAAazG,QAAQ,GAAG3tF,IAAMx5B,EAAQzF,OAAOqzH,aAAazG,QAAQ,GAAGrrD,UAIpH,MAAM+xD,EAAY,OAAY,IAAMlwF,GAAahE,GAAcA,EAAUO,SACnEA,EAnGZ,SAAmC4zF,EAAOC,GACxC,MAAM7zF,EAAQ,IAAM4zF,GAAQp3F,IAC1B,MAAMg1F,EAAM,IAAIsC,EAAAA,0BAKhB,OAJAtC,EAAIvK,KAAOzqF,EAAK2D,KAChBqxF,EAAIr0B,WAAa3gE,EAAKkwF,WACtB8E,EAAIuC,SAAWv3F,EAAKiwF,SACpB+E,EAAIp0B,SAAW5gE,EAAKw9B,SACbw3D,KAUT,OARA,IAAUxxF,GAAQG,IAChB,GAAI9yC,MAAM8yC,EAAKg9D,YAAa,CAC1B,MAAMuvB,EAAa,IAAOmH,EAAO,CAAE5nI,KAAMk0C,EAAKg9D,aAC1CuvB,IACFvsF,EAAKg9D,WAAauvB,EAAWlzD,mBAI5Bx5B,EAkFWg0F,CAA0BluH,EAAQ6rH,KAAK3xF,MAAO2zF,GACtDM,EAAQC,EAAAA,wBAAAA,gCAAwDxC,EAAW5rH,EAAQ/Y,SAASd,MAClG,IAAU+zC,GAAQG,GAAUA,EAAK6mF,aAAe,IAASiN,GAAQrM,GAASA,EAAKX,OAAS9mF,EAAK8mF,SAC7FuK,EAAI1K,eAAiB9mF,EAsBvB,GAnBIpzC,EAAK+kI,KAAK10H,SACZu0H,EAAIn4D,QAAUzsE,EAAK+kI,KAAK10H,SAAS00H,KAAK7tE,QAAUl3D,EAAK+kI,KAAK10H,SAAS00H,KAAK7tE,QAAU,GAElF0tE,EAAIn4D,QAAUzsE,EAAK+kI,KAAK7tE,QAgBtBl3D,EAAK+kI,KAAKwC,qBAAsB,CAClC,MAAMC,EAAc,IAAMxnI,EAAK+kI,KAAKwC,sBAAuBE,IAClD,CACLpoI,KAAMooI,EAAGtnI,SAASd,KAClBqoI,sBAAuB,CAAEC,UAAWF,EAAGtnI,SAASd,UAG9CuoI,EAAgB,IAASJ,GAAcC,IACnC,IAAO7C,EAAIn4D,QAAS,CAAEi7D,sBAAuB,CAAEC,UAAWF,EAAGC,sBAAsBC,eAE7F/C,EAAIn4D,QAAU,IAASm4D,EAAIn4D,QAASm7D,GAGtC,MAAMC,EAAmB,IAASjD,EAAIn4D,SAAUtV,GAAWA,EAAOuwE,uBAAyBvwE,EAAO2wE,WAElGlD,EAAImD,iBAAmB,IAAMF,GAAmB1wE,IAC9C,MAAM6wE,EAAe,IAAO,IAAU,IAAMnxF,EAAY,iBAAkB,QACpEoxF,EAAsB,IAAOD,EAAc,CAAE3oI,KAAM83D,EAAO93D,OAEhE,GAAI4oI,EAAqB,CACvB,MAAMC,EAAkB,IAAIC,EAAAA,qCAS5B,OARAD,EAAgBE,UAAYH,EAAoBI,UAE5ClxE,EAAOuwE,sBACTQ,EAAgBI,0BAA4BnxE,EAAOuwE,sBAAsBC,UAEzEO,EAAgBK,SAAWpxE,EAAO2wE,SAAS5qF,KAGtCgrF,MAIXtD,EAAImD,iBAAmB,IAAUnD,EAAImD,sBAAkB36H,GAEvDw3H,EAAI4D,qBAAuB,IACzB5D,EAAIn4D,SACJ,CAAC1+C,EAAKopC,KACJ,GAAIA,EAAOsxE,WAAatxE,EAAOd,OAAQ,CACrC,MAAM4xE,EAAsB,IAAO,IAAU,IAAMpxF,EAAY,iBAAkB,CAAEx3C,KAAM83D,EAAO93D,OAEhG,GAAI4oI,EAAqB,CACvB,IAAItjB,EAAQ,GACR+jB,EAAoB,GAUxB,GARIvxE,EAAOsxE,WACT9jB,EAAQxtD,EAAOsxE,UAAU9jB,MACzB+jB,EAAoBvxE,EAAOsxE,UAAUppI,OAErCslH,EAAQxtD,EAAOd,OAAOsuD,MACtB+jB,EAAoBvxE,EAAOd,OAAOsyE,YAG/BhkB,EAQH,IAAUA,GAAQ/0E,IAChB,MAAMg5F,EAAsB,IAAIC,EAAAA,yCAChCD,EAAoBE,cAAgBb,EAAoBI,UAAY,IAAMz4F,EAAKsN,KAC/E0rF,EAAoBG,cAAgBd,EAAoBI,UACxDO,EAAoBI,iBAAmBp5F,EAAK10C,IAC5C0tI,EAAoBF,kBAAoBA,EAExC36G,EAAI5uB,KAAKypI,UAfD,CACV,MAAMA,EAAsB,IAAIC,EAAAA,yCAChCD,EAAoBE,cAAgBb,EAAoBI,UACxDO,EAAoBG,cAAgBd,EAAoBI,UACxDO,EAAoBF,kBAAoBA,EAExC36G,EAAI5uB,KAAKypI,KAef,OAAO76G,IAET,IAIsB,2BAAC/tB,EAAM6kI,EAAM3rH,EAAS4rH,GAC9C,MAAMF,EAAM,IAAIqE,EAAAA,sBAGhB,OAFAtE,EAA+BuE,kBAAkBtE,EAAK5kI,EAAM6kI,EAAM3rH,EAAS4rH,GAC3EF,EAAIlK,gBAAkBG,EAAAA,2BAAAA,IACf+J,EAGwB,kCAAC5kI,EAAM6kI,EAAM3rH,EAAS4rH,GACrD,MAAMF,EAAM,IAAIqE,EAAAA,sBAOhB,OANAtE,EAA+BuE,kBAAkBtE,EAAK5kI,EAAM6kI,EAAM3rH,EAAS4rH,GAC3EF,EAAIlK,gBAAkBG,EAAAA,2BAAAA,WACtB+J,EAAIvb,eAAiBuR,EAAAA,qCAAAA,WACrBgK,EAAIuE,iBAAmBC,EAAAA,wCAAAA,OACvBxE,EAAIyE,iBAAmBrpI,EAAKyT,OAAO61H,mBAAqBtpI,EAAKyT,OAAO81H,SAAWvpI,EAAKyT,OAAO+1H,qBAAuB,EAClH5E,EAAI6E,eAAiBzpI,EAAK+kI,KAAKwE,SACxB3E,EAGuB,iCAAC5kI,EAAM6kI,EAAM3rH,EAAS4rH,GACpD,MAAMF,EAAM,IAAIqE,EAAAA,sBAOhB,OANAtE,EAA+BuE,kBAAkBtE,EAAK5kI,EAAM6kI,EAAM3rH,EAAS4rH,GAC3EF,EAAIlK,gBAAkBG,EAAAA,2BAAAA,UACtB+J,EAAIvb,eAAiBuR,EAAAA,qCAAAA,OACrBgK,EAAIuE,iBAAmBC,EAAAA,wCAAAA,OACvBxE,EAAIyE,iBAAmBrpI,EAAKyT,OAAOi2H,iBAAmB1pI,EAAKyT,OAAOk2H,uBAAyB3pI,EAAKyT,OAAOm2H,mBAAqB,EAC5HhF,EAAI6E,eAAiBzpI,EAAKyT,OAAOk2H,uBAC1B/E,EAGyB,mCAAC5kI,EAAM6kI,EAAM3rH,EAAS4rH,GACtD,MAAMF,EAAM,IAAIqE,EAAAA,sBAQhB,OAPAtE,EAA+BuE,kBAAkBtE,EAAK5kI,EAAM6kI,EAAM3rH,EAAS4rH,GAC3EF,EAAIlK,gBAAkBG,EAAAA,2BAAAA,YACtB+J,EAAIvb,eAAiBuR,EAAAA,qCAAAA,WACrBgK,EAAIuE,iBAAmBC,EAAAA,wCAAAA,SACvBxE,EAAIyE,iBAAmBrpI,EAAKyT,OAAOo2H,eAAiB,EACpDjF,EAAI6E,eAAiBzpI,EAAK+kI,KAAKwE,SAC/B3E,EAAIkF,oBAAsB9pI,EAAK+kI,KAAK9E,YAC7B2E,EAGqB,+BAAC/K,EAAK0F,EAAe3G,EAAgBmR,EAAwBC,EAAalF,GACtG,MAAMF,EAAM,IAAIqF,EAAAA,gCAChBrF,EAAIlK,gBAAkBb,EAAIa,gBAC1BkK,EAAI7K,aAAe,IAAOwF,EAAe,CAAC,iBAAkB1F,EAAIE,eAChE6K,EAAIx8H,KAAOyxH,EAAIzxH,KACfw8H,EAAIhD,SAAWjI,EAAAA,QAAAA,uCAAmEE,GAClF+K,EAAIlD,SAAW/H,EAAAA,QAAAA,4BAAwDE,GACvE+K,EAAIpuF,UAAYqjF,EAAIrjF,UACpBouF,EAAIY,iBAAmB3L,EAAI2L,iBAC3BZ,EAAIsF,WAAWznE,MAAQo3D,EAAIp3D,MAC3BmiE,EAAIsF,WAAW1nE,SAAS16D,GAAK+xH,EAAIkM,WACjCnB,EAAIvnE,aAAew8D,EAAI4P,eACvB7E,EAAI10C,YAAcm2C,EAAAA,QAAAA,eAAmDxM,EAAIv6C,OAAOhB,QAChFsmD,EAAIr0C,SAAWspC,EAAIv6C,OAAO8mD,IAC1BxB,EAAIvb,eAAiBwQ,EAAIxQ,eACzBub,EAAIuE,iBAAmBtP,EAAIsP,iBAC3BvE,EAAIlwB,qBAAuBilB,EAAAA,QAAAA,4BAAwDE,EAAI38C,KACvF0nD,EAAImD,iBAAmBpO,EAAAA,QAAAA,uDAAmFE,EAAIkO,iBAAkBgC,GAChInF,EAAInK,eAAiBd,EAAAA,QAAAA,iDAA6EE,EAAI38C,IAAK28C,EAAI2O,qBAAsB5P,GACrIgM,EAAIuF,WAAaxQ,EAAAA,QAAAA,uDAAmFE,EAAIsQ,WAAYvF,EAAIvnE,cACxHunE,EAAI1K,eAAiBP,EAAAA,QAAAA,mDAA+EE,EAAI4M,YAAa5M,EAAIK,eAAgB4K,GACzIF,EAAIvxE,WAAawmE,EAAIxmE,WAErB,MAAM+2E,EAAY,IAASxF,EAAI1K,gBAAiBp0F,GAAMA,EAAEs6F,cAAaplI,OAerE,OAdI6+H,EAAI4M,cAAgB3L,EAAAA,uBAAAA,cACtB8J,EAAIyF,eAAiB3K,EAAAA,qCAAAA,cACZ7F,EAAI4M,cAAgB3L,EAAAA,uBAAAA,UAC7B8J,EAAIyF,eAAiB3K,EAAAA,qCAAAA,UACZ7F,EAAI4M,cAAgB3L,EAAAA,uBAAAA,YAAqCsP,EAClExF,EAAIyF,eAAiB3K,EAAAA,qCAAAA,QAErBkF,EAAIyF,eAAiB3K,EAAAA,qCAAAA,WAGnB7F,EAAIqM,MAAQrM,EAAIqM,KAAKlrI,QACvB2+H,EAAAA,QAAAA,yCAAqEiL,EAAK/K,EAAIqM,KAAK,GAAGoE,SAAUN,GAG3FpF,EAGgC,0CAAC11H,GACxCA,EAAWs2H,iBAAmB+E,EAAAA,QAAAA,aAAoCr7H,EAAWs2H,kBAE7E,MAAMgF,EAASC,EAAAA,QAAAA,oCAA6Ev7H,GACtFw7H,EAAM/Q,EAAAA,QAAAA,OAAmC6Q,GAEzCG,EACHz7H,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,aACV,IAAlB4P,EAAOxvI,QAAiBwvI,EAAOxvI,OAAS,GAAKkU,EAAWi6H,mBAAqBC,EAAAA,wCAAAA,SAChFl6H,EAAWwrH,kBAAoBG,EAAAA,2BAAAA,WAE3B+P,EACH17H,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,YAC7B4P,EAAOxvI,OAAS,GAChBkU,EAAWi6H,mBAAqBC,EAAAA,wCAAAA,UAClCl6H,EAAWwrH,kBAAoBG,EAAAA,2BAAAA,YAE3BgQ,EACH37H,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,SACV,IAAlB4P,EAAOxvI,QAAiBwvI,EAAOxvI,OAAS,GAAKkU,EAAWi6H,mBAAqBC,EAAAA,wCAAAA,QAAkDsB,IAClIx7H,EAAWwrH,kBAAoBG,EAAAA,2BAAAA,UAEjC,IAAIhB,EAWAiR,EAVJ,GAAIH,EACF9Q,EAAMkR,EAAAA,QAAAA,kCAAgE77H,EAAYs7H,QAC7E,GAAII,EACT/Q,EAAMmR,EAAAA,QAAAA,mCAAkE97H,EAAYs7H,OAC/E,KAAIK,EAGT,MAAM,IAAI10H,EAAAA,EAAe,gEAFzB0jH,EAAMoR,EAAAA,QAAAA,iCAA8D/7H,EAAYs7H,GAM9EI,IACFE,EAAkBI,EAAAA,QAAAA,uCAAkEh8H,IAGtF,IAAIgK,EAAUgyH,EAAAA,QAAAA,+BAA0Dh8H,GAOxE,OANKgK,EAAQm9B,MAAMr7C,SACjBke,OAAU9L,GAKL,CAACysH,EAAKiR,EAFEI,EAAAA,QAAAA,gCAA2Dh8H,GAElCgK,EAASsxH,IAIrD,a,8LC1WA,MAAMW,EACgC,qCAACnrI,GACnC,MAAM4kI,EAAM,IAAIwG,EAAAA,mCAGhB,OAFAxG,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAI9uD,KAAO91E,EAAKA,KACT4kI,EAGiB,2BAAC5kI,GACzB,MAAM4kI,EAAM,IAAIyG,EAAAA,iCAKhB,OAJA,IAAQzG,EAAK,cACbA,EAAIzkI,SAASd,KAAOW,EAAKoI,KACzBw8H,EAAIzkI,SAASujE,UAAY1jE,EAAKo7H,UAC9BwJ,EAAI5kI,KAAOA,EAAK81E,KACT8uD,EAGiB,2BAAC5kI,GACzB,MAAM4kI,EAAMuG,EAA6BG,oBAAoBtrI,GAE7D,OADA4kI,EAAIzkI,SAAS8kI,IAAMjlI,EAAK8H,GACjB88H,EAMY,sBAAC5kI,EAAMurI,GAC1B,MAAM3G,EAAM,IAAI4G,EAAAA,oBAwBhB,OAvBA5G,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAI6G,mBAAqBzrI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAOw1F,EAAAA,4CAA8C,GACnH9G,EAAIoB,aAAehmI,EAAKG,SAAS8lI,kBACjCrB,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GAE9B4kI,EAAI9uD,KAAO,IACT,IAAM91E,EAAKA,MAAM,CAACd,EAAOhE,KACvB,MAAM45E,EAAQ,IAAI+tD,EAAAA,uCAGlB,OAFA/tD,EAAM6tD,IAAMznI,EACZ45E,EAAM0uD,MAAQtkI,EACP41E,KAET,IAAM90E,EAAK4rI,YAAY,CAAC1sI,EAAOhE,KAC7B,MAAM45E,EAAQ,IAAI+tD,EAAAA,uCAIlB,OAHA/tD,EAAM6tD,IAAMznI,EACZ45E,EAAM0uD,MAAQtkI,EACd41E,EAAMuuD,UAAW,EACVvuD,MAIJ8vD,EAQc,wBAAClhE,EAAWrkE,GACjC,MAAMulI,EAAM,IAAI4G,EAAAA,oBAGhB,OAFA5G,EAAIx8H,KAAO/I,EACXulI,EAAIxJ,UAAY13D,EACTkhE,EAMW,qBAAC5kI,GACnB,MAAM4kI,EAAM,IAAIyG,EAAAA,iCAChBzG,EAAIzkI,SAASd,KAAOW,EAAKoI,KACzBw8H,EAAIzkI,SAASujE,UAAY1jE,EAAKo7H,UAC9B,MAAMyQ,EAAqB,IAAW7rI,EAAKyrI,mBAAoB,CAAEzwI,OAAQ,GAAI8wI,SAAU,KAWvF,OAVAlH,EAAIzkI,SAAS+1C,OAAOw1F,EAAAA,4CAA8CG,EAElE,IAAU7rI,EAAK81E,MAAOhB,IAChBA,EAAMuuD,SACRuB,EAAIgH,WAAW92D,EAAM6tD,KAAO7tD,EAAM0uD,MAElCoB,EAAI5kI,KAAK80E,EAAM6tD,KAAO7tD,EAAM0uD,SAIzBoB,EAMW,qBAAC5kI,GACnB,MAAM4kI,EAAM,IAAImH,EAAAA,iCAYhB,OAXAnH,EAAIzkI,SAAS8kI,IAAMjlI,EAAK8H,GACxB88H,EAAIzkI,SAASd,KAAOW,EAAKoI,KACzBw8H,EAAIzkI,SAASujE,UAAY1jE,EAAKo7H,UAC9BwJ,EAAIzkI,SAAS+1C,OAAOw1F,EAAAA,4CAA8C1rI,EAAKyrI,mBACvE,IAAUzrI,EAAK81E,MAAOhB,IAChBA,EAAMuuD,SACRuB,EAAIgH,WAAW92D,EAAM6tD,KAAO7tD,EAAM0uD,MAElCoB,EAAI5kI,KAAK80E,EAAM6tD,KAAO7tD,EAAM0uD,SAGzBoB,EAGgC,0CAAC11H,GACxC,MAAM01H,EAAM,IAAI4G,EAAAA,oBAMhB,OALA5G,EAAI98H,GAAKoH,EAAWpH,GACpB88H,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAI6G,mBAAqBv8H,EAAWu8H,mBACpC7G,EAAI9uD,KAAO5mE,EAAW4mE,KACf8uD,GAIX,a,6ECvFA,UAjCA,MAC8B,6BAACvuE,GAC3B,MAAMuuE,EAAM,IAAIoH,EAAAA,wBAYhB,OAXApH,EAAIr+H,KAAOsyH,EAAAA,6BAAAA,OACX+L,EAAI98H,GAAKuuD,EAAOvuD,GAChB88H,EAAIx8H,KAAOiuD,EAAOjuD,KAClBw8H,EAAIxJ,UAAY/kE,EAAO+kE,UACvBwJ,EAAIoB,aAAe3vE,EAAO2vE,aAC1BpB,EAAI+G,KAAOt1E,EAAOs1E,KAClB,IAAUt1E,EAAOyf,MAAOhB,IACtB8vD,EAAI9uD,KAAKhB,EAAM6tD,KAAO7tD,EAAM0uD,SAE9BoB,EAAI6G,mBAAqBp1E,EAAOo1E,mBAChC7G,EAAIpJ,iBAAmBnlE,EAAOmlE,iBACvBoJ,EAGsB,gCAAC6D,GAC9B,MAAM7D,EAAM,IAAIoH,EAAAA,wBAWhB,OAVApH,EAAIr+H,KAAOsyH,EAAAA,6BAAAA,UACX+L,EAAI98H,GAAK2gI,EAAU3gI,GACnB88H,EAAIx8H,KAAOqgI,EAAUrgI,KACrBw8H,EAAIxJ,UAAYqN,EAAUrN,UAC1BwJ,EAAIoB,aAAeyC,EAAUzC,aAC7BpB,EAAI+G,KAAOlD,EAAUkD,KACrB,IAAUlD,EAAU3yD,MAAOhB,IACzB8vD,EAAI9uD,KAAKhB,EAAM6tD,KAAO7tD,EAAM0uD,SAE9BoB,EAAI6G,mBAAqBhD,EAAUgD,mBAC5B7G,K,qIClBX,MAAMqG,EAKmC,wCAAC/7H,EAAY+8H,GAClD,MAAMrH,EAAM,IAAIsH,EAAAA,oBAahB,OAZAtH,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIpuF,UAAYtnC,EAAWsnC,UAAYtnC,EAAWsnC,UAAYtnC,EAAW9G,KACzEw8H,EAAIY,iBAAmBt2H,EAAWs2H,iBAClCZ,EAAIc,gBAAkBx2H,EAAW9G,KACjCw8H,EAAIsF,WAAah7H,EAAWg7H,WAC5BtF,EAAIr0C,SAAWrhF,EAAWqhF,SAC1Bq0C,EAAI10C,YAAcm2C,EAAAA,QAAAA,WAA+Cn3H,EAAWghF,aAC5E00C,EAAI1nD,IAAMy8C,EAAAA,QAAAA,4BAAwDzqH,EAAWwlG,sBAC7EilB,EAAAA,QAAAA,yCAAqEiL,EAAKqH,GAC1EtS,EAAAA,QAAAA,uCAAmEiL,EAAK11H,EAAWurH,gBACnFd,EAAAA,QAAAA,+BAA2DiL,EAAK11H,GACzD01H,EAOW,qBAACiG,GACnB,MAAMxuH,EAAU,IAAI8vH,EAAAA,iCA+BpB,OA9BA9vH,EAAQlc,SAASd,KAAOwrI,EAAUziI,KAClCiU,EAAQlc,SAASujE,UAAYmnE,EAAUzP,UACvC/+G,EAAQlc,SAAS+1C,OAAOmvF,EAAAA,8CAAgDwF,EAAUr0F,UAClFn6B,EAAQlc,SAAS+1C,OAAOyvF,EAAAA,yCAA2CkF,EAAUnF,gBAC7ErpH,EAAQlc,SAAS+1C,OAAOuvF,EAAAA,0CAA4CoF,EAAUrF,iBAC9EnpH,EAAQlc,SAAS48H,YAAY8I,EAAAA,oCAAsCgF,EAAUjF,KAC7EvpH,EAAQ0oH,KAAKwE,SAAWsB,EAAUxtE,aAClChhD,EAAQ0oH,KAAKoB,SAASiG,YAAYvS,IAAMgR,EAAUziI,KAClDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAO2jF,IAAMgR,EAAUziI,KACtDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAOyvF,EAAAA,yCAA2CkF,EAAUnF,gBAC3FrpH,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGx3C,KAAOwrI,EAAUziI,KAC1DiU,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGuS,OAAQ6kB,EAAAA,EAAAA,mBAAkB48D,EAAUX,YACzEW,EAAUX,WAAW1nE,UAAYqoE,EAAUX,WAAW1nE,SAAS8D,iBACjEjqD,EAAQ0oH,KAAK10H,SAAS00H,KAAKe,iBAAmB,CAAC,CAAEzmI,KAAO,YAAWwrI,EAAUX,WAAW1nE,SAAS16D,QAEnGuU,EAAQ0oH,KAAK10H,SAAS00H,KAAKsH,SAAWxB,EAAUP,SAChDC,EAAAA,QAAAA,sBAA6CluH,EAAS,uCAAwCwuH,EAAU3tD,KACxGqtD,EAAAA,QAAAA,sBAA6CluH,EAAS,gDAAiDwuH,EAAUyB,cACjH/B,EAAAA,QAAAA,sBAA6CluH,EAAS,6BAA8BwuH,EAAUp+D,SAC1Fo+D,EAAU36C,cACZ7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAOnsB,OAASq2G,EAAU36C,YAC7E7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAAS//F,OAASq2G,EAAU36C,aAE7E26C,EAAUt6C,WACZl0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAO04D,IAAMwxB,EAAUt6C,SAC1El0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAASlb,IAAMwxB,EAAUt6C,UAEzEs6C,EAAUt6C,UAAas6C,EAAU36C,oBAC7B7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAE3Cj4G,EAGU,oBAACkwH,EAAcC,GAChC,MAAMC,EAAaxB,EAA6ByB,cAAcH,GACxDI,EAAa1B,EAA6ByB,cAAcF,GAE9D,OADgBI,EAAAA,GAAkBH,EAAYE,IAKlD,a,qICpEA,MAAM5B,EAKoC,yCAAC77H,EAAY+8H,GACnD,MAAMrH,EAAM,IAAIiI,EAAAA,qBAehB,OAdAjI,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIpuF,UAAYtnC,EAAWsnC,UAAYtnC,EAAWsnC,UAAYtnC,EAAW9G,KACzEw8H,EAAIY,iBAAmBt2H,EAAWs2H,iBAClCZ,EAAIc,gBAAkBx2H,EAAW9G,KACjCw8H,EAAIvnE,aAAenuD,EAAWmuD,aAC9BunE,EAAIsF,WAAah7H,EAAWg7H,WAC5BtF,EAAIr0C,SAAWrhF,EAAWqhF,SAC1Bq0C,EAAI10C,YAAcm2C,EAAAA,QAAAA,WAA+Cn3H,EAAWghF,aAC5E00C,EAAI1nD,IAAMy8C,EAAAA,QAAAA,4BAAwDzqH,EAAWwlG,sBAC7EkwB,EAAIvxE,WAAankD,EAAWmkD,WAC5BsmE,EAAAA,QAAAA,yCAAqEiL,EAAKqH,GAC1EtS,EAAAA,QAAAA,uCAAmEiL,EAAK11H,EAAWurH,gBACnFd,EAAAA,QAAAA,+BAA2DiL,EAAK11H,GACzD01H,EAOW,qBAAC+F,GACnB,MAAMtuH,EAAU,IAAIywH,EAAAA,kCAoCpB,OAnCAzwH,EAAQlc,SAASd,KAAOsrI,EAAWviI,KACnCiU,EAAQlc,SAASujE,UAAYinE,EAAWvP,UACxC/+G,EAAQlc,SAAS+1C,OAAOmvF,EAAAA,8CAAgDsF,EAAWn0F,UACnFn6B,EAAQlc,SAAS+1C,OAAOyvF,EAAAA,yCAA2CgF,EAAWjF,gBAC9ErpH,EAAQlc,SAAS+1C,OAAOuvF,EAAAA,0CAA4CkF,EAAWnF,iBAC/EnpH,EAAQlc,SAAS48H,YAAY8I,EAAAA,oCAAsC8E,EAAW/E,KAC9EvpH,EAAQ0oH,KAAKwE,SAAWoB,EAAWttE,aACnChhD,EAAQ0oH,KAAKoB,SAASiG,YAAYvS,IAAM8Q,EAAWviI,KACnDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAO2jF,IAAM8Q,EAAWviI,KACvDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAOyvF,EAAAA,yCAA2CgF,EAAWjF,gBAC5FrpH,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGx3C,KAAOsrI,EAAWviI,KAEvDuiI,EAAWT,aACb7tH,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGuS,OAAQ6kB,EAAAA,EAAAA,mBAAkB08D,EAAWT,YAE1ES,EAAWT,WAAW1nE,UAAYmoE,EAAWT,WAAW1nE,SAAS8D,iBACnEjqD,EAAQ0oH,KAAK10H,SAAS00H,KAAKe,iBAAmB,CAAC,CAAEzmI,KAAO,YAAWsrI,EAAWT,WAAW1nE,SAAS16D,SAItGuU,EAAQ0oH,KAAK10H,SAAS00H,KAAKsH,SAAW1B,EAAWL,SACjDC,EAAAA,QAAAA,sBAA6CluH,EAAS,uCAAwCsuH,EAAWztD,KACzGqtD,EAAAA,QAAAA,sBAA6CluH,EAAS,gDAAiDsuH,EAAW2B,cAClH/B,EAAAA,QAAAA,sBAA6CluH,EAAS,6BAA8BsuH,EAAWl+D,SAC3Fk+D,EAAWz6C,cACb7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAOnsB,OAASm2G,EAAWz6C,YAC9E7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAAS//F,OAASm2G,EAAWz6C,aAE9Ey6C,EAAWp6C,WACbl0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAO04D,IAAMsxB,EAAWp6C,SAC3El0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAASlb,IAAMsxB,EAAWp6C,UAE1Eo6C,EAAWp6C,UAAao6C,EAAWz6C,oBAC/B7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAE3Cj4G,EAGU,oBAAC0wH,EAAeC,GACjC,MAAMP,EAAa1B,EAA8B2B,cAAcK,GACzDJ,EAAa5B,EAA8B2B,cAAcM,GAE/D,OADgBJ,EAAAA,GAAkBH,EAAYE,IAKlD,a,yDC7EA,UAZA,MACmB,kBAAC3sI,GAChB,MAAM4kI,EAAM,IAAIqI,EAAAA,gBAMhB,OALArI,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIrmH,KAAOve,EAAKktI,eAAiBltI,EAAKmtI,UACtCvI,EAAIr+H,KAAOvG,EAAKsF,KAChBs/H,EAAI53E,QAAUhtD,EAAKwI,QACnBo8H,EAAIwI,SAAWptI,EAAKqtI,eACbzI,K,qKCAI,MAAM0I,EACE,sBAACttI,EAAMurI,GAC1B,MAAM3G,EAAM,IAAI2I,EAAAA,oBAUhB,GATA3I,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIoB,aAAehmI,EAAKG,SAAS8lI,kBACjCrB,EAAIpwH,OAASxU,EAAKyT,OAAO+5H,MACzB5I,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GAC9B4kI,EAAI6I,iBAAmBztI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAOw3F,EAAAA,0CAA4C,GAC/G9I,EAAI+I,kBAAoB3tI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAO03F,EAAAA,2CAA6C,GAEjHhJ,EAAIiJ,SAAW/T,EAAAA,QAAAA,yBAAmD95H,EAAKG,SAASd,MAC5EW,EAAKG,SAAS+1C,OAAQ,CACxB,MAAM43F,EAAc9tI,EAAKG,SAAS+1C,OAAO63F,EAAAA,yCACpC,IAAUD,KACblJ,EAAIiJ,SAA2B,SAAhBC,GAGnB,OAAOlJ,EAGW,qBAAClhE,GACnB,MAAMkhE,EAAM,IAAIoJ,EAAAA,iCAIhB,GAHApJ,EAAIzkI,SAASd,KAAOqkE,EAAUt7D,KAC9Bw8H,EAAIzkI,SAAS+1C,OAAOw3F,EAAAA,0CAA4ChqE,EAAU+pE,iBAEtE/pE,EAAUiqE,kBAAmB,CAC/B,MAAMM,EAAoB,IAAWvqE,EAAUiqE,kBAAmB,CAAE3yI,OAAQ,GAAI8wI,SAAU,KAC1FlH,EAAIzkI,SAAS+1C,OAAO03F,EAAAA,2CAA6CK,EAEnE,OAAOrJ,K,wKCjCX,MAAM6F,EAC6B,kCAACzqI,EAAMkuI,EAAgB3C,GACtD,MAAM3G,EAAM,IAAIuJ,EAAAA,gCAUhB,OATAvJ,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAIoB,aAAehmI,EAAKG,SAAS8lI,kBACjCrB,EAAIwJ,QAAW,GAAEpuI,EAAK+kI,KAAKzQ,UAAUC,SAASv6G,WAC9C4qH,EAAIyJ,aAAe,IAAOH,EAAgB,CAAE9lI,KAAMpI,EAAK+kI,KAAKuJ,mBAC5D1J,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GAC9B4kI,EAAIY,iBAAmBxlI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAOuvF,EAAAA,0CAA4C,GAC/Gb,EAAIc,gBAAkB1lI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAOyvF,EAAAA,yCAA2C,GACtGf,EAOiC,2CAAC11H,GA8BzC,OA7BA,IAASA,EAAW64H,kBAAmBn4F,GAASA,EAAK2+F,gBACzC,IAAMr/H,EAAW64H,kBAAmBn4F,IAC9C,MAAM4+F,EAAM,IAAIL,EAAAA,gCAChB,GAAK,IAAUv+F,EAAK6+F,gBAWd7+F,EAAK04F,2BACPkG,EAAIpmI,KAAOwnC,EAAK04F,0BAChBkG,EAAIE,aAAe9+F,EAAK04F,2BAExBkG,EAAIpmI,KAAO8G,EAAW9G,KAAO,IAAMomI,EAAIpmI,KAEzComI,EAAIJ,QAAU,GAAKx+F,EAAK0tC,KAAO1tC,EAAK++F,SAASC,OAAO,GACpDJ,EAAIH,aAAez+F,EAAKy+F,iBAlBW,CACnC,MAAMQ,EAAcj/F,EAAK6+F,eAAeK,sBACxCN,EAAIpmI,KAAOymI,EAAYzmI,KACnBwnC,EAAK04F,4BACPkG,EAAIE,aAAe9+F,EAAK04F,2BAE1BkG,EAAIH,aAAeQ,EAAYR,aAC/BG,EAAIJ,QAAUS,EAAYT,QAAQQ,OAAO,GACzCJ,EAAIxI,aAAe6I,EAAY7I,aAC/BwI,EAAI1mI,GAAK+mI,EAAY/mI,GAevB,OAJA0mI,EAAIpG,UAAYx4F,EAAKm/F,cACrBP,EAAIpT,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDomI,EAAIhJ,iBAAmBt2H,EAAWs2H,iBAClCgJ,EAAI9I,gBAAkBx2H,EAAW9G,KAC1BomI,KAKS,qBAACA,GACnB,MAAM5J,EAAM,IAAIoK,EAAAA,4CAQhB,OAPApK,EAAIzkI,SAASd,KAAOmvI,EAAIpmI,KACxBw8H,EAAIzkI,SAASujE,UAAY8qE,EAAIpT,UAC7BwJ,EAAIG,KAAKzQ,UAAUC,SAASv6G,QAAUw0H,EAAIJ,QAC1CxJ,EAAIG,KAAKuJ,iBAAmBE,EAAIH,aAAeG,EAAIH,aAAajmI,KAAO,GACvEw8H,EAAIzkI,SAAS+1C,OAAO2jF,IAAM2U,EAAI9I,gBAC9Bd,EAAIzkI,SAAS+1C,OAAOuvF,EAAAA,0CAA4C+I,EAAIhJ,iBACpEZ,EAAIzkI,SAAS+1C,OAAOyvF,EAAAA,yCAA2C6I,EAAI9I,gBAC5Dd,EAGU,oBAACqK,EAAQC,GAC1B,MAAMzC,EAAahC,EAAyCiC,cAAcuC,GACpEtC,EAAalC,EAAyCiC,cAAcwC,GAE1E,OADgBtC,EAAAA,GAAkBH,EAAYE,IAKlD,a,sJCnCA,UArCA,MAC0B,yBAACjpE,GACvB,MAAMkhE,EAAM,IAAIuK,EAAAA,uBAGhB,OAFAvK,EAAIxJ,UAAY13D,EAChBkhE,EAAI+G,KAAOjoE,EAAUioE,KACd/G,EAGsB,gCAAC11H,GAC9B,MAAMw0D,EAAY,IAAI6pE,EAAAA,oBACtB7pE,EAAUt7D,KAAO8G,EAAW9G,KAC5Bs7D,EAAU+pE,iBAAmBv+H,EAAW9G,KACxCs7D,EAAUiqE,kBAAoBz+H,EAAWkgI,MACzC1rE,EAAUmqE,SAAW3+H,EAAW2+H,SAEhC,MAAMwB,EAAQC,EAAAA,QAAAA,sCAAuEpgI,GAE/EqgI,EAAS,IAAMrgI,EAAWsgI,gBAAiBnoH,IAC/C,GAAIA,EAAEooH,SAEJ,OADApoH,EAAE+zG,UAAY13D,EAAUt7D,KACjBsnI,EAAAA,2BAAAA,2CAAsEroH,MAG3Ey9G,EAAY,IAAUyK,OAAQniI,GAC9Bi1D,EAAa,IAAMnzD,EAAW+5G,YAAan3C,IAC1CA,EAAEg9B,iBAAiB5/F,EAAW++G,cACjCn8C,EAAEg9B,iBAAiB5/F,EAAW++G,YAAc,CAAE0hB,WAAY,KAEvD,IAAW79D,EAAEg9B,iBAAiB5/F,EAAW++G,YAAY0hB,WAAYzgI,EAAW9G,QAC/E0pE,EAAEg9B,iBAAiB5/F,EAAW++G,YAAY0hB,WAAa,IAAI79D,EAAEg9B,iBAAiB5/F,EAAW++G,YAAY0hB,WAAYzgI,EAAW9G,OAEvH0pE,KAET,MAAO,CAACpO,EAAW2rE,EAAOvK,EAAWziE,M,kRCnBzC,MAAMitE,EACqB,0BAACtvI,EAAMurI,GAC9B,MAAM3G,EAAM,IAAIgL,EAAAA,wBA+BhB,GA9BAhL,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIr0C,SAAW,EACfq0C,EAAI10C,YAAc,EACdlwF,EAAK+kI,KAAK8K,MAAQ7vI,EAAK+kI,KAAK8K,KAAKC,EAAAA,4CACnClL,EAAIr0C,SAAW81C,EAAAA,QAAAA,SAA6CrmI,EAAK+kI,KAAK8K,KAAKC,EAAAA,4CAEzE9vI,EAAK+kI,KAAK8K,MAAQ7vI,EAAK+kI,KAAK8K,KAAKE,EAAAA,+CACnCnL,EAAI10C,YAAco2C,GAAAA,CAAetmI,EAAK+kI,KAAK8K,KAAKE,EAAAA,6CAA8C,CAAExJ,KAAM,MAGxG3B,EAAIoL,gBAAkB,EAClBhwI,EAAKyT,OAAOw8H,MAAQjwI,EAAKyT,OAAOw8H,KAAKF,EAAAA,+CACvCnL,EAAIoL,gBAAkB1J,GAAAA,CAAetmI,EAAKyT,OAAOw8H,KAAKF,EAAAA,6CAA8C,CAAExJ,KAAM,MAG9G3B,EAAIsL,aAAe,EACflwI,EAAKyT,OAAOw8H,MAAQjwI,EAAKyT,OAAOw8H,KAAKH,EAAAA,4CACvClL,EAAIsL,aAAe7J,EAAAA,QAAAA,SAA6CrmI,EAAKyT,OAAOw8H,KAAKH,EAAAA,4CAGnFlL,EAAIuL,cAAgB,KAChBnwI,EAAK+kI,KAAK8K,MAAQ7vI,EAAK+kI,KAAK8K,KAAKO,EAAAA,iDACnCxL,EAAIuL,cAAgB5vI,SAASP,EAAK+kI,KAAK8K,KAAKO,EAAAA,+CAAgD,KAG9FxL,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GAC9B4kI,EAAI6I,iBAAmBztI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAOw3F,EAAAA,0CAA4C,GAC/G9I,EAAI+I,kBAAoB3tI,EAAKG,SAAS+1C,OAASl2C,EAAKG,SAAS+1C,OAAO03F,EAAAA,2CAA6C,GAC7G5tI,EAAK+kI,KAAK8K,KAAM,CAClB,MAAMz1I,EAAO,IAAS,IAAO4F,EAAK+kI,KAAK8K,OAAQhhD,GAAM,IAAWA,EAAGwhD,EAAAA,iDACnEzL,EAAI0L,gBAAkB,IAAMl2I,GAAOy0F,IACjC,MAAMk2C,EAAO/kI,EAAK+kI,KAAK8K,KAAKhhD,GACtB0hD,EAAK,IAAIC,EAAAA,4CAKf,OAJAD,EAAGnoI,KAAO,IAAUymF,EAAGwhD,EAAAA,8CAA+C,IACtEE,EAAGjzD,KAAO/8E,SAASwkI,EAAM,IACzBwL,EAAG5B,SAAuB,IAAZ4B,EAAGjzD,KAAa,KAAQ,GAAEynD,EAAKhgI,OAAO,MACpDwrI,EAAGd,UAAW,EACPc,KAGX,OAAO3L,EAGW,qBAACyK,GACnB,MAAMzK,EAAM,IAAI6L,EAAAA,qCAmBhB,OAlBA7L,EAAIzkI,SAASd,KAAOqxI,EAAAA,QAAAA,0BAAwDrB,EAAMjU,WAClFwJ,EAAIzkI,SAASujE,UAAY2rE,EAAMjU,UAC/BmP,EAAAA,QAAAA,4BAAmD3F,EAAM,cAAa+L,EAAAA,+CAAgDtB,EAAM9+C,UAC5Hg6C,EAAAA,QAAAA,4BAAmD3F,EAAM,cAAagM,EAAAA,kDAAmDvB,EAAMn/C,aAC/Hq6C,EAAAA,QAAAA,4BAAmD3F,EAAM,cAAakL,EAAAA,6CAA8CT,EAAM9+C,UAC1Hg6C,EAAAA,QAAAA,4BAAmD3F,EAAM,cAAamL,EAAAA,gDAAiDV,EAAMn/C,aAC7Hq6C,EAAAA,QAAAA,sBAA6C3F,EAAM,cAAawL,EAAAA,kDAAmDf,EAAMc,eACrHd,EAAMiB,iBACR,IAAUjB,EAAMiB,iBAAkBC,IAChC,MAAMr1I,EAAMw1I,EAAAA,QAAAA,gCAA8DH,EAAGnoI,MACvElJ,EAAS,GAAEqxI,EAAGjzD,OAAOizD,EAAG5B,SAASC,OAAO,KAC9ChK,EAAIG,KAAK8K,KAAK30I,GAAOgE,KAGzB0lI,EAAIzkI,SAAS+1C,OAAOw3F,EAAAA,0CAA4C2B,EAAM5B,iBAClE4B,EAAM1B,oBACR/I,EAAIzkI,SAAS+1C,OAAO03F,EAAAA,2CAA6CyB,EAAM1B,mBAElE/I,EAGW,qBAACyK,GACnB,MAAMzK,EAAM0K,EAAiC5C,cAAc2C,GAE3D,OADAzK,EAAIzkI,SAAS8kI,IAAMoK,EAAMvnI,GAClB88H,EAGU,oBAACiM,EAAUC,GAC5B,MAAMrE,EAAa6C,EAAiC5C,cAAcmE,GAC5DlE,EAAa2C,EAAiC5C,cAAcoE,GAElE,OADgBlE,EAAAA,GAAkBH,EAAYE,GAIZ,qCAAC0C,GACnC,MAAMzK,EAAM,IAAImM,EAAAA,iCAAiCC,EAAAA,iCAYjD,OAXApM,EAAIx8H,KAAOinI,EAAMjU,UACjBwJ,EAAIr0C,SAAW8+C,EAAM9+C,SACrBq0C,EAAI10C,YAAcm2C,EAAAA,QAAAA,eAAmDgJ,EAAMn/C,aAC/C,OAAxBm/C,EAAMc,gBACRvL,EAAIuL,cAAgBd,EAAMc,cAC1BvL,EAAIqM,uBAAwB,IAE1BrM,EAAIr0C,UAAYq0C,EAAI10C,eACtB00C,EAAIsM,UAAW,GAEjBtM,EAAIuM,eAAiB9B,EAAMiB,gBACpB1L,EAGmC,6CAAC11H,GAC3C,MAAMkiI,EAAW,IAASliI,EAAWiiI,eAAgB,CAAE1B,UAAU,IACjE,GAAIvgI,EAAWgiI,UAAYhiI,EAAW+hI,uBAAyBG,EAASp2I,OAAQ,CAC9E,MAAMq0I,EAAQ,IAAIO,EAAAA,wBAAwB1gI,EAAW9G,MAcrD,OAbI8G,EAAWgiI,WACb7B,EAAM9+C,SAAWrhF,EAAWqhF,SAC5B8+C,EAAMn/C,YAAcm2C,EAAAA,QAAAA,WAA+Cn3H,EAAWghF,cAEhFm/C,EAAMc,cAAgB,KAClBjhI,EAAW+hI,wBACb5B,EAAMc,cAAgBjhI,EAAWihI,eAE/BiB,EAASp2I,SACXq0I,EAAMiB,gBAAkBc,GAE1B/B,EAAM5B,iBAAmBv+H,EAAW9G,KACpCinI,EAAM1B,kBAAoBz+H,EAAWkgI,MAC9BC,IAKb,a,0KCrDA,UAnFA,MACsB,qBAACh5E,GACnB,MAAMuuE,EAAM,IAAIyM,EAAAA,8BAChBzM,EAAIzkI,SAASd,KAAOg3D,EAAOjuD,KAC3Bw8H,EAAIzkI,SAASujE,UAAYrN,EAAO+kE,UAChC,MAAMyQ,EAAqB,IAAWx1E,EAAOo1E,mBAAoB,CAAEzwI,OAAQ,GAAI8wI,SAAU,KACzFlH,EAAIzkI,SAAS+1C,OAAOw1F,EAAAA,4CAA8CG,EAElE,IAAIyF,EAAa,GAYjB,OAXA,IAAUj7E,EAAOyf,MAAOhB,IAClBA,EAAMuuD,UACRuB,EAAI5kI,KAAK80E,EAAM6tD,KAAO7tD,EAAM0uD,MAC5B8N,GAA6B,KAAfA,EAAoB,IAAMx8D,EAAM6tD,IAAM7tD,EAAM6tD,KAE1DiC,EAAI2M,WAAWz8D,EAAM6tD,KAAO7tD,EAAM0uD,SAGnB,KAAf8N,IACF1M,EAAIzkI,SAAS48H,YAAYyU,EAAAA,gDAAkDF,GAEtE1M,EAGW,qBAACvuE,GACnB,MAAMuuE,EAAM,IAAI6M,EAAAA,8BAChB7M,EAAIzkI,SAASd,KAAOg3D,EAAOjuD,KAC3Bw8H,EAAIzkI,SAASujE,UAAYrN,EAAO+kE,UAChCwJ,EAAIzkI,SAAS+1C,OAAOw1F,EAAAA,4CAA8Cr1E,EAAOo1E,mBAEzE,IAAI6F,EAAa,GAYjB,OAXA,IAAUj7E,EAAOyf,MAAOhB,IAClBA,EAAMuuD,UACRuB,EAAI5kI,KAAK80E,EAAM6tD,KAAO7tD,EAAM0uD,MAC5B8N,GAA6B,KAAfA,EAAoB,IAAMx8D,EAAM6tD,IAAM7tD,EAAM6tD,KAE1DiC,EAAI2M,WAAWz8D,EAAM6tD,KAAO7tD,EAAM0uD,SAGnB,KAAf8N,IACF1M,EAAIzkI,SAAS48H,YAAYyU,EAAAA,gDAAkDF,GAEtE1M,EAGS,mBAACvoH,EAASkvH,GAC1B,MAAM3G,EAAM,IAAI8M,EAAAA,4BAyBhB,OAxBA9M,EAAI98H,GAAKuU,EAAQlc,SAAS8kI,IAC1BL,EAAIx8H,KAAOiU,EAAQlc,SAASd,KAC5BulI,EAAIxJ,UAAY/+G,EAAQlc,SAASujE,UACjCkhE,EAAI6G,mBAAqBpvH,EAAQlc,SAAS+1C,OAAS75B,EAAQlc,SAAS+1C,OAAOw1F,EAAAA,4CAA8C,GACzH9G,EAAIoB,aAAe3pH,EAAQlc,SAAS8lI,kBAEpCrB,EAAIpJ,iBAAmBn/G,EAAQlc,SAAS48H,eAAiB1gH,EAAQlc,SAAS48H,YAAY,4BAEtF6H,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GAE9B4kI,EAAI9uD,KAAO,IAAMz5D,EAAQrc,MAAM,CAACd,EAAOhE,KACrC,MAAM6hI,EAAc1gH,EAAQlc,SAAS48H,YAAc1gH,EAAQlc,SAAS48H,YAAYyU,EAAAA,gDAAkD,GAC5H18D,EAAQ,IAAI+tD,EAAAA,uCASlB,OARA/tD,EAAM6tD,IAAMznI,EACZ45E,EAAMuuD,SAAW,IAAWtG,EAAajoD,EAAM6tD,KAE1C7tD,EAAMuuD,SAGTvuD,EAAM0uD,MAAQtkI,EAFd41E,EAAM0uD,MAAQxtD,KAAK92E,GAId41E,KAGF8vD,EAG6B,uCAAC11H,GACrC,MAAM01H,EAAM,IAAI8M,EAAAA,4BAKhB,OAJA9M,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAI6G,mBAAqBv8H,EAAWu8H,mBACpC7G,EAAI9uD,KAAO5mE,EAAW4mE,KACf8uD,K,oLCtDX,MAAMsG,EAKiC,sCAACh8H,GACpC,MAAM01H,EAAM,IAAInD,EAAAA,kBAChBmD,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIpuF,UAAYtnC,EAAWsnC,UAAYtnC,EAAWsnC,UAAYtnC,EAAW9G,KACzEw8H,EAAIY,iBAAmBt2H,EAAWs2H,iBAClCZ,EAAIc,gBAAkBx2H,EAAW9G,KAC7B8G,EAAWm7H,iBAAmB3K,EAAAA,qCAAAA,UAChCkF,EAAIr+H,KAAOu0H,EAAAA,uBAAAA,UACF5rH,EAAWm7H,iBAAmB3K,EAAAA,qCAAAA,gBACvCkF,EAAIr+H,KAAOu0H,EAAAA,uBAAAA,eAEb,MAAM1nF,EAAQ,IAAMlkC,EAAWgrH,gBAAiBtqF,GApCpD,SAAqC1gC,EAAYyiI,EAAersI,GAC9D,GAAIqsI,EAAcC,QAAUD,EAAcpD,cAAe,CACvD,MAAMlvI,EAAO6P,EAAW9G,KAClBw8H,EAAM,IAAIhF,EAAAA,sBAYhB,OAXAgF,EAAIvlI,KAAO,IAAUA,EAAO,IAAMsyI,EAAcE,cAAgB,IAAMF,EAAcnhC,UACpFo0B,EAAIrxF,KAAOjuC,IAASw1H,EAAAA,uBAAAA,cAAuC6W,EAAcG,iBAAmBH,EAAcE,cAC1GjN,EAAI9E,WAAa6R,EAAcE,cAC/BjN,EAAIx3D,SAAWukE,EAAcnhC,SACzBlrG,IAASw1H,EAAAA,uBAAAA,WAAoC6W,EAAcxK,SAC7DvC,EAAI/E,SAAW8R,EAAcxK,SACpB7hI,IAASw1H,EAAAA,uBAAAA,eAAwC6W,EAAcI,qBACxEnN,EAAI/E,SAAW8R,EAAcI,4BAEtBnN,EAAI/E,SAEN+E,GAqBkDoN,CAA4B9iI,EAAY0gC,EAAMg1F,EAAIr+H,QAE3G,OADAq+H,EAAIvuF,MAAQ,IAAS,IAAUjD,OAAOhmC,IAAa04B,GAAMA,EAAEg6F,WAAah6F,EAAEsnC,WACnEw3D,EAG6B,uCAAC11H,GACrC,IAAIqnD,EAAW,GA0Cf,OAzCArnD,EAAW0yH,SAASxuH,SAAQ,SAAU8F,GACpC,MAAM0rH,EAAM,IAAInD,EAAAA,kBAChBmD,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAIx8H,KAAO8Q,EAAQ9Q,KACnBw8H,EAAIpuF,UAAYtnC,EAAWsnC,UAAYtnC,EAAWsnC,UAAYtnC,EAAW9G,KACzEw8H,EAAIY,iBAAmBt2H,EAAWs2H,iBAClCZ,EAAIc,gBAAkBx2H,EAAW9G,KAC7B8Q,EAAQ3S,OAASm5H,EAAAA,qCAAAA,UACnBkF,EAAIr+H,KAAOu0H,EAAAA,uBAAAA,UACF5hH,EAAQ3S,OAASm5H,EAAAA,qCAAAA,cAC1BkF,EAAIr+H,KAAOu0H,EAAAA,uBAAAA,cACF5hH,EAAQ3S,OAASm5H,EAAAA,qCAAAA,aAC1BkF,EAAIr+H,KAAOu0H,EAAAA,uBAAAA,YAEb8J,EAAIlnD,QAAUxkE,EAAQwkE,aAEGtwE,IAArB8L,EAAQwoH,SACVkD,EAAIlD,SAAWxoH,EAAQwoH,SAEvBkD,EAAIlD,SAAW,CACb7H,IAAK3qH,EAAW9G,MAIpB,IAAIgrC,EAAQ,GACZl6B,EAAQm9B,MAAMjjC,SAAQ,SAAUmgC,EAAM7X,GACpC,MAAMkpG,EAAM,IAAIhF,EAAAA,sBAChBgF,EAAIvlI,KAAO,QAAUq8B,EACrBkpG,EAAIrxF,KAAOA,EAAKA,KACZA,EAAKssF,WACP+E,EAAI/E,SAAWtsF,EAAKssF,UAEtB+E,EAAIx3D,SAAW75B,EAAK65B,SACpBw3D,EAAI9E,WAAavsF,EAAKusF,WACtB8E,EAAIvE,QAAU9sF,EAAK8sF,QACnBjtF,EAAMj0C,KAAKylI,MAEbA,EAAIvuF,MAAQjD,EAEZmjB,EAASp3D,KAAKylI,MAETruE,EAGoC,8CAACrnD,GAC5C,MAAM01H,EAAMsG,EAA2B+G,+BAA+B/iI,GAMtE,OALA01H,EAAIx8H,KAAO8pI,EAAAA,QAAAA,4BAAoDhjI,EAAW9G,MAC1Ew8H,EAAIuN,UAAW,EACfvN,EAAIlD,SAAW,CACb7H,IAAK3qH,EAAW9G,MAEXw8H,EAOW,qBAAC1rH,GACnB,MAAMmD,EAAU,IAAI+1H,EAAAA,+BACpB/1H,EAAQlc,SAASd,KAAO6Z,EAAQ9Q,KAChCiU,EAAQlc,SAASujE,UAAYxqD,EAAQkiH,UACrC/+G,EAAQlc,SAAS+1C,OAAOmvF,EAAAA,8CAAgDnsH,EAAQs9B,UAChFn6B,EAAQlc,SAAS+1C,OAAOyvF,EAAAA,yCAA2CzsH,EAAQwsH,gBAC3ErpH,EAAQlc,SAAS+1C,OAAOuvF,EAAAA,0CAA4CvsH,EAAQssH,iBAE5E,MAAMpyF,EAAQ,GAmBd,OAlBAl6B,EAAQm9B,MAAMjjC,SAASmgC,IACrB,MAAMzN,EAAI,GACVA,EAAEzmC,KAAOk0C,EAAKl0C,KACdymC,EAAEyN,KAAOA,EAAKA,KACdzN,EAAE+5F,SAAWtsF,EAAKssF,SAClB/5F,EAAEsnC,SAAW75B,EAAK65B,SAClBtnC,EAAEg6F,WAAavsF,EAAKusF,WACpB1sF,EAAMj0C,KAAK2mC,MAEbzpB,EAAQ0oH,KAAK3xF,MAAQA,EAErB/2B,EAAQ0oH,KAAKoB,SAAWjtH,EAAQwoH,SAC5BxoH,EAAQi5H,UACV91H,EAAQ0oH,KAAK4B,UAAY0L,EAAAA,0CAClBh2H,EAAQ0oH,KAAK3xF,OACXl6B,EAAQ3S,OACjB8V,EAAQ0oH,KAAKz/H,KAAO4T,EAAQ3S,MAEvB8V,EAGU,oBAACi2H,EAAYC,GAC9B,MAAM9F,EAAavB,EAA2BwB,cAAc4F,GACtD3F,EAAazB,EAA2BwB,cAAc6F,GAE5D,OADgB3F,EAAAA,GAAkBH,EAAYE,IAKlD,a,oKCvIA,MAAM3B,EAKqC,0CAAC97H,EAAY+8H,GACpD,MAAMrH,EAAM,IAAI4N,EAAAA,sBAchB,OAbA5N,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIpuF,UAAYtnC,EAAWsnC,UAAYtnC,EAAWsnC,UAAYtnC,EAAW9G,KACzEw8H,EAAIY,iBAAmBt2H,EAAWs2H,iBAClCZ,EAAIc,gBAAkBx2H,EAAW9G,KACjCw8H,EAAIvnE,aAAenuD,EAAWmuD,aAC9BunE,EAAIsF,WAAah7H,EAAWg7H,WAC5BtF,EAAIr0C,SAAWrhF,EAAWqhF,SAC1Bq0C,EAAI10C,YAAcm2C,EAAAA,QAAAA,WAA+Cn3H,EAAWghF,aAC5E00C,EAAI1nD,IAAMy8C,EAAAA,QAAAA,4BAAwDzqH,EAAWwlG,sBAC7EilB,EAAAA,QAAAA,yCAAqEiL,EAAKqH,GAC1EtS,EAAAA,QAAAA,uCAAmEiL,EAAK11H,EAAWurH,gBACnFd,EAAAA,QAAAA,+BAA2DiL,EAAK11H,GACzD01H,EAOW,qBAACgG,GACnB,MAAMvuH,EAAU,IAAIo2H,EAAAA,mCAmCpB,OAlCAp2H,EAAQlc,SAASd,KAAOurI,EAAYxiI,KACpCiU,EAAQlc,SAASujE,UAAYknE,EAAYxP,UACzC/+G,EAAQlc,SAAS+1C,OAAOmvF,EAAAA,8CAAgDuF,EAAYp0F,UACpFn6B,EAAQlc,SAAS+1C,OAAOyvF,EAAAA,yCAA2CiF,EAAYlF,gBAC/ErpH,EAAQlc,SAAS+1C,OAAOuvF,EAAAA,0CAA4CmF,EAAYpF,iBAChFnpH,EAAQlc,SAAS48H,YAAY8I,EAAAA,oCAAsC+E,EAAYhF,KAC/EvpH,EAAQ0oH,KAAKwE,SAAWqB,EAAYvtE,aACpChhD,EAAQ0oH,KAAK9E,YAAc2K,EAAYt3D,YACvCj3D,EAAQ0oH,KAAKoB,SAASiG,YAAYvS,IAAM+Q,EAAYxiI,KACpDiU,EAAQ0oH,KAAKwC,qBAAuB,IAAMqD,EAAY8H,cAAe9iG,GAAS66F,EAAAA,QAAAA,cAAuD76F,KACrIvzB,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAO2jF,IAAM+Q,EAAYxiI,KACxDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAOyvF,EAAAA,yCAA2CiF,EAAYlF,gBAC7FrpH,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGx3C,KAAOurI,EAAYxiI,KACxDwiI,EAAYV,WAAWznE,QACzBpmD,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGuS,OAAQ6kB,EAAAA,EAAAA,mBAAkB28D,EAAYV,YAC3EU,EAAYV,WAAW1nE,UAAYooE,EAAYV,WAAW1nE,SAAS8D,iBACrEjqD,EAAQ0oH,KAAK10H,SAAS00H,KAAKe,iBAAmB,CAAC,CAAEzmI,KAAO,YAAWurI,EAAYV,WAAW1nE,SAAS16D,SAGvGuU,EAAQ0oH,KAAK10H,SAAS00H,KAAKsH,SAAWzB,EAAYN,SAClDC,EAAAA,QAAAA,sBAA6CluH,EAAS,uCAAwCuuH,EAAY1tD,KAC1GqtD,EAAAA,QAAAA,sBAA6CluH,EAAS,gDAAiDuuH,EAAY0B,cACnH/B,EAAAA,QAAAA,sBAA6CluH,EAAS,6BAA8BuuH,EAAYn+D,SAC5Fm+D,EAAY16C,cACd7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAOnsB,OAASo2G,EAAY16C,YAC/E7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAAS//F,OAASo2G,EAAY16C,aAE/E06C,EAAYr6C,WACdl0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAO04D,IAAMuxB,EAAYr6C,SAC5El0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAASlb,IAAMuxB,EAAYr6C,UAE3Eq6C,EAAYr6C,UAAaq6C,EAAY16C,oBACjC7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAE3Cj4G,EAGU,oBAACs2H,EAAQC,GAC1B,MAAMnG,EAAazB,EAA+B0B,cAAciG,GAC1DhG,EAAa3B,EAA+B0B,cAAckG,GAEhE,OADgBhG,EAAAA,GAAkBH,EAAYE,IAKlD,a,8GCpFA,MAAMkG,EAIoB,yBAAC7yI,GACvB,MAAM4kI,EAAM,IAAIkO,EAAAA,uBAIhB,OAHAlO,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAImO,YAAc/yI,EAAKgzI,YACvBpO,EAAIqO,qBAAuBjzI,EAAKkzI,qBACzBtO,EAGoC,8CAACuO,GAM5C,OALY,IAAMA,GAAMC,IACtB,MAAMC,EAAK,IAAI7C,EAAAA,4CAEf,OADA6C,EAAGjrI,KAAOgrI,EAAGhrI,KACNirI,KAKS,qBAACC,GACnB,MAAM1O,EAAM,IAAI2O,EAAAA,oCAIhB,OAHA3O,EAAIzkI,SAASd,KAAOi0I,EAAalrI,KACjCw8H,EAAIoO,YAAcM,EAAaP,YAC/BnO,EAAIsO,qBAAuBI,EAAaL,qBACjCrO,EAGU,oBAAC4O,EAAiBC,GACnC,MAAMhH,EAAaoG,EAAgCnG,cAAc8G,GAC3D7G,EAAakG,EAAgCnG,cAAc+G,GAEjE,OADgB7G,EAAAA,GAAkBH,EAAYE,IAKlD,a,yDCjCA,UATA,MACoB,mBAAC+G,EAAOC,GACxB,MAAM/O,EAAM,IAAIgP,EAAAA,iBAGhB,OAFAhP,EAAIkK,sBAAwB4E,EAC5B9O,EAAI7K,aAAe4Z,EACZ/O,K,kGCMX,SAASzkH,EAAOoxC,GA2CdA,EAAuBC,SA1CL,CAChBnyD,KAAM,uBACN2C,IAAK,aACLizD,UAAU,IAwCZ1D,EAAuBC,SArCC,CACtBnyD,KAAM,8BACN2C,IAAK,UAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BAgCjBmgD,EAAuBC,SA3BI,CACzBnyD,KAAM,kCACN2C,IAAK,mBAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iCAGfrK,OAAQ,CACNuwD,YAAa,MAkBjB/F,EAAuBC,SAdK,CAC1BnyD,KAAM,mCACN2C,IAAK,OAELyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iC,qCA7CnB,UAAeD,IAAAA,OACL,wCAAyC,IAChDgP,OAAOA,GACP/O,UAAU,0BAA2ByiI,EAAAA,yBACrCziI,UAAU,6BAA8B0iI,EAAAA,4BACxC1iI,UAAU,+BAAgC2iI,EAAAA,8BAL7C,M,kHCNA,MAIaA,EAA+B,CAC1Ch4F,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,yFCDZ,MAAMujI,EAEJx4F,YAAYC,EAAQwI,EAAQqiB,EAAgB2tE,EAAuBhpD,EAAehuC,EAAcj3B,EAAe4jE,GAC7GvvF,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQqiB,eAAAA,EAAgB2tE,sBAAAA,EAAuBhpD,cAAAA,EAAehuC,aAAAA,EAAcj3B,cAAAA,EAAe4jE,uBAAAA,IAEzHruF,KAAKq0H,cAAgB,CAAC5/F,EAAAA,GAAQE,EAAAA,IAE9B30B,KAAK07D,UAAY,KACjB17D,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAK+P,MAAQ,CACX6Q,OAAQ,SACRu0E,kBAAkB,EAClBrF,oBAAqB,GACrBC,eAAe,EACf6oD,iBAAiB,GAGnB54I,KAAK2T,WAAa,CAChBy2G,YAAa,GACbv8C,KAAM,KACNrpC,MAAO,GACP89C,YAAa,GACb+nD,KAAM,GACNwO,KAAM,GACNlpD,kBAAmB,IAAIC,EAAAA,sBACvBkpD,UAAW,IAGb94I,KAAKs0H,aAAet0H,KAAKs0H,aAAaj1H,KAAKW,MAC3CA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAC/CA,KAAK+4I,eAAiB/4I,KAAK+4I,eAAe15I,KAAKW,MAC/CA,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAC3CA,KAAKg5I,kBAAoBh5I,KAAKg5I,kBAAkB35I,KAAKW,MAGvDw0H,eAAe5zG,GACb5gB,KAAK+P,MAAM6Q,OAASA,EACpB5gB,KAAK2T,WAAWmlI,UAAY,GAG9B3rB,oBAAoBljC,GAClBjqF,KAAK+H,aAAa,CAAEqiH,YAAangC,IACjCjqF,KAAKi5I,cAAchvD,GACnBjqF,KAAK+P,MAAMggF,eAAgB,EAG7BkpD,cAAcp6F,GACZ,IAAK7+C,KAAK24I,2BACR,OAGF,MAAM7qI,GAAY8wC,EAAAA,EAAAA,IAAqBC,GAEjCjwC,IAAYd,EAElB9N,KAAK+P,MAAM6oI,gBAAkBhqI,EAEzBA,GACF5O,KAAKg5I,mBAAkBh6F,EAAAA,EAAAA,IAAmBh/C,KAAK2T,WAAWmlI,UAAWhrI,IAIzEkrI,kBAAkBr1I,GAChB3D,KAAK+H,aAAa,CAAE+wI,UAAWn1I,IAGjC2wH,aAAaxlG,GACX9uB,KAAK+H,aAAa,CAAE8lE,KAAM/+C,IAG5B/mB,aAAaV,GACX,OAAOrH,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,MAKiB,6BACxB,OAAOrH,KAAKkgD,QAAO2F,UACjB,MAAM,OAAEjlC,GAAW5gB,KAAK+P,MAExB,GAAK/P,KAAK4wF,aAAahwE,GAAvB,CAIA5gB,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACE,MAAMxhF,EAAa,IAAK3T,KAAK2T,WAAYmlI,UAAW,MAChD94I,KAAK2T,WAAWmlI,UAAUr5I,OAAS,IACrCkU,EAAWmlI,UAAYtzI,KAAKC,UAAUzF,KAAK2T,WAAWmlI,YAExD,MAAMI,QAAuBl5I,KAAKm5I,6BAA6Bv4H,EAAQjN,GAEjEM,EAAoBjU,KAAK2T,WAAWg8E,kBAEpCj+D,EADc1xB,KAAK+qE,eAAegmB,iBACbvmD,SACrBxqC,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQzd,EAAmBilI,EAAe5+F,iBAEjGt6C,KAAKyqB,cAAcF,QAAQ,UAAW,wCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,+BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAhB3C,QAkBE9a,KAAK+P,MAAMolF,kBAAmB,OAKpCgkD,6BAA6Bv4H,EAAQ9L,GAGnC,OAFAA,EAAS9J,KAAO,EAER4V,GACN,IAAK,SACH,OAAO5gB,KAAKo5I,oCAAoCtkI,GAClD,IAAK,SACH,OAAO9U,KAAKq5I,mCAAmCvkI,IAIrDskI,oCAAoCtkI,GAClC,OAAO9U,KAAK04I,sBAAsBU,oCAAoCtkI,GAGxEukI,mCAAmCvkI,GACjC,OAAO9U,KAAK04I,sBAAsBW,mCAAmCvkI,GAGvE87E,aAAahwE,GAGX,GAFA5gB,KAAK+P,MAAM+/E,oBAAsB,GAElB,WAAXlvE,GAAuD,KAAhC5gB,KAAK2T,WAAWy2G,YAEzC,OADApqH,KAAK+P,MAAM+/E,oBAAsB,2CAC1B,EAGT,MAAM5hF,EAAQlO,KAAK2T,WAAW6wB,MAE9B,GADoBxkC,KAAK07D,UAAU/qD,MAAMmE,GAAaA,EAAS0vB,QAAUt2B,IAGvE,OADAlO,KAAK+P,MAAM+/E,oBAAsB,gDAC1B,EAGT,IAAK9vF,KAAK+P,MAAM6oI,gBAEd,OADA54I,KAAK+P,MAAM+/E,oBAAsB,yBAC1B,EAGT,MAAM7lF,EAAUjK,KAAK+qE,eAAe9gE,UAC9BgK,EAAoBjU,KAAK2T,WAAWg8E,kBACpC1hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAME,gBACX,OAAOjO,KAAKkgD,QAAO2F,UACjB,MAAM,YAAEkW,EAAF,KAAehyD,GAAS/J,KAAK0oD,OAAOl9C,OAE1CxL,KAAK2T,WAAWy2G,YAAcruD,EAC9B/7D,KAAKi5I,cAAcl9E,GACfhyD,IACF/J,KAAK2T,WAAW3I,MAAQjB,GAG1B,IACE/J,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,gBAAgB,GAClE,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,kBAAmB6M,EAAK,mCAGnD9a,KAAK+P,MAAMoxB,SAAU,EAErBp9B,OAAOw1I,iBAAiB,eAAgBv5I,KAAK+4I,mBAIjD1kH,aACEtwB,OAAOy1I,oBAAoB,eAAgBx5I,KAAK+4I,gBAGlDhpD,gBACE,MAA6B,WAAtB/vF,KAAK+P,MAAM6Q,QAAuB5gB,KAAK2T,WAAWy2G,aAAepqH,KAAK+P,MAAMggF,cAGrFgpD,eAAeplG,GACT3zC,KAAK+vF,kBACPp8C,EAAMlR,iBACNkR,EAAM8lG,YAAc,IAIxBvsC,YACE,GAAIltG,KAAK+vF,gBACP,OAAO/vF,KAAK0hD,aAAal7B,2B,+IAK/B,a,+GCrNA,MAIa8xH,EAA0B,CACrC93F,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,4HCJG,MAAMwkI,EAEnBz5F,YAAYC,EAAQwI,EAAQqiB,EAAgB2tE,EAAuBhpD,EAAehuC,EAAcj3B,GAC9F3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQqiB,eAAAA,EAAgB2tE,sBAAAA,EAAuBhpD,cAAAA,EAAehuC,aAAAA,EAAcj3B,cAAAA,IAE1GzqB,KAAK+P,MAAQ,CACXgkH,iBAAkB,KAClBjkC,oBAAqB,GACrBqF,kBAAkB,EAClBwkD,mBAAmB,GAGrB35I,KAAK45I,YAAc,CACjB3vI,SAAS,EACT3L,GAAI,MAGN0B,KAAK65I,cAAgB75I,KAAK65I,cAAcx6I,KAAKW,MAC7CA,KAAK85I,aAAe95I,KAAK85I,aAAaz6I,KAAKW,MAC3CA,KAAK4wF,aAAe5wF,KAAK4wF,aAAavxF,KAAKW,MAC3CA,KAAKkkD,cAAgBlkD,KAAKkkD,cAAc7kD,KAAKW,MAC7CA,KAAK+5I,eAAiB/5I,KAAK+5I,eAAe16I,KAAKW,MAGjD+5I,eAAejlI,GACR9U,KAAK+P,MAAM4pI,mBAIhB35I,KAAK0oD,OAAOr8B,GAAG,oBAAqB,CAAE2wG,WAAYloH,EAASvI,KAG7DstI,cAAc/kI,GACZ,OAAO9U,KAAK45I,YAAY3vI,SAAWjK,KAAK45I,YAAYt7I,KAAOwW,EAASklI,gBAGtEF,eACE,OAAO95I,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,gBAAgB,GAClE,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,2BAA4B6M,EAAK,uCAKhE81E,aAAa38E,EAAmBhK,GAC9BjK,KAAK+P,MAAM+/E,oBAAsB,GACjC,MAAM7hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAKXi2C,cAAc84E,GACZ,OAAOh9H,KAAKkgD,QAAO2F,UAEjB,SADwB7lD,KAAK0hD,aAAa35B,qBAAqB,uDAK/D,IACE,IAAIjT,EAAW,IAAO9U,KAAK07D,UAAW,CAAEnvD,GAAIywH,UACtCh9H,KAAK04I,sBAAsBj1H,OAAOu5G,GACxCh9H,KAAKyqB,cAAcF,QAAQ,gCAAiCzV,GAAYA,EAAS0vB,OACjF,IAASxkC,KAAK07D,UAAW,CAAEnvD,GAAIywH,IAC/B,MAAOliH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAK/CqoC,UACEnjD,KAAK85I,eAEL95I,KAAK45I,YAAY3vI,QAAUjK,KAAK+qE,eAAe9gE,UAC/C,MAAMoC,EAAOrM,KAAK+qE,eAAegmB,iBACjC/wF,KAAK45I,YAAYt7I,GAAK+N,EAAKm+B,GAE3BxqC,KAAK+P,MAAM4pI,kBAAoB35I,KAAK+qE,eAAezrD,kBAAkB,CAAC,yC,yOCpF1E,MAIai5H,EAA6B,CACxC/3F,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,0FCDZ,MAAM+kI,EAEJh6F,YAAYC,EAAQwI,EAAQhH,EAAcqpB,EAAgB2tE,EAAuBhpD,EAAejlE,EAAe4jE,GAC7GvvF,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQhH,aAAAA,EAAcqpB,eAAAA,EAAgB2tE,sBAAAA,EAAuBhpD,cAAAA,EAAejlE,cAAAA,EAAe4jE,uBAAAA,IAEzHruF,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAK2T,WAAa,KAClB3T,KAAK+P,MAAQ,CACX+/E,oBAAqB,GACrBC,eAAe,EACf6oD,iBAAiB,GAEnB54I,KAAK07D,UAAY,GAEjB17D,KAAKk6I,YAAcl6I,KAAKk6I,YAAY76I,KAAKW,MACzCA,KAAK2uH,aAAe3uH,KAAK2uH,aAAatvH,KAAKW,MAC3CA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKm6I,eAAiBn6I,KAAKm6I,eAAe96I,KAAKW,MAC/CA,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAC3CA,KAAKg5I,kBAAoBh5I,KAAKg5I,kBAAkB35I,KAAKW,MAGvDk6I,cACE,OAAOl6I,KAAKkgD,QAAO2F,UACjB,IACE,MAAM,GAAEvnD,GAAO0B,KAAK0oD,OAAOl9C,QAEpBsJ,EAAUga,SAAc7S,QAAQqW,IAAI,CAACtyB,KAAK04I,sBAAsBQ,eAAe56I,GAAK0B,KAAK04I,sBAAsB0B,mBAAmB97I,KACzIwW,EAASs1G,YAAct7F,EACvBha,EAASgkI,UAAYhkI,EAASgkI,WAAa,GAE3C94I,KAAK2T,WAAamB,EAElB9U,KAAKi5I,cAAcnqH,GAEnB9uB,KAAK6yH,eAAiB7yH,KAAK2T,WAAWy2G,YAEtCpqH,KAAK2T,WAAW2mC,gBAAkB,IAAIlmC,EAAAA,EAAyBU,EAASwlC,iBACxEt6C,KAAK2T,WAAWg8E,kBAAoB,IAAIC,EAAAA,sBACxC,MAAO90E,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAK/Ck+H,kBAAkB3xI,GAChBrH,KAAK+H,aAAa,CAAE+wI,UAAWzxI,IAGjCU,aAAaV,GACX,OAAOrH,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,MAKT4xI,cAAcp6F,GACZ,IAAK7+C,KAAK24I,2BACR,OAGF,MAAM7qI,GAAY8wC,EAAAA,EAAAA,IAAqBC,GAEjCjwC,IAAYd,EAElB9N,KAAK+P,MAAM6oI,gBAAkBhqI,EAEzBA,GACF5O,KAAKg5I,mBAAkBh6F,EAAAA,EAAAA,IAAmBh/C,KAAK2T,WAAWmlI,UAAWhrI,IAIzE8iF,eAGE,GAFA5wF,KAAK+P,MAAM+/E,oBAAsB,IAE5B9vF,KAAK2T,WAAWy2G,YAEnB,OADApqH,KAAK+P,MAAM+/E,oBAAsB,2CAC1B,EAGT,MAAM5hF,EAAQlO,KAAK2T,WAAW6wB,MACxBlmC,EAAK0B,KAAK0oD,OAAOl9C,OAAOlN,GAG9B,GADoB0B,KAAK07D,UAAU/qD,MAAMmE,GAAaA,EAAS0vB,QAAUt2B,GAAS4G,EAASvI,IAAMjO,IAG/F,OADA0B,KAAK+P,MAAM+/E,oBAAuB,4BAA2B5hF,oBACtD,EAGT,MAAMjE,EAAUjK,KAAK+qE,eAAe9gE,UAC9BgK,EAAoBjU,KAAK2T,WAAWg8E,kBACpC1hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAMX0gH,eACE,OAAO3uH,KAAKkgD,QAAO2F,UACjB,GAAK7lD,KAAK4wF,eAAV,CAIA5wF,KAAKm1F,kBAAmB,EACxB,UACQn1F,KAAK04I,sBAAsB2B,qBAAqBr6I,KAAK2T,WAAWpH,GAAIvM,KAAK2T,YAE/E,MACM+d,EADc1xB,KAAK+qE,eAAegmB,iBACbvmD,SACrBxqC,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQ1xB,KAAK2T,WAAWg8E,kBAAmB3vF,KAAK2T,WAAW2mC,iBAElHt6C,KAAKyqB,cAAcF,QAAQ,UAAW,wCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,+BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAX3C,QAaE9a,KAAKm1F,kBAAmB,OAK9Bg4B,oBAAoBxpH,GACd22I,EAAYt6I,KAAK2T,WAAWy2G,eAAiBkwB,EAAY32I,KAC3D3D,KAAK2T,WAAWy2G,YAAczmH,EAC9B3D,KAAKi5I,cAAct1I,GACnB3D,KAAK+P,MAAMggF,eAAgB,GAIlB,gBACX/vF,KAAKkgD,QAAO2F,UACV7lD,KAAKk6I,cAEL,IACEl6I,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,kBAClD,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,kBAAmB6M,EAAK,mCAGnD/W,OAAOw1I,iBAAiB,eAAgBv5I,KAAKm6I,mBAIjDpqD,gBACE,OAAO/vF,KAAK2T,WAAWy2G,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cAG3Emd,YACE,GAAIltG,KAAK+vF,gBACP,OAAO/vF,KAAK0hD,aAAal7B,0BAI7B2zH,eAAexmG,GACb,GAAI3zC,KAAK2T,WAAWy2G,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cAIpE,OAHAp8C,EAAMlR,iBACNkR,EAAM8lG,YAAc,GAEb,GAIXplH,aACEtwB,OAAOy1I,oBAAoB,eAAgBx5I,KAAKm6I,iBAMpD,SAASG,EAAYpuE,EAAM,IACzB,OAAOA,EAAI7wC,QAAQ,iBAAkB,I,+IAHvC,a,oHCvJA,UA1BA,MACsB,qBAAC52B,GACnB,MAAM4kI,EAAM,IAAIkR,EAAAA,mBAChBlR,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9B,MAAMqyE,EAAmB/1I,EAAKG,SAAS48H,YAAc/8H,EAAKG,SAAS48H,YAAYiZ,EAAAA,oCAAsC,GACrH,GAAID,EAAkB,CACpB,MAAME,EAAal1I,KAAKwZ,MAAMw7H,GACxBj/G,EAAQ,IAAQm/G,EAAWC,eAAgB,KACjDtR,EAAIuR,eAAiBr/G,EAAM,GAY7B,OATI92B,EAAKo2I,UACPxR,EAAIyR,QAAU,IAAMr2I,EAAKo2I,SAAUxmG,IACjC,MAAM0mG,EAAS,IAAIC,EAAAA,yBACnBD,EAAOE,IAAM,IAAM5mG,EAAK6mG,UAAW,MACnC,MAAMljG,EAAO,IAAO3D,EAAKwD,MAAO,CAAE/zC,KAAM,UAExC,OADAi3I,EAAOjc,KAAO9mF,EAAOA,EAAKA,UAAOnmC,EAC1BkpI,MAGJ1R,K,gMCzBJ,MAAMoR,EAAqC,2CAK5CU,EAAsBr8I,OAAOyyF,OAAO,CACxChlF,GAAI,GACJM,KAAM,GACNgzH,UAAW,GACX+a,eAAgB,GAChBE,QAAS,KAGJ,MAAMP,EACXt6F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU01I,MAIlD,MAAMC,EAA4Bt8I,OAAOyyF,OAAO,CAC9C0pD,IAAK,GACLnc,KAAM,IAGD,MAAMkc,EACX/6F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU21I,Q,iBC1BlDxlI,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,sBAAuB,CACpE,YACA,yBACA,mBACA,SAAoCN,EAAWC,EAAwBC,GACrE,aACA,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,iBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,U,2GCZ9B,MAAM2zD,EAEJp7F,YAAYC,EAAQo7F,GAClBt7I,KAAKkgD,OAASA,EACdlgD,KAAKs7I,oBAAsBA,EAE3Bt7I,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAM1B,kBAACmoE,GAChB,IACE,MAAM1jE,QAAazE,KAAKs7I,oBAAoBnzE,GAAWxpD,MAAMqnC,SAC7D,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAASmnG,EAAAA,QAAAA,cAA0CnnG,KAC7E,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,kCAAmCE,IAIhE6D,IAAIwpD,GACF,OAAOnoE,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,I,2CAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,4BAA6B09H,I,sHC1B5EzlI,QACG5W,OAAO,wBACPsT,OAAO,wCAAwC,WAE9C,OAAO,SAAUmW,GAEf,OADa,IAAUA,IAErB,IAAK,eACH,MAAO,qBACT,IAAK,YACH,MAAO,cACT,IAAK,WACH,MAAO,eAIdnW,OAAO,wCAAwC,WAE9C,OAAO,SAAUmW,GAEf,OADa,IAAUA,IAErB,IAAK,eACH,MAAO,eACT,IAAK,YACH,MAAO,YACT,IAAK,WACH,MAAO,gBAIdnW,OAAO,iCAAiC,WAEvC,OAAO,SAAUvI,GACf,OAAQA,GACN,KAAKu1H,EAAAA,2BAAAA,WACH,OAAOmc,EAAAA,iCAAAA,WACT,KAAKnc,EAAAA,2BAAAA,UACH,OAAOmc,EAAAA,iCAAAA,UACT,KAAKnc,EAAAA,2BAAAA,YACH,OAAOmc,EAAAA,iCAAAA,YACT,KAAKnc,EAAAA,2BAAAA,IACH,OAAOmc,EAAAA,iCAAAA,IACT,KAAKnc,EAAAA,2BAAAA,KACH,OAAOmc,EAAAA,iCAAAA,KACT,QACE,MAAO,SAIdnpI,OAAO,iCAAiC,WAEvC,OAAO,SAAU3O,GACf,OAAO,IAAQA,EAAO,OAGzB2O,OAAO,6CAA6C,WAEnD,OAAO,SAAU3O,GACf,OAAQA,GACN,KAAKkqI,EAAAA,wCAAAA,SACH,MAAO,YACT,KAAKA,EAAAA,wCAAAA,OACH,MAAO,WAIdv7H,OAAO,6CAA6C,WAEnD,OAAO,SAAU3O,GACf,OAAQA,GACN,KAAKkqI,EAAAA,wCAAAA,SACH,MAAO,WACT,KAAKA,EAAAA,wCAAAA,OACH,MAAO,cAIdv7H,OAAO,gDAAgD,WAEtD,OAAO,SAAU3O,GACf,OAAQA,GACN,KAAKkqI,EAAAA,wCAAAA,SACH,MAAO,kEACT,KAAKA,EAAAA,wCAAAA,OACH,MAAO,wEAIdv7H,OAAO,oDAAoD,WAE1D,OAAO,SAAUjL,EAAQqxE,GACvB,OAAIA,IAAagjE,EAAAA,0DAAAA,IAAgEhjE,IAAagjE,EAAAA,0DAAAA,OACrFr0I,EAEPqxE,IAAagjE,EAAAA,0DAAAA,QACbhjE,IAAagjE,EAAAA,0DAAAA,eAEN,GAEPhjE,IAAagjE,EAAAA,0DAAAA,cACbhjE,IAAagjE,EAAAA,0DAAAA,WAENr0I,EAAO,GAET,OAGViL,OAAO,uCAAuC,WAE7C,OAAO,SAAUmW,GAMf,MALe,CACb,mBAAoB,mBACpB,qBAAsB,eACtB,yBAA0B,QAEdA,IAASA,MAG1BnW,OAAO,6CAA6C,WAEnD,OAAO,SAAU3O,GACf,MAAc,KAAVA,EACK,WAEAA,MAIZ2O,OAAO,gDAAgD,WAEtD,OAAO,SAAU0d,GACf,MAAMuN,EAAS43G,EAAAA,QAAAA,YAA0CnlH,EAAO,GAChE,MAAQ,GAAEuN,EAAOwkD,OAAOxkD,EAAO61G,gB,yDCxIrCx9H,QAAQ5W,OAAO,wBAAwBsT,OAAO,mCAAmC,WAE/E,OAAO,SAAUvI,GACf,OAAQA,GACN,KAAKuzH,EAAAA,6BAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,6BAAAA,UACH,MAAO,kB,kECPf1nH,QAAQ5W,OAAO,wBAAwBsT,OAAO,4BAA4B,WAExE,OAAO,SAAUmW,GAEf,OADa,IAAUA,IAErB,IAAK,SACH,MAAO,OACT,IAAK,UACH,MAAO,UACT,QACE,MAAO,e,iBCZf7S,QAAQ5W,OAAO,wBAAwBsT,OAAO,4BAA4B,WACxE,OAAO,SAAUspE,GACf,OAAIA,GAAS,GACJ,SACEA,EAAQ,IAAMA,EAAQ,GACxB,UAEA,e,kECFb,SAAS+/D,EAAYl3F,EAAWC,GAC9B,MAAMk3F,EAAUl3F,EAAyB,+BACnCm3F,EAAe,qBAErB,OAAOp3F,EACLm3F,EACA,GACA,CACElgF,UAAW,CACTj1D,IAAKo1I,EACLj7H,OAAQ,MACRpV,OAAQ,CAAEs8E,KAAM,SAChBjM,OAAO,GAETvR,KAAM,CACJ7jE,IAAM,GAAEo1I,UACRj7H,OAAQ,MACRpV,OAAQ,CAAEs8E,KAAM,QAAS2b,MAAO,UAChChqD,kBAAmB,SAAUh1C,GAC3B,MAAO,CAAE4C,OAAQ5C,KAGrB0+H,oBAAqB,CACnBviH,OAAQ,MACRna,IAAM,GAAEm1I,kBAEVza,kBAAmB,CACjBvgH,OAAQ,OACRna,IAAM,GAAEm1I,kBAEV/sF,KAAM,CACJjuC,OAAQ,MACRqf,SAAS,EACTz0B,OAAQ,CAAE28D,UAAW,aAAcyiE,SAAU,YAAat4H,OAAQ,UAAWwpI,OAAQ,YAEvFlZ,QAAS,CAAEhiH,OAAQ,QACnBm7H,UAAW,CACTt1I,IAAM,GAAEm1I,aACRh7H,OAAQ,SACRpV,OAAQ,CAAE28D,UAAW,iB,iDA1C7BvyD,IAAAA,OAAe,wBAAwBmvC,QAAQ,cAAe42F,I,uHCIvD,SAAS5a,EAAY4a,GAC1B,MAAO,CACL9xE,OAeFhkB,eAAsBiiC,GACpB,IACE,aAAa6zD,EAAYjgF,UAAU,CAAEosB,KAAAA,IAAQ9hC,SAC7C,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,KAlB7DzT,OA6BFw+C,eAAsBiiC,EAAM2b,GAC1B,IACE,aAAak4C,EAAYrxE,KAAK,CAAEwd,KAAAA,EAAM2b,MAAAA,EAAO15F,KAAM,WAAYi8C,SAC/D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,uCAAwCE,KAhCnEqoH,oBAyCFt9E,eAAmCtnC,GACjC,aAAao9H,EAAYxY,oBAAoB,CAAE5kH,WAAAA,IAAcynC,UAzC7Dm7E,kBAkDFt7E,eAAiCtnC,EAAYuC,GAC3C,aAAa66H,EAAYxa,kBAAkB,CAAE5iH,WAAAA,GAAcuC,GAASklC,UAlDpE48E,QA0DF/8E,eAAuBtnC,EAAYuC,GACjC,aAAa66H,EAAY/Y,QAAQ,CAAErkH,WAAAA,GAAcuC,GAASklC,UA1D1D+1F,UAkEFl2F,eAAyBtnC,GAAY,KAAE1R,EAAF,aAAQ2xH,IAC3C,UACQmd,EAAYI,UAAU,CAAEx9H,WAAAA,EAAYy9H,QAASnvI,EAAMs7D,UAAWq2D,IAAgBx4E,SACpF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2BAA4BE,KArEvDmhI,aA+EFp2F,eAA4BtnC,GAAY,UAAE4pD,EAAF,SAAayiE,EAAb,OAAuBt4H,EAAvB,OAA+BwpI,IACrE,IAEE,aADuBH,EAAY9sF,KAAK,CAAEtwC,WAAAA,EAAYqsH,SAAAA,EAAUziE,UAAAA,EAAW71D,OAAAA,EAAQwpI,OAAAA,IAAU91F,SAE7F,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,kCAAmCE,M,0BA/FlElF,IAAAA,OAAe,wBAAwBmvC,QAAQ,cAAeg8E,I,uiBC+BvD,MAAMmb,EAA6B,6BAC7BC,EAAoB,+BAEjC,MAAM/d,EAEwB,6BAACge,GAC3B,OAAQA,EAAYnS,iBAGY,mCAACX,EAAMsB,GACvC,OAAO,IAAStB,EAAM,CAAC,kBAAmBsB,EAASiG,cAGK,2DAACvS,EAAKhjF,GAC9D,IAAUA,GAAahE,IACrBA,EAAUk1F,iBAAmB,IAC3B,IAAMlO,EAAIkO,kBAAmB6P,IAC3B,GAAIA,EAAGxP,WAAa,IAAW,IAAMv1F,EAAUy5F,aAAc,aAAcsL,EAAGxP,WAC5E,OAAOwP,UAGXxqI,GAGFylC,EAAU21F,qBAAuB,IAC/B,IAAM3O,EAAI2O,sBAAuBqP,IAC/B,GAAIA,EAAG9O,eAAiB,IAAW,IAAMl2F,EAAUy5F,aAAc,aAAcuL,EAAG9O,eAChF,OAAO8O,UAGXzqI,MAKkC,yCAACysH,GACvC,IAAKA,EAAIqM,MAA4B,IAApBrM,EAAIqM,KAAKlrI,OACxB,MAAO,GAET,MAAM67C,EAAagjF,EAAIqM,KAAK,GAAG7yE,WAE/B,OADAsmE,EAA4Bme,oDAAoDje,EAAKhjF,GAC9EA,EAGkC,4CAACgjF,GAC1C,MAAMhjF,EAAa,IAAU,IAAMgjF,EAAIqM,KAAM,eAE7C,OADAvM,EAA4Bme,oDAAoDje,EAAKhjF,GAC9EA,EAG0B,oCAACkhG,GA0BlC,OAzBY,IACVA,GACA,CAAChqH,EAAK8rG,KACJ,GAAIA,EAAIK,eAAel/H,OAAS,EAAG,CACjC,MAAMwhG,EAAU,IAAIw7C,EAAAA,sBACpBx7C,EAAQp0F,KAAOyxH,EAAIzxH,KACnBo0F,EAAQu9B,aAAeF,EAAIE,aAC3Bv9B,EAAQiqC,YAAc5M,EAAI4M,YAC1BjqC,EAAQ+9B,sBAAwBV,EAAIU,sBACpC/9B,EAAQgpC,iBAAmB3L,EAAI2L,iBAE/BhpC,EAAQnmD,MAAQ,IAAMwjF,EAAIK,gBAAiBtqF,IACzC,MAAM2D,EAAO,IAAI0kG,EAAAA,0BAKjB,OAJA1kG,EAAK8mF,KAAO79B,EAAQiqC,cAAgB3L,EAAAA,uBAAAA,UAAmClrF,EAAKu3F,SAAWv3F,EAAKyqF,KAC5F9mF,EAAKg9D,WAAa3gE,EAAK2gE,WACvBh9D,EAAKi9D,SAAW5gE,EAAK4gE,SACrBj9D,EAAK6mF,aAAexqF,EAAKwqF,aAClB7mF,KAETxlB,EAAI5uB,KAAKq9F,GAEX,OAAOzuE,IAET,IAO8B,mCAACmqH,GAYjC,OAXA,IAASA,GAAetoG,GAASA,EAAK2+F,gBAC1B,IAAM2J,GAAetoG,IAC/B,MAAMg1F,EAAM,IAAIuT,EAAAA,gCAOhB,OANAvT,EAAIvlI,KAAOuwC,EAAKxnC,UACGgF,IAAfwiC,EAAK4zF,aACAoB,EAAI1lI,MAEX0lI,EAAI1lI,MAAQ0wC,EAAK4zF,MAEZoB,KAKuB,mCAACrwH,GACjC,MAAM2jI,EAAe,IAAM3jI,GAAMq7B,IAC/B,GAAIA,EAAKwoG,UACP,OAEF,MAAMxT,EAAM,IAAIyT,EAAAA,kDAKhB,OAJAzT,EAAIx8H,KAAOwnC,EAAKvwC,KAChBulI,EAAIpB,MAAQ5zF,EAAK1wC,MACjB0lI,EAAIgN,OAAQ,EACZhN,EAAI0T,UAAY1oG,EAAKvwC,KACdulI,KAET,OAAO,IAAUsT,OAAc9qI,GAKsB,wDAACmH,EAAK2iD,EAAS0hE,GACpE,MAAM2f,EAAW,IAAU3f,GAAiB4f,IAC1C,MAAMC,EAAkBD,EAAIjyI,OAASsyH,EAAAA,6BAAAA,UAAyC,iCAAmC,8BAE3G6f,EAAS,IAASnkI,EAAK,CAACkkI,EAAiBD,EAAIpwI,OAC7CuwI,EAAS,IAASzhF,EAAS,CAAEwxE,kBAAmB8P,EAAIpwI,OAC1D,IAAKswI,EAAO19I,SAAW29I,EAAO39I,OAC5B,OAEF,MAAMZ,EAAO,IACX,IAAOo+I,EAAI1iE,OACX,CAAC/nD,EAAK8gE,KACJ,MAAM+pD,EAAS,IAASF,EAAQ,CAAEr5I,KAAMwvF,IAClCgqD,EAAS,IAASF,EAAQ,CAAE3P,iBAAkBn6C,IAC9C3zF,EAAM,CACVynI,IAAK9zC,EACLkG,MAAO6jD,EAAO59I,OAAS69I,EAAO79I,OAC9B89I,IAAK,IAASF,EAAQC,GACtBE,SAAUH,EAAO59I,OACjBg+I,SAAUH,EAAO79I,QAGnB,OADA+yB,EAAI5uB,KAAKjE,GACF6yB,IAET,IAGI4P,EAAM,IAAM,IAAMvjC,EAAM,UACxB6+I,EAAoBt7G,EAAM,IAAM,IAAMvjC,EAAM,aAC5CwqI,EAAM,IAAM,IAAIrpG,MAAMoC,IAAM,IAAM,IAAIu7G,EAAAA,8CAsB5C,OArBA,IAAUtU,GAAK,CAACh1F,EAAMlU,KACpBkU,EAAKupG,sBAAwBX,EACX98G,GAASu9G,IAEzBrpG,EAAKwpG,WAAY,EACjBxpG,EAAKypG,cAAgB,IAAMj/I,GAAOy0F,IAChC,MAAMyqD,EAAQ,IAAIC,EAAAA,wDAWlB,OAVAD,EAAM3W,IAAM9zC,EAAE8zC,IACT9zC,EAAEkG,MAGIr5D,EAAQmzD,EAAEkqD,SACnBO,EAAM/yI,KAAOizI,EAAAA,6DAAAA,aAEbF,EAAM/yI,KAAOizI,EAAAA,6DAAAA,WACbF,EAAMx3F,KAAO+sC,EAAEiqD,IAAIp9G,GAAOqtG,eAL1BuQ,EAAM/yI,KAAOizI,EAAAA,6DAAAA,KAORF,SAIN1U,KAET,OAAO,IAAU2T,OAAUnrI,GAGgB,8CAACysH,EAAKjB,GACjD,IAAI6gB,EAAW,GACXC,EAAe,GACfC,EAAc,GAoElB,OAlEA,IAAU/gB,GAAiBz4G,IACzB,MAAMy5H,EAAUz5H,EAAOg5H,sBAAsB5yI,OAASsyH,EAAAA,6BAAAA,UAEtD,GAAK14G,EAAOi5H,UAcL,CACL,MAAMS,EAAU,IAAS15H,EAAOk5H,eAAgBzpG,GAASA,EAAKrpC,OAASizI,EAAAA,6DAAAA,cACvE,IAAUK,GAAUjqG,IAClB,MAAMg1F,EAAMgV,EAAU,IAAIE,EAAAA,yCAA6C,IAAIC,EAAAA,sCAC3EnV,EAAIvlI,KAAOuwC,EAAK+yF,IACZiX,GACFhV,EAAIwT,UAAU4B,gBAAgB36I,KAAO8gB,EAAOg5H,sBAAsB/wI,KAClEw8H,EAAIwT,UAAU4B,gBAAgB9+I,IAAM00C,EAAK+yF,MAEzCiC,EAAIwT,UAAU6B,aAAa56I,KAAO8gB,EAAOg5H,sBAAsB/wI,KAC/Dw8H,EAAIwT,UAAU6B,aAAa/+I,IAAM00C,EAAK+yF,KAExC8W,EAASt6I,KAAKylI,MAGhB,MAAMsV,EAAU,IAAS/5H,EAAOk5H,eAAgBzpG,GAASA,EAAKrpC,OAASizI,EAAAA,6DAAAA,aACjEW,EAAiB,IAAUD,EAAS,QAC1C,IAAUC,GAAgB,CAACx1B,EAAOznE,KAChC,MAAMk9F,EAAaje,EAAAA,QAAAA,qCAA4DtC,EAAIzxH,MAC7EsgI,EAAoBvoH,EAAOg5H,sBAAsB/wI,KACjDiyI,EAAW,IAAM11B,GAAQ/0E,IAC7B,MAAMklC,EAAQ,IAAIwlE,EAAAA,wCAGlB,OAFAxlE,EAAM55E,IAAM00C,EAAK+yF,IACjB7tD,EAAM53B,KAAOtN,EAAK+yF,IACX7tD,KAGH3I,EAAQytE,EAAU,IAAIW,EAAAA,wCAA4C,IAAIA,EAAAA,yCAAwC,GAC9GpjF,EAASyiF,EAAU,IAAIY,EAAAA,4CAAgD,IAAIC,EAAAA,yCAEjFtuE,EAAM9sE,KAAO+6I,EACbjuE,EAAMk8D,UAAYnrF,EAClBia,EAAO93D,KAAO+6I,EACVR,GACFziF,EAAOsxE,UAAUppI,KAAOqpI,EACxBvxE,EAAOsxE,UAAU9jB,MAAQ01B,IAEzBljF,EAAOd,OAAOsyE,WAAaD,EAC3BvxE,EAAOd,OAAOsuD,MAAQ01B,GAGxBV,EAAYx6I,KAAKgtE,GACjButE,EAAav6I,KAAKg4D,UAxDC,CACrB,MAAM0iF,EAAU,IAAO15H,EAAOg5H,sBAAsBrjE,MACpD,IAAU+jE,GAAUjqG,IAClB,MAAMg1F,EAAMgV,EAAU,IAAIE,EAAAA,yCAA6C,IAAIC,EAAAA,sCAC3EnV,EAAIvlI,KAAOuwC,EACPgqG,GACFhV,EAAIwT,UAAU4B,gBAAgB36I,KAAO8gB,EAAOg5H,sBAAsB/wI,KAClEw8H,EAAIwT,UAAU4B,gBAAgB9+I,IAAM00C,IAEpCg1F,EAAIwT,UAAU6B,aAAa56I,KAAO8gB,EAAOg5H,sBAAsB/wI,KAC/Dw8H,EAAIwT,UAAU6B,aAAa/+I,IAAM00C,GAEnC6pG,EAASt6I,KAAKylI,UAgDpB/K,EAAI38C,IAAM,IAAS28C,EAAI38C,IAAKu8D,GAC5B5f,EAAIptD,QAAU,IAASotD,EAAIptD,QAASitE,GACpC7f,EAAIyS,aAAe,IAASzS,EAAIyS,aAAcqN,GACvC9f,EAKoC,8CAACA,GAC5C,IAAItjE,EAAW,GACf,GAAIsjE,EAAI+H,SAgDN,OA/CA/H,EAAI+H,SAASxuH,SAAQ,SAAU8F,GAE7B,GAA+B,SAA3BA,EAAQ6rH,KAAK4B,UAAsB,CACrC,MAAM+T,EAAM,IAAIjZ,EAAAA,kBAChBiZ,EAAItf,UAAYliH,EAAQ/Y,SAASujE,UACjCg3E,EAAItyI,KAAO8Q,EAAQ/Y,SAASd,KAC5Bq7I,EAAIlkG,UAAYt9B,EAAQs9B,UACxBkkG,EAAIlV,iBAAmB3L,EAAI2L,iBAC3BkV,EAAIhV,gBAAkB7L,EAAI6L,gBAC1BgV,EAAIn0I,KAAO2S,EAAQ6rH,KAAKz/H,KACpB4T,EAAQ6rH,KAAKz/H,OAASw1H,EAAAA,uBAAAA,WACxB4f,EAAIn0I,KAAO,EACF2S,EAAQ6rH,KAAKz/H,OAASw1H,EAAAA,uBAAAA,UAC/B4f,EAAIn0I,KAAO,EACF2S,EAAQ6rH,KAAKz/H,OAASw1H,EAAAA,uBAAAA,gBAC/B4f,EAAIn0I,KAAO,GAGb,IAAI6sC,EAAQ,GACZl6B,EAAQ6rH,KAAK3xF,MAAMhgC,SAAQ,SAAUmgC,GACnC,MAAMonG,EAAU,IAAI/a,EAAAA,sBACpB+a,EAAQt7I,KAAOk0C,EAAKl0C,KACpBs7I,EAAQpnG,KAAOA,EAAKA,KACpBonG,EAAQ9a,SAAWtsF,EAAKssF,SACxB8a,EAAQvtE,SAAW75B,EAAK65B,SACxButE,EAAQ7a,WAAavsF,EAAKusF,WAE1BjG,EAAI+gB,UAAU17I,MAAMkU,SAASitH,IAC3B,MAAMwa,EAAiB,IAAOxa,EAAQya,MAAO,CAAExnE,YAAap6D,EAAQ/Y,SAASd,OACzEw7I,IACFF,EAAQta,QAAU,CAChBD,YAAaya,EAAeza,YAC5Bj/E,KAAM05F,EAAe15F,KACrBW,KAAM+4F,EAAe/4F,MAEvB44F,EAAIh9D,SAAU,MAIlBtqC,EAAMj0C,KAAKw7I,MAEbD,EAAIrkG,MAAQjD,EACZsnG,EAAIhZ,SAAW7H,EAAIkhB,IAAIhW,KAAKoB,SAASiG,YACrC71E,EAASp3D,KAAKu7I,OAIXnkF,EAIuB,mCAACsjE,GACjC,GAAqB,QAAjBA,EAAIkhB,IAAIC,KAEV,OADiBnhB,EAAIkhB,IAAIhW,KAAKoB,SAASiG,YAMc,0DAAClM,EAAa+a,EAAgB5a,GACrF,MAAM6a,EAAe,CAAC3nG,EAAMynF,KAC1B,MAAM4J,EAAM,IAAIuW,EAAAA,4CAgBhB,OAfAvW,EAAIgN,OAAQ,EACR5W,IACF4J,EAAIxE,YAAcpF,EAAKoF,YACvBwE,EAAIwW,aAAepgB,EAAKl5E,KACxB8iF,EAAIyW,YAAcrgB,EAAK75E,KACvByjF,EAAI0W,aAAejb,GAAWA,EAAQr7H,MAAMlK,GAAMA,EAAEsN,OAAS4yH,EAAKoF,cAAa7+C,OAEjFqjD,EAAIp0B,SAAWj9D,EAAKi9D,SACpBo0B,EAAIiN,cAAgBt+F,EAAKg9D,WACrB2vB,IAAgBpF,EAAAA,uBAAAA,eAClB8J,EAAIkN,iBAAmBv+F,EAAK8mF,KAC5BuK,EAAImN,qBAAuBx+F,EAAK4zF,UACvBjH,IAAgBpF,EAAAA,uBAAAA,YACzB8J,EAAIuC,SAAW5zF,EAAK4zF,UAEfvC,GAST,OANiB,IAAUqW,GAAiB1nG,GACtCA,EAAK6mF,aAAap/H,OACb,IAAMu4C,EAAK6mF,cAAeY,GAASkgB,EAAa3nG,EAAMynF,KAExDkgB,EAAa3nG,KAOqC,8DAACgoG,EAAYC,GACxE,MAAM5W,EAAM,IAAI6W,EAAAA,yCAYhB,OAXIF,GACF3W,EAAI8W,QAAS,EACb9W,EAAI+W,YAAcJ,EAAWI,YAC7B/W,EAAIgX,YAAcL,EAAWK,YAC7BhX,EAAIiX,qBAAuBN,EAAWM,qBACtCjX,EAAI7+B,WAAaw1C,EAAWx1C,aAE5B6+B,EAAI7+B,WAAa,UACjB6+B,EAAI+W,YAAcH,EAClB5W,EAAIgX,YAAcJ,GAEb5W,EAMoD,8DAACiD,EAAkBkC,GAU9E,OATiB,IAAMlC,GAAmB5pF,IACxC,MAAMuwF,EAAM,IAAOzE,GAAyBn6F,GAAS,IAAaA,EAAKxnC,KAAM61C,EAAOqqF,6BAC9E1D,EAAM,IAAIkX,EAAAA,8CAA8CtN,EAAIH,cAKlE,OAJAzJ,EAAI0D,0BAA4BrqF,EAAOqqF,0BACvC1D,EAAItnD,KAAO/8E,SAASiuI,EAAIJ,QAAS,IACjCxJ,EAAI+J,SAAWH,EAAIJ,QAAQrpI,OAAO,GAClC6/H,EAAImK,cAAgB9wF,EAAOmqF,UACpBxD,KAKoC,gDAAC/K,EAAKoS,GACnDpS,EAAIyS,aAAe,GACnBzS,EAAIptD,QAAU,GACd,IAAUw/D,GAAer8F,IACvB,MAAMmsG,EAAc,IAAIxB,EAAAA,wCAClBl7I,EAAOuwC,EAAKxnC,KAClB2zI,EAAY18I,KAAOA,EACnB08I,EAAY1T,UAAYz4F,EAAKw4F,UAC7BvO,EAAIyS,aAAantI,KAAK48I,GAEtB,MAAM5kF,EAAS,IAAI6kF,EAAAA,6CACnB7kF,EAAO93D,KAAOA,EACd83D,EAAOuwE,sBAAsBC,UAAYtoI,EACzCw6H,EAAIptD,QAAQttE,KAAKg4D,MAIJ,kBAACjoD,GAChB,OAAO,IAAOA,EAAW64H,kBAAmBn4F,GAASA,EAAKy+F,cAAgB,IAAUz+F,EAAKy+F,aAAa4N,YAAa,CAAC,UAGzG,cAACzR,GACZ,YAA2Gp9H,IAApG,IAAOo9H,GAAS56F,GAASA,EAAKy+F,cAAgB,IAAWz+F,EAAKy+F,aAAa4N,YAAa,SAKlD,gDAAC/sI,EAAYgtI,EAAalS,GACvE,IAAImS,EAAajtI,EAAWktI,WACxB92I,EAAO4J,EAAWmtI,cACtB,MAAMhQ,EAAW6P,EAAYI,aACzBjQ,GAAYA,EAASkQ,gDACvBj3I,EAAOk3I,EAAAA,oCAAAA,UACP,IAAUnQ,EAASkQ,+CAA+CE,mBAAoB7vD,IACpF,IAAUA,EAAK8vD,kBAAmBC,IAChC,MAAMC,EAAY,IAAIC,EAAAA,wCAChB16I,EAAQ,IAAO6nI,EAAa,CAAErH,IAAKga,EAAIzhJ,MAC7C0hJ,EAAUE,MAAQ36I,EAClBy6I,EAAUpZ,MAAQmZ,EAAI/5I,OAAO,GAC7Bg6I,EAAUhL,OAAQ,EAClBuK,EAAWh9I,KAAKy9I,UAGXvQ,GAAYA,EAAS0Q,kDAC9Bz3I,EAAOk3I,EAAAA,oCAAAA,UACP,IAAUnQ,EAAS0Q,iDAAkDnwD,IACnE,IAAUA,EAAKhZ,WAAW8oE,kBAAmBC,IAC3C,MAAMC,EAAY,IAAIC,EAAAA,wCAChB16I,EAAQ,IAAO6nI,EAAa,CAAErH,IAAKga,EAAIzhJ,MAC7C0hJ,EAAUE,MAAQ36I,EAClBy6I,EAAUpZ,MAAQmZ,EAAI/5I,OAAO,GAC7Bg6I,EAAUhL,OAAQ,EAClBuK,EAAWh9I,KAAKy9I,UAItB1tI,EAAWktI,WAAaD,EACxBjtI,EAAWmtI,cAAgB/2I,EAGQ,sCAACu0H,EAAK3qH,GACzC,GAAIA,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,WAAiD,CACjF,MAAMuhB,EAAajtI,EAAWktI,WACxBxX,EAAM,IAAIoY,EAAAA,iCAChB,IAAIC,EAAc,IAAMd,GAAar2G,IACnC,IAAKA,EAAEyoG,cAAe,CACpB,MAAMoO,EAAM,IAAIO,EAAAA,yCAShB,OARAP,EAAIzhJ,IAAM4qC,EAAEg3G,MAAMna,IACd78F,EAAE09F,OACJmZ,EAAI1oE,SAAWgjE,EAAAA,0DAAAA,GACf0F,EAAI/5I,OAAS,CAACkjC,EAAE09F,SAEhBmZ,EAAI1oE,SAAWgjE,EAAAA,0DAAAA,cACR0F,EAAI/5I,QAEN+5I,MAIX,GADAM,EAAc,IAAUA,OAAa7vI,GACjC6vI,EAAYjiJ,OAAQ,CACtB,GAAIkU,EAAWmtI,gBAAkBG,EAAAA,oCAAAA,UAA+C,CAC9E,MAAM5vD,EAAO,IAAIuwD,EAAAA,kCACjBvwD,EAAK8vD,iBAAmBO,EACxBrY,EAAI2X,+CAA+CE,kBAAkBt9I,KAAKytF,UACnEg4C,EAAImY,qDACN,GAAI7tI,EAAWmtI,gBAAkBG,EAAAA,oCAAAA,UAA+C,CACrF,MAAM5vD,EAAO,IAAIwwD,EAAAA,yCACjBxwD,EAAKhZ,WAAa,IAAIupE,EAAAA,kCACtBvwD,EAAKhZ,WAAW8oE,iBAAmBO,EACnCrY,EAAImY,gDAAgD59I,KAAKytF,UAClDg4C,EAAI2X,+CAEb1iB,EAAIyQ,SAAW,IAAI+S,EAAAA,sBACnBxjB,EAAIyQ,SAASgS,aAAe1X,IAWR,2BAACmT,GAIzB,MAAMuF,EAAkBvF,EAAalqI,QAClCgsH,GAAQA,EAAIqL,SAAShvF,QAAU2jF,EAAIqL,SAAShvF,OAAOuhG,IAA0E,SAA3C5d,EAAIqL,SAAShvF,OAAOwhG,KAcnG6F,EAAyB,GAC/BD,EAAgBlqI,SAASymH,IACvB,MAAMn2D,EAAYm2D,EAAIE,aAChByjB,EAAgB3jB,EAAIqL,SAAShvF,OAAOuhG,GACtC8F,EAAuB75E,GACzB65E,EAAuB75E,GAAW85E,GAAiB,IAAKD,EAAuB75E,GAAW85E,IAAkB,GAAK3jB,GAEjH0jB,EAAuB75E,GAAa,CAAE,CAAC85E,GAAgB,CAAC3jB,OAW5D,MACM4jB,EADsBpjJ,OAAOuI,OAAO26I,GAAwB3zB,SAAS93C,GAAMz3E,OAAOyG,QAAQgxE,KACvDp4E,KAAI,EAAEgkJ,EAAc3F,MAC3D,MAAM4F,EAAU,IAAIC,EAAAA,gBACpBD,EAAQv1I,KAAOs1I,EACfC,EAAQjjB,gBAAkBG,EAAAA,2BAAAA,KAC1B8iB,EAAQnY,iBAAmBuS,EAAa,GAAGvS,iBAC3CmY,EAAQtkB,uBAAyB0e,EAIjC,MAAM8F,EAAe9F,EAAa7rI,MAAM2tH,GAAQA,EAAIwP,iBAAmBxP,EAAI4P,iBAY3E,OAXAkU,EAAQnpI,OAASqpI,EAAe,YAAc,QAG9CF,EAAQ3X,aAAe+R,EAAar+I,KAAKmgI,GAAQA,EAAImM,eAAcp0H,MAAK,CAAC+xD,EAAGC,IAAM,IAAIrlD,KAAKolD,GAAK,IAAIplD,KAAKqlD,KAAI,GAG7G+5E,EAAQ5jB,aAAege,EAAa,GAAGhe,aAGvC4jB,EAAQ71I,GAAK61I,EAAQ5jB,aAAe,IAAM4jB,EAAQv1I,KAAKnH,cAAc68I,WAAW,IAAK,KAE9EH,KAGT,OAAOF,EAQmB,6BAAC1F,GAC3B,MAAMgG,EAAmBpkB,EAA4BqkB,oBAAoBjG,GAGnEkG,EAAe,IAAI,IAAI13G,IAAIw3G,EAAiBrkJ,KAAKwkJ,GAAQA,EAAI91I,SAQnE,MAAO,CAAE21I,iBAAAA,EAAkBI,oBAPCpG,EAAalqI,QAAQgsH,IAC3CA,EAAIqL,SAAShvF,SACP+nG,EAAav9I,SAASm5H,EAAIqL,SAAShvF,OAAOuhG,QAQ1D,a,sHC3kBA,MAAM2G,EACkB,uBAACzG,EAAa0G,GAClC,IAAIz6H,EAEJ,OAAQ+zH,EAAYjd,iBAClB,KAAKG,EAAAA,2BAAAA,WACHj3G,EAASw6H,EAAoCE,sBAAsB3G,EAAa0G,GAChF,MACF,KAAKxjB,EAAAA,2BAAAA,UACHj3G,EAASw6H,EAAoCG,qBAAqB5G,EAAa0G,GAC/E,MACF,KAAKxjB,EAAAA,2BAAAA,YACHj3G,EAASw6H,EAAoCI,uBAAuB7G,EAAa0G,GACjF,MACF,QACE,MAAM,IAAIloI,EAAAA,EAAe,iEAE7B,OAAOyN,EAGmB,6BAAC66H,EAAeJ,GAC1C,MAAMxjJ,EAASsW,IAAAA,KAAaktI,GACtB1T,EAAa8T,EAAc1D,WAG1BlgJ,EAAOkqI,KAAK10H,SAASlQ,SAAS+1C,OAAOwoG,EAAAA,kDAG5C,MAAM3hB,EAAc,GA0BpB,OAzBA,IAAU4hB,EAAAA,oCAAoC,CAACv2H,EAAGymE,KAChD,MAAM9xD,EAAI4tG,EAAWxqI,SAAS48H,YAAYluC,GACtC9xD,IACFggG,EAAYluC,GAAK9xD,MAGrB,IAAUliC,EAAOsF,SAAS48H,aAAa,CAAChgG,EAAG8xD,KACpC8vD,EAAAA,mCAAmC9vD,KACtCkuC,EAAYluC,GAAK9xD,MAIP,CACZ,CACE4sC,GAAI,UACJzsB,KAAM,iBACNh+C,MAAOrE,EAAOkqI,KAAK10H,UAErB,CACEs5D,GAAI,UACJzsB,KAAM,wBACNh+C,MAAO69H,IAOc,4BAAC8N,EAAWwT,GAErC,OAAOA,EAAer+I,KAGK,8BAAC4qI,EAAayT,GAEzC,OAAOA,EAAer+I,MAI1B,a,6HChDA,UAzBA,MAC8B,6BAACgsB,EAAKkxB,EAAMh+C,IAChCA,GAAmB,IAAVA,GAAiBA,aAAiBq8B,QAAUr8B,EAAMlE,OAC/D,IAAQgxB,EAAKkxB,GAEb,IAAMlxB,EAAKkxB,EAAMh+C,GAIa,mCAAC8sB,EAAKkxB,EAAMh+C,IACvCA,GAAmB,IAAVA,GAAgBA,aAAiBq8B,QAAUr8B,EAAMlE,OAC7D,IAAQgxB,EAAKkxB,GAEb,IAAMlxB,EAAKkxB,EAAMh+C,GAIF,oBAAC0/I,GAClB,IAAIz8I,EAAQ,IAAUy8I,EAAO,mBAAoB,KAIjD,OAHAz8I,EAAQ,IAAWA,EAAO,CAAEnH,OAAQ,GAAI8wI,SAAU,KAClD3pI,EAAQ,IAAUA,EAAO,WAAY,IACrCA,EAAQ,IAAUA,EAAO,WAAY,IAC9BA,K,2GCWX,UA9BA,MACsB,qBAACsmI,GAQnB,OAPA,IAAQA,EAAU3yD,MAAM,CAAC52E,EAAOhE,KAC9B,IACEutI,EAAU3yD,KAAK56E,GAAO6F,KAAKwZ,MAAMrb,GACjC,MAAOmX,GACPoyH,EAAU3yD,KAAK56E,GAAOgE,MAGnBupI,EAGsB,gCAACA,EAAW/kE,EAAWm7E,GAepD,OAdApW,EAAU3yD,KAAKgpE,EAAAA,uCAAuCp7E,GAAa,CACjEiqC,mBAAoB,GACpBE,mBAAoB,IAEtB,IAAUgxC,GAAWjvG,IACfA,aAAgBu+D,EAAAA,oBAClBs6B,EAAU3yD,KAAKgpE,EAAAA,uCAAuCp7E,GAAWiqC,mBAAmB/9D,EAAK9nC,IAAM,CAAE0mG,OAAQ,GAChG5+D,aAAgBy+D,EAAAA,sBACzBo6B,EAAU3yD,KAAKgpE,EAAAA,uCAAuCp7E,GAAWmqC,mBAAmBj+D,EAAK9nC,IAAM,CAAE0mG,OAAQ,OAG7G,IAAQi6B,EAAU3yD,MAAM,CAAC52E,EAAOhE,KAC9ButI,EAAU3yD,KAAK56E,GAAO6F,KAAKC,UAAU9B,MAEhCupI,K,mOC3BX,MAAMnN,EACuB,4BAACn7G,EAAQ43H,GAClC,OAAO,IAASA,GAAele,IAC7B,IAAIklB,EACAC,EAQJ,OAPI7+H,EAAO5Z,OAASsyH,EAAAA,6BAAAA,WAClBkmB,EAAU,IAAOllB,EAAI38C,IAAK,CAAEk7D,UAAW,CAAE4B,gBAAiB,CAAE36I,KAAM8gB,EAAO/X,SACzE42I,EAAa,IAAOnlB,EAAIptD,QAAS,CAAEg8D,UAAW,CAAEppI,KAAM8gB,EAAO/X,UAE7D22I,EAAU,IAAOllB,EAAI38C,IAAK,CAAEk7D,UAAW,CAAE6B,aAAc,CAAE56I,KAAM8gB,EAAO/X,SACtE42I,EAAa,IAAOnlB,EAAIptD,QAAS,CAAEpW,OAAQ,CAAEsyE,WAAYxoH,EAAO/X,SAE3D22I,GAAWC,KAIF,qBAAC7+H,GACnB,OAAO,IAAaA,EAAO/X,KAAM,kBAGpB,gBAAC46H,GACd,MAAoB,KAAbA,IAAoB,IAAWA,EAAU,SAAW,IAAWA,EAAU,OAGvD,4BAAC7iH,GAC1BA,EAAOu7G,KAAOv7G,EAAOg7G,cAA+C,IAA/Bh7G,EAAOg7G,aAAangI,OAG/B,6BAAC49H,EAAgBmf,GAC3C,IAAUnf,GAAiBz4G,IACzBA,EAAOg7G,aAAeG,EAA8B2jB,qBAAqB9+H,EAAQ43H,GACjFzc,EAA8B4jB,qBAAqB/+H,MAIpB,oCAAC43H,EAAcnf,GAChD,MAAMumB,EAAqBvmB,EAAe/qH,QAAQsS,GAA+F,IAApFm7G,EAA8B2jB,qBAAqB9+H,EAAQ43H,GAAc/8I,SAUtI,OARuB+8I,EAAar+I,KAAKmgI,IACvC,MAAMulB,EAAqBD,EAAmBtxI,QAAQsS,GAAW05G,EAAI6L,kBAAoBvlH,EAAO/X,MAAQyxH,EAAIE,eAAiB55G,EAAOi7G,YAC9HikB,EAAuBF,EAC1BtxI,QAAQsS,GAAW05G,EAAI2O,qBAAqBt8H,MAAM2rI,GAAOA,EAAGnP,oBAAsBvoH,EAAO/X,SACzFyF,QAAQsS,IAAYi/H,EAAmBlzI,MAAMmb,GAAMA,EAAEjf,OAAS+X,EAAO/X,SAExE,OADAyxH,EAAIY,eAAiB,IAAI2kB,KAAuBC,GACzCxlB,KAKK,iBAAC3qH,GAUf,OATAowI,IAAAA,eAAAA,WAAiC,CAAC,UACrB,IAAMA,IAAAA,MAAWpwI,EAAW6zH,WAAW,CAAC7jI,EAAOhE,KAC1D,MAAM45E,EAAQ,IAAI+tD,EAAAA,uCAClB/tD,EAAM6tD,IAAMznI,EACZ45E,EAAM0uD,MAAQtkI,EACd,MAAMqgJ,EAAW,IAAOrwI,EAAW4mE,KAAM,CAAE6sD,IAAK7tD,EAAM6tD,MAEtD,OADA7tD,EAAMuuD,WAAWkc,GAAWA,EAASlc,SAC9BvuD,KAKK,iBAAC5lE,GACf,IAAKA,EAAW4mE,KAAK96E,OAAQ,MAAO,GAEpC,MAAMgF,EAAO,IACXkP,EAAW4mE,MACX,CAAC/nD,EAAK+mD,KACJ/mD,EAAI+mD,EAAM6tD,KAAO7tD,EAAM0uD,MAChBz1G,IAET,IAEF,OAAOuxH,IAAAA,UAAet/I,GAGM,+BAACsmF,GAC7B,OAAQA,EAAcmlD,oBAI1B,a,kEC7EA,UAPA,MACqB,oBAAC31E,GAElB,OADiB,IAASA,GAAS5mB,GAAyB,YAAfA,EAAM3oC,OACnCvL,U,sFCoBpB,UAvBA,MACuB,sBAAC2uB,GACpB,MAAMi7G,EAAM,GAOZ,OANA,IAAUj7G,GAAO,CAACtqB,EAAMq8B,KACR,oBAAoB11B,KAAK3G,KAErCulI,EAAIlpG,IAAS,MAGVkpG,EAGW,qBAACj7G,GACnB,MAAM61H,EAAW,IAAU71H,GACrBi7G,EAAM,GAMZ,OALA,IAAUj7G,GAAO,CAACtqB,EAAMq8B,KAClBr8B,GAAQmgJ,EAASngJ,GAAMrE,OAAS,IAClC4pI,EAAIlpG,GAASr8B,MAGVulI,K,8HCpBX,MAAM6a,EACkB,uBAAC5U,GACrB,OAAQj7F,QAAoFxiC,IAA3E,IAAOwiC,EAAKzvC,SAASu/I,gBAAiB,CAAEza,IAAK4F,EAAU1qI,SAAS8kI,MAGxD,4BAAC0a,EAAQ9U,GAIlC,MAAM+U,EAAe,IAASD,EAAQ,CAAC,kBAAmB9U,EAAU9F,KAAKoB,SAASiG,cAE5EyT,EAAe,IAASD,EAAcH,EAAiCK,gBAAgBjV,IAG7F,OADmB,IAASgV,EAAc,CAAC,WAAY,+BAKhC,0BAACF,GAExB,OADgB,IAAOA,IAK3B,a,iLCtBA,MAAMI,EACkB,uBAACpV,GACrB,OAAQ/6F,QAAqFxiC,IAA5E,IAAOwiC,EAAKzvC,SAASu/I,gBAAiB,CAAEza,IAAK0F,EAAWxqI,SAAS8kI,MAGzD,4BAAC+a,EAAQrV,GAIlC,MAAMsV,EAAe,IAASD,EAAQ,CAAC,gBAAiBrV,EAAW5F,KAAKoB,WAElE+Z,EAAe,IAASD,EAAcF,EAAkCD,gBAAgBnV,IAG9F,OADmB,IAASuV,EAAc,CAAC,6BAA8B,kBAKlD,0BAACC,EAAgBxV,GACxC,MAAMqV,EAAS7uI,IAAAA,KAAagvI,GAMtBzoH,EAAU,IAAOsoH,GAASpwG,WAMvBA,EAAKm1F,KAAK10H,SAASlQ,SAAS+1C,OAAOwoG,EAAAA,kDACnC,IAAU/T,EAAW5F,KAAK10H,SAAUu/B,EAAKm1F,KAAK10H,aAGvD,OADAqnB,EAAQ0oH,SAAW1oH,EAAQv3B,SAAS48H,YAAYsjB,EAAAA,qCACzC3oH,EAOsB,gCAACsoH,GAC9B,MAAMM,EAAa,IAASN,GAASpwG,QAA4ExiC,IAAnEwiC,EAAKzvC,SAAS48H,YAAYsjB,EAAAA,uCACxE,OAAO,IAAMC,GAAa1wG,IACxBA,EAAKwwG,SAAWxwG,EAAKzvC,SAAS48H,YAAYsjB,EAAAA,qCACnCzwG,MAKb,a,wHC/CA,MAAM2wG,EACe,oBAACC,EAAc7I,GAChC,IAAI8I,EAAiBC,EAErB,OAAQ/I,EAAYjd,iBAClB,KAAKG,EAAAA,2BAAAA,YACF4lB,EAAiBC,GAAiBH,EAAwBI,wBAAwBH,EAAc7I,EAAYoD,KAC7G,MACF,KAAKlgB,EAAAA,2BAAAA,WACF4lB,EAAiBC,GAAiBH,EAAwBK,uBAAuBJ,EAAc7I,EAAYoD,KAC5G,MACF,KAAKlgB,EAAAA,2BAAAA,aACF4lB,EAAiBC,GAAiBH,EAAwBM,yBAAyBL,EAAc7I,EAAYoD,KAC9G,MACF,QACE,MAAM,IAAI5kI,EAAAA,EAAe,iEAG7B,OADAuqI,EAAgB,IAASA,EAAe,YACjC,CAACD,EAAiBC,GAGG,+BAACV,EAAQrV,GACrC,MAAMmW,EAAQf,EAAAA,QAAAA,qBAAuDC,EAAQrV,GAG7E,MAAO,CAFWoV,EAAAA,QAAAA,mBAAqDe,EAAOnW,GAC1DoV,EAAAA,QAAAA,yBAA2De,IAIpD,8BAACnB,EAAQ9U,GACpC,MAAMkW,EAAQtB,EAAAA,QAAAA,qBAAsDE,EAAQ9U,GAE5E,MAAO,CADW4U,EAAAA,QAAAA,mBAAoDsB,EAAOlW,GAC1DkW,GAGU,gCAACpB,EAAQ/U,GACtC,MAAMmW,EAAQC,EAAAA,QAAAA,qBAAwDrB,EAAQ/U,GAE9E,MAAO,CADWoW,EAAAA,QAAAA,mBAAsDD,EAAOnW,GAC5DmW,IAIvB,a,8HC/CA,MAAMC,EACkB,uBAACpW,GACrB,OAAQh7F,QAAsFxiC,IAA7E,IAAOwiC,EAAKzvC,SAASu/I,gBAAiB,CAAEza,IAAK2F,EAAYzqI,SAAS8kI,MAG1D,4BAAC0a,EAAQ/U,GAIlC,MAAMgV,EAAe,IAASD,EAAQ,CAAC,kBAAmB/U,EAAY7F,KAAKoB,SAASiG,cAE9EyT,EAAe,IAASD,EAAcoB,EAAmClB,gBAAgBlV,IAG/F,OADmB,IAASiV,EAAc,CAAC,WAAY,+BAKhC,0BAACF,GAExB,OADgB,IAAOA,IAK3B,a,6HCrBe,MAAM7lB,EAMK,yBAACp2D,GACvB,OAAOu9E,EAAAA,EAAAA,UAASv9E,GAQO,0BAACA,GACxB,OAAOA,IAAcw9E,EAAAA,6BAQQ,gCAACx9E,GAC9B,OAAO,IAAWy9E,EAAAA,qCAAsCz9E,M,yDCI5D,UAhCA,MACkC,iCAACrkE,GAC/B,OAAO+hJ,EAAAA,uCAAyC/hJ,EAGZ,uCAACA,GACrC,MAAQ,GAAEA,IAAOgxI,EAAAA,gDAGD,mBAAC9kH,EAAO81H,EAAW,EAAGC,GAAS,GAM/C,GAAc,IAAV/1H,EACF,MANU,CACV+xD,KAAM,EACNqxD,SAAU,KAOZ,MAAM9/C,EAAIyyD,EAAS,IAAO,KACpBC,EAAKF,EAAW,EAAI,EAAIA,EAGxBvmJ,EAAIud,KAAKwf,MAAMxf,KAAKstD,IAAIp6C,GAASlT,KAAKstD,IAAIkpB,IAEhD,MAAO,CACLvR,KAAMsiB,YAAYr0E,EAAQlT,KAAKmpI,IAAI3yD,EAAG/zF,IAAIu1F,QAAQkxD,IAClD5S,SANY,CAAC,IAAK,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,KAAM,MAM5C7zI,O,6JCzBtB,MAAMurI,EAC6B,kCAACxB,GAChC,MAAMhuF,EAAa,IAASguF,GAAM,CAAC92G,EAAK0zH,IAAQ,IAAS1zH,EAAK0zH,EAAIpuF,aAAa,IAE/E,OAAO,IACLxc,GACA,CAAC9oB,EAAK8kB,KACAA,EAAU2zF,WACR3zF,EAAU2zF,SAAShyG,SACrBzG,EAAIuwD,QAAUgoD,GAAAA,CAAezzF,EAAU2zF,SAAShyG,OAAQ,CAAE+xG,KAAM,MAG9D1zF,EAAU2zF,SAASntB,MACrBtrF,EAAIwrF,KAAO8sB,EAAoCqb,SAAS7uG,EAAU2zF,SAASntB,OAIxEtrF,IAET,IAAI4zH,EAAAA,+BAIO,gBAACtoC,GACd,IAAIurB,EAAMrkI,SAAS84G,EAAK,IAMxB,OALI,IAAWA,EAAK,KAClBurB,GAAO,IACE,IAAWvrB,EAAK,OACzBurB,GAAO,KAEFA,EAGY,sBAAC1lI,GACpB,OAAOmZ,KAAKwf,MAAMyuG,GAAAA,CAAepnI,GAAS,IAAO,KAGlC,kBAAC0iJ,GAChB,OAA6B,IAAtBtb,GAAAA,CAAesb,GAAc,IAGN,iCAAChiI,EAAOiiI,EAAOxiJ,EAAMyiJ,EAA2BC,GAC9E,IAAIC,EAAe,CAAEzoC,IAAK,EAAGj7B,OAAQ,GAQrC,GAPA,IAAU1+D,GAAQgwB,IAChBoyG,EAAazoC,KAAO3pE,EAAK2pE,IACzByoC,EAAa1jE,QAAUgoD,GAAAA,CAAe12F,EAAK0uC,WAE7C0jE,EAAazoC,IAAMlhG,KAAKyhB,MAAyB,GAAnBkoH,EAAazoC,KAAY,GACvDyoC,EAAa1jE,OAAS+nD,EAAoC4b,eAAeD,EAAa1jE,SAEjFwjE,EAA2B,CAC9B,MAAMI,EAAoB,IACxBL,GACA,CAAC9zH,EAAK4lH,KACAA,EAAKwO,OAASxO,EAAKvY,UAAUhzH,OAAS/I,IACxC0uB,EAAIwrF,KAAOo6B,EAAKwO,MAAM5xD,SACtBxiE,EAAIuwD,QAAUq1D,EAAKwO,MAAMjyD,aAEpBniE,IAET,CAAEwrF,IAAK,EAAGj7B,OAAQ,IAEhB4jE,EAAkB5jE,SACpB4jE,EAAkB5jE,OAAS+nD,EAAoC4b,eAAeC,EAAkB5jE,SAElG0jE,EAAazoC,IAAMlhG,KAAKyhB,MAAoH,GAA9G8lE,WAAWoiD,EAAazoC,IAAOyoC,EAAazoC,IAAMwoC,EAA6B,IAAMG,EAAkB3oC,MAAa,GAClJyoC,EAAa1jE,OAAS/9E,SAASyhJ,EAAa1jE,OAAU0jE,EAAa1jE,OAASyjE,EAA6B,IAAMG,EAAkB5jE,OAAQ,IAE3I,OAAO0jE,GAGX,a,qHCrDA,UAnBA,MACoC,mCAAC3iJ,GACjC,OAAO+iJ,EAAAA,gCAAkC/iJ,EAGT,mCAACk3D,EAAU8rF,GAC3C,GAAKA,EAAOtd,KAAK10H,SAGjB,OAAO,IAAOkmD,GAAW3mB,GAASA,EAAKm1F,KAAKoB,UAAY,IAAUkc,EAAOtd,KAAK10H,SAASlQ,SAAS+1C,OAAQtG,EAAKm1F,KAAKoB,YAGjF,oCAAC5vE,EAAU8rF,GAC5C,GAAKA,EAAOtd,KAAK10H,SAGjB,OAAO,IAASkmD,GAAW3mB,GAASA,EAAKm1F,KAAKoB,UAAY,IAAUkc,EAAOtd,KAAK10H,SAASlQ,SAAS+1C,OAAQtG,EAAKm1F,KAAKoB,e,iGCMxH,UAtBA,MAC+B,8BAAC4R,GAkB5B,OAjBY,IACVA,GACA,CAAChqH,EAAK8rG,KACJ,GAAIA,EAAIrjF,UAAW,CACjB,IAAIsN,EAAQ,IAAO/1B,EAAK,CAAE3lB,KAAMyxH,EAAIrjF,UAAWujF,aAAcF,EAAIE,eAC5Dj2E,IACHA,EAAQ,IAAIw+F,EAAAA,gBACZx+F,EAAM17C,KAAOyxH,EAAIrjF,UACjBsN,EAAMi2E,aAAeF,EAAIE,aACzBhsG,EAAI5uB,KAAK2kD,IAEXA,EAAMq3E,aAAah8H,KAAK06H,GAE1B,OAAO9rG,IAET,O,yDClBNw0H,SAAS,0BAA0B,KACjC,MAAM,uBAAEC,GAA2BC,EAAAA,QACnCz8I,KAAK,2DAA2D,KAC9D08I,OAAOF,EAAuB,KAAKG,aAAa,MAGlD38I,KAAK,kFAAkF,KACrF08I,OAAOF,EAAuB,CAAC,CAAEhsG,UAAW,IAAM,CAAEA,UAAW,IAAM,CAAEA,UAAW,IAAM,CAAEA,UAAW,OAAQmsG,aAAa,U,gLC2B9H,UAhCA,MAO6B,4BAACxrF,EAAQ4gF,GAClC,OAAO,IAASA,GAAele,IAC7B,MAAMlwG,EAAQ,IAAU,IAAMkwG,EAAIptD,QAAS,wCAAoCr/D,GACzEw1I,EAAgB,IAASj5H,GAAQtqB,GAAS,IAAa83D,EAAO23E,sBAAsB1mI,KAAM/I,KAChG,OACE83D,EAAO4iE,aAAaqB,UAAUhzH,OAASyxH,EAAIE,cAC3C6oB,EAAc5nJ,SACb6+H,EAAIa,kBAAoBG,EAAAA,2BAAAA,aAAyC,IAAW1jE,EAAO23E,sBAAsB1mI,KAAMyxH,EAAIzxH,UAK7G,cAACwnC,GACZ,OAAoC,IAA7BA,EAAKurF,aAAangI,OAGgB,4CAACqE,GAC1C,MAAO,UAAYA,EAAO,IAAMwjJ,GAAAA,GAGX,wBAAC1rF,GACtB,OAAQA,EAAO23E,sBAAsBtJ,oB,wJC5BlC,MAAMsd,EAIM,kBAAC9iJ,EAAMurI,GACtB,MAAM3G,EAAM,IAAIme,EAAAA,kCAchB,OAbAne,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAI+W,YAAc37I,EAAK+kI,KAAKie,YAC5Bpe,EAAIgX,YAAc57I,EAAK+kI,KAAKke,YAC5Bre,EAAIiX,qBAAuB77I,EAAK+kI,KAAKme,+BAEjCljJ,EAAK+kI,KAAKoe,iBACZve,EAAIwe,aAAar9C,WAAa/lG,EAAK+kI,KAAKoe,eAAex8E,WACvDi+D,EAAIwe,aAAaC,KAAOrjJ,EAAK+kI,KAAKoe,eAAenI,KACjDpW,EAAIwe,aAAah7I,KAAOpI,EAAK+kI,KAAKoe,eAAe9jJ,MAEnDulI,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GACvB4kI,EAGW,qBAAC5kI,GACnB,MAAMqc,EAAU,IAAIinI,EAAAA,+CASpB,OARAjnI,EAAQlc,SAASujE,UAAY1jE,EAAKo7H,UAClC/+G,EAAQlc,SAASd,KAAOW,EAAKojJ,aAAah7I,KAC1CiU,EAAQ0oH,KAAKie,YAAchjJ,EAAK27I,YAChCt/H,EAAQ0oH,KAAKke,YAAcjjJ,EAAK47I,YAChCv/H,EAAQ0oH,KAAKme,+BAAiCljJ,EAAK67I,qBACnDx/H,EAAQ0oH,KAAKoe,eAAex8E,WAAa3mE,EAAKojJ,aAAar9C,WAC3D1pF,EAAQ0oH,KAAKoe,eAAenI,KAAOh7I,EAAKojJ,aAAaC,KACrDhnI,EAAQ0oH,KAAKoe,eAAe9jJ,KAAOW,EAAKojJ,aAAah7I,KAC9CiU,EAGU,oBAACknI,EAAWC,GAC7B,MAAM/W,EAAaqW,EAA2CpW,cAAc6W,GACtE5W,EAAamW,EAA2CpW,cAAc8W,GAE5E,OADgB5W,EAAAA,GAAkBH,EAAYE,GAIb,oCAACz9H,EAAY8rI,GAC9C,MAAMpW,EAAM,IAAIme,EAAAA,kCAShB,OARAne,EAAIx8H,KAAO8G,EAAW9G,KACtBw8H,EAAIxJ,UAAYlsH,EAAW6qH,aAAaqB,UAAUhzH,KAClDw8H,EAAI+W,YAAczsI,EAAWi7H,WAAWwR,YACxC/W,EAAIgX,YAAc1sI,EAAWi7H,WAAWyR,YACxChX,EAAIiX,qBAAuB3sI,EAAWi7H,WAAW0R,qBACjDjX,EAAIwe,aAAah7I,KAAO8G,EAAW9G,KACnCw8H,EAAIwe,aAAaC,KAAOrI,EACxBpW,EAAIwe,aAAar9C,WAAa72F,EAAWi7H,WAAWpkC,WAC7C6+B,K,6LCjDJ,MAAM6e,EACsB,kCAACC,EAAO7pB,GACvC,MAAMmhB,EAAOyI,EAAwCE,yBAAyB9pB,GAC9E,OAAO,IAAO6pB,GAAQ9zG,GAASA,EAAKwzG,aAAaC,OAASrI,GAAQprG,EAAKwzG,aAAah7I,OAASyxH,EAAIzxH,OAGpE,gCAACyxH,GAC9B,GAAKA,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,YAA0ChB,aAAegT,EAAAA,qBAC5H,OAAOmK,EAAAA,iCAAAA,WACF,GAAKnd,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,WAAyChB,aAAeqS,EAAAA,oBAClI,OAAO8K,EAAAA,iCAAAA,UACF,GAAKnd,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,aAA2ChB,aAAe2Y,EAAAA,sBACpI,OAAOwE,EAAAA,iCAAAA,YACF,GAAInd,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,IACzE,OAAOmc,EAAAA,iCAAAA,IAEP,MAAM,IAAI7gI,EAAAA,EAAe,2C,0GCpB/B,MAAMytI,EAAqCvpJ,OAAOyyF,OAAO,CACvDhlF,GAAI,GACJszH,UAAW,GACXhzH,KAAM,GACNuzI,YAAa,EACbC,YAAa,EACbC,qBAAsB,EACtBuH,aAAc,CACZr9C,WAAY,GACZs9C,KAAM,GACNj7I,KAAM,IAERujI,KAAM,KAGD,MAAMoX,EACXvnG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU4iJ,Q,uHCjBlD,MAAMC,EAAkDxpJ,OAAOyyF,OAAO,CACpE3sF,SAAU,CACRujE,UAAW,GACXrkE,KAAM,IAER0lI,KAAM,CACJke,YAAa,EACbD,YAAa,EACbE,+BAAgC,EAChCC,eAAgB,CACdnI,KAAM,GACN37I,KAAM,OAKL,MAAMikJ,EACX9nG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU6iJ,Q,yDCnBlD1yI,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,qCAAsC,CACnF,YACA,yBACA,mBACA,SAAmDN,EAAWC,EAAwBC,GAEpF,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,+CAAiDyjB,EAAY,yBAA2B,IAAM,wCAGjI,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwyE,SAAU,CACRvoE,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,uHCrC5B,MAAM6nI,EAEJxoG,YAAYC,EAAQwoG,GAClB1oJ,KAAKkgD,OAASA,EACdlgD,KAAK0oJ,mCAAqCA,EAE1C1oJ,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MAEvCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CACpCtyB,KAAK0oJ,mCAAmCvgF,GAAWxpD,IAAInT,GAAQw6C,SAC/DhmD,KAAK0oJ,mCAAmCvgF,GAAWogF,QAAQ/8I,GAAQw6C,WAGrE,OADYuhG,EAAAA,2CAAAA,WAAsDwB,EAAK/Y,GAEvE,MAAOl1H,GACP,MAAM,IAAIF,EAAAA,EAAe,6CAA8CE,IAI1D,kBAACqtD,GAChB,IACE,MAAM1jE,QAAazE,KAAK0oJ,mCAAmCvgF,GAAWxpD,MAAMqnC,SAE5E,OADY,IAAMvhD,EAAK2kH,OAAQ/0E,GAASkzG,EAAAA,2CAAAA,WAAsDlzG,KAE9F,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,8CAA+CE,IAI5E6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAAC6gF,GAChB,IACE,MAAMx9I,EAAS,GACTsV,EAAUymI,EAAAA,2CAAAA,cAAyDyB,GACnE7gF,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAK0oJ,mCAAmCvgF,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAE9F,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2CAA4CE,IAIzE49B,OAAOswG,GACL,OAAOhpJ,KAAKkgD,OAAOlgD,KAAKiwF,YAAa+4D,GAMvB,iBAACC,EAA4BC,GAC3C,IACE,MAAM19I,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK4qJ,EAA2Br8I,KACvC,MAAMs7D,EAAY+gF,EAA2BrpB,UACvC/+G,EAAUymI,EAAAA,2CAAAA,aAAwD0B,EAA4BC,GACpG,IAAKpoI,EAAQrhB,OACX,OAGF,aADmBO,KAAK0oJ,mCAAmCvgF,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAE7F,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0CAA2CE,IAIxEkwC,MAAMi+F,EAA4BC,GAChC,OAAOlpJ,KAAKkgD,OAAOlgD,KAAK4oJ,WAAYK,EAA4BC,GAMjD,kBAACF,GAChB,IACE,MAAMx9I,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK0qJ,EAAwBn8I,KACpC,MAAMs7D,EAAY6gF,EAAwBnpB,gBACpC7/H,KAAK0oJ,mCAAmCvgF,GAAWhnB,OAAO31C,GAAQw6C,SACxE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2CAA4CE,IAIzEqmC,OAAO6nG,GACL,OAAOhpJ,KAAKkgD,OAAOlgD,KAAK6oJ,YAAaG,I,0DAqBzC,YACApzI,IAAAA,OAAe,wBAAwB+H,QAAQ,2CAA4C8qI,I,8XCtIpF,MAAMU,EAAmC,8BAKnCC,EAA0C,CACrDhiB,IAAK,6CACLa,MAAO,OAGIohB,EAA4C,CACvDjiB,IAAK,+CACLa,MAAO,OAGIqhB,EAAqC,CAChDliB,IAAK,wCACLa,MAAO,QAGIshB,EAA8BzqJ,OAAOyyF,OAAO,CACvDi4D,MAAO,QACPC,QAAS,YAGEC,EAA6B,qC,sbCXnC,MAAMvV,EACM,kBAAC1vI,GAChB,MAAMklJ,EAAQ,IAAUllJ,EAAK+kI,KAAKsC,OAAQrM,GAChCA,EAAKmqB,KAET,IAAMnqB,EAAKmqB,KAAKD,OAAQhoG,IACtB,MAAMkoG,EAAU,IAAIC,EAAAA,sBAOpB,OANAD,EAAQhlB,YAAcpgI,EAAKG,SAASd,KACpC+lJ,EAAQ9xE,YAAcp2B,EAAKooG,QAAQpsI,QAAQ7Z,KAC3C+lJ,EAAQjkG,KAAO65E,EAAKzoF,MAAQ,GAC5B6yG,EAAQzyG,GAAK3yC,EAAKyT,OAAOqzH,aAAazG,QAAUrgI,EAAKyT,OAAOqzH,aAAazG,QAAQ,GAAG3tF,QAAKtlC,EACzFg4I,EAAQ/qB,KAAOn9E,EAAKooG,QAAQpsI,QAAQq6B,KAAKzvC,OACzCshJ,EAAQtjG,KAAO5E,EAAKA,KACbkoG,KATT,KAaAxgB,EAAM,IAAI2gB,EAAAA,kBAChB3gB,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAI4gB,YAAcxlJ,EAAKG,SAAS48H,aAAe,GAC/C6H,EAAI6gB,iBACFzlJ,EAAKG,SAAS48H,aAAe/8H,EAAKG,SAAS48H,YAAY2nB,EAAAA,kCACnD1kJ,EAAKG,SAAS48H,YAAY2nB,EAAAA,kCAC1B1kJ,EAAK+kI,KAAK2gB,iBAChB9gB,EAAIkW,MAAQoK,EACZtgB,EAAIrjD,MAAQ,IAAO,IAAMvhF,EAAK+kI,KAAKsC,MAAO,SAC1C,MAAMnhE,EAAM,IAAY0+D,EAAIrjD,OAAQsC,QAAYz2E,IAANy2E,IAI1C,OAHI3d,GAAO,GACT0+D,EAAIrjD,MAAM/iB,OAAO0H,EAAK,EAAG,IAEpB0+D,EAS8B,wCAAC11H,EAAY+wH,GAClD,MAAM0lB,EAAwBz2I,EAAWm7H,iBAAmB3K,EAAAA,qCAAAA,QACtDoF,EAAY3zH,QAAQu0D,KAAKx2D,EAAW02I,mBAmB1C,OAlBA,IAAU12I,EAAWgrH,gBAAiBp0F,IACpC,MAAMu6F,EAAU,IAAOyE,EAAW,CAAE18H,KAAM09B,EAAEs6F,cAC5C,GAAIC,EACF,GAAIv6F,EAAEyoG,cACJ,IAASlO,EAAQya,OAAQ59F,GAASA,EAAKm9E,OAASv0F,EAAE+rG,eAAiB30F,EAAKo2B,cAAgB2sD,GAAe/iF,EAAK4E,OAAShc,EAAEs1G,oBAClH,GAAIuK,GAAyB7/G,EAAE8rG,MAAO,CAC3C,MAAM5W,EAAO,IAAIqqB,EAAAA,sBACjBrqB,EAAKoF,YAAcC,EAAQj4H,KAC3B4yH,EAAK1nD,YAAc2sD,EACnBjF,EAAKX,KAAOv0F,EAAE+rG,cACV/rG,EAAEs1G,eACJpgB,EAAKl5E,KAAO,IAAahc,EAAEs1G,aAAc,KAAOt1G,EAAEs1G,aAAe,IAAMt1G,EAAEs1G,cAE3EpgB,EAAK75E,KAAOrb,EAAEu1G,YACdhb,EAAQya,MAAM37I,KAAK67H,OAIlB8J,EAGoC,8CAAC51H,EAAYyoI,GACxD,MAAM7S,EAAY3zH,QAAQu0D,KAAKx2D,EAAW02I,mBAS1C,OARAjO,EAAY/V,SAASxuH,SAAS8F,IAC5B4rH,EAAU1xH,SAASitH,IACjB,MAAMnjF,EAAO,IAAOmjF,EAAQya,MAAO,CAAExnE,YAAap6D,EAAQ/Y,SAASd,OAC/D69C,GACF,IAASmjF,EAAQya,MAAO59F,SAIvB4nF,EAGkB,4BAACA,EAAWvuE,GACrC,MAAMsvF,EAAkB10I,QAAQu0D,KAAKo/D,GAMrC,OALA+gB,EAAgBzyI,SAASitH,IACvB9pE,EAASnjD,SAAS8F,IAChB,IAASmnH,EAAQya,MAAO,CAAExnE,YAAap6D,EAAQ9Q,aAG5Cy9I,EAGkB,4BAAC/gB,EAAWvuE,GACrC,MAAM4pE,EAAoBhvH,QAAQu0D,KAAKo/D,GAkBvC,OAjBAvuE,EACG1oD,QAAQkpB,GAAMA,EAAE2mD,UAChBtqE,SAAS8F,IACR,GAA6B,IAAzBA,EAAQm9B,MAAMr7C,OAAc,CAC9B,MAAM8qJ,EAAiB,IAAO3lB,EAAmB,CAAE/3H,KAAM8Q,EAAQm9B,MAAM,GAAGgqF,QAAQD,cAClF,GAAI0lB,EAAgB,CAClB,MAAM9qB,EAAO,IAAIqqB,EAAAA,sBACjBrqB,EAAK1nD,YAAcp6D,EAAQ9Q,KAC3B4yH,EAAKoF,YAAclnH,EAAQm9B,MAAM,GAAGgqF,QAAQD,YAC5CpF,EAAK75E,KAAOjoC,EAAQm9B,MAAM,GAAGgqF,QAAQl/E,KACrC65E,EAAKl5E,KAAO,IAAa5oC,EAAQm9B,MAAM,GAAGgqF,QAAQv+E,KAAM,KAAO5oC,EAAQm9B,MAAM,GAAGgqF,QAAQv+E,KAAO,IAAM5oC,EAAQm9B,MAAM,GAAGgqF,QAAQv+E,KAC9Hk5E,EAAKX,KAAOnhH,EAAQm9B,MAAM,GAAG9C,KAE7BuyG,EAAehL,MAAM37I,KAAK67H,QAI3BmF,EAIiC,2CAACjxH,EAAY+wH,EAAaK,GAClE,MAAMwE,EAAY3zH,QAAQu0D,KAAKx2D,EAAW02I,mBAc1C,OAbAtlB,EAAaltH,SAASmgC,IACpB,MAAM8sF,EAAU,IAAOyE,EAAW,CAAE18H,KAAMmrC,EAAK8sF,QAAQD,cACvD,GAAIC,EAAS,CACX,MAAMrF,EAAO,IAAIqqB,EAAAA,sBACjBrqB,EAAK1nD,YAAc2sD,EACnBjF,EAAKoF,YAAc7sF,EAAK8sF,QAAQD,YAChCpF,EAAK75E,KAAO5N,EAAK8sF,QAAQl/E,KACzB65E,EAAKl5E,KAAO,IAAavO,EAAK8sF,QAAQv+E,KAAM,KAAOvO,EAAK8sF,QAAQv+E,KAAO,IAAMvO,EAAK8sF,QAAQv+E,KAC1Fk5E,EAAKX,KAAO9mF,EAAKA,KAEjB8sF,EAAQya,MAAM37I,KAAK67H,OAGhB8J,EAQwC,kDAAC51H,GAChD,MAAM01H,EAAM,IAAI2gB,EAAAA,kBAChB3gB,EAAIx8H,KAAO8G,EAAW62I,aAAa39I,KACnCw8H,EAAIxJ,UAAYlsH,EAAWksH,UAC3B,MAAM4qB,EAAQ,IAAM92I,EAAWs2I,aAAc7hF,GAAM,CAACA,EAAEg/D,IAAKh/D,EAAE6/D,SAM7D,OALAoB,EAAI4gB,YAAc,IAAYQ,GAC9BphB,EAAI4gB,YAAYP,EAAAA,4BAA8B/1I,EAAW62I,aAAa39I,KACtEw8H,EAAI6gB,iBAAmBv2I,EAAW62I,aAAa39I,KAC/Cw8H,EAAIrjD,MAAQryE,EAAWqyE,MACvBqjD,EAAIkW,MAAQ5rI,EAAW4rI,MAChBlW,EAQwB,kCAACqhB,EAAKnhB,GA4BrC,OA3BY,IAAMmhB,GAAMC,IACtB,MAAM7S,EAAK,IAAI8S,EAAAA,4CAA4CD,GACrD7lB,EAAU,IAAOyE,EAAW,CAAE18H,KAAM89I,EAAG99I,OAC7C,GAAIi4H,EAAS,CACXgT,EAAG5D,UAAW,EACd4D,EAAG+S,aAAc,EACjB/S,EAAG9xD,MAAQ,IAAM8+C,EAAQ9+C,OAAQhvC,IAC/B,MAAM8zG,EAAM,IAAIC,EAAAA,gDAIhB,OAHAD,EAAIllG,KAAO5O,EACX8zG,EAAIE,aAAeh0G,EACnB8zG,EAAIzU,OAAQ,EACLyU,KAET,MAAMtpB,EAAc,IAAM,IAAUsD,EAAQmlB,cAAc,EAAEtqJ,EAAKgE,MAC/D,GAAIhE,IAAQ+pJ,EAAAA,2BAA4B,CACtC,MAAM3T,EAAa,IAAIkV,EAAAA,sDAGvB,OAFAlV,EAAW3O,IAAMznI,EACjBo2I,EAAW9N,MAAQtkI,EACZoyI,MAGX+B,EAAGmS,YAAc,IAAUzoB,OAAa3vH,GACxCimI,EAAGoT,eAAiBpT,EAAGmS,YAAYxqJ,OAAS,EAC5Cq4I,EAAGyH,MAAQza,EAAQya,MAErB,OAAOzH,KAKS,qBAACrzI,GACnB,MAAM4kI,EAAM,IAAI8hB,EAAAA,+BAKhB,GAJA9hB,EAAIzkI,SAASd,KAAOW,EAAKoI,KACzBw8H,EAAIzkI,SAASujE,UAAY1jE,EAAKo7H,UAC9BwJ,EAAIzkI,SAAS48H,YAAc/8H,EAAKwlJ,YAChC5gB,EAAIG,KAAK2gB,iBAAmB1lJ,EAAKylJ,iBAC7BzlJ,EAAK86I,OAAS96I,EAAK86I,MAAM9/I,OAAQ,CACnC,IAAUgF,EAAK86I,OAAQh1G,IACN,cAAXA,EAAEqb,WAAmC/zC,IAAX04B,EAAEqb,OAC9Brb,EAAEqb,KAAO,OAGb,MAAMwlG,EAAiB,GACjBr1I,EAAS,IAAUtR,EAAK86I,MAAO,QACrC,IAAIzT,EAAQ,IAAM/1H,GAAQ,CAAC4zI,EAAO3yG,KAChC,MAAMq0G,EAAc,IAAO5mJ,EAAKuhF,OAAQsC,GAC/BA,IAAMtxC,GAAQsxC,EAAE0iE,eAAiBh0G,IAG1C,GADAA,EAAOq0G,EAAYzlG,MAAQylG,EACvBA,EAAYrY,cACd,OAEF,MAAMvT,EAAO,IAAI6rB,EAAAA,mCAUjB,OATAtc,EAAAA,QAAAA,sBAA6CvP,EAAM,OAAQzoF,GAC3DyoF,EAAKmqB,KAAKD,MAAQ,IAAMA,GAAQp/G,IAC9B,MAAMoX,EAAO,IAAI4pG,EAAAA,uCAIjB,OAHA5pG,EAAKA,KAAOpX,EAAEgc,KACd5E,EAAKooG,QAAQpsI,QAAQ7Z,KAAOymC,EAAEwtC,YAC9Bp2B,EAAKooG,QAAQpsI,QAAQq6B,KAAKzvC,OAASgiC,EAAEu0F,KAC9Bn9E,KAETypG,EAAexnJ,KAAKozC,GACbyoF,KAETqM,EAAQ,IAAUA,OAAOj6H,GACzB,MAAM25I,EAAY,IAChB,IAAM/mJ,EAAKuhF,OAAQsC,GAAOA,EAAE0qD,mBAAgBnhI,EAAYy2E,EAAE1iC,MAAQ0iC,SAClEz2E,GAEI45I,EAAoB,IAAUD,KAAcJ,GAC5CM,EAAa,IAAMD,GAAoBz0G,IACpC,CAAEA,KAAMA,MAEjB80F,EAAQ,IAASA,EAAO4f,GACxB1c,EAAAA,QAAAA,sBAA6C3F,EAAK,aAAcyC,QACvDrnI,EAAKuhF,OACdqjD,EAAIG,KAAKsC,MAAQ,GACjB,IAAUrnI,EAAKuhF,OAAQhvC,IAChBA,EAAKg8F,eACR3J,EAAIG,KAAKsC,MAAMloI,KAAK,CAAEozC,KAAMA,EAAK4O,MAAQ5O,eAItCqyF,EAAIG,KAAKsC,MAElB,OAAOzC,EAGU,oBAACsiB,EAASC,GAC3B,MAAM1a,EAAaiD,EAA2BhD,cAAcwa,GACtDva,EAAa+C,EAA2BhD,cAAcya,GAE5D,OADgBva,EAAAA,GAAkBH,EAAYE,M,2IC/P3C,MAAMrF,EAC2B,uCAACxC,EAAW7E,GAChD,MAAMoH,EAAQ,IAAUvC,EAAW,SACnC,OAAO,IAASuC,EAAO,CAAE/zD,YAAa2sD,O,mCCLnC,SAASslB,IACd,MAAO,CACLn9I,KAAM,GACNgzH,UAAW,GACXoqB,YAAa,GAEbjkE,MAAO,GAEPu5D,MAAO,GACP2K,iBAAkB,IAQf,SAASJ,IACd,MAAO,CACLjlB,YAAa,GACb9sD,YAAa,GACbnyB,KAAM,GACNxO,GAAI,GACJ0nF,KAAM,GACNv4E,KAAM,IAIH,SAASslG,IACd,MAAO,CACLh/I,KAAM,GACN7B,UAAM6G,EACNmhI,eAAe,EACfqD,OAAO,G,yXC/BJ,SAAS8U,IACd,MAAO,CACLvmJ,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJ2gB,iBAAkB,GAClBre,MAAO,KAKN,SAASwf,IACd,MAAO,CACLt0G,KAAM,GACN4yG,KAAM,CACJD,MAAO,KAKN,SAAS4B,IACd,MAAO,CACL5pG,KAAM,GACNoqG,SAAU,yBACVhC,QAAS,CACPpsI,QAAS,CACP7Z,KAAM,GACNk0C,KAAM,CACJzvC,OAAQ,Q,yDCzBlB,SAASw8C,EAAQN,EAAWC,EAAwBC,GAElD,OAAO,SAAUwjB,GAEf,OAAO1jB,EADM,GAAEC,qDAA0EyjB,EAAY,yBAA2B,2BAG9H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwyE,SAAU,CACRvoE,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,a,oEAvC1BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,sBAAuBA,I,kMCK/D,SAASinG,EAAyB9rG,EAAQ+rG,GAC/C,MAAO,CACLttI,IA+BF,SAAawpD,EAAWrkE,GACtB,OAAIA,EACKo8C,EAAOgsG,EAAQ/jF,EAAWrkE,GAE5Bo8C,EAAOisG,EAAQhkF,IAlCtBzvB,OAqCF,SAAgBosF,GACd,OAAO5kF,GAAO2F,UACZ,IACE,MAAMr6C,EAAS,GACTsV,EAAUqzH,EAAAA,2BAAAA,cAAyCrP,GACnD38D,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmB8jF,EAAoB9jF,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAE1E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2BAA4BE,QA7CzDkwC,MAkDF,SAAeohG,EAAYC,GACzB,OAAOnsG,GAAO2F,UACZ,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK+tJ,EAAWx/I,KACvB,MAAMs7D,EAAYkkF,EAAWxsB,UACvB/+G,EAAUqzH,EAAAA,2BAAAA,aAAwCiY,EAAYC,GACpE,IAAKvrI,EAAQrhB,OACX,OAGF,aADmBwsJ,EAAoB9jF,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAEzE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,QA9DxDqmC,OAmEF,SAAiBgnB,EAAWgiF,GAC1B,OAAOjqG,GAAO2F,UACZ,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK6rJ,QACN8B,EAAoB9jF,GAAWhnB,OAAO31C,GAAQw6C,SACpD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2BAA4BE,SAvE3D+qC,eAAeqmG,EAAO/jF,EAAWrkE,GAC/B,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAAC25H,EAAoB9jF,GAAWxpD,IAAInT,GAAQw6C,SAAUimG,EAAoB9jF,GAAWogF,QAAQ/8I,GAAQw6C,WAK3I,MAJY,CACVw5F,IAAKrL,EAAAA,2BAAAA,WAAsC4U,GAC3C3Y,KAAMJ,EAAKvrI,MAGb,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3D+qC,eAAesmG,EAAOhkF,GACpB,IACE,MAAM1jE,QAAawnJ,EAAoB9jF,GAAWxpD,MAAMqnC,SAExD,OADY,IAASvhD,EAAK2kH,OAAO,CAAC5xG,EAAK68B,IAAS,IAAS78B,EAAK28H,EAAAA,2BAAAA,WAAsC9/F,KAAQ,IAE5G,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,K,2CAwD/DlF,IAAAA,OAAe,wBAAwB+H,QAAQ,2BAA4BquI,I,wFCxF3E,MAAMM,EAEJrsG,YAAYC,EAAQqsG,GAClBvsJ,KAAKkgD,OAASA,EACdlgD,KAAKusJ,kBAAoBA,EAEzBvsJ,KAAKwsJ,kBAAoBxsJ,KAAKwsJ,kBAAkBntJ,KAAKW,MAErDA,KAAKysJ,YAAczsJ,KAAKysJ,YAAYptJ,KAAKW,MACzCA,KAAK0sJ,aAAe1sJ,KAAK0sJ,aAAartJ,KAAKW,MAE3CA,KAAK2sJ,aAAe3sJ,KAAK2sJ,aAAattJ,KAAKW,MAC3CA,KAAK4sJ,cAAgB5sJ,KAAK4sJ,cAAcvtJ,KAAKW,MAMxB,wBAAC6kD,GACtB,UACQ7kD,KAAKusJ,oBAAoBx1F,aAAa,CAAEx4C,WAAYsmC,IAAcmB,SACxE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3Di8C,aAAalS,GACX,OAAO7kD,KAAKkgD,OAAOlgD,KAAKwsJ,kBAAmB3nG,GAQ3B,mBAACpN,GACjB,IACE,MAAMjsC,EAAS,IAAIs9I,EAAAA,uBAGnB,OAFAt9I,EAAOlN,GAAKm5C,QACOz3C,KAAKusJ,oBAAoBM,QAAQrhJ,GAAQw6C,SAE5D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI9D+xI,QAAQp1G,GACN,OAAOz3C,KAAKkgD,OAAOlgD,KAAK0sJ,aAAcj1G,GASvB,kBAAC0wB,EAAW2kF,GAC3B,IACE,MAAMthJ,EAAS,IAAIs9I,EAAAA,uBAGnB,OAFAt9I,EAAOlN,GAAKwuJ,QACO9sJ,KAAKusJ,kBAAkBpkF,GAAW4kF,OAAOvhJ,GAAQw6C,SAEpE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI7DiyI,OAAO5kF,EAAW2kF,GAChB,OAAO9sJ,KAAKkgD,OAAOlgD,KAAKysJ,YAAatkF,EAAW2kF,GAQ/B,oBAACjoG,GAClB,IAEE,aADmB7kD,KAAKusJ,oBAAoBxuC,SAAS,CAAEx/F,WAAYsmC,IAAcmB,SAEjF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI/DijG,SAASl5D,GACP,OAAO7kD,KAAKkgD,OAAOlgD,KAAK4sJ,cAAe/nG,GAQvB,mBAACsjB,GACjB,IAEE,aADmBnoE,KAAKusJ,kBAAkBpkF,GAAW6kF,UAAUhnG,SAE/D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI7DkyI,QAAQ7kF,GACN,OAAOnoE,KAAKkgD,OAAOlgD,KAAK2sJ,aAAcxkF,I,yCAI1C,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,2BAA4B2uI,I,iBCjH3E12I,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,oBAAqB,CAClE,YACA,yBACA,mBACA,SAA2BN,EAAWC,EAAwBC,GAC5D,aACA,OAAO,SAAUwjB,GACf,MAAM1hE,EAAMi+C,EAAyB,sDAC/BuoG,EAAU,GAAExmJ,IAAM0hE,EAAY,yBAA2B,cAE/D,OAAO1jB,EACLh+C,EACA,CACE8X,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACEpR,aAAc,CAAEn2C,OAAQ,OACxBmsI,OAAQ,CACNnsI,OAAQ,MACRna,IAAKwmJ,GAEPJ,QAAS,CACPjsI,OAAQ,MACRna,IAAM,GAAEA,eAEVumJ,QAAS,CACPpsI,OAAQ,MACRna,IAAM,GAAEA,gCAEVs3G,SAAU,CACRn9F,OAAQ,MACRna,IAAM,GAAEA,kB,+tBC1Bb,SAASioI,IACd1uI,KAAKm/H,qBAAkBttH,EACvB7R,KAAKw+H,aAAe,GACpBx+H,KAAK6M,KAAO,GACZ7M,KAAKi7C,UAAY,GACjBj7C,KAAKiqI,iBAAmB,GACxBjqI,KAAK2uI,WAAa,IAAIjrD,EAAAA,sBACtB1jF,KAAKqqI,KAAO,GACZrqI,KAAK20F,YAAc,EACnB30F,KAAKg1F,SAAW,EAChBh1F,KAAK8tH,eAAiBuR,EAAAA,qCAAAA,WACtBr/H,KAAK8hE,aAAe,EACpB9hE,KAAK4uI,WAAa,GAClB5uI,KAAK83D,WAAa,GAClB93D,KAAKqmI,SAAW,GAChBrmI,KAAKm5G,qBAAuB,GAC5Bn5G,KAAK4tI,iBAAmBC,EAAAA,wCAAAA,SACxB7tI,KAAKwsI,iBAAmB,GACxBxsI,KAAKk/H,eAAiB,GACtBl/H,KAAK8uI,eAAiB3K,EAAAA,qCAAAA,WACtBnkI,KAAK2+H,eAAiB,GACtB3+H,KAAK8gJ,cAAgBG,EAAAA,oCAAAA,UACrBjhJ,KAAK6gJ,WAAa,GAClB7gJ,KAAKqqJ,uBAAoBx4I,EACzB7R,KAAKktJ,qBAAsB,EAGtB,MAAMjP,EAA+Dn/I,OAAOyyF,OAAO,CACxF47D,KAAM,EACNC,YAAa,EACbC,WAAY,IAMRC,EAA2DxuJ,OAAOyyF,OAAO,CAC7E61C,IAAK,GACL7gF,KAAM,GACNv7C,KAAMizI,EAA6DmP,cAG9D,MAAMpP,EACX/9F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU6nJ,MAOlD,MAAMC,EAA+CzuJ,OAAOyyF,OAAO,CACjEqsD,2BAAuB/rI,EACvBgsI,WAAW,EACXC,cAAe,KAGV,MAAMH,EACX19F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU8nJ,MAOlD,MAAMC,EAAqD1uJ,OAAOyyF,OAAO,CACvE1kF,KAAM,GACNo7H,MAAO,GACPwlB,UAAU,EACVza,eAAe,EACfqD,OAAO,EACP0G,UAAW,KAGN,MAAMD,EACX78F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU+nJ,MAOlD,MAAME,EAAiD5uJ,OAAOyyF,OAAO,CACnEw7C,0BAA2B,GAC3BiG,eAAe,EACfQ,cAAe,GACfzxD,KAAM,GACNqxD,SAAU,KACVN,aAAc,GACdI,eAAgB,KAChBya,cAAc,IAGT,MAAMpN,EACXtgG,YAAY83F,GACVj5I,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUioJ,KAC9C1tJ,KAAK8yI,aAAeiF,GAOjB,SAAS6H,IACd,MAAO,CACL5M,eAAe,EACfqD,OAAO,EACPC,cAAe,GACf1K,SAAU,GACV2K,iBAAkB,GAClBC,0BAAsB3kI,EACtBojG,SAAU,MACV4vB,iBAAahzH,EACbguI,kBAAchuI,EACdiuI,iBAAajuI,EACbkuI,aAAc,IAIX,SAASuB,IACd,MAAO,CACLC,MAAO,GACPtZ,MAAO,GACP+K,eAAe,EACfqD,OAAO,GAOX,MAAMuX,EAA4C9uJ,OAAOyyF,OAAO,CAC9D6uD,YAAa,EACbC,YAAa,EACbC,qBAAsB,GACtB91C,WAAY,GACZ21C,QAAQ,IAGH,MAAMD,EACXjgG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUmoJ,MAI3C,SAASloB,IACd,MAAO,CACLJ,KAAM,GACNC,SAAS,K,6yBC5JN,MAAMlG,EAAuCvgI,OAAOyyF,OAAO,CAChEs8D,WAAY,EACZC,OAAQ,IAGGjgB,EAA0C/uI,OAAOyyF,OAAO,CACnEw8D,OAAQ,EACRC,SAAU,IAGC1uB,EAA6BxgI,OAAOyyF,OAAO,CACtD08D,WAAY,EACZC,UAAW,EACXC,YAAa,EACbC,IAAK,EACLC,KAAM,IAGK5S,EAAmC38I,OAAOyyF,OAAO,CAC5D88D,KAAM,OACNJ,WAAY,aACZC,UAAW,YACXC,YAAa,cACbC,IAAK,QAGMjqB,EAAuCrlI,OAAOyyF,OAAO,CAChE+8D,WAAY,EACZC,UAAW,EACXC,cAAe,EACfC,QAAS,IAGExN,EAAsCniJ,OAAOyyF,OAAO,CAC/Dm9D,UAAW,EACXC,UAAW,IAGAC,EAAqC,CAChD55D,SAAU,GACVL,YAAa,IAGFm1C,EAA+C,4CAE/CD,EAA6C,8CAE7CG,EAA0C,2CAE1CI,EAA0C,2CAE1CF,EAA2C,4CAE3CI,EAAqC,4C,0kDChDlD,MAAMukB,EAAyB/vJ,OAAOyyF,OAAO,CAC3ChlF,GAAI,GACJM,KAAM,GACNouC,UAAW,GACX2uF,QAAS,GACTG,gBAAiB,GACjBE,iBAAkB,GAClBE,gBAAiB,GACjB3L,aAAc,GACdt3D,MAAO,GACPujE,aAAc,EACdE,KAAM,GACN7yE,WAAY,GACZ6xE,SAAU,GACV5lD,OAAQ,GACRmnD,YAAa,GACbpzD,UAAW,GACXC,YAAa,GACbw2D,yBAAqB18H,EACrBmtH,2BAAuBntH,EACvB8sH,eAAgB,GAChBztD,QAAS,GACTyQ,IAAK,GACL6qD,iBAAkB,GAClBS,qBAAsB,GACtBnf,eAAgB,UAChB8f,iBAAkB,UAClBzO,gBAAiB,UACjB2O,iBAAkB,EAClBI,eAAgB,EAChBkC,KAAM,GACN/F,KAAM,GACNykB,eAAWj9I,EACXk9I,qBAAiBl9I,EACjB2tI,SAAK3tI,EACL+8H,gBAAY/8H,IAGP,MAAM67H,EACXztF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUopJ,MAO3C,MAAMxM,EACXpiG,cACEjgD,KAAKuM,GAAK,GACVvM,KAAK6M,KAAO,GACZ7M,KAAK89H,uBAAyB,GAC9B99H,KAAKiqI,iBAAmB,GACxBjqI,KAAKyqI,aAAe,EACpBzqI,KAAKm/H,gBAAkB,UACvBn/H,KAAKiZ,OAAS,GACdjZ,KAAKi7C,UAAY,IACjBj7C,KAAKw+H,aAAe,IACpBx+H,KAAKknE,MAAQ,IACblnE,KAAK2+H,eAAiB,IAO1B,MAAMqwB,EAAwClwJ,OAAOyyF,OAAO,CAC1Ds7C,UAAW,GACXE,0BAA2B,GAC3BC,SAAU,KAGL,MAAMJ,EACX3sF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUupJ,MAOlD,MAAMC,EAA4CnwJ,OAAOyyF,OAAO,CAC9Dg8C,cAAe,GACfC,cAAe,GACfC,iBAAkB,GAClBN,kBAAmB,KAGd,MAAMG,EACXrtF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUwpJ,MAOlD,MAAMC,EAA6BpwJ,OAAOyyF,OAAO,CAC/CstC,aAAc,GACd+M,SAAU,EACV52B,WAAY,EACZ8pB,KAAM,EACN7pB,SAAU,KAGL,MAAM02B,EACX1rF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUypJ,MAI3C,MAAMC,EAA4BrwJ,OAAOyyF,OAAO,CACrD69D,IAAK,MACLC,QAAS,UACTC,iBAAkB,mBAClBjoF,IAAK,S,4hBCpHP,MAAMkoF,EAAoCzwJ,OAAOyyF,OAAO,CACtDztF,KAAM,GACNgpI,UAAW,GACX75F,UAAU,IAGL,MAAM+rG,EACX/+F,YAAYhN,GACVn0C,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU8pJ,KAC1Ct8G,EACFjzC,KAAKizC,UAAW,SAETjzC,KAAKizC,UASlB,MAAMu8G,EAAgD1wJ,OAAOyyF,OAAO,CAClEztF,KAAM,GACNqoI,sBAAuB,CACrBC,UAAW,MAIR,MAAMqU,EACXxgG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU+pJ,MAQlD,MAAMC,EAA+C3wJ,OAAOyyF,OAAO,CACjEztF,KAAM,GACNopI,UAAW,CACTppI,KAAM,GACNslH,MAAO,MAIJ,MAAM61B,EACXh/F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUgqJ,MAQlD,MAAMC,EAA4C5wJ,OAAOyyF,OAAO,CAC9DztF,KAAM,GACNg3D,OAAQ,CACNsyE,WAAY,GACZhkB,MAAO,MAIJ,MAAM81B,EACXj/F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUiqJ,MAOlD,MAAMC,EAA2C7wJ,OAAOyyF,OAAO,CAC7D5xF,IAAK,GACLgiD,KAAM,KAGD,MAAMo9F,EACX9+F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUkqJ,MAQlD,MAAMC,EAAmC9wJ,OAAOyyF,OAAO,CACrDztF,KAAM,GACNH,MAAO,KAGF,MAAMi5I,EACX38F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUmqJ,MAQlD,MAAMC,EAA4C/wJ,OAAOyyF,OAAO,CAC9DztF,KAAM,GACN+4I,UAAW,CACT4B,gBAAiB,CACf36I,KAAM,GACNnE,IAAK,OAKJ,MAAM4+I,EACXt+F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUoqJ,MAQlD,MAAMC,EAAyChxJ,OAAOyyF,OAAO,CAC3DztF,KAAM,GACN+4I,UAAW,CACT6B,aAAc,CACZ56I,KAAM,GACNnE,IAAK,OAKJ,MAAM6+I,EACXv+F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUqqJ,Q,mCCxI3C,SAAShH,IACd,MAAO,CACLxqJ,GAAI,I,qKCFR,MAAMyxJ,EAAmCjxJ,OAAOyyF,OAAO,CACrDm4C,IAAK,GACL5lI,KAAM,GACNqkE,UAAW,GACXxtB,OAAQ,GACR6mF,YAAa,KAER,MAAMsqB,EACX7rG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUsqJ,Q,sUCZ3C,MAAMC,EAAwC,YACxCC,EAAyC,mBACzC1M,EAAwC,0BAE9C,SAAS1T,IACd,MAAO,CACLtjI,GAAI,EACJM,KAAMojJ,EACNpwB,UAAWmwB,EACXz1E,KAAM,IAOV,MAAM21E,EAAuBpxJ,OAAOyyF,OAAO,CACzChlF,GAAI,EACJM,KAAM,GACNgzH,UAAW,GACXuQ,KAAM,GACNF,mBAAoB,GACpB31D,KAAM,KAGD,MAAM01D,EACXhwF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUyqJ,Q,8KCtBlD,MAAMC,EAAoCrxJ,OAAOyyF,OAAO,CACtD3sF,SAAU,IAAIknJ,EAAAA,gCACdrnJ,KAAM,GACN4rI,WAAY,KAEP,MAAMP,EACX7vF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU0qJ,MAOlD,MAAMC,EAAoCtxJ,OAAOyyF,OAAO,CACtD3sF,SAAU,IAAIknJ,EAAAA,gCACdrnJ,KAAM,GACN4rI,WAAY,KAEP,MAAMG,EACXvwF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU2qJ,Q,qLCrBlD,MAAMC,EAAqCvxJ,OAAOyyF,OAAO,CACvDhlF,GAAI,GACJiyH,aAAc,GACd3xH,KAAM,GACNqjI,mBAAoB,GACpBllI,KAAMsyH,EAAAA,6BAAAA,UACN/iD,KAAM,GACNitD,SAAU,GACVa,UAAU,IAGL,MAAMioB,EACXrwG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU4qJ,MAIlD,MAAME,EAA0CzxJ,OAAOyyF,OAAO,CAC5D61C,IAAK,GACLa,MAAO,GACPH,UAAU,IAGL,MAAMR,EACXrnF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU8qJ,Q,sRC9B3C,MAAMpgB,EAA6C,8CAC7C8F,EAAiD,6CAKxDua,EAA2B1xJ,OAAOyyF,OAAO,CAC7ChlF,GAAI,EACJM,KAAM,GACN7B,KAAM,GACN60H,UAAW,GACX4K,aAAc,GACdyF,mBAAoB,GACpB/P,MAAM,EACNP,aAAc,GACdrlD,KAAM,KAGD,MAAMk2D,EACXxwF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU+qJ,MAI3C,MAAMlzB,EAA+Bx+H,OAAOyyF,OAAO,CACxDk/D,UAAW,EACXC,OAAQ,K,4FCvBV,MAAMC,EAAuB7xJ,OAAOyyF,OAAO,CACzCsuC,UAAW,GACXhzH,KAAM,GACNouC,UAAW,GACX0zF,WAAY,KACZhtD,IAAK,GACLqT,SAAU,EACVL,YAAa,EACbi8D,aAAc,GACd1/E,QAAS,GACT+c,YAAQp8E,EACRs4H,gBAAiB,GACjBF,iBAAkB,GAClBI,KAAM,GACN0E,cAAUl9H,IAGL,MAAM8+H,EACX1wF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUkrJ,Q,wHCjBlD,MAAME,EAAoC/xJ,OAAOyyF,OAAO,CACtD3sF,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJwE,SAAU,EACVpD,SAAU,CACRiG,YAAa,CACXvS,IAAK,KAGTwyB,eAAgB,CACd/mJ,KAAM,gBACNgnJ,cAAe,CACbC,eAAgB,IAGpBl8I,SAAU,CACRlQ,SAAU,CACR+1C,OAAQ,CACN2jF,IAAK,KAGTkL,KAAM,CACJluF,WAAY,CACV,CACEx3C,KAAM,GACN+pD,MAAO,GACP70C,IAAK,GACL+/G,UAAW,CACT3zE,OAAQ,GACR4zE,SAAU,IAEZyT,aAAc,KAGlB9wE,QAAS,QAMV,MAAMi1E,EACX3wF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUorJ,Q,yPC/C3C,MAAMI,EAAgCnyJ,OAAOyyF,OAAO,CACzD2/D,WAAY,EACZC,QAAS,IAGEC,EAA+BtyJ,OAAOyyF,OAAO,CACxD69D,IAAK,EACLiC,WAAY,EACZC,gBAAiB,EACjBjqF,IAAK,IAGMkqF,EAAiCzyJ,OAAOyyF,OAAO,CAC1DigE,WAAY,aACZC,OAAQ,SACRpqF,IAAK,QAGMqqF,EAA2B5yJ,OAAOyyF,OAAO,CACpDogE,QAAS,UACTC,SAAU,c,6FCjBZ,MAAMC,EAAwB/yJ,OAAOyyF,OAAO,CAC1CsuC,UAAW,GACXhzH,KAAM,GACNouC,UAAW,GACX6mB,aAAc,EACd6sE,WAAY,KACZhtD,IAAK,GACLqT,SAAU,EACVL,YAAa,EACbo8C,aAAc,GACd7/D,QAAS,GACT+c,YAAQp8E,EACRs4H,gBAAiB,GACjBF,iBAAkB,GAClBI,KAAM,GACN0E,cAAUl9H,IAGL,MAAMy/H,EACXrxF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUosJ,Q,yHClBlD,MAAMC,EAAqChzJ,OAAOyyF,OAAO,CACvD3sF,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJwE,SAAU,EACVpD,SAAU,CACRiG,YAAa,CACXvS,IAAK,KAGThmD,SAAU,CACRvuE,KAAM,gBACNgnJ,cAAe,CACbgB,SAAU,EACVf,eAAgB,SAGpBl8I,SAAU,CACRlQ,SAAU,CACR+1C,OAAQ,CACN2jF,IAAK,KAGTkL,KAAM,CACJsH,SAAU,GACVx1F,WAAY,CACV,CACEx3C,KAAM,GACN+pD,MAAO,GACP70C,IAAK,GACL+/G,UAAW,CACT3zE,OAAQ,GACR4zE,SAAU,IAEZyT,aAAc,KAGlB9wE,QAAS,QAMV,MAAM41E,EACXtxF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUqsJ,Q,wFC9ClD,MAAME,EAAmBlzJ,OAAOyyF,OAAO,CACrChlF,GAAI,GACJyW,KAAM,EACNhY,KAAM,GACNymD,QAAS,GACTogF,SAAU,KAGL,MAAMH,EACXzxF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUusJ,Q,keCb3C,MAAM7O,EAAmD,oBACnD2B,EAAsC,oCACtCmN,EAA6C,4CAC7CC,EAAyC,6BACzCC,EAA6C,4CAC7CC,EAAyC,wCAmBzChP,EAAqC,CAChD,oDAA+B,EAC/B,CAAC0B,IAAsC,EACvC,CAACmN,IAA6C,EAC9C,CAACE,IAA6C,EAC9C,CAACC,IAAyC,EAC1C,qCAAwB,I,wMC9BnB,MAAMpgB,EACX/xF,cACEjgD,KAAKuM,GAAK,GACVvM,KAAK6M,KAAO,GACZ7M,KAAKyqI,aAAe,GACpBzqI,KAAKiZ,OAAS,GACdjZ,KAAKowI,KAAO,GACZpwI,KAAKkyI,iBAAmB,GACxBlyI,KAAKoyI,kBAAoB,GACzBpyI,KAAKsyI,UAAW,GAIb,MAAMsT,EAAuC,CAAC,cAAe,cAAe,kBAAmB,aACzFD,EAA+B,W,wHCT5C,MAAM0M,EAAoCvzJ,OAAOyyF,OAAO,CACtD3sF,SAAU,IAAIknJ,EAAAA,kCAGT,MAAMrZ,EACXxyF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU4sJ,Q,0ICN3C,MAAMC,EACXryG,YAAYsyG,GACVvyJ,KAAKwyJ,OAAS,EACdxyJ,KAAKyyJ,UAAY,EACjBzyJ,KAAKuyJ,YAAcvyJ,KAAK0yJ,WAAWH,GAEnCvyJ,KAAK2yJ,wBAGPD,WAAWH,GAMT,OALA,IAAUA,GAAc5uJ,IAClBA,EAAMq6G,MACRr6G,EAAMq6G,KAAO,QAGVu0C,EAGTI,wBACE,MAAMC,EAAmB9zJ,OAAOuI,OAAOrH,KAAKuyJ,aAC5CvyJ,KAAKwyJ,OAAS,IAAQI,EAAkB,OAAO50C,IAC/Ch+G,KAAKyyJ,UAAY,IAAQG,EAAkB,UAAU7vE,OAIvD8vE,mBAAmB/0C,EAAK7kF,EAAQ65H,GAK9B,OAJA,IAAU9yJ,KAAKuyJ,aAAc5uJ,IAC3BmvJ,GAAah2I,KAAKC,IAAID,KAAKwf,MAAM34B,EAAMq6G,IAAMF,GAAMhhG,KAAKwf,MAAM34B,EAAMo/E,OAAS9pD,OAGxE65H,EAAY,EAIrBC,kBAAkBj1C,EAAK7kF,GACrB,IAAI+5H,GAAW,EAQf,OANA,IAAUhzJ,KAAKuyJ,aAAc5uJ,KACvBm6G,EAAMn6G,EAAMq6G,KAAO/kF,EAASt1B,EAAMo/E,UACpCiwE,GAAW,MAIRA,EAGTC,aAAa3pB,EAAMd,EAAU5zC,GAC3B,MAAM29D,EAAcvyJ,KAAKuyJ,YAEzB,IAAUjpB,GAAO3lI,IACf,MAAMopE,EAAOppE,EAAMspF,KACflgB,GAAQwlF,EAAYxlF,KACtBwlF,EAAYxlF,GAAMixC,KAAOwqB,EACzB+pB,EAAYxlF,GAAMgW,QAAU6R,MAIhC50F,KAAK2yJ,2B,6IC3DT,MAAMO,EAA6Bp0J,OAAOyyF,OAAO,CAC/CutC,KAAM,EACN9pB,WAAY,EACZC,SAAU,GACV4pB,aAAc,KAGT,MAAM6d,EACXz8F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUytJ,MAOlD,MAAMC,EAAyBr0J,OAAOyyF,OAAO,CAC3CzzB,UAAU,EACVC,aAAa,EACbygE,aAAc,GACd0M,YAAa,GACbjB,iBAAkB,GAClBjL,sBAAuB,GACvBlkF,MAAO,KAGF,MAAM2hG,EACXx8F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU0tJ,Q,8mBC7B3C,SAAS3d,EAAiC9iG,GAC/C1yC,KAAK6M,KAAO,GACZ7M,KAAK20F,YAAcjiD,EAASiiD,YAC5B30F,KAAKg1F,SAAWtiD,EAASsiD,SACzBh1F,KAAK40I,cAAgBliG,EAASkiG,cAC9B50I,KAAK01I,uBAAwB,EAC7B11I,KAAK21I,UAAW,EAChB31I,KAAKi0I,eAAiB,GACtBj0I,KAAK41I,eAAiB,GACtB51I,KAAK0yH,WAAa,EAClB1yH,KAAK0tH,WAAa,GAClB1tH,KAAKsyI,UAAW,EAMX,SAASsY,EAA4CwI,GAC1D,MAAO,CACLvzB,eAAWhuH,EACX24I,aAAc4I,EACdC,eAAe,EACfpJ,YAAa,GACbjkE,MAAO,GACPkuD,UAAU,EACV2W,aAAa,EACbK,gBAAgB,EAChB3L,MAAO,IAIJ,SAAS0L,IACd,MAAO,CACL7jB,IAAK,GACLa,MAAO,IAIJ,SAAS8iB,IACd,MAAO,CACLnlG,KAAM,GACNolG,aAAc,GACdhY,eAAe,EACfqD,OAAO,GAIJ,SAASpB,EAA4CnxI,GAC1D,MAAO,CACL+I,KAAM/I,EACNi+E,KAAM,EACNqxD,SAAU,KACVc,UAAU,GAIP,SAASof,IACd,OAAOlK,EAAAA,wCAGF,SAASmK,IACd,OAAOjK,EAAAA,mCAGF,SAASkK,IACd,OAAOnK,EAAAA,4C,yRCnEF,MAAMlX,EAA2C,4CAE3CE,EAA4C,6CAE5CG,EAA0C,2CAKhD,SAASoB,IACd,MAAO,CACL/T,UAAW,GACX+mB,WAAO/0I,EACPwtI,UAAW,GACXjP,KAAM,M,wmBCZH,MAAMyV,EAAyC,gBACzCtR,EAA2C,aAC3CC,EAA8C,gBAC9CY,EAA6C,eAC7CC,EAAgD,kBAChDR,EAAgD,yBAChDC,EAAgD,gDAEhDW,EAAkC,CAC7CzgD,SAAU,EACVL,YAAa,EACbigD,cAAe,GAGV,SAASP,EAAwBlsE,GACtC,MAAO,CACL57D,GAAI,GACJszH,UAAW13D,GAAwB,GACnCt7D,KAAMs7D,EAAYgtE,EAAAA,QAAAA,0BAAwDhtE,GAAa,GACvF6sB,SAAUygD,EAAgCzgD,SAC1CL,YAAa8gD,EAAgC9gD,YAC7CggD,aAAcc,EAAgCzgD,SAC9Cy/C,gBAAiBgB,EAAgC9gD,YACjDigD,cAAea,EAAgCb,cAC/CxE,KAAM,GACN8B,iBAAkB,GAClBE,kBAAmB,GACnB2C,gBAAiB,M,uICrBd,SAASG,IACd,MAAO,CACLtwI,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJ8K,KAAM,CACJ,CAACc,EAAAA,4CAA6C,EAC9C,CAACC,EAAAA,+CAAgD,EACjD,CAACd,EAAAA,0CAA2C,EAC5C,CAACC,EAAAA,6CAA8C,O,sGCbvD,MAAMif,EAAiC30J,OAAOyyF,OAAO,CACnDxO,OAAQ,EACRi7B,IAAK,IAGA,MAAMooC,EACXnmG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUguJ,Q,+ICV3C,MAAMC,EAA0B50J,OAAOyyF,OAAO,CACnDoiE,UAAW,YACXC,cAAe,gBACfnD,UAAW,YACXC,OAAQ,SACRzC,WAAY,aACZE,YAAa,cACbD,UAAW,YACX2F,wBAAyB,wBACzBC,QAAS,UACTrF,QAAS,UACTsF,0BAA2B,4BAGhBC,EAA4Bl1J,OAAOyyF,OAAO,CACrD0iE,OAAQ,SACRC,OAAQ,SACRC,OAAQ,Y,oGCdV,MAAMC,EAA+Bt1J,OAAOyyF,OAAO,CACjDhlF,GAAI,EACJM,KAAM,GACNgzH,UAAW,GACX4K,aAAc,GACdyF,mBAAoB,GACpBE,KAAM,GACN71D,KAAM,KAGD,MAAM47D,EACXl2F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU2uJ,Q,wKCVlD,MAAMC,EAAiCv1J,OAAOyyF,OAAO,CACnD3sF,SAAU,IAAIknJ,EAAAA,gCACd/hJ,KAAM,SACNtF,KAAM,GACNuxI,WAAY,KAGP,MAAMF,EACX71F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU4uJ,MAOlD,MAAMC,EAAiCx1J,OAAOyyF,OAAO,CACnD3sF,SAAU,IAAIknJ,EAAAA,gCACd/hJ,KAAM,SACNtF,KAAM,GACNuxI,WAAY,KAGP,MAAME,EACXj2F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU6uJ,Q,+XC9B3C,MAAMzN,EAAkC,YAClC/P,EAAqC,OACrCvX,EAAyBzgI,OAAOyyF,OAAO,CAClDi9D,cAAe,eACfD,UAAW,WACXD,WAAY,YACZG,QAAS,YAML8F,EAAqBz1J,OAAOyyF,OAAO,CACvCqlD,UAAU,EACV/W,UAAW,GACXhzH,KAAM,GACNouC,UAAW,GACXH,MAAO,GACP9vC,KAAM,GACNwpJ,UAAW,GACXrqB,gBAAiB,GACjBF,iBAAkB,GAClBI,KAAM,GACNloD,SAAS,EACTgkD,SAAU,KAGL,MAAMD,EACXjmF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU8uJ,MAIlD,MAAME,EAA4B31J,OAAOyyF,OAAO,CAC9CqlD,UAAU,EACV/W,UAAW,GACXhzH,KAAM,GACNouC,UAAW,GACXH,MAAO,GACP9vC,KAAM,GACNwpJ,UAAW,GACXrqB,gBAAiB,GACjBF,iBAAkB,GAClBI,KAAM,GACNloD,SAAS,EACT09D,aAAc,KAGT,MAAMmM,EACX/rG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUgvJ,MAIlD,MAAMC,EAAiC51J,OAAOyyF,OAAO,CACnD3rC,KAAM,GACNi/E,YAAa,GACbt+E,KAAM,GACNwxB,YAAa,KAGR,MAAM0sD,EACXxkF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUivJ,MAOlD,MAAMC,EAAyB71J,OAAOyyF,OAAO,CAC3CztF,KAAM,GACNk0C,KAAM,EACNusF,WAAY,EACZ1yD,SAAU,GACVyyD,SAAU,EACVQ,QAAS,KAGJ,MAAMT,EACXpkF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUkvJ,Q,sHC5ElD,MAAMC,EAAkC91J,OAAOyyF,OAAO,CACpD3sF,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJ3xF,MAAO,GACP+yF,SAAU,CACRtM,IAAK,IAEPv0H,KAAM,GACNqhI,UAAW,MAIR,MAAMyL,EACX52F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUmvJ,Q,wFChBlD,MAAMC,EAAmB/1J,OAAOyyF,OAAO,CACrC1kF,KAAM,GACN2xH,aAAc,GACdoB,aAAc,KAGT,MAAMmnB,EACX9mG,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUovJ,Q,8FCRlD,MAAMC,EAAyBh2J,OAAOyyF,OAAO,CAC3CsuC,UAAW,GACXhzH,KAAM,GACNouC,UAAW,GACX6mB,aAAc,EACd6sE,WAAY,KACZhtD,IAAK,GACLqT,SAAU,GACVL,YAAa,GACbo8C,aAAc,GACd7/D,QAAS,GACT+c,YAAQp8E,EACRslI,aAAc,GACdp/D,YAAa,GACboyD,gBAAiB,GACjBF,iBAAkB,GAClBI,KAAM,GACN0E,cAAUl9H,IAGL,MAAMolI,EACXh3F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUqvJ,Q,0HCpBlD,MAAMC,EAAsCj2J,OAAOyyF,OAAO,CACxD3sF,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJwE,SAAU,EACVtJ,YAAa,GACbkG,SAAU,CACRiG,YAAa,CACXvS,IAAK,KAGT0N,qBAAsB,GACtB8kB,eAAgB,CACd/mJ,KAAM,gBACNgnJ,cAAe,CACbiE,UAAW,IAGflgJ,SAAU,CACRlQ,SAAU,CACR+1C,OAAQ,CACN2jF,IAAK,KAGTkL,KAAM,CACJluF,WAAY,CACV,CACEx3C,KAAM,GACN+pD,MAAO,GACP70C,IAAK,GACL+/G,UAAW,CACT3zE,OAAQ,GACR4zE,SAAU,IAEZyT,aAAc,KAGlB9wE,QAAS,QAMV,MAAMu7E,EACXj3F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUsvJ,Q,yJC9ClD,MAAME,EAAwCn2J,OAAOyyF,OAAO,CAC1D,CACE1kF,KAAM,MACNy1E,YAAa,gDACbtjD,UAAU,GAEZ,CACEnyB,KAAM,MACNy1E,YAAa,mEACbtjD,UAAU,KAIP,SAASk2H,IACd,OAAO1vJ,KAAKwZ,MAAMxZ,KAAKC,UAAUwvJ,IAMnC,MAAME,EAA0Br2J,OAAOyyF,OAAO,CAC5C1kF,KAAM,GACN6zI,YAAa,GACblJ,YAAa,GACbE,sBAAsB,IAGjB,MAAMH,EACXt3F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU0vJ,Q,2HC3BlD,MAAMC,EAAuCt2J,OAAOyyF,OAAO,CACzD3sF,SAAU,IAAIknJ,EAAAA,gCACdrU,YAAa,GACbE,sBAAsB,IAGjB,MAAMK,EACX/3F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU2vJ,Q,sKCTlD,MAAMC,EAAmCv2J,OAAOyyF,OAAO,CACrDhlF,GAAI,GACJM,KAAM,GACNsmI,aAAc,GACdtT,UAAW,GACXgT,QAAS,EACTC,aAAc,GACdrI,aAAc,GACdR,iBAAkB,GAClBE,gBAAiB,GACjB0C,UAAW,GACXuD,KAAM,KAGD,MAAMwC,EACX3yF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU4vJ,KAC9Cr1J,KAAK6M,KAAOy6I,GAAAA,IAOhB,MAAMgO,EAAoBx2J,OAAOyyF,OAAO,CACtCitC,aAAc,GACd+U,sBAAuB,GACvB3T,aAAc,KAGT,MAAMyY,EACXp4F,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU6vJ,Q,mIC/BlD,MAAMC,EAA+Cz2J,OAAOyyF,OAAO,CACjE3sF,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJgsB,YAAa,CAAC,iBACdz8B,UAAW,CACTC,SAAU,CACRv6G,QAAS,KAGbs0H,iBAAkB,MAIf,MAAMU,EACXxzF,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU8vJ,Q,mQCZlD,MAAME,EACY,iBAAChxJ,EAAM4kI,GAChBA,IACHA,EAAM,IAAIqsB,EAAAA,gBAEZrsB,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvB,MAAMisB,EAAW,IAAOlxJ,EAAKyT,OAAOgjI,UAAW,CAAEnxI,KAAM,aACvDs/H,EAAIx8H,KAAO8oJ,EAAWA,EAASC,QAAUnxJ,EAAKG,SAASiI,KACvDw8H,EAAIzuF,OAASn2C,EAAKG,SAAS+1C,OAC3B0uF,EAAIp4H,KAAO,IAAMxM,EAAKG,SAAS+1C,OAAQ,kCAAoC,SAAW,SAEtF,MAAM4qD,EAAQ,IAAO9gG,EAAKyT,OAAO29I,WAAY,CAAE9rJ,KAAM+rJ,EAA6BC,QAC5EC,EAAiB,IAAOvxJ,EAAKyT,OAAO29I,WAAY,CAAE9rJ,KAAM+rJ,EAA6BG,kBACrFC,EAAc,IAAOzxJ,EAAKyT,OAAO29I,WAAY,CAAE9rJ,KAAM+rJ,EAA6BK,eAClFC,EAAe,IAAO3xJ,EAAKyT,OAAO29I,WAAY,CAAE9rJ,KAAM+rJ,EAA6BO,gBACnFC,EAAqB,IAAO7xJ,EAAKyT,OAAO29I,WAAY,CAAE9rJ,KAAM+rJ,EAA6BS,sBAE/FltB,EAAImtB,WAAa,CACfC,eAAgBT,GAA4C,SAA1BA,EAAe99I,OACjDg+I,YAAaA,GAAsC,SAAvBA,EAAYh+I,OACxCw+I,aAAcN,GAAwC,SAAxBA,EAAal+I,OAC3Cy+I,mBAAoBL,GAAoD,SAA9BA,EAAmBp+I,QAG/DmxH,EAAI9jE,aAAeqxF,EAAAA,6BAAAA,QACa,IAA5BnyJ,EAAK+kI,KAAKqtB,gBACZxtB,EAAI9jE,aAAe,IAAM9gE,EAAKG,SAAS+1C,OAAQm8G,EAAAA,mCAAqCF,EAAAA,6BAAAA,MAAqCA,EAAAA,6BAAAA,OAGtG,UAAjBrxD,EAAMrtF,OACRmxH,EAAIpwH,OAAS,YACa,YAAjBssF,EAAMrtF,QAAwBmxH,EAAImtB,WAAWC,gBAAkBptB,EAAImtB,WAAWN,aAAe7sB,EAAImtB,WAAWE,cAAgBrtB,EAAImtB,WAAWG,mBACpJttB,EAAIpwH,OAAS,UAEbowH,EAAIpwH,OAAS,QAGfowH,EAAIrrB,IAAM8sB,EAAAA,QAAAA,SAA6CrmI,EAAKyT,OAAO6+I,YAAYj5C,KAC/EurB,EAAItmD,OAASt+E,EAAKyT,OAAO6+I,YAAY99H,OACrCowG,EAAIlxH,QAAU1T,EAAKyT,OAAO8+I,SAASC,eACnC,MAAMC,EAAa,IAAOzyJ,EAAKyT,OAAOgjI,UAAW,CAAEnxI,KAAM,eASzD,OARAs/H,EAAI3uF,UAAYw8G,EAAaA,EAAWtB,QAAU,IAClDvsB,EAAI8tB,OAAS,IAAM1yJ,EAAK+kI,KAAK4tB,QAASC,IACpC,MAAMhuB,EAAM,IAAIiuB,EAAAA,oBAIhB,OAHAjuB,EAAIjC,IAAMiwB,EAAM13J,IAChB0pI,EAAIpB,MAAQovB,EAAM1zJ,MAClB0lI,EAAIkuB,OAASF,EAAMxzH,OACZwlG,KAEFA,EAGc,wBAAC5kI,EAAMurI,GAC5B,IAAI3G,EAAM,IAAImuB,EAAAA,sBAOd,OANAnuB,EAAMosB,EAAwBgC,UAAUhzJ,EAAM4kI,GAC9CA,EAAIoB,aAAehmI,EAAKG,SAAS8lI,kBACjCrB,EAAI1mD,GAAGrB,aAAe78E,EAAKyT,OAAO8+I,SAASU,aAC3CruB,EAAI1mD,GAAGF,SAAWh+E,EAAKyT,OAAO8+I,SAASW,gBACvCtuB,EAAI1mD,GAAGzb,MAAQziE,EAAKyT,OAAO8+I,SAASY,QACpCvuB,EAAI+G,KAAOJ,EAAOA,EAAKvrI,KAAO,GACvB4kI,EAGc,wBAACt8D,GACtB,MAAMs8D,EAAM,IAAIwuB,EAAAA,yBAuBhB,OArBAxuB,EAAI9jE,aAAewH,EAAKxH,aAExB8jE,EAAI8tB,OAAS,IAAMpqF,EAAKoqF,QAASE,IAC/B,MAAMhuB,EAAM,IAAIyuB,EAAAA,8BAMhB,OALAzuB,EAAIjC,IAAMiwB,EAAMjwB,IAChBiC,EAAIpB,MAAQovB,EAAMpvB,MAClBoB,EAAIkuB,OAASF,EAAME,OACnBluB,EAAI2J,eAAgB,EACpB3J,EAAIgN,OAAQ,EACLhN,KAGTA,EAAIzuF,OAAS,IAAMmyB,EAAKnyB,QAAQ,CAACj3C,EAAOhE,KACtC,MAAM0pI,EAAM,IAAI0uB,EAAAA,8BAKhB,OAJA1uB,EAAIjC,IAAMznI,EACV0pI,EAAIpB,MAAQtkI,EACZ0lI,EAAI2J,eAAgB,EACpB3J,EAAIgN,OAAQ,EACLhN,KAGFA,EAGc,wBAACt8D,EAAMp5D,GAC5B,MAAM01H,EAAMzzH,QAAQu0D,KAAK4C,GAEzBs8D,EAAI9jE,aAAe5xD,EAAW4xD,aAE9B,MAAMyyF,EAAiB,IAASrkJ,EAAWwjJ,QAASE,IAAWA,EAAMrkB,gBACrE3J,EAAI8tB,OAAS,IAAMa,GAAiB3jH,IAClC,MAAMgjH,EAAQ,IAAIC,EAAAA,oBAIlB,OAHAD,EAAMjwB,IAAM/yF,EAAK+yF,IACjBiwB,EAAMpvB,MAAQ5zF,EAAK4zF,MACnBovB,EAAME,OAASljH,EAAKkjH,OACbF,KAGT,MAAMY,EAAiB,IAAStkJ,EAAWinC,QAASh0C,IAAWA,EAAMosI,gBAUrE,OATA3J,EAAIzuF,OAAS,IACXq9G,GACA,CAACzlI,EAAK6hB,KACJ7hB,EAAI6hB,EAAK+yF,KAAO/yF,EAAK4zF,MAAQ5zF,EAAK4zF,MAAQ,GACnCz1G,IAET,IAGK62G,EAGW,qBAACt8D,GACnB,MAAMjsD,EAAU,IAAIo3I,EAAAA,4BACpBp3I,EAAQlc,SAASd,KAAOipE,EAAKlgE,KAE7B,MAAMuqJ,EAAS,IAAMrqF,EAAKoqF,QAASE,IACjC,MAAMhuB,EAAM,IAAI8uB,EAAAA,2BAIhB,OAHA9uB,EAAI1pI,IAAM03J,EAAMjwB,IAChBiC,EAAI1lI,MAAQ0zJ,EAAMpvB,MAClBoB,EAAIxlG,OAASwzH,EAAME,OACZluB,KAgBT,OAbAvoH,EAAQ0oH,KAAK4tB,OAASA,EAAO33J,OAAS23J,OAASvlJ,EAE/CiP,EAAQlc,SAAS+1C,OAASoyB,EAAKnyB,OAE3BmyB,EAAKxH,eAAiBqxF,EAAAA,6BAAAA,SACxB91I,EAAQ0oH,KAAKqtB,eAAgB,EACzB9pF,EAAKxH,eAAiBqxF,EAAAA,6BAAAA,MACxB91I,EAAQlc,SAAS+1C,OAAOm8G,EAAAA,mCAAqC,UAEtDh2I,EAAQlc,SAAS+1C,OAAOm8G,EAAAA,oCAI5Bh2I,EAGU,oBAACs3I,EAASC,GAC3B,MAAMnnB,EAAaukB,EAAwBtkB,cAAcinB,GACnDhnB,EAAaqkB,EAAwBtkB,cAAcknB,GAEzD,OADgBhnB,EAAAA,GAAkBH,EAAYE,IAK3C,MAAM0kB,EAA+Bh3J,OAAOyyF,OAAO,CACxDwkE,MAAO,QACPE,gBAAiB,iBACjBE,aAAc,cACdE,cAAe,eACfE,oBAAqB,uBAGvB,a,kECvKA3gJ,QACG5W,OAAO,wBACPsT,OAAO,6BAA6B,WAEnC,OAAO,SAAUmW,GAEf,OADa,IAAUA,IAErB,IAAK,QACH,MAAO,UACT,IAAK,UACH,MAAO,UACT,QACE,MAAO,cAIdnW,OAAO,mCAAmC,WAEzC,OAAO,SAAUujJ,GACf,OAAIA,EAAWY,eACN,6BAELZ,EAAWK,YACN,yCAELL,EAAWa,aACN,oCAELb,EAAWc,mBACN,4CADT,O,sMC9BN,MAAM2B,EAA4Bx5J,OAAOyyF,OAAO,CAC9C4lE,OAAQ,GACRv8G,OAAQ,GACR2qB,aAAc,KAGT,MAAMsyF,EACX53G,cACEnhD,OAAOM,OAAOoG,KAAKwZ,MAAMxZ,KAAKC,UAAU6yJ,MAI5C,MAAMC,EAAiCz5J,OAAOyyF,OAAO,CACnD61C,IAAK,GACL1E,OAAQ,GACR60B,OAAQ,GACRvkB,eAAe,EACfqD,OAAO,EACPmiB,WAAW,IAGN,MAAMV,EACX73G,cACEnhD,OAAOM,OAAOoG,KAAKwZ,MAAMxZ,KAAKC,UAAU8yJ,MAI5C,MAAME,EAAiC35J,OAAOyyF,OAAO,CACnD61C,IAAK,GACL1E,OAAQ,GACRsQ,eAAe,EACfqD,OAAO,EACP8J,QAAQ,EACRqY,WAAW,IAGN,MAAMT,EACX93G,cACEnhD,OAAOM,OAAOoG,KAAKwZ,MAAMxZ,KAAKC,UAAUgzJ,Q,oRCpCrC,MAAMC,EACS,qBAAC9xJ,GACnB,OAAQA,EAAMyvI,QAAU,IAAazvI,EAAMwgI,IAAK,uBAAyB,IAAaxgI,EAAMwgI,IAAK,kBAAkC,mCAAdxgI,EAAMwgI,KAGzG,qBAACzsF,GACnB,OAAO,IAASA,GAAS/zC,IACf8xJ,EAAqBC,cAAc/xJ,KAIvB,yBAAC41I,EAAc7hG,GACrC,MAAM2uF,EAAO,IAAU,IAAMkT,EAAc,SACrCoc,EAAgB,IAAO,IAAU,IAAMtvB,EAAM,kBAEnD,OAAO,IAAM3uF,GAAS/zC,IACpBA,EAAMu5I,SAAS,IAAOyY,GAAgBC,GAAOA,GAAMA,EAAGjyJ,EAAMwgI,OAASxgI,EAAMqhI,QACpErhI,KAIuB,mCAACyd,GACjC,MAAMomI,EAAQ,IAAUpmI,GAAQ0oD,GACvB,IAAM,IAAUA,EAAKnyB,SAAS,EAAE04C,EAAG9xD,MACjC,CAAE7hC,IAAK2zF,EAAG3vF,MAAO69B,QAG5B,OAAO,IAAM,IAAUipH,EAAO,QAAQ,CAACpjJ,EAAQ1H,KACtC,CAAEynI,IAAKznI,EAAK+iI,OAAQ,IAAO,IAAMr7H,EAAQ,iB,oUC9B/C,MAAMyvJ,EAAoC,iCAK3CgC,EAAkBh6J,OAAOyyF,OAAO,CACpChlF,GAAI,GACJM,KAAM,GACN+tC,OAAQ,GACR3pC,KAAM,GACNgI,OAAQ,GACR+kG,IAAK,EACLj7B,OAAQ,GACR5qE,QAAS,GACTuiC,UAAW,GACXq+G,KAAK,EACL5B,OAAQ,GACRr4B,KAAM,EACNv5D,aAAc,KAGT,MAAMmwF,EACXz1G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUqzJ,MAOlD,MAAME,EAAyBl6J,OAAOyyF,OAAO,CAC3Ck5C,aAAc,GACd9nD,GAAI,CACFrB,aAAc,GACdmB,SAAU,GACVvb,MAAO,IAETsvF,WAAY,GACZpmB,KAAM,KAGD,MAAMonB,EACXv3G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUqzJ,KAC9Ch6J,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUuzJ,MAOlD,MAAMC,EAAuBn6J,OAAOyyF,OAAO,CACzC61C,IAAK,GACLa,MAAO,GACPsvB,OAAQ,KAGH,MAAMD,EACXr3G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUwzJ,MAI3C,MAAMrC,EAA+B93J,OAAOyyF,OAAO,CACxD2nE,OAAQ,SACRC,MAAO,QACPC,MAAO,UAGIC,EAA6Bv6J,OAAOyyF,OAAO,CACtD+nE,WAAY,aACZC,iBAAkB,mBAClBC,UAAW,e,oJCpEb,MAAMC,EAA+B36J,OAAOyyF,OAAO,CACjD3sF,SAAU,CACRd,KAAM,GACN62C,OAAQ,IAEV6uF,KAAM,CACJ4tB,YAAQvlJ,KAIL,MAAMqmJ,EACXj4G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUg0J,MAIlD,MAAMC,EAA8B56J,OAAOyyF,OAAO,CAChD5xF,IAAK,GACLgE,MAAO,GACPkgC,OAAQ,KAGH,MAAMs0H,EACXl4G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAUi0J,Q,wDC1BlD9jJ,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,kBAAmB,CAChE,YACA,yBACA,mBACA,SAAgCN,EAAWC,EAAwBC,GAEjE,OAAO,WAEL,OAAOF,EADKC,EAAyB,mDAGnC,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,sHC7B5B,MAAM+4I,EAEJ15G,YAAYC,EAAQ05G,GAClB55J,KAAKkgD,OAASA,EACdlgD,KAAK45J,gBAAkBA,EAEvB55J,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MAM3B,eAAC8D,GACb,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOshB,EAAS4qH,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAK45J,kBAAkBj7I,IAAInT,GAAQw6C,SAAUhmD,KAAK45J,kBAAkBrR,QAAQ/8I,GAAQw6C,WAC/H,OAAOyvG,EAAAA,QAAAA,iBAAyCrwI,EAAS4qH,GACzD,MAAOl1H,GAEP,MAAM++I,EAAU/+I,EAAIrW,KACpB,MAAM,IAAImW,EAAAA,EAAe,kCAAmCi/I,IAI/C,oBACf,IACE,MAAMp1J,QAAazE,KAAK45J,kBAAkBj7I,MAAMqnC,SAChD,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAASohH,EAAAA,QAAAA,UAAkCphH,KACrE,MAAOv5B,GACP,KAAM,CAAED,IAAK,2BAA4BC,IAAKA,IAIlD6D,IAAI7a,GACF,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAU7kJ,GAE7B9D,KAAKkgD,OAAOlgD,KAAKu7I,aAOV,iBAACxuE,EAAM+sF,GACrB,IACE,MAAMtuJ,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKyuE,EAAKlgE,KACjB,MAAMwrJ,EAAU5C,EAAAA,QAAAA,iBAAyC1oF,EAAM+sF,GACzDh5I,EAAU20I,EAAAA,QAAAA,aAAqC1oF,EAAMsrF,GACrD5zJ,QAAazE,KAAK45J,kBAAkB5uG,MAAMx/C,EAAQsV,GAASklC,SAEjE,OADoByvG,EAAAA,QAAAA,iBAAyChxJ,GAE7D,MAAOqW,GACP,KAAM,CAAED,IAAK,uBAAwBC,IAAKA,IAI9CkwC,MAAM+hB,EAAM+sF,GACV,OAAO95J,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY77E,EAAM+sF,I,uCAI9C,YACAlkJ,IAAAA,OAAe,wBAAwB+H,QAAQ,wBAAyBg8I,I,8OChDxE,SAASI,EAAuBC,EAAUl2J,GACxC,MAAMoU,EAAS,IAAO8hJ,EAAU,CAAEl2J,KAAMA,IACxC,IAAKoU,EACH,MAAO,aAET,MAAMnI,EAAQmI,EAAOnI,MACrB,OAAIA,EAAMkqJ,QACD,UAEJlqJ,EAAMmqJ,QAGJ,UAFE,aAiEI,MAAMC,EACF,kBAAC11J,GAChB,MAAM4kI,EAAM,IAAI+wB,EAAAA,cAtDpB,IAA4BC,EAoExB,OAbAhxB,EAAI98H,GAAK9H,EAAKG,SAAS8kI,IACvBL,EAAIx8H,KAAOpI,EAAKG,SAASd,KACzBulI,EAAIxJ,UAAYp7H,EAAKG,SAASujE,UAC9BkhE,EAAIpvD,OAAS,IAAMx1E,EAAK+kI,KAAKluF,WAAY,SACzC+tF,EAAIpwH,OA9FR,SAAuB+gJ,GACrB,MAAMM,EAAoB,IAAMN,EAAU,SACpCE,EAAU,IAASI,GAAoB9+H,GAAMA,EAAE0+H,UAASz6J,OAE9D,OADgB,IAAS66J,GAAoB9+H,GAAMA,EAAEy+H,UAASx6J,OAErD,UACGy6J,EAGL,UAFE,aAuFMK,CAAc91J,EAAKyT,OAAOoiJ,mBACvCjxB,EAAImxB,SAAW,IAAQ/1J,EAAKyT,OAAOoiJ,kBAAmB,gBACtDjxB,EAAIp8C,KAAOxoF,EAAK+kI,KAAK/xF,SACrB4xF,EAAIoB,aAAehmI,EAAKyT,OAAOuiJ,UAC/BpxB,EAAIvxE,WAnDR,SAA2BrzD,GACzB,MAAM62C,EAAa72C,EAAK+kI,KAAKluF,WACvBmuF,EAAiBhlI,EAAK+kI,KAAKC,eAEjC,OAAO,IACL,IAAMnuF,GAAajH,IACjB,MAAMg1F,EAAM,IAAIqxB,EAAAA,uBAchB,OAbArxB,EAAIr+H,KAAO2vJ,EAAAA,4BAAAA,IACXtxB,EAAIuxB,QAAUn2J,EAAKG,SAASd,KAC5BulI,EAAIwxB,MAAQp2J,EAAKyT,OAAO4iJ,MACxBzxB,EAAIx8H,KAAOwnC,EAAKvwC,KAChBulI,EAAIniE,MAAQ7yB,EAAKwZ,MACjBw7E,EAAI0xB,gBAAkB1mH,EAAK2mH,gBAC3B3xB,EAAIp8C,KAAOxoF,EAAK+kI,KAAK/xF,SACrB4xF,EAAIoB,aAAehmI,EAAKyT,OAAOuiJ,UAC/BpxB,EAAIpwH,OAAS8gJ,EAAuBt1J,EAAKyT,OAAOoiJ,kBAAmBjmH,EAAKvwC,MACxEulI,EAAItlD,OAAS1vC,EAAK0kF,UAAU3zE,OAC5BikF,EAAI4B,SAAW52F,EAAK0kF,UAAUC,SAC9BqQ,EAAI0H,aAAe18F,EAAKo4F,aACxBpD,EAAI1nD,IAAMttC,EAAKr7B,IACRqwH,KAET,IAAMI,GAAiBp1F,IACrB,MAAMg1F,EAAM,IAAIqxB,EAAAA,uBAYhB,OAXArxB,EAAIr+H,KAAO2vJ,EAAAA,4BAAAA,KACXtxB,EAAIuxB,QAAUn2J,EAAKG,SAASd,KAC5BulI,EAAIx8H,KAAOwnC,EAAKvwC,KAChBulI,EAAIniE,MAAQ7yB,EAAKwZ,MACjBw7E,EAAIp8C,KAAOxoF,EAAK+kI,KAAK/xF,SACrB4xF,EAAIoB,aAAehmI,EAAKyT,OAAOuiJ,UAC/BpxB,EAAIpwH,OAAS8gJ,EAAuBt1J,EAAKyT,OAAOoiJ,kBAAmBjmH,EAAKvwC,MACxEulI,EAAItlD,OAAS1vC,EAAK0kF,UAAU3zE,OAC5BikF,EAAI4B,SAAW52F,EAAK0kF,UAAUC,SAC9BqQ,EAAI0H,aAAe18F,EAAKo4F,aACxBpD,EAAI1nD,IAAMttC,EAAKr7B,IACRqwH,MAgBQ4xB,CAAkBx2J,GACnC4kI,EAAIzuF,OAASn2C,EAAKG,SAAS+1C,OAC3B0uF,EAAI0F,SAzER,SAAyB+B,GACvB,MAAMzH,EAAM,IAAIyY,EAAAA,sBAIhB,OAHIhR,IACFzH,EAAI0X,aAAejQ,EAASiQ,cAAgB,IAEvC1X,EAoEU6xB,CAAgBz2J,EAAK+kI,KAAKsH,UACzCzH,EAAI8xB,aAAe12J,EAAK+kI,KAAK4xB,aAC7B/xB,EAAIgyB,aAnEoBhB,EAmEa51J,EAAK+kI,KAAK6wB,YAlE1C,IAAMA,GAAchmH,IACzB,MAAMg1F,EAAM,IAAIiyB,EAAAA,wBAMhB,OALAjyB,EAAIjC,IAAM/yF,EAAK10C,IACf0pI,EAAIkyB,SAAWlnH,EAAKqkC,SACpB2wD,EAAIpB,MAAQ5zF,EAAK1wC,MACjB0lI,EAAImyB,kBAAoBnnH,EAAKonH,kBAC7BpyB,EAAIkuB,OAASljH,EAAKxQ,OACXwlG,MA4DAA,EAGa,uBAAC6c,GACrB,MAAM7c,EAAM,IAAIqyB,EAAAA,sBAGhB,OAFAryB,EAAIzkI,SAASd,KAAOoiJ,EAAIr5I,KACxBw8H,EAAIzkI,SAASujE,UAAY+9E,EAAIrmB,UACtBwJ,EAGU,oBAACsyB,EAAQC,GAC1B,MAAM1qB,EAAaC,EAAcwqB,GAC3BvqB,EAAaD,EAAcyqB,GAEjC,OADgBvqB,EAAAA,GAAkBH,EAAYE,IAKlD,SAASD,EAAc+U,GACrB,MAAMplI,GAAU+6I,EAAAA,EAAAA,wBAiChB,OAhCA/6I,EAAQlc,SAASd,KAAOoiJ,EAAIr5I,KAC5BiU,EAAQlc,SAASujE,UAAY+9E,EAAIrmB,UACjC/+G,EAAQlc,SAAS+1C,OAAOmvF,EAAAA,8CAAgDoc,EAAIjrG,UAC5En6B,EAAQlc,SAAS+1C,OAAOyvF,EAAAA,yCAA2C8b,EAAI/b,gBACvErpH,EAAQlc,SAAS+1C,OAAOuvF,EAAAA,0CAA4Cgc,EAAIjc,iBACpEic,EAAI7b,KACNvpH,EAAQlc,SAAS48H,YAAY8I,EAAAA,oCAAsC4b,EAAI7b,KAEvEvpH,EAAQlc,SAAS48H,iBAAc3vH,EAGjCiP,EAAQ0oH,KAAKwE,SAAWkY,EAAIpkF,aAC5BhhD,EAAQ0oH,KAAKoB,SAASiG,YAAYvS,IAAM4nB,EAAIr5I,KAC5CiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAO2jF,IAAM4nB,EAAIr5I,KAChDiU,EAAQ0oH,KAAK10H,SAASlQ,SAAS+1C,OAAOyvF,EAAAA,yCAA2C8b,EAAI/b,gBACrFrpH,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGx3C,KAAOoiJ,EAAIr5I,KACpDiU,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGuS,MAAQq4F,EAAIh/E,MACrDpmD,EAAQ0oH,KAAK10H,SAAS00H,KAAKsH,SAAWoV,EAAInX,SAC1CC,EAAAA,QAAAA,sBAA6CluH,EAAS,uCAAwColI,EAAIvkE,KAClGqtD,EAAAA,QAAAA,sBAA6CluH,EAAS,gDAAiDolI,EAAInV,cAC3G/B,EAAAA,QAAAA,sBAA6CluH,EAAS,6BAA8BolI,EAAIh1E,SACpFg1E,EAAIvxD,cACN7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAOnsB,OAASitH,EAAIvxD,YACvE7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAAS//F,OAASitH,EAAIvxD,aAEvEuxD,EAAIlxD,WACNl0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAU3zE,OAAO04D,IAAMooC,EAAIlxD,SACpEl0E,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAAUC,SAASlb,IAAMooC,EAAIlxD,UAEnEkxD,EAAIlxD,UAAakxD,EAAIvxD,oBACjB7zE,EAAQ0oH,KAAK10H,SAAS00H,KAAKluF,WAAW,GAAGy9E,UAE3Cj4G,I,kECvKTlL,QACG5W,OAAO,wBACPsT,OAAO,4BAA4B,WAElC,OAAO,SAAUmW,GAEf,OADa,IAAUA,IAErB,IAAK,UACH,MAAO,UACT,IAAK,UACH,MAAO,UACT,IAAK,aACH,MAAO,OACT,QACE,MAAO,cAIdnW,OAAO,qCAAqC,WAE3C,OAAO,SAAU4F,EAAQnO,GACvB,OAAQA,GACN,IAAK,gBACH,OAAQmO,GACN,IAAK,OACH,MAAO,mCACT,IAAK,QACH,MAAO,sBACT,IAAK,UACH,MAAO,oCAEX,MACF,IAAK,eACL,IAAK,QACL,IAAK,cACL,IAAK,kBACH,OAAQA,GACN,IAAK,OACH,MAAO,sBACT,IAAK,QACH,MAAO,mCACT,IAAK,UACH,MAAO,oCAEX,MACF,QACE,MAAO,mCAId5F,OAAO,oCAAoC,WAE1C,OAAO,SAAU4F,EAAQnO,GACvB,OAAQA,GACN,IAAK,gBACH,OAAQmO,GACN,IAAK,OACH,MAAO,QACT,IAAK,QACH,MAAO,KACT,IAAK,UACH,MAAO,UAEX,MACF,IAAK,eACL,IAAK,QACL,IAAK,cACL,IAAK,kBACH,OAAQA,GACN,IAAK,OACH,MAAO,KACT,IAAK,QACH,MAAO,QACT,IAAK,UACH,MAAO,UAEX,MACF,QACE,MAAO,gB,6KChFV,MAAMwjI,EAA4D58I,OAAOyyF,OAAO,CACrFuqE,GAAI,KACJC,OAAQ,QACRC,OAAQ,SACRC,eAAgB,eAChBC,aAAc,KACdC,WAAY,OASP,SAASra,IACd,MAAO,CACLf,aAAc,M,oeCZlB,MAAMqb,EAAiBt9J,OAAOyyF,OAAO,CACnChlF,GAAI,GACJM,KAAM,GACNgzH,UAAW,GACX5lD,OAAQ,GACRhhE,OAAQ,GACRuhJ,SAAU,EACVvtE,KAAM,GACNw9C,aAAc,GACd3yE,WAAY,GACZld,OAAQ,GACRm0F,SAAU,GACVssB,YAAa,GACbF,kBAActpJ,IAGT,MAAMuoJ,EACXn6G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU22J,MAOlD,MAAMC,EAA2Bv9J,OAAOyyF,OAAO,CAC7C61C,IAAK,GACLm0B,SAAU,GACVtzB,MAAO,GACPuzB,kBAAmB,EACnBjE,OAAQ,KAGH,MAAM+D,EACXr7G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU42J,MAIlD,MAAMC,EAA0Bx9J,OAAOyyF,OAAO,CAC5CvmF,KAAM,EACN4vJ,QAAS,GACT/tJ,KAAM,GACNq6D,MAAO,GACP6zF,gBAAiB,GACjB9tE,KAAM,GACNw9C,aAAc,GACdxxH,OAAQ,GACR8qE,OAAQ,GACRknD,SAAU,GACV8F,aAAc,GACd9D,qBAAsB,GACtBT,iBAAkB,GAClB7qD,IAAK,KAGA,MAAM+4E,EACXz6G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU62J,MAIlD,MAAMC,EAAyBz9J,OAAOyyF,OAAO,CAC3CnmB,WAAY,iBACZq0E,KAAM,WACN76I,SAAU,CACRd,KAAM,GACNqkE,UAAW,MAIR,MAAMuzF,EACXz7G,cACEnhD,OAAOM,OAAOY,KAAMwF,KAAKwZ,MAAMxZ,KAAKC,UAAU82J,MAI3C,MAAM5B,EAA8B,CACzC6B,KAAM,EACNC,IAAK,I,mCCpFA,SAAShb,IACd,MAAO,CACLT,+CAAgD,CAC9CE,kBAAmB,IAErBM,gDAAiD,IAI9C,SAASK,IACd,MAAO,CACL6a,OAAQ,EACRrkF,WAAY,IAIT,SAASupE,IACd,MAAO,CACLT,iBAAkB,IAIf,SAASQ,IACd,MAAO,CACLhiJ,IAAK,GACL+4E,SAAU,GACVrxE,OAAQ,I,sWCxBL,SAASw0J,IACd,MAAO,CACLj3J,SAAU,IAAIknJ,EAAAA,gCACdtiB,KAAM,CACJwE,SAAU,EACVpD,SAAU,CACRiG,YAAa,CACXvS,IAAK,KAGThmD,SAAU,CACRvuE,KAAM,gBACNgnJ,cAAe,CACbgB,SAAU,EACVf,eAAgB,SAGpBl8I,SAAU,CACRlQ,SAAU,CACR+1C,OAAQ,CACN2jF,IAAK,KAGTkL,KAAM,CACJsH,SAAU,GACVx1F,WAAY,CACV,CACEx3C,KAAM,GACN+pD,MAAO,GACP70C,IAAK,GACL+/G,UAAW,CACT3zE,OAAQ,GACR4zE,SAAU,IAEZyT,aAAc,KAGlB9wE,QAAS,S,mGCjCnB,MAAMghG,EAEJ18G,YAAYC,EAAQ08G,GAClB58J,KAAKkgD,OAASA,EACdlgD,KAAK48J,eAAiBA,EAEtB58J,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAK68J,UAAY78J,KAAK68J,UAAUx9J,KAAKW,MACrCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAK88J,cAAgB98J,KAAK88J,cAAcz9J,KAAKW,MAGjC,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAK48J,eAAez0F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAK48J,eAAez0F,GAAWogF,QAAQ/8I,GAAQw6C,WAK3I,MAJY,CACVw5F,IAAKuJ,EACL3Y,KAAMJ,EAAKvrI,MAGb,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,yBAA0BE,IAOtC,kBAACqtD,GAChB,IAEE,aADmBnoE,KAAK48J,eAAez0F,GAAWxpD,MAAMqnC,UAC5CojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,IAIxD6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAUxB,gBAACA,EAAW2kF,EAASv2D,GAClC,IACE,MAAM/qF,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwuJ,EACRv2D,IACF/qF,EAAO8rC,UAAYi/C,GAErB,MAAM9xF,QAAazE,KAAK48J,eAAez0F,GAAWiO,KAAK5qE,GAAQw6C,SAC/D,OAA4B,IAArBvhD,EAAK2xE,KAAK32E,OAAe,GAAKgF,EAAK2xE,KAAK76C,MAAM,MACrD,MAAOzgB,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5Ds7D,KAAKjO,EAAW2kF,EAASv2D,GACvB,OAAOv2F,KAAKkgD,OAAOlgD,KAAK68J,UAAW10F,EAAW2kF,EAASv2D,GAMzC,iBAAColE,EAAQC,GACvB,IACE,MAAMpwJ,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKs9J,EAAO/uJ,KACnB,MAAMs7D,EAAYyzF,EAAO/7B,UACnB/+G,EAAUq5I,EAAAA,QAAAA,aAAoCwB,EAAQC,GAC5D,IAAK96I,EAAQrhB,OACX,OAGF,aADmBO,KAAK48J,eAAez0F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAEzE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,sBAAuBE,IAIpDkwC,MAAM2wG,EAAQC,GACZ,OAAO57J,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY+S,EAAQC,GAM7B,kBAAC1V,GAChB,IACE,MAAM16I,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK4nJ,EAAIr5I,KAChB,MAAMs7D,EAAY+9E,EAAIrmB,gBAChB7/H,KAAK48J,eAAez0F,GAAWhnB,OAAO31C,GAAQw6C,SACpD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,uBAAwBE,IAIrDqmC,OAAO+kG,GACL,OAAOlmJ,KAAKkgD,OAAOlgD,KAAK6oJ,YAAa3C,GAMpB,oBAACA,GAClB,IACE,MAAM16I,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK4nJ,EAAIr5I,KAChBrB,EAAO9G,OAAS,WAChB,MAAMyjE,EAAY+9E,EAAIrmB,UAChBk9B,EAAqB5C,EAAAA,QAAAA,gBAAuCjU,SAC5DlmJ,KAAK48J,eAAez0F,GAAW60F,MAAMxxJ,EAAQuxJ,GAAoB/2G,SACvE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,sBAAuBE,IAIpDmiJ,SAAS/W,GACP,OAAOlmJ,KAAKkgD,OAAOlgD,KAAK88J,cAAe5W,I,sCAI3C,YACAtwI,IAAAA,OAAe,wBAAwB+H,QAAQ,uBAAwBg/I,I,6EC1IvE,UAAe/mJ,IAAAA,OAAe,kCAAmC,IAAIC,UAAU,+BAAgCqnJ,EAAAA,8BAA/G,M,oHCJA,MAIaA,EAA+B,CAC1C18G,YALoCxrC,EAAQ,MAM5CE,WAF0C,UAG1CH,SAAU,CACRgC,SAAU,O,8FCNC,MAAMomJ,EAEnBl9G,YAAYC,EAAQwI,EAAQqiB,EAAgBrpB,EAAciY,EAAiBlvC,EAAeg8C,EAAiBq7D,GACzG9hI,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK+qE,eAAiBA,EACtB/qE,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAK8hI,8BAAgCA,EACrC9hI,KAAKymE,gBAAkBA,EACvBzmE,KAAK25D,gBAAkBA,EAEvB35D,KAAK+P,MAAQ,CACXolF,kBAAkB,GAGpBn1F,KAAKo9J,sBAAwB,GAC7Bp9J,KAAKgkI,cAAgB,GACrBhkI,KAAKq9J,mBAAqB,GAE1Br9J,KAAK87H,aAAe97H,KAAK87H,aAAaz8H,KAAKW,MAGjC,eACV,OAAOA,KAAKs9J,iBAAiB,IAAIt9J,KAAKq9J,mBAAmBl/J,KAAI,EAAGwF,MAAAA,KAAYA,OAAW3D,KAAKo9J,sBAAsBj/J,KAAKi6I,GAASA,EAAKt0I,SAGvIg4H,aAAayhC,GACX,MAAMC,EAAmBD,EAAWp/J,KAAI,EAAGwF,MAAAA,KAAYA,IACjD85J,EAAaz9J,KAAKq9J,mBAAmBl/J,KAAI,EAAGwF,MAAAA,KAAYA,IAAO2O,QAAQ3O,IAAW65J,EAAiBr4J,SAASxB,KAIlH3D,KAAK0hD,aAAap6B,gBADhB,gNACmDX,IACnD,GAAIA,EACF,OAAO3mB,KAAKs9J,iBAAiBG,MAKnCH,iBAAiBC,GACf,OAAOv9J,KAAKkgD,QAAO2F,UACjB,UACQ7lD,KAAK25D,gBAAgBs4C,qBAAqBjyG,KAAK+W,SAASxK,GAAIvM,KAAK0oD,OAAOl9C,OAAOlN,GAAI,CACvFi/J,WAAAA,IAEFv9J,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAK/CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+qE,eAAesoC,uBAAuB,CAAC,kCAC5C,IACErzG,KAAKonE,eAAiBpnE,KAAKymE,gBAAgBW,SAASpnE,KAAK0oD,OAAOl9C,OAAOlN,GAAI0B,KAAK+W,SAASxK,IACrFvM,KAAKonE,SAASmsC,kBAAoBvzG,KAAKonE,SAASmsC,iBAAiBvzG,KAAK+W,SAASxK,MACjFvM,KAAKq9J,mBAAqBr9J,KAAKonE,SAASmsC,iBAAiBvzG,KAAK+W,SAASxK,IAAI6nI,WAAWj2I,KAAKwF,IAAD,CAAcA,MAAAA,OAE1G,MAAOmX,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAG3C,IACE,MAAMkpH,QAAsBhkI,KAAK8hI,8BAA8BnjH,MAE/D3e,KAAKgkI,cAAgBA,EAClB1xH,QAAQ8lI,IAAU7Z,EAAAA,QAAAA,kBAA4C6Z,EAAKvY,UAAUhzH,QAAU7M,KAAKq9J,mBAAmB5zJ,MAAK,EAAG9F,MAAAA,KAAYA,IAAUy0I,EAAKvY,UAAUhzH,SAC5J1O,KAAKi6I,IAAD,CAAat0I,KAAMs0I,EAAKvY,UAAUhzH,KAAMvO,GAAI85I,EAAKvY,UAAUtzH,OAClE,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,sC,4MCxEjDlF,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,uBAAwB,CACrE,YACA,yBACA,mBACA,SAAqCN,EAAWC,EAAwBC,GAEtE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,0BAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBugC,OAAQ,CAAEvgC,OAAQ,iB,yDC7B5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,gCAAiC,CAC9E,YACA,yBACA,mBACA,SAA8CN,EAAWC,EAAwBC,GAE/E,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,wCAA0CyjB,EAAY,yBAA2B,IAAM,mCAG1H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,yDCnC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,uBAAwB,CACrE,YACA,yBACA,mBACA,SAAqCN,EAAWC,EAAwBC,GAEtE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,wCAA0CyjB,EAAY,yBAA2B,IAAM,0BAG1H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwyE,SAAU,CACRvoE,OAAQ,QACRjK,QAAS,CACP,eAAgB,2CAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,yDCzC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,wBAAyB,CACtE,YACA,yBACA,mBACA,SAAsCN,EAAWC,EAAwBC,GAEvE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,wCAA0CyjB,EAAY,yBAA2B,IAAM,2BAG1H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwyE,SAAU,CACRvoE,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,iBC3C5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,sBAA/C,yDAAsE,SAAoCN,EAAWC,EAAwBC,GAC3I,aACA,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,iBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,U,yDCX5B9xE,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,mBAAoB,CACjE,YACA,yBACA,mBACA,SAAiCN,EAAWC,EAAwBC,GAElE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,sBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBugC,OAAQ,CAAEvgC,OAAQ,iB,iBC/B5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,mBAAoB,CACjE,YACA,yBACA,SAAiCN,EAAWC,GAC1C,aACA,OAAOD,EACLC,EAAyB,0BACzB,GACA,CACE39C,KAAM,CAAE6Z,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,a,yDCP7CsX,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,uBAAwB,CACrE,YACA,yBACA,mBACA,SAAqCN,EAAWC,EAAwBC,GAEtE,OAAO,WAEL,OAAOF,EADKC,EAAyB,wDAGnC,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBg2E,QAAS,CACP98I,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBugC,OAAQ,CAAEvgC,OAAQ,UAClB1I,OAAQ,CACN0I,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,UAClBgjF,kBAAkB,U,kECrC9B,SAASi2E,EAA6Bl5G,EAAW0H,EAAyBxH,GAExE,OAAOF,EADK0H,EAA0B,4BAGpC,CACE5tC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,EAClBjuC,kBAAoBh1C,IAAD,CAAaA,KAAMe,KAAKwZ,MAAMva,Q,qEAdzDmR,IAAAA,OAAe,wBAAwBmvC,QAAQ,wBAAyB44G,I,kECGxE,SAASC,EAAWn5G,EAAW0H,EAAyBxH,GAEtD,OAAOF,EADK0H,EAA0B,mBAGpC,CACE5tC,WAAYomC,EAAiBE,YAE/B,CACEgsE,MAAO,CACLjwG,OAAQ,MACR8mE,kBAAkB,EAClBjuC,kBAAoBh1C,IAAD,CAAaA,KAAMe,KAAKwZ,MAAMva,MAEnDm9D,OAAQ,CACNhhD,OAAQ,MACR8mE,kBAAkB,EAClBjuC,kBAAoBh1C,IAAD,CAAaA,KAAMe,KAAKwZ,MAAMva,Q,qEAnBzDmR,IAAAA,OAAe,wBAAwBmvC,QAAQ,MAAO64G,I,yDCAtDhoJ,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,mCAAoC,CACjF,YACA,yBACA,mBACA,SAAiDN,EAAWC,EAAwBC,GAElF,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,sCAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,oEClC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,iBAAkB,CAC/D,YACA,yBACA,mBACA,SAA+BN,EAAWC,EAAwBC,GAEhE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,oBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBugC,OAAQ,CAAEvgC,OAAQ,UAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBy/D,KAAM,CACJx1D,OAAQ,MACRpV,OAAQ,CAAE9G,OAAQ,OAClB+0C,kBAAmBuuC,EAAAA,aAErBg1E,MAAO,CAAEp8I,OAAQ,e,iBC1C3B,SAASi9I,EAAqCp5G,GAE5C,OAAOA,EADK,gEAGV,GACA,CACEq5G,aAAc,CAAEl9I,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,a,wBARvDkR,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,gCAAiC84G,I,yDCEhFjoJ,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,wBAAyB,CACtE,YACA,yBACA,mBACA,SAAsCN,EAAWC,EAAwBC,GAEvE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,wCAA0CyjB,EAAY,yBAA2B,IAAM,2BAG1H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,yDCnC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,2BAA4B,CACzE,YACA,yBACA,mBACA,SAAyCN,EAAWC,EAAwBC,GAE1E,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,8BAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,mCCpCrB,SAAS4nI,EAAY/jJ,GAI1B,MAHiB,CACfA,KAAMA,G,2GCDVmR,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,oBAAqB,CAClE,YACA,yBACA,mBACA,SAAkCN,EAAWC,EAAwBC,GAEnE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,uBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBugC,OAAQ,CAAEvgC,OAAQ,iB,yDC7B5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,qBAAsB,CACnE,YACA,yBACA,mBACA,SAAmCN,EAAWC,EAAwBC,GAEpE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,kCAAoCyjB,EAAY,yBAA2B,IAAM,wBAGpH,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,yDCnC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,yBAA0B,CACvE,YACA,yBACA,mBACA,SAAuCN,EAAWC,EAAwBC,GAExE,OAAO,SAAUwjB,GAEf,OAAO1jB,EADKC,EAAyB,wCAA0CyjB,EAAY,yBAA2B,IAAM,4BAG1H,CACE5pD,WAAYomC,EAAiBE,WAC7BsjB,UAAWA,GAEb,CACExpD,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwyE,SAAU,CACRvoE,OAAQ,QACRjK,QAAS,CACP,eAAgB,2CAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,yDCzC5BhL,QAAQ5W,OAAO,wBAAwB+lD,QAAQ,oBAAqB,CAClE,YACA,yBACA,mBACA,SAAkCN,EAAWC,EAAwBC,GAEnE,OAAO,WAEL,OAAOF,EADKC,EAAyB,4EAGnC,CACEnmC,WAAYomC,EAAiBE,YAE/B,CACElmC,IAAK,CACHiC,OAAQ,MACR8mE,kBAAkB,GAEpB6gE,QAAS,CACP3nI,OAAQ,MACRjK,QAAS,CACPorG,OAAQ,oBAEVtoE,kBAAmB+uG,EAAAA,YACnB9gE,kBAAkB,GAEpBhvC,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,OAClBoqC,MAAO,CACLpqC,OAAQ,QACRjK,QAAS,CACP,eAAgB,gCAGpBwqC,OAAQ,CAAEvgC,OAAQ,iB,8WCd5B,MAAMm9I,EAGJ99G,YACEC,EACA6qB,EACAizF,EACAC,EACAC,EACAC,EACAC,EACAC,EACAvhC,EACA6/B,EACA2B,EACA7V,EACAuD,GAEAhsJ,KAAKkgD,OAASA,EACdlgD,KAAK+qE,eAAiBA,EACtB/qE,KAAKg+J,4BAA8BA,EACnCh+J,KAAKi+J,2BAA6BA,EAClCj+J,KAAKk+J,6BAA+BA,EACpCl+J,KAAKm+J,yBAA2BA,EAChCn+J,KAAKo+J,wBAA0BA,EAC/Bp+J,KAAKq+J,uCAAyCA,EAC9Cr+J,KAAK88H,2BAA6BA,EAClC98H,KAAK28J,qBAAuBA,EAC5B38J,KAAKs+J,yBAA2BA,EAChCt+J,KAAKyoJ,yCAA2CA,EAChDzoJ,KAAKgsJ,yBAA2BA,EAEhChsJ,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAKu+J,kBAAoBv+J,KAAKu+J,kBAAkBl/J,KAAKW,MACrDA,KAAKw+J,cAAgBx+J,KAAKw+J,cAAcn/J,KAAKW,MAC7CA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAK3Cy+J,0BAA0BngC,GACxB,IAAIogC,EACJ,GAAIpgC,aAAegT,EAAAA,sBAAyBhT,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,WAC1Go/B,EAAa1+J,KAAKg+J,iCACb,GAAI1/B,aAAeqS,EAAAA,qBAAwBrS,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,UAChHo/B,EAAa1+J,KAAKi+J,gCACb,GAAI3/B,aAAe2Y,EAAAA,uBAA0B3Y,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,YAClHo/B,EAAa1+J,KAAKk+J,iCACb,MAAI5/B,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,KAGzE,MAAM,IAAI1kH,EAAAA,EAAe,wEAFzB8jJ,EAAa1+J,KAAK28J,qBAIpB,OAAO+B,EAGTC,8BAA8BC,EAAcC,GAC1C,OAAO,IAAMA,GAAeC,IAC1B,MAAMC,EAAS,IAAOH,EAAc,CAAE/xJ,KAAMiyJ,EAAOjyJ,OACnD,OAAO7M,KAAKgsJ,yBAAyBhhG,MAAM+zG,EAAQD,MAMzC,eAAC32F,EAAWrkE,GACxB,MAAOsrI,EAAYE,EAAWD,EAAa6W,EAAK5c,EAAM01B,EAAaz1B,SAAmBttH,QAAQ0nH,WAAW,CACvG3jI,KAAKg+J,4BAA4Br/I,IAAIwpD,EAAWrkE,GAChD9D,KAAKi+J,2BAA2Bt/I,IAAIwpD,EAAWrkE,GAC/C9D,KAAKk+J,6BAA6Bv/I,IAAIwpD,EAAWrkE,GACjD9D,KAAK28J,qBAAqBh+I,IAAIwpD,EAAWrkE,GACzC9D,KAAK28J,qBAAqBh+I,IAAIwpD,GAC9BnoE,KAAKyoJ,yCAAyC9pI,IAAIwpD,GAClDnoE,KAAKgsJ,yBAAyBrtI,IAAIwpD,KAGpC,IAAI82F,EACAC,EACJ,GAA0B,cAAtB9vB,EAAWl3H,OACb+mJ,EAAW7vB,EACX8vB,EAAgB91B,EAAAA,QAAAA,gCACX,GAAyB,cAArBkG,EAAUp3H,OACnB+mJ,EAAW3vB,EACX4vB,EAAgB91B,EAAAA,QAAAA,+BACX,GAA2B,cAAvBiG,EAAYn3H,OACrB+mJ,EAAW5vB,EACX6vB,EAAgB91B,EAAAA,QAAAA,gCACX,IAAmB,cAAf8c,EAAIhuI,OAIb,MAAM,IAAI0C,EAAAA,EAAe,uEAHzBqkJ,EAAW/Y,EACXgZ,EAAgB91B,EAAAA,QAAAA,oBAKlB,MAAMpuE,QAAiBh7D,KAAKm+J,yBAAyBx/I,IAAIwpD,GACnDg3F,EAAexoB,EAAAA,QAAAA,4BAAoD37E,EAAUikG,EAASt7J,MAAM67I,KAC5F7hI,EAAUwhJ,QAAqBn/J,KAAKm+J,yBAAyBx/I,IAAIwpD,EAAWg3F,EAAav6J,SAASd,MAAQ,GAC1Gs7J,EAAgBzoB,EAAAA,QAAAA,6BAAqD37E,EAAUikG,EAASt7J,MAAM67I,KAE9FpD,EAAc8iB,EAAcD,EAASt7J,MAAM67I,IAAKlW,EAAK3lI,MAAOga,EAAQ6hI,IAAKjW,EAAU5lI,OACzFy4I,EAAYhM,KAAO6uB,EAASt7J,MAAMysI,KAClCgM,EAAYoD,IAAMyf,EAASt7J,MAAM67I,IACjCpD,EAAYzR,KAAO,IAAMyR,EAAYzR,MAAOt2F,GAAS8lH,EAAAA,QAAAA,WAAkC9lH,KACvF+nG,EAAYtkF,WAAasmE,EAAAA,QAAAA,kCAA8Dge,GACvFA,EAAY/V,SAAW+4B,EAEvB,MAAMC,EAAcnX,EAAAA,wCAAAA,2BAAmE8W,EAAYr7J,MAAOy4I,GACpGkjB,EAASD,QAAoBr/J,KAAKyoJ,yCAAyC9pI,IAAIwpD,EAAWk3F,EAAYxyJ,WAAQgF,EAcpH,OAbAuqI,EAAYxN,WAAa0wB,EACzBljB,EAAYiD,UAAY9V,QAElBvpI,KAAKs+J,yBAAyB3/I,IAAIy9H,GAEpCz+H,EAAQyyH,OACVgM,EAAYhM,MAAQ,QAAUzyH,EAAQyyH,MAEpCkvB,GAAUA,EAAOlvB,OACnBgM,EAAYhM,MAAQ,QAAUkvB,EAAOlvB,MAIhCgM,EAGQ,kBAACj0E,GAChB,MAAMo1F,EAAap1F,EAAY,CAACA,GAAa,UAAYnoE,KAAK88H,2BAA2Bn+G,MAAO,QAE1F4gJ,EAAuB,CAAClrH,EAAM6qH,EAAelkG,EAAUsuE,EAAMC,KACjE,MAAM5rH,EAAUg5H,EAAAA,QAAAA,4BAAoD37E,EAAU3mB,GACxEmrH,EAAgB7oB,EAAAA,QAAAA,6BAAqD37E,EAAU3mB,GAC/E+nG,EAAc8iB,EAAc7qH,EAAMi1F,EAAM3rH,EAAS4rH,GAGvD,OAFA6S,EAAYtkF,WAAasmE,EAAAA,QAAAA,kCAA8Dge,GACvFA,EAAY/V,SAAWm5B,EAChBpjB,GAGH/S,QAAYptH,QAAQqW,IACxB,IAAMirI,GAAY13G,MAAAA,IAChB,MAAO45G,EAAaC,EAAYC,EAAc3kG,EAAUsuE,EAAMC,EAAWy1B,SAAqB/iJ,QAAQqW,IAAI,CACxGtyB,KAAKg+J,4BAA4Br/I,IAAIk6I,GACrC74J,KAAKi+J,2BAA2Bt/I,IAAIk6I,GACpC74J,KAAKk+J,6BAA6Bv/I,IAAIk6I,GACtC74J,KAAKm+J,yBAAyBx/I,IAAIk6I,GAClC74J,KAAK28J,qBAAqBh+I,IAAIk6I,GAC9B74J,KAAKgsJ,yBAAyBrtI,IAAIk6I,GAClC74J,KAAKyoJ,yCAAyC9pI,IAAIk6I,KAG9C+G,EAAyB,IAAMH,GAAcprH,GACjDkrH,EAAqBlrH,EAAM+0F,EAAAA,QAAAA,2BAA2DpuE,EAAUsuE,EAAMC,KAElGs2B,EAAwB,IAAMH,GAAarrH,GAASkrH,EAAqBlrH,EAAM+0F,EAAAA,QAAAA,0BAA0DpuE,EAAUsuE,EAAMC,KACzJu2B,EAA0B,IAAMH,GAAetrH,GACnDkrH,EAAqBlrH,EAAM+0F,EAAAA,QAAAA,4BAA4DpuE,EAAUsuE,EAAMC,KAGnGw2B,EAAY,IAAS,IAAUH,EAAwB,QAAS,IAAUC,EAAuB,QAAS,IAAUC,EAAyB,SAC7IE,EAAc,IAAU12B,KAASy2B,GACjCE,EAAwB,IAAMD,GAAc3rH,GAASkrH,EAAqBlrH,EAAM+0F,EAAAA,QAAAA,oBAAoDpuE,EAAUsuE,EAAMC,KAEpJiT,EAAe,IAASojB,EAAwBC,EAAuBC,EAAyBG,GAYtG,OAXA,IAAUzjB,GAAele,IACvBA,EAAIqM,KAAO,IAAMrM,EAAIqM,MAAOt2F,GAAS8lH,EAAAA,QAAAA,WAAkC9lH,cAEnEp4B,QAAQqW,IACZ,IAAUkqH,GAAc32F,MAAAA,IACtB,MAAMw5G,EAAcnX,EAAAA,wCAAAA,2BAAmE8W,EAAa5iB,GAC9FkjB,EAASD,QAAoBr/J,KAAKyoJ,yCAAyC9pI,IAAIk6I,EAAIwG,EAAYxyJ,WAAQgF,EAC7GuqI,EAAYxN,WAAa0wB,EACzBljB,EAAYiD,gBAAkBr/I,KAAKgsJ,yBAAyBrtI,IAAIk6I,OAG7Drc,MAGX,OAAO,IAAUnT,GAGnB1qH,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GActB,kBAACx0D,GAEhB,IAAK2qH,EAAKiR,EAAiBv0E,EAAUr9C,EAASsxH,GAAU7F,EAAAA,QAAAA,mCAAkEz1H,GAE1H,GAAIqnD,EAAU,CACZA,EAASnjD,SAAQguC,MAAAA,UACT7lD,KAAKm+J,yBAAyBzlH,OAAO/6B,MAI7C,MAAM4rH,EAAY4K,EAAAA,2BAAAA,qBAAgDxgI,EAAW02I,kBAAmBrvF,GAC5FuuE,SAEIttH,QAAQqW,IAAItyB,KAAK2+J,8BAA8BhrJ,EAAW02I,kBAAmB9gB,IAIvF,GAAI5rH,GACEhK,EAAWm7H,iBAAmB3K,EAAAA,qCAAAA,QAA8C,CAC9E,MAAMoF,EAAY4K,EAAAA,2BAAAA,iCAA4DxgI,EAAYgK,EAAQ9Q,YAC5FoP,QAAQqW,IAAItyB,KAAK2+J,8BAA8BhrJ,EAAW02I,kBAAmB9gB,IAIvF,MAAMm1B,EAAa1+J,KAAKy+J,0BAA0BngC,GAElD,GAAIA,aAAe2Y,EAAAA,sBACjB3Y,EAAI6Y,aAAelI,EACnBM,QAAwBvvI,KAAKm+J,yBAAyBzlH,OAAO62F,GAC7DjR,EAAIvmD,YAAcw3D,EAAgB3qI,SAASd,SACtC,CACL,MAAMo8J,EAAgB,IAAMjxB,GAAS56F,IACnC,IAAKA,EAAK8+F,eAAiB9+F,EAAK9nC,GAC9B,OAAOvM,KAAKq+J,uCAAuC3lH,OAAOrE,YAGxDp4B,QAAQqW,IAAI,IAAU4tI,OAAeruJ,IAG7C,GAAI8B,EAAWi7H,WAAWuR,QAAUxsI,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,OAA6C,CAC7G,MAAMogB,EAAOyI,EAAAA,wCAAAA,yBAAiE5pB,GACxE0hB,EAAauH,EAAAA,2CAAAA,6BAAwE5zI,EAAY8rI,SACjGz/I,KAAKyoJ,yCAAyC/vG,OAAOsnG,SAGvD0e,EAAWhmH,OAAO4lF,GAG1B5lF,OAAO/kC,GACL,OAAO3T,KAAKkgD,OAAOlgD,KAAKiwF,YAAat8E,GAWvB,iBAACwsJ,EAAeC,GAC9B,MAAOC,EAAQC,EAAoBC,EAA7B,CAA4CC,GAAap3B,EAAAA,QAAAA,mCAAkE+2B,IAC1HM,EAAQC,EAAoBC,EAA7B,CAA4CC,GAAax3B,EAAAA,QAAAA,mCAAkEg3B,GAC3HS,EAAgB7gK,KAAKy+J,0BAA0B4B,GAC/CS,EAAgB9gK,KAAKy+J,0BAA0BgC,GAErD,GAAII,IAAkBC,EAapB,OAXIP,SACIvgK,KAAKm+J,yBAAyBh9G,OAAOo/G,SAIvCvgK,KAAKmhD,OAAOk/G,SAGZ,IAAIpkJ,SAASs6D,GAAMp4D,WAAWo4D,EAAG,aAG1Bv2E,KAAK04C,OAAO0nH,GAG3B,GAAIK,aAAkBxpB,EAAAA,4BACdj3I,KAAKm+J,yBAAyBnzG,MAAMs1G,EAAoBI,OACzD,CACL,MAAMR,EAAgB,IAAMU,GAAYG,IACtC,IAAKA,EAAS5tB,eAAiB4tB,EAASx0J,GACtC,OAAOvM,KAAKq+J,uCAAuC3lH,OAAOqoH,GACrD,IAAKA,EAASx0J,GAAI,CACvB,MAAMy0J,EAAW,IAAOR,EAAW,CAAE3zJ,KAAMk0J,EAAS5tB,eACpD,OAAOnzI,KAAKq+J,uCAAuCrzG,MAAMg2G,EAAUD,aAGjE9kJ,QAAQqW,IAAI4tI,GAMpB,SAHMY,EAAc91G,MAAMq1G,EAAQI,GAGP,IAAvBF,EAAY9gK,QAAuC,IAAvBkhK,EAAYlhK,OAAc,CACxDkhK,EAAY9oJ,SAAQguC,MAAAA,UACZ7lD,KAAKm+J,yBAAyBzlH,OAAO/6B,MAI7C,MAAM4rH,EAAY4K,EAAAA,2BAAAA,qBAAgDgsB,EAAc9V,kBAAmBsW,GAC/Fp3B,SACIttH,QAAQqW,IAAItyB,KAAK2+J,8BAA8BwB,EAAc9V,kBAAmB9gB,IAK1F,GAA2B,IAAvBg3B,EAAY9gK,QAAuC,IAAvBkhK,EAAYlhK,OAAc,CACxD,MAAM8pI,EAAY4K,EAAAA,2BAAAA,qBAAgDgsB,EAAc9V,kBAAmBkW,GAC/Fh3B,SACIttH,QAAQqW,IAAItyB,KAAK2+J,8BAA8BwB,EAAc9V,kBAAmB9gB,UAElFvpI,KAAKm+J,yBAAyB8C,UAAUV,GAIhD,GAA2B,IAAvBA,EAAY9gK,QAAuC,IAAvBkhK,EAAYlhK,OAAc,CACxD8gK,EAAY1oJ,SAAQguC,MAAAA,IACQ,IAAO86G,EAAa,CAAE9zJ,KAAMkqI,EAAWlqI,cAEzD7M,KAAKm+J,yBAAyB+C,aAAanqB,MAIrD4pB,EAAY9oJ,SAAQguC,MAAAA,IAClB,MAAMs7G,EAAoB,IAAOZ,EAAa,CAAE1zJ,KAAMmqI,EAAWnqI,OAC7Ds0J,QACInhK,KAAKm+J,yBAAyBnzG,MAAMm2G,EAAmBnqB,SAEvDh3I,KAAKm+J,yBAAyBzlH,OAAOs+F,MAK/C,MAAMoqB,EAAejtB,EAAAA,2BAAAA,qBAAgDgsB,EAAc9V,kBAAmBkW,GAGhGlU,EAAalY,EAAAA,2BAAAA,qBAAgDitB,EAAcT,SAG3E1kJ,QAAQqW,IAAItyB,KAAK2+J,8BAA8BwB,EAAc9V,kBAAmBgC,IAGxF,MAAMgV,EAAUnZ,EAAAA,wCAAAA,yBAAiEuY,GAC3Ea,EAAgB/Z,EAAAA,2CAAAA,6BAAwE6Y,EAAeiB,GAC7G,GAAKlB,EAAcvxB,WAAWuR,OAIvB,CACL,MAAMohB,EAAUrZ,EAAAA,wCAAAA,yBAAiEmY,GAC3EmB,EAAgBja,EAAAA,2CAAAA,6BAAwE4Y,EAAeoB,GACzGnB,EAAcxxB,WAAWuR,aACrBngJ,KAAKyoJ,yCAAyCz9F,MAAMw2G,EAAeF,SAEnEthK,KAAKyoJ,yCAAyCtnG,OAAOqgH,QATzDpB,EAAcxxB,WAAWuR,cACrBngJ,KAAKyoJ,yCAAyC/vG,OAAO4oH,GAc1C,wBAACjB,EAAQI,GAC9B,MAAMgB,EAAgB,CACpB50J,KAAMwzJ,EAAOxzJ,KACbgzH,UAAWwgC,EAAO7hC,aAClBvjF,UAAWolH,EAAOplH,UAClBovF,KAAMg2B,EAAOh2B,MAETq3B,EAAgB,CACpB70J,KAAM4zJ,EAAO5zJ,KACbgzH,UAAW4gC,EAAOjiC,aAClBvjF,UAAWwlH,EAAOxlH,UAClBovF,KAAMo2B,EAAOp2B,MAETq0B,EAAa1+J,KAAKy+J,0BAA0B4B,SAC5C3B,EAAW1zG,MAAMy2G,EAAeC,GAWxC12G,MAAM22G,EAAWjrG,EAAWkrG,GAAU,GACpC,OAAIA,EACK5hK,KAAKkgD,OAAOlgD,KAAKu+J,kBAAmBoD,EAAWjrG,GAEjD12D,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY+Y,EAAWjrG,GAKhC,kBAAC0lF,GAChB,MAAMt7H,EAAU,CACd++G,UAAWuc,EAAY5d,cAAgB4d,EAAYvc,UACnDhzH,KAAMuvI,EAAYvvI,MAEG+I,IAAAA,KAAakL,GACrBjU,KAAOuvI,EAAYvvI,KAElC,MAAM6xJ,EAAa1+J,KAAKy+J,0BAA0BriB,GAQlD,SAPMsiB,EAAWv9G,OAAOrgC,GAEpB49I,IAAe1+J,KAAKk+J,+BACStoJ,IAAAA,KAAakL,GACrBjU,KAAOuvI,aAAuBnF,EAAAA,sBAAwBmF,EAAYrkE,YAAcqkE,EAAY7N,qBAGjH6N,EAAYlR,oBAERlrI,KAAKm+J,yBAAyBh9G,OAAOi7F,EAAY/V,UAEnD+V,EAAYiD,UAAU5/I,QAAQ,CAChC,MACMkU,EAAa,CACjB02I,wBAF8BrqJ,KAAKgsJ,yBAAyBrtI,IAAImC,EAAQ++G,WAGxElB,eAAgBP,EAAAA,QAAAA,mDAA+Ege,EAAYlR,YAAakR,EAAYzd,iBAEhI4K,EAAY4K,EAAAA,2BAAAA,uCAAkExgI,EAAYyoI,SAE1FngI,QAAQqW,IAAItyB,KAAK2+J,8BAA8BhrJ,EAAW02I,kBAAmB9gB,IAGlF,IAAU6S,EAAYxN,mBACnB5uI,KAAKyoJ,yCAAyCtnG,OAAOi7F,EAAYxN,YAI3EztF,OAAOi7F,GACL,OAAOp8I,KAAKkgD,OAAOlgD,KAAK6oJ,YAAazM,GAKpB,oBAACA,EAAa0G,GAC/B,MAAMhiI,EAAU+hI,EAAAA,QAAAA,gBAAoDzG,EAAa0G,GAC3E4b,EAAa1+J,KAAKy+J,0BAA0BriB,SAC5CsiB,EAAWv1E,SAASizD,EAAY5d,aAAc4d,EAAYvvI,KAAMiU,GAGxEqoE,SAASizD,EAAa0G,GACpB,OAAO9iJ,KAAKkgD,OAAOlgD,KAAKw+J,cAAepiB,EAAa0G,I,mXAKxD,YACAltI,IAAAA,OAAe,wBAAwB+H,QAAQ,+BAAgCogJ,I,qJCrd/E,MAAM8D,EAEJ5hH,YAAYC,EAAQ4hH,GAClB9hK,KAAKkgD,OAASA,EACdlgD,KAAK8hK,qBAAuBA,EAE5B9hK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK8xH,YAAc9xH,KAAK8xH,YAAYzyH,KAAKW,MACzCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAG3C+hK,UAAU55F,EAAWrkE,GACnB,OAAO9D,KAAKkgD,QAAO2F,UACjB,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAMilJ,QAAY/oJ,KAAK8hK,qBAAqB35F,GAAWxpD,IAAInT,GAAQw6C,SACnE,OAAO4pF,EAAAA,QAAAA,8BAA2DmZ,GAClE,MAAOjuI,GACP,GAAmB,MAAfA,EAAI5C,OACN,OAAO,IAAI23H,EAAAA,mCAEb,MAAM,IAAIj1H,EAAAA,EAAe,wCAAyCE,OAKxEknJ,aAAap9I,GACX,OAAO5kB,KAAKkgD,QAAO2F,UACjB,IACE,MAAM/kC,EAAU8uH,EAAAA,QAAAA,oBAAiDhrH,GAC3DpZ,EAAS,GACT28D,EAAYrnD,EAAQlc,SAASujE,UAC7B1jE,QAAazE,KAAK8hK,qBAAqB35F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAChF,OAAO4pF,EAAAA,QAAAA,8BAA2DnrI,GAClE,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,sCAAuCE,OAKtElN,aAAagX,GACX,OAAO5kB,KAAKkgD,QAAO2F,UACjB,IACE,IAAKjhC,EAAOrY,GACV,aAAavM,KAAKgiK,aAAap9I,GAEjC,MAAM9D,EAAU8uH,EAAAA,QAAAA,oBAAiDhrH,GAC3DpZ,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwiB,EAAQlc,SAASd,KAC7B,MAAMqkE,EAAYrnD,EAAQlc,SAASujE,UAC7B1jE,QAAazE,KAAK8hK,qBAAqB35F,GAAWvG,OAAOp2D,EAAQsV,GAASklC,SAChF,OAAO4pF,EAAAA,QAAAA,8BAA2DnrI,GAClE,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,sCAAuCE,OAQxD,eAACqtD,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOm+J,EAAYC,SAAqBjmJ,QAAQ0nH,WAAW,CACzD3jI,KAAK8hK,qBAAqB35F,GAAWxpD,IAAInT,GAAQw6C,SACjDhmD,KAAK8hK,qBAAqB35F,GAAWogF,QAAQ/8I,GAAQw6C,WAGvD,GAA2C,MAAvC,IAAMi8G,EAAY,kBAAoE,MAAxC,IAAMC,EAAa,iBACnE,OAAOtyB,EAAAA,QAAAA,iBAA8CznE,EAAWrkE,GAMlE,GAAIm+J,EAAWt+J,MACb,OAAOisI,EAAAA,QAAAA,eAA4CqyB,EAAWt+J,MAAOu+J,EAAYv+J,OAGnF,MAAM,IAAIiX,EAAAA,EAAe,iCAAkC9W,GAC3D,MAAOgX,GACP,GAAmB,MAAfA,EAAI5C,OACN,OAAO03H,EAAAA,QAAAA,iBAA8CznE,EAAWrkE,GAElE,MAAM,IAAI8W,EAAAA,EAAe,gCAAiCE,IAI7C,kBAACqtD,GAChB,IACE,MAAM1jE,QAAazE,KAAK8hK,qBAAqB35F,GAAWxpD,MAAMqnC,SAC9D,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAASu7F,EAAAA,QAAAA,eAA4Cv7F,KAC/E,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI/D6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACvjD,GAChB,IACE,MAAM9D,EAAU8uH,EAAAA,QAAAA,cAA2ChrH,GACrDpZ,EAAS,GACT28D,EAAYrnD,EAAQlc,SAASujE,UAC7B1jE,QAAazE,KAAK8hK,qBAAqB35F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAChF,OAAO4pF,EAAAA,QAAAA,eAA4CnrI,GACnD,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5D49B,OAAO9zB,GACL,OAAO5kB,KAAKkgD,OAAOlgD,KAAKiwF,YAAarrE,GAMtB,kBAACA,GAChB,IACE,IAAKA,EAAOrY,GACV,aAAavM,KAAK04C,OAAO9zB,GAE3B,MAAM9D,EAAU8uH,EAAAA,QAAAA,cAA2ChrH,GACrDpZ,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwiB,EAAQlc,SAASd,KAC7B,MAAMqkE,EAAYrnD,EAAQlc,SAASujE,UAC7B1jE,QAAazE,KAAK8hK,qBAAqB35F,GAAWvG,OAAOp2D,EAAQsV,GAASklC,SAChF,OAAO4pF,EAAAA,QAAAA,eAA4CnrI,GACnD,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAG5D8mD,OAAOh9C,GACL,OAAO5kB,KAAKkgD,OAAOlgD,KAAK8xH,YAAaltG,GAMtB,kBAACA,GAChB,IACE,MAAMpZ,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKsmB,EAAO/X,KACnB,MAAMs7D,EAAYvjD,EAAOi7G,gBACnB7/H,KAAK8hK,qBAAqB35F,GAAWhnB,OAAO31C,GAAQw6C,SAC1D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5DqmC,OAAOv8B,GACL,OAAO5kB,KAAKkgD,OAAOlgD,KAAK6oJ,YAAajkI,I,4CAIzC,YACAhP,IAAAA,OAAe,wBAAwB+H,QAAQ,6BAA8BkkJ,I,qLCzK7E,MAAMM,EAEJliH,YAAYC,EAAQ6qB,EAAgB+xD,EAA4B+kC,EAA4BzD,GAC1Fp+J,KAAKkgD,OAASA,EACdlgD,KAAK+qE,eAAiBA,EACtB/qE,KAAK88H,2BAA6BA,EAClC98H,KAAK6hK,2BAA6BA,EAClC7hK,KAAKo+J,wBAA0BA,EAE/Bp+J,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK8xH,YAAc9xH,KAAK8xH,YAAYzyH,KAAKW,MACzCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,MAAOopI,EAAWpyE,SAAgB7+C,QAAQ0nH,WAAW,CAAC3jI,KAAK6hK,2BAA2BljJ,IAAIwpD,EAAWrkE,GAAO9D,KAAKo+J,wBAAwBz/I,IAAIwpD,EAAWrkE,KACxJ,IAAIinF,EACJ,MAAsB,cAAlBjwB,EAAO5iD,QACT6yE,EAAgBq3E,EAAAA,QAAAA,sBAAuDtnG,EAAOn3D,OACvEonF,IAETA,EAAgBq3E,EAAAA,QAAAA,yBAA0Dl1B,EAAUvpI,OAC7EonF,GAGQ,kBAAC5iB,GAChB,MAAMo1F,EAAap1F,EAAY,CAACA,GAAa,UAAYnoE,KAAK88H,2BAA2Bn+G,MAAO,QAC1F0qH,QAAYptH,QAAQqW,IACxB,IAAMirI,GAAY13G,MAAAA,IAChB,MAAOw8G,EAAYxnG,SAAiB5+C,QAAQqW,IAAI,CAACtyB,KAAK6hK,2BAA2BljJ,IAAIk6I,GAAK74J,KAAKo+J,wBAAwBz/I,IAAIk6I,KACrHyJ,EAAwB,IAAMznG,GAAUC,GAAWsnG,EAAAA,QAAAA,sBAAuDtnG,KAC1GynG,EAA2B,IAAMF,GAAan1B,GAAck1B,EAAAA,QAAAA,yBAA0Dl1B,KAC5H,OAAO,IAASq1B,EAA0BD,OAG9C,OAAO,IAAUj5B,GAGnB1qH,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACx0D,GAGhB,GAFAA,EAAWu8H,mBAAqBlB,EAAAA,QAAAA,aAAoCr7H,EAAWu8H,oBAE3Ev8H,EAAW3I,OAASsyH,EAAAA,6BAAAA,UAAwC,CAC9D,MAAM4P,EAAY0C,EAAAA,QAAAA,mCAAgEj8H,SAC5E3T,KAAK6hK,2BAA2BnpH,OAAOw0F,OACxC,CACL,MAAMpyE,EAAS0nG,EAAAA,QAAAA,gCAA0D7uJ,SACnE3T,KAAKo+J,wBAAwB1lH,OAAOoiB,IAI9CpiB,OAAO/kC,GACL,OAAO3T,KAAKkgD,OAAOlgD,KAAKiwF,YAAat8E,GAMtB,kBAACA,EAAYo3E,GAC5B,GAAIp3E,EAAW3I,OAASsyH,EAAAA,6BAAAA,UAAwC,CAC9D,MAAM4P,EAAY0C,EAAAA,QAAAA,mCAAgEj8H,GAClFu5H,EAAUgD,mBAAqBnlD,EAAcmlD,yBACvClwI,KAAK6hK,2BAA2BjgG,OAAOsrE,OACxC,CACL,MAAMpyE,EAAS0nG,EAAAA,QAAAA,gCAA0D7uJ,GACzEmnD,EAAOo1E,mBAAqBnlD,EAAcmlD,yBACpClwI,KAAKo+J,wBAAwBx8F,OAAO9G,IAI9C8G,OAAOjuD,EAAYo3E,GACjB,OAAO/qF,KAAKkgD,OAAOlgD,KAAK8xH,YAAan+G,EAAYo3E,GAMlC,kBAACnmE,GACZA,EAAO5Z,OAASsyH,EAAAA,6BAAAA,gBACZt9H,KAAK6hK,2BAA2B1gH,OAAOv8B,SAEvC5kB,KAAKo+J,wBAAwBj9G,OAAOv8B,GAI9Cu8B,OAAOv8B,GACL,OAAO5kB,KAAKkgD,OAAOlgD,KAAK6oJ,YAAajkI,I,0HAIzC,YACAhP,IAAAA,OAAe,wBAAwB+H,QAAQ,iCAAkCwkJ,I,6EC9GjF,MAAMM,EAEJxiH,YAAYC,EAAQwiH,GAClB1iK,KAAKkgD,OAASA,EACdlgD,KAAK0iK,8BAAgCA,EAErC1iK,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAM1B,kBAACmoE,GAChB,IAEE,aADmBnoE,KAAK0iK,8BAA8Bv6F,GAAWxpD,MAAMqnC,UAC3DojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,yCAA0CE,IAIvE6D,IAAIwpD,GACF,OAAOnoE,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,I,qDAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,sCAAuC8kJ,I,mGCzBtF,MAAMxE,EAEJh+G,YAAYC,EAAQyiH,GAClB3iK,KAAKkgD,OAASA,EACdlgD,KAAK2iK,qBAAuBA,EAE5B3iK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAKw+J,cAAgBx+J,KAAKw+J,cAAcn/J,KAAKW,MAC7CA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAK2iK,qBAAqBx6F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAK2iK,qBAAqBx6F,GAAWogF,QAAQ/8I,GAAQw6C,WAKvJ,MAJY,CACVw5F,IAAKuJ,EACL3Y,KAAMJ,EAAKvrI,MAGb,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI5C,kBAACqtD,GAChB,IAEE,aADmBnoE,KAAK2iK,qBAAqBx6F,GAAWxpD,MAAMqnC,UAClDojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI9D6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACmnE,GAChB,IACE,MAAM9jI,EAAS,GACTsV,EAAU4uH,EAAAA,QAAAA,cAA2CJ,GACrDnnE,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAK2iK,qBAAqBx6F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAEhF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3D49B,OAAO42F,GACL,OAAOtvI,KAAKkgD,OAAOlgD,KAAKiwF,YAAaq/C,GAMvB,iBAAC0B,EAAcC,GAC7B,IACE,MAAMzlI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK2yI,EAAapkI,KACzB,MAAMs7D,EAAY8oE,EAAapR,UACzB/+G,EAAU4uH,EAAAA,QAAAA,aAA0CsB,EAAcC,GACxE,IAAKnwH,EAAQrhB,OACX,OAGF,aADmBO,KAAK2iK,qBAAqBx6F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAE/E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,4BAA6BE,IAI1DkwC,MAAMgmF,EAAcC,GAClB,OAAOjxI,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY5X,EAAcC,GAMnC,kBAAC3B,GAChB,IACE,MAAM9jI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKgxI,EAAUziI,KACtB,MAAMs7D,EAAYmnE,EAAUzP,gBACtB7/H,KAAK2iK,qBAAqBx6F,GAAWhnB,OAAO31C,GAAQw6C,SAC1D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3DqmC,OAAOmuF,GACL,OAAOtvI,KAAKkgD,OAAOlgD,KAAK6oJ,YAAavZ,GAMpB,oBAACnnE,EAAWrkE,EAAMgd,GACnC,IACE,MAAMtV,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,QACN9D,KAAK2iK,qBAAqBx6F,GAAWghB,SAAS39E,EAAQsV,GAASklC,SACrE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI7DquE,SAAShhB,EAAWrkE,EAAMgd,GACxB,OAAO9gB,KAAKkgD,OAAOlgD,KAAKw+J,cAAer2F,EAAWrkE,EAAMgd,I,4CAI5D,YACAlL,IAAAA,OAAe,wBAAwB+H,QAAQ,6BAA8BsgJ,I,mGC/H7E,MAAMD,EAEJ/9G,YAAYC,EAAQ0iH,GAClB5iK,KAAKkgD,OAASA,EACdlgD,KAAK4iK,sBAAwBA,EAE7B5iK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAKw+J,cAAgBx+J,KAAKw+J,cAAcn/J,KAAKW,MAC7CA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAK4iK,sBAAsBz6F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAK4iK,sBAAsBz6F,GAAWogF,QAAQ/8I,GAAQw6C,WAKzJ,MAJY,CACVw5F,IAAKuJ,EACL3Y,KAAMJ,EAAKvrI,MAGb,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI7C,kBAACqtD,GAChB,IAEE,aADmBnoE,KAAK4iK,sBAAsBz6F,GAAWxpD,MAAMqnC,UACnDojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI/D6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACinE,GAChB,IACE,MAAM5jI,EAAS,GACTsV,EAAU0uH,EAAAA,QAAAA,cAA4CJ,GACtDjnE,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAK4iK,sBAAsBz6F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAEjF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5D49B,OAAO02F,GACL,OAAOpvI,KAAKkgD,OAAOlgD,KAAKiwF,YAAam/C,GAMvB,iBAACoC,EAAeC,GAC9B,IACE,MAAMjmI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKmzI,EAAc5kI,KAC1B,MAAMs7D,EAAYspE,EAAc5R,UAC1B/+G,EAAU0uH,EAAAA,QAAAA,aAA2CgC,EAAeC,GAC1E,IAAK3wH,EAAQrhB,OACX,OAGF,aADmBO,KAAK4iK,sBAAsBz6F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAEhF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3DkwC,MAAMwmF,EAAeC,GACnB,OAAOzxI,KAAKkgD,OAAOlgD,KAAK4oJ,WAAYpX,EAAeC,GAMpC,kBAACrC,GAChB,IACE,MAAM5jI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK8wI,EAAWviI,KACvB,MAAMs7D,EAAYinE,EAAWvP,gBACvB7/H,KAAK4iK,sBAAsBz6F,GAAWhnB,OAAO31C,GAAQw6C,SAC3D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5DqmC,OAAOiuF,GACL,OAAOpvI,KAAKkgD,OAAOlgD,KAAK6oJ,YAAazZ,GAMpB,oBAACjnE,EAAWrkE,EAAMgd,GACnC,IACE,MAAMtV,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,QACN9D,KAAK4iK,sBAAsBz6F,GAAWghB,SAAS39E,EAAQsV,GAASklC,SACtE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI9DquE,SAAShhB,EAAWrkE,EAAMgd,GACxB,OAAO9gB,KAAKkgD,OAAOlgD,KAAKw+J,cAAer2F,EAAWrkE,EAAMgd,I,6CAI5D,YACAlL,IAAAA,OAAe,wBAAwB+H,QAAQ,8BAA+BqgJ,I,2GC/H9E,MAAM6E,EAEJ5iH,YAAYC,EAAQ4iH,GAClB9iK,KAAKkgD,OAASA,EACdlgD,KAAK8iK,iBAAmBA,EAExB9iK,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAM1B,kBAACmoE,GAChB,IACE,MAAM1jE,QAAazE,KAAK8iK,iBAAiB36F,GAAWxpD,MAAMqnC,SAE1D,OADY,IAAMvhD,EAAK2kH,OAAQ/0E,GAAS0uH,EAAAA,QAAAA,WAAoC1uH,KAE5E,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,4BAA6BE,IAI1D6D,IAAIwpD,GACF,OAAOnoE,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,I,wCAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,yBAA0BklJ,I,6EC9BzE,MAAMhmC,EAEJ58E,YAAYC,EAAQ8iH,GAClBhjK,KAAKkgD,OAASA,EACdlgD,KAAKgjK,iBAAmBA,EAExBhjK,KAAKijK,UAAYjjK,KAAKijK,UAAU5jK,KAAKW,MAMxB,gBAAC6kD,GACd,IACE,aAAa7kD,KAAKgjK,iBAAiBj8J,KAAK,CAAEzI,GAAIumD,IAAcmB,SAC5D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,wCAAyCE,IAItE/T,KAAK89C,GACH,OAAO7kD,KAAKkgD,OAAOlgD,KAAKijK,UAAWp+G,I,wCAIvC,YACAjvC,IAAAA,OAAe,wBAAwB+H,QAAQ,0BAA2Bk/G,I,kGCvB1E,MAAMyhC,EAEJr+G,YAAYC,EAAQgjH,EAA6BT,GAC/CziK,KAAKkgD,OAASA,EACdlgD,KAAKkjK,4BAA8BA,EACnCljK,KAAKyiK,oCAAsCA,EAE3CziK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MAMvB,eAACo8I,GACb,IACE,MAAMj0E,EAAYi0E,EAAY5d,aAC9B,IAAIymB,EAEJ,OAAQ7I,EAAYjd,iBAClB,KAAKG,EAAAA,2BAAAA,WACH2lB,QAAqBjlJ,KAAKkjK,4BAA4BvkJ,IAAIwpD,GAC1D,MACF,KAAKm3D,EAAAA,2BAAAA,UAGL,KAAKA,EAAAA,2BAAAA,YACH2lB,QAAqBjlJ,KAAKyiK,oCAAoC9jJ,IAAIwpD,GAClE,MACF,KAAKm3D,EAAAA,2BAAAA,IACH2lB,EAAe,GACf,MACF,QACE,MAAM,IAAIrqI,EAAAA,EAAe,4DAE7B,GAAIqqI,EAAaxlJ,OAAQ,CACvB,MAAOylJ,EAAiBC,GAAiBH,EAAAA,QAAAA,aAAqCC,EAAc7I,GAC5FA,EAAY2S,gBAAkB7J,EAC9B9I,EAAY0S,UAAY3J,EAG1B,OAAO/I,EACP,MAAOthI,GACP,MAAM,IAAIF,EAAAA,EAAe,GAAIE,IAIjC6D,IAAIy9H,GACF,OAAOp8I,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUvM,I,yFAItC,YACAxmI,IAAAA,OAAe,wBAAwB+H,QAAQ,2BAA4B2gJ,I,0KChD3E,MAAMxhC,EAEJ78E,YAAYC,EAAQijH,EAAsBp4F,GACxC/qE,KAAKkgD,OAASA,EACdlgD,KAAKmjK,qBAAuBA,EAC5BnjK,KAAK+qE,eAAiBA,EAEtB/qE,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MACzCA,KAAKojK,aAAepjK,KAAKojK,aAAa/jK,KAAKW,MAC3CA,KAAKqjK,oBAAsBrjK,KAAKqjK,oBAAoBhkK,KAAKW,MAM7C,eAAC8D,GACb,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,QACN9D,KAAKmjK,uBAAuBjrJ,OAAO1M,GAAQw6C,SACjD,MAAO+iG,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAKmjK,uBAAuBxkJ,IAAInT,GAAQw6C,SAAUhmD,KAAKmjK,uBAAuB5a,QAAQ/8I,GAAQw6C,WAC/H6yG,EAAK9mB,EAAAA,QAAAA,eAA4CgX,EAAK/Y,GAE5D,OADAstB,EAAAA,EAAAA,kBAAiB,CAACzE,IACXA,EACP,MAAO/9I,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAO3C,mBAAChX,GACjB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBAGnB,OAFAt9I,EAAOlN,GAAKwF,QACN9D,KAAKmjK,uBAAuBjrJ,OAAO1M,GAAQw6C,eACpChmD,KAAKmjK,uBAAuBzF,QAAQlyJ,GAAQw6C,SACzD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAOpC,0BAACqtD,GACxB,IACE,aAAanoE,KAAKmjK,uBAAuBvhG,OAAO,CAAEtjE,GAAI6pE,EAAUvjE,SAASd,KAAMY,OAAQ,YAAcyjE,GAAWniB,SAChH,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI1C,oBACf,IACE,MAAMrW,QAAazE,KAAKmjK,uBAAuBxkJ,MAAMqnC,SAC/CpqC,EAAW,IAAMnX,EAAK2kH,OAAQ/0E,GAASr0C,KAAKmjK,uBAAuBjrJ,OAAO,CAAE5Z,GAAI+1C,EAAKzvC,SAASd,OAAQkiD,WACtGu3G,QAAmB+F,EAAAA,EAAAA,SAAY1nJ,GAC/B2nJ,EAA+BvjK,KAAK+qE,eAAezrD,kBAAkB,CAAC,8BACtEkkJ,EAAoB,IAAMjG,EAAWkG,WAAYpvH,IACrD,MAAM8zB,EAAY4pE,EAAAA,QAAAA,eAA4C19F,GAC9D,OAAIkqF,EAAAA,QAAAA,kBAA4Cp2D,GAC1Co7F,EACKp7F,OADT,EAIOA,KAGLkhE,EAAM,IAAUm6B,OAAmB3xJ,GAEzC,OADAyrJ,EAAAA,EAAAA,kBAAiBj0B,GACVA,EACP,MAAOvuH,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI9D6D,IAAI7a,GACF,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAU7kJ,GAE7B9D,KAAKkgD,OAAOlgD,KAAKu7I,aAMT,kBAACpzE,GAChB,IACE,MAAMrnD,EAAUixH,EAAAA,QAAAA,cAA2C5pE,GACrD38D,EAAS,GAEf,aADmBxL,KAAKmjK,uBAAuBzqH,OAAOltC,EAAQsV,GAASklC,SAEvE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3D49B,OAAOyvB,GACL,OAAOnoE,KAAKkgD,OAAOlgD,KAAKiwF,YAAa9nB,GAMtB,kBAACA,GAChB,IACE,MAAM38D,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK6pE,EAAUt7D,WAChB7M,KAAKmjK,uBAAuBhiH,OAAO31C,GAAQw6C,SACjD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3DqmC,OAAOgnB,GACL,OAAOnoE,KAAKkgD,OAAOlgD,KAAK6oJ,YAAa1gF,I,6DAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,6BAA8Bm/G,I,wFCnI7E,MAAM4mC,EAEJzjH,YAAYqyG,GACVtyJ,KAAKsyJ,sBAAwBA,EAMtB,YACP,IACE,MAAMC,QAAoBvyJ,KAAKsyJ,sBAAsB3zI,MAAMqnC,SAC3D,OAAO,IAAIssG,EAAAA,sBAAsBC,EAAY9tJ,MAC7C,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,kCAAmCE,K,oCAKlE,YACAlF,IAAAA,OAAe,wBAAwB+H,QAAQ,+BAAgC+lJ,I,iBCxB/E9tJ,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,aAAc,CACpD,KACA,SACA,MACA,SAA2BjxB,EAAIosB,EAAQyjH,GACrC,aA+BA,MA9BgB,CAEhBhmJ,OAAiB,WACf,MAAMksE,EAAW/1D,EAAGg2D,QAUpB,OARA65E,EAAI9yC,QACD7qE,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,iCAAkCC,IAAKA,OAG3D+uE,EAAS/tE,SAGlB6B,KAAe,SAAUqrD,GACvB,MAAM6gB,EAAW/1D,EAAGg2D,QAUpB,OARA65E,EAAI/hG,OAAOoH,GACRhjB,SAAShqC,MAAK,WACb6tE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,c,uHC3BtB,MAAMuiJ,EAEJp+G,YAAYC,EAAQ0jH,GAClB5jK,KAAKkgD,OAASA,EACdlgD,KAAK4jK,iCAAmCA,EAExC5jK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAG7B,eAACmoE,EAAWwqE,EAAgB7uI,GACxC,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CACpCtyB,KAAK4jK,iCAAiCz7F,GAAWxpD,IAAInT,GAAQw6C,SAC7DhmD,KAAK4jK,iCAAiCz7F,GAAWogF,QAAQ/8I,GAAQw6C,WAGnE,OAAOkpF,EAAAA,QAAAA,2BAAoE6Z,EAAKpW,EAAgB3C,GAChG,MAAOl1H,GACP,MAAM,IAAIF,EAAAA,EAAe,6CAA8CE,IAI1D,kBAACqtD,EAAWwqE,GAC3B,IACE,MAAMluI,QAAazE,KAAK4jK,iCAAiCz7F,GAAWxpD,MAAMqnC,SAE1E,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAAS66F,EAAAA,QAAAA,2BAAoE76F,EAAMs+F,KAC7G,MAAO73H,GACP,MAAM,IAAIF,EAAAA,EAAe,8CAA+CE,IAI5E6D,IAAIwpD,EAAWwqE,EAAgB7uI,GAC7B,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWwqE,EAAgB7uI,GAExD9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,EAAWwqE,GAMjC,kBAACwF,GAChB,IACE,MAAM3sI,EAAS,GACTsV,EAAUouH,EAAAA,QAAAA,cAAuDiJ,GACjEhwE,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAK4jK,iCAAiCz7F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAE5F,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2CAA4CE,IAIzE49B,OAAOy/F,GACL,OAAOn4I,KAAKkgD,OAAOlgD,KAAKiwF,YAAakoD,GAMvB,iBAACzE,EAAQC,GACvB,IACE,MAAMnoI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKq1I,EAAO9mI,KACnB,MAAMs7D,EAAYwrE,EAAO9T,UACnB/+G,EAAUouH,EAAAA,QAAAA,aAAsDwE,EAAQC,GAC9E,IAAK7yH,EAAQrhB,OACX,OAGF,aADmBO,KAAK4jK,iCAAiCz7F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAE3F,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0CAA2CE,IAIxEkwC,MAAM0oF,EAAQC,GACZ,OAAO3zI,KAAKkgD,OAAOlgD,KAAK4oJ,WAAYlV,EAAQC,GAM7B,kBAACV,GAChB,IACE,MAAMznI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK20I,EAAIpmI,KAChB,MAAMs7D,EAAY8qE,EAAIpT,gBAChB7/H,KAAK4jK,iCAAiCz7F,GAAWhnB,OAAO31C,GAAQw6C,SACtE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2CAA4CE,IAIzEqmC,OAAO8xF,GACL,OAAOjzI,KAAKkgD,OAAOlgD,KAAK6oJ,YAAa5V,I,wDAIzC,YACAr9H,IAAAA,OAAe,wBAAwB+H,QAAQ,yCAA0C0gJ,I,6EC9GzF,MAAM6E,EAEJjjH,YAAYC,EAAQ2jH,GAClB7jK,KAAKkgD,OAASA,EACdlgD,KAAK6jK,sBAAwBA,EAE7B7jK,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAM1B,kBAACmoE,GAChB,IAEE,aADmBnoE,KAAK6jK,sBAAsB17F,GAAWxpD,MAAMqnC,UACnDojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI/D6D,IAAIwpD,GACF,OAAOnoE,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,I,6CAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,8BAA+BulJ,I,+TCtBvE,SAASphC,EACd5hF,EACAyZ,EACAmjE,EACAgnC,EACA9X,EACA+X,GAEA,MAAO,CACLplJ,IAmCF,SAAa7a,GACX,OAAIA,EACKo8C,EAAOgsG,EAAQpoJ,GAEjBo8C,EAAOisG,IAtCdzzG,OAyCF,SAAgB/kC,GAGd,OAFAA,EAAWkgI,MAAQ7E,EAAAA,QAAAA,aAAoCr7H,EAAWkgI,OAE3D3zF,GAAO2F,UACZ,MAAOsiB,EAAW2rE,EAAOvK,EAAWziE,GAAck9F,EAAAA,QAAAA,yBAAyDrwJ,SACrGmpH,EAA2BpkF,OAAOyvB,GAEpC2rE,SACIgwB,EAA+BprH,OAAOo7F,GAG9C,MAAMmwB,EAAkB,IAAM16B,GAAYhqI,GAAMysJ,EAAyBtzG,OAAOn5C,WAC1E0c,QAAQqW,IAAI2xI,GAElB,MAAM1lJ,EAAa5K,EAAW++G,WACxBwxC,EAAqB,IAAMp9F,GAAayP,GAAM5c,EAAgBs4C,qBAAqB1zF,EAAYg4D,EAAEhqE,GAAIgqE,EAAEg9B,iBAAiBh1F,YACxHtC,QAAQqW,IAAI4xI,OAxDpBl5G,MA4DF,SAAem1G,EAAeC,GAC5B,OAAOlgH,GAAO2F,UACZ,MAAO,CAAEyvF,EAAUspB,EAAcuF,GAAiBH,EAAAA,QAAAA,yBAAyD7D,IACpG,CAAE5qB,EAAUspB,EAAcuF,GAAiBJ,EAAAA,QAAAA,yBAAyD5D,GAEvG9qB,GAAYC,QACRuuB,EAA+B94G,MAAMsqF,EAAUC,IAC3CD,GAAYC,QAChBuuB,EAA+BprH,OAAO68F,GACnCD,IAAaC,SAChBuuB,EAA+B3iH,OAAOm0F,GAG9C,MAAM58F,EAAS,IAASmmH,GAAewF,IAAS,IAAOzF,EAAc,CAAE/xJ,KAAMw3J,EAAIx3J,SAC3Ey3J,EAAM,IAAS1F,GAAeyF,IAAS,IAAOxF,EAAc,CAAEhyJ,KAAMw3J,EAAIx3J,SACxEm+C,EAAQ,IAAU6zG,KAAiBnmH,GAEnC6rH,EAAiB,IAAM7rH,GAASn5C,GAAMysJ,EAAyBtzG,OAAOn5C,KACtEilK,EAAc,IAAMF,GAAM/kK,GAAMysJ,EAAyB7qG,OAAO5hD,EAAEsgI,UAAWtgI,EAAEsN,QAC/E43J,EAAgB,IAAMz5G,GAAQq5G,IAClC,MAAMK,EAAM,IAAO9F,EAAc,CAAE/xJ,KAAMw3J,EAAIx3J,OAG7C,OAFAw3J,EAAI9kB,MAAQ3pI,IAAAA,KAAa8uJ,EAAInlB,OAC7B8kB,EAAIrZ,aAAe0Z,EAAI9+G,KAChBomG,EAAyBhhG,MAAM05G,EAAKL,MAGvCzoJ,EAAW,IAAU,CAAC2oJ,EAAgBC,EAAaC,UACnDxoJ,QAAQqW,IAAI1W,GAElB,MAAM2C,EAAa6hJ,EAAc1tC,WAC3BiyC,EAAiB,IAAiBR,EAAeC,EAAe,MAChEQ,EAAoB,IAAUT,KAAkBQ,GAEhDE,EAAwB,IAAMT,GAAgB7tF,GAAM5c,EAAgBs4C,qBAAqB1zF,EAAYg4D,EAAEhqE,GAAIgqE,EAAEg9B,iBAAiBh1F,MAC9HumJ,EAA4B,IAAMF,GAAoBruF,IAC1D,IAAOA,EAAEg9B,iBAAiBh1F,GAAY61H,WAAYgsB,EAAcvzJ,MACzD8sD,EAAgBs4C,qBAAqB1zF,EAAYg4D,EAAEhqE,GAAIgqE,EAAEg9B,iBAAiBh1F,aAG7EtC,QAAQqW,IAAI,IAASuyI,EAAuBC,QAlGpD3jH,OAsGF,SAAiBi3F,GACf,OAAOl4F,GAAO2F,gBACNi3E,EAA2B37E,OAAOi3F,EAAKvY,eAvG/Ci+B,aA2GF,SAAsBv/I,EAAYwmJ,EAAev3E,GAC/C,OAAOu2E,EAA8BjG,aAAa,CAAEiH,cAAAA,EAAexmJ,WAAAA,GAAc,CAAEivE,OAAAA,IAAUxnC,WAzG/FH,eAAeqmG,EAAOpoJ,GACpB,MAAMqkE,QAAkB20D,EAA2Bn+G,IAAI7a,IAChDkhK,SAAsB/oJ,QAAQ0nH,WAAW,CAACmgC,EAA+BnlJ,IAAI7a,EAAMqxI,EAAAA,QAAAA,0BAAwDrxI,MAC5Is0I,EAAO4rB,EAAAA,QAAAA,kBAAkD77F,GAK/D,MAJ4B,cAAxB68F,EAAa9sJ,SACfkgI,EAAKwO,MAAQoe,EAAarhK,MAC1By0I,EAAKhI,MAAQ,QAAU40B,EAAarhK,MAAMysI,MAErCgI,EAGTvyF,eAAesmG,IACb,MAAMoR,QAAmBzgC,EAA2Bn+G,MAapD,aAZoB1C,QAAQqW,IAC1B,IAAMirI,GAAY13G,MAAAA,IAChB,MAAM/hD,EAAOqkE,EAAUt7D,MAChBm4J,SAAsB/oJ,QAAQ0nH,WAAW,CAACmgC,EAA+BnlJ,IAAI7a,EAAMqxI,EAAAA,QAAAA,0BAAwDrxI,MAC5Is0I,EAAO4rB,EAAAA,QAAAA,kBAAkD77F,GAK/D,MAJ4B,cAAxB68F,EAAa9sJ,SACfkgI,EAAKwO,MAAQoe,EAAarhK,MAC1By0I,EAAKhI,MAAQ,QAAU40B,EAAarhK,MAAMysI,MAErCgI,O,gKAuFfxiI,IAAAA,OAAe,wBAAwB+H,QAAQ,gCAAiCmkH,I,oLC9HzE,SAASgiC,EAA+B5jH,EAAQ+kH,GACrD,MAAO,CACLtmJ,IA0BF,SAAawpD,EAAWrkE,GACtB,OAAIA,EACKo8C,EAAOgsG,EAAQ/jF,EAAWrkE,GAE5Bo8C,EAAOisG,EAAQhkF,IA7BtBzvB,OAgCF,SAAgBo7F,GACd,OAAO5zF,GAAO2F,UACZ,IACE,MAAM/kC,EAAUizH,EAAAA,QAAAA,cAA+CD,GACzD3rE,EAAYrnD,EAAQlc,SAASujE,UAC7B38D,EAAS,GACT/G,QAAawgK,EAAyB98F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAC/E,OAAO+tF,EAAAA,QAAAA,mBAAoDtvI,GAC3D,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,yBAA0BE,QAxCvDkwC,MA6CF,SAAesqF,EAAUC,GACvB,OAAOr1F,GAAO2F,UACZ,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKi3I,EAAS1oI,KACrB,MAAMs7D,EAAYotE,EAAS1V,UACrB/+G,EAAUizH,EAAAA,QAAAA,aAA8CuB,EAAUC,GACxE,IAAKz0H,EAAQrhB,OACX,OAGF,aADmBwlK,EAAyB98F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAE9E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,wBAAyBE,QAzDtDqmC,OA8DF,SAAiB2yF,GACf,OAAO5zF,GAAO2F,UACZ,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKw1I,EAAMjnI,WACZo4J,EAAyBnxB,EAAMjU,WAAW1+E,OAAO31C,GAAQw6C,SAC/D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,yBAA0BE,SAlEzD+qC,eAAeqmG,EAAO/jF,EAAWrkE,GAC/B,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAAC2yI,EAAyB98F,GAAWxpD,IAAInT,GAAQw6C,SAAUi/G,EAAyB98F,GAAWogF,QAAQ/8I,GAAQw6C,WACrJ,OAAO+tF,EAAAA,QAAAA,mBAAoDgV,EAAK/Y,GAChE,MAAOl1H,GACP,MAAM,IAAIF,EAAAA,EAAe,oCAAqCE,IAIlE+qC,eAAesmG,EAAOhkF,GACpB,IACE,MAAM1jE,QAAawgK,EAAyB98F,GAAWxpD,MAAMqnC,SAC7D,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAAS0/F,EAAAA,QAAAA,mBAAoD1/F,KACvF,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,qCAAsCE,K,gDAwDrElF,IAAAA,OAAe,wBAAwB+H,QAAQ,iCAAkCmmJ,I,uHCjFjF,MAAM1F,EAEJn+G,YAAYC,EAAQglH,GAClBllK,KAAKkgD,OAASA,EACdlgD,KAAKklK,kBAAoBA,EAEzBllK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK8xH,YAAc9xH,KAAK8xH,YAAYzyH,KAAKW,MACzCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAKklK,kBAAkB/8F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAKklK,kBAAkB/8F,GAAWogF,QAAQ/8I,GAAQw6C,WAEjJ,OADew8G,EAAAA,QAAAA,YAAsCzZ,EAAK/Y,GAE1D,MAAOl1H,GACP,MAAM,IAAIF,EAAAA,EAAe,4BAA6BE,IAIzC,kBAACqtD,GAChB,IACE,MAAM1jE,QAAazE,KAAKklK,kBAAkB/8F,GAAWxpD,MAAMqnC,SAC3D,OAAO,IAAMvhD,EAAK2kH,OAAQ/0E,GAASmuH,EAAAA,QAAAA,YAAsCnuH,KACzE,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI3D6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACrN,GAChB,IACE,MAAMh6C,EAAU0hJ,EAAAA,QAAAA,cAAwC1nG,GAClDqN,EAAYrnD,EAAQlc,SAASujE,UAC7B38D,EAAS,GAEf,aADmBxL,KAAKklK,kBAAkB/8F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAE7E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,IAIxD49B,OAAOoiB,GACL,OAAO96D,KAAKkgD,OAAOlgD,KAAKiwF,YAAan1B,GAMtB,kBAACA,GAChB,IACE,MAAMh6C,EAAU0hJ,EAAAA,QAAAA,cAAwC1nG,GAClDtvD,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwiB,EAAQlc,SAASd,KAC7B,MAAMqkE,EAAYrnD,EAAQlc,SAASujE,UAC7B1jE,QAAazE,KAAKklK,kBAAkB/8F,GAAWvG,OAAOp2D,EAAQsV,GAASklC,SAC7E,OAAOw8G,EAAAA,QAAAA,YAAsC/9J,GAC7C,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,IAIxD8mD,OAAO9G,GACL,OAAO96D,KAAKkgD,OAAOlgD,KAAK8xH,YAAah3D,GAMtB,kBAACA,GAChB,IACE,MAAMtvD,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKw8D,EAAOjuD,KACnB,MAAMs7D,EAAYrN,EAAO+kE,gBACnB7/H,KAAKklK,kBAAkB/8F,GAAWhnB,OAAO31C,GAAQw6C,SACvD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,IAIxDqmC,OAAO2Z,GACL,OAAO96D,KAAKkgD,OAAOlgD,KAAK6oJ,YAAa/tF,I,yCAIzC,YACAllD,IAAAA,OAAe,wBAAwB+H,QAAQ,0BAA2BygJ,I,kGCxG1E,MAAMD,EAEJl+G,YAAYC,EAAQilH,GAClBnlK,KAAKkgD,OAASA,EACdlgD,KAAKmlK,mBAAqBA,EAE1BnlK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MACzCA,KAAKolK,kBAAoBplK,KAAKolK,kBAAkB/lK,KAAKW,MACrDA,KAAKqlK,eAAiBrlK,KAAKqlK,eAAehmK,KAAKW,MAMnC,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAKmlK,mBAAmBh9F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAKmlK,mBAAmBh9F,GAAWogF,QAAQ/8I,GAAQw6C,WAKnJ,MAJY,CACVw5F,IAAKuJ,EACL3Y,KAAMJ,EAAKvrI,MAGb,MAAOqW,GACP,MAAM,IAAIF,EAAAA,EAAe,6BAA8BE,IAI1C,kBAACqtD,GAChB,IAEE,aADmBnoE,KAAKmlK,mBAAmBh9F,GAAWxpD,MAAMqnC,UAChDojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5D6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACxqD,GAChB,IACE,MAAMnS,EAAS,GACTsV,EAAU6uH,EAAAA,QAAAA,cAAyChyH,GACnDwqD,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAKmlK,mBAAmBh9F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAE9E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,2BAA4BE,IAIzD49B,OAAO/6B,GACL,OAAO3d,KAAKkgD,OAAOlgD,KAAKiwF,YAAatyE,GAMvB,iBAACo5H,EAAYC,GAC3B,IACE,MAAMxrI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK04I,EAAWnqI,KACvB,MAAMs7D,EAAY6uE,EAAWnX,UACvB/+G,EAAU6uH,EAAAA,QAAAA,aAAwCoH,EAAYC,GACpE,IAAKl2H,EAAQrhB,OACX,OAGF,aADmBO,KAAKmlK,mBAAmBh9F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAE7E,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,0BAA2BE,IAIxDkwC,MAAM+rF,EAAYC,GAChB,OAAOh3I,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY7R,EAAYC,GAMjC,kBAACh8E,GAChBA,EAASnjD,SAAQguC,MAAAA,IACf,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAMqf,EAAQ/Y,UAAY+Y,EAAQ/Y,SAASd,MAAS6Z,EAAQ9Q,KACnE,MAAMs7D,EAAaxqD,EAAQ/Y,UAAY+Y,EAAQ/Y,SAASujE,WAAcxqD,EAAQkiH,gBACxE7/H,KAAKmlK,mBAAmBh9F,GAAWhnB,OAAO31C,GAAQw6C,SACxD,MAAOlrC,GAEPoP,QAAQjc,MAAM,2BAA4B6M,OAKhDqmC,OAAO6Z,GACL,OAAOh7D,KAAKkgD,OAAOlgD,KAAK6oJ,YAAa7tF,GAGnB,qBAACsqG,GACnBA,EAAmBztJ,SAAQguC,MAAAA,IACzB,IACE,MAAMr6C,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKqf,EAAQ9Q,KACpB,MAAMs7D,EAAYxqD,EAAQkiH,gBACpB7/H,KAAKmlK,mBAAmBh9F,GAAWhnB,OAAO31C,GAAQw6C,SACxD,MAAOlrC,GAEPoP,QAAQjc,MAAM,2BAA4B6M,OAKhDmmJ,UAAUqE,GACR,OAAOtlK,KAAKkgD,OAAOlgD,KAAKqlK,eAAgBC,GAGnB,wBAAC3nJ,GACtB,IACE,MAAMnS,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKqf,EAAQ9Q,KACpB,MAAMs7D,EAAYxqD,EAAQkiH,gBACpB7/H,KAAKmlK,mBAAmBh9F,GAAWhnB,OAAO31C,GAAQw6C,SACxD,MAAOlrC,GAEPoP,QAAQjc,MAAM,2BAA4B6M,IAI9ComJ,aAAavjJ,GACX,OAAO3d,KAAKkgD,OAAOlgD,KAAKolK,kBAAmBznJ,I,0CAI/C,YACA/H,IAAAA,OAAe,wBAAwB+H,QAAQ,2BAA4BwgJ,I,6HCtJ3E,MAAMoH,EAEJtlH,YAAYC,EAAQ69G,GAClB/9J,KAAKkgD,OAASA,EACdlgD,KAAK+9J,6BAA+BA,EAEpC/9J,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAM1B,kBAACmoE,GAChB,MAAMq0E,QAAqBx8I,KAAK+9J,6BAA6Bp/I,IAAIwpD,GAC3DhN,EAAS,IAAMqhF,GAAenoG,GAASA,EAAK4G,YAClD,OAAO,IAAO,IAAUkgB,EAAQ,IAAK,KAGvCx8C,IAAIwpD,GACF,OAAOnoE,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,I,oDAIzC,YACAvyD,IAAAA,OAAe,wBAAwB+H,QAAQ,yBAA0B4nJ,I,kGCtBzE,MAAMrH,EAEJj+G,YAAYC,EAAQslH,EAAwBrH,GAC1Cn+J,KAAKkgD,OAASA,EACdlgD,KAAKwlK,uBAAyBA,EAC9BxlK,KAAKm+J,yBAA2BA,EAEhCn+J,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAKiwF,YAAcjwF,KAAKiwF,YAAY5wF,KAAKW,MACzCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MACvCA,KAAKw+J,cAAgBx+J,KAAKw+J,cAAcn/J,KAAKW,MAC7CA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWrkE,GACxB,IACE,MAAM0H,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,EACZ,MAAOilJ,EAAK/Y,SAAc/zH,QAAQqW,IAAI,CAACtyB,KAAKwlK,uBAAuBr9F,GAAWxpD,IAAInT,GAAQw6C,SAAUhmD,KAAKwlK,uBAAuBr9F,GAAWogF,QAAQ/8I,GAAQw6C,WACrJqjF,EAAM,CACVmW,IAAKuJ,EACL3Y,KAAMJ,EAAKvrI,MAEPghK,EAAsB1c,EAAIvf,KAAK9E,YACrC,GAAI+gC,EACF,IACE,MAAMl2B,QAAwBvvI,KAAKm+J,yBAAyBx/I,IAAIwpD,EAAWs9F,GAC3Ep8B,EAAI+G,MAAQ,QAAUb,EAAgBa,KACtC,MAAOniI,IAKX,OAAOo7H,EACP,MAAOvuH,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI9C,kBAACqtD,GAChB,IAEE,aADmBnoE,KAAKwlK,uBAAuBr9F,GAAWxpD,MAAMqnC,UACpDojE,MACZ,MAAOtuG,GACP,MAAM,IAAIF,EAAAA,EAAe,kCAAmCE,IAIhE6D,IAAIwpD,EAAWrkE,GACb,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWrkE,GAExC9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,GAMtB,kBAACknE,GAChB,IACE,MAAM7jI,EAAS,GACTsV,EAAU2uH,EAAAA,QAAAA,cAA6CJ,GACvDlnE,EAAYrnD,EAAQlc,SAASujE,UAEnC,aADmBnoE,KAAKwlK,uBAAuBr9F,GAAWzvB,OAAOltC,EAAQsV,GAASklC,SAElF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI7D49B,OAAO22F,GACL,OAAOrvI,KAAKkgD,OAAOlgD,KAAKiwF,YAAao/C,GAMvB,iBAACq2B,EAAgBC,GAC/B,IACE,MAAMn6J,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKqnK,EAAe94J,KAC3B,MAAMs7D,EAAYw9F,EAAe9lC,UAC3B/+G,EAAU2uH,EAAAA,QAAAA,aAA4Ci2B,EAAgBC,GAC5E,IAAK7kJ,EAAQrhB,OACX,OAIF,aADmBO,KAAKwlK,uBAAuBr9F,GAAWnd,MAAMx/C,EAAQsV,GAASklC,SAEjF,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,8BAA+BE,IAI5DkwC,MAAM06G,EAAgBC,GACpB,OAAO3lK,KAAKkgD,OAAOlgD,KAAK4oJ,WAAY8c,EAAgBC,GAMrC,kBAACt2B,GAChB,IACE,MAAM7jI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK+wI,EAAYxiI,KACxB,MAAMs7D,EAAYknE,EAAYxP,gBACxB7/H,KAAKwlK,uBAAuBr9F,GAAWhnB,OAAO31C,GAAQw6C,SAC5D,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,+BAAgCE,IAI7DqmC,OAAOkuF,GACL,OAAOrvI,KAAKkgD,OAAOlgD,KAAK6oJ,YAAaxZ,GAMpB,oBAAClnE,EAAWrkE,EAAMgd,GACnC,IACE,MAAMtV,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAKwF,QACN9D,KAAKwlK,uBAAuBr9F,GAAWghB,SAAS39E,EAAQsV,GAASklC,SACvE,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,iCAAkCE,IAI/DquE,SAAShhB,EAAWrkE,EAAMgd,GACxB,OAAO9gB,KAAKkgD,OAAOlgD,KAAKw+J,cAAer2F,EAAWrkE,EAAMgd,I,yEAI5D,YACAlL,IAAAA,OAAe,wBAAwB+H,QAAQ,+BAAgCugJ,I,uHC1I/E,MAAM0H,EAEJ3lH,YAAYC,EAAQ2lH,GAClB7lK,KAAKkgD,OAASA,EACdlgD,KAAK6lK,kBAAoBA,EAEzB7lK,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAK4oJ,WAAa5oJ,KAAK4oJ,WAAWvpJ,KAAKW,MAM3B,eAACue,GACb,IACE,MAAM/S,EAAS,CACb+S,WAAYA,GAER2c,QAAgBl7B,KAAK6lK,oBAAoBlnJ,IAAInT,GAAQw6C,SAE3D,OADY,IAAM9qB,EAAQkuF,OAAQ/0E,GAASijG,EAAAA,QAAAA,kBAAkDjjG,KAE7F,MAAOv5B,GACP,MAAM,IAAIF,EAAAA,EAAe,qCAAsCE,IAInE6D,IAAIJ,GACF,OAAOve,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUpqI,GAMpB,iBAACA,EAAY05H,EAAiBC,GAC5C,IACE,MAAM1sI,EAAS,IAAIs9I,EAAAA,uBACnBt9I,EAAOlN,GAAK45I,EAAgBrrI,KAC5BrB,EAAO+S,WAAaA,EACpB,MAAMuC,EAAUw2H,EAAAA,QAAAA,aAA6CW,EAAiBC,SACxEl4I,KAAK6lK,oBAAoB76G,MAAMx/C,EAAQsV,GAASklC,SACtD,MAAOlrC,GACP,MAAM,IAAIF,EAAAA,EAAe,gCAAiCE,IAI9DkwC,MAAMzsC,EAAY05H,EAAiBC,GACjC,OAAOl4I,KAAKkgD,OAAOlgD,KAAK4oJ,WAAYrqI,EAAY05H,EAAiBC,I,yCAIrE,YACAtiI,IAAAA,OAAe,wBAAwB+H,QAAQ,2BAA4BioJ,I,qHCpD3E,MAAME,EAEJ7lH,YAAYC,EAAQ4hF,EAA+Bi8B,EAA8BM,GAC/Er+J,KAAKkgD,OAASA,EACdlgD,KAAK8hI,8BAAgCA,EACrC9hI,KAAK+9J,6BAA+BA,EACpC/9J,KAAKq+J,uCAAyCA,EAE9Cr+J,KAAK2oJ,SAAW3oJ,KAAK2oJ,SAAStpJ,KAAKW,MACnCA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MACzCA,KAAK6oJ,YAAc7oJ,KAAK6oJ,YAAYxpJ,KAAKW,MAM7B,eAACmoE,EAAWwqE,EAAgB7uI,GACxC,MAAOmvI,EAAKmF,SAAcn8H,QAAQqW,IAAI,CAACtyB,KAAKq+J,uCAAuC1/I,IAAIwpD,EAAWwqE,EAAgB7uI,GAAO9D,KAAK8hI,8BAA8BnjH,IAAIwpD,KAChK,OAAO49F,EAAAA,QAAAA,YAAsC9yB,EAAKmF,GAGnC,kBAACjwE,EAAWwqE,GAC3B,MAAMluI,QAAazE,KAAK8hI,8BAA8BnjH,IAAIwpD,GACpDm+E,EAAQ7hJ,aAAgBu7B,MAAQv7B,EAAO,CAACA,GACxC4kI,QAAYptH,QAAQqW,IACxB,IAAMg0H,GAAOzgG,MAAAA,IACX,MAAMmgH,QAAahmK,KAAKq+J,uCAAuC1/I,IAAIy5H,EAAKvY,UAAUhzH,KAAM8lI,GACxF,OAAO,IAAMqzB,GAAO/yB,GAAQ8yB,EAAAA,QAAAA,YAAsC9yB,EAAKmF,SAG3E,OAAO,IAAU/O,GAGnB1qH,IAAIwpD,EAAWwqE,EAAgB7uI,GAC7B,OAAIA,EACK9D,KAAKkgD,OAAOlgD,KAAK2oJ,SAAUxgF,EAAWwqE,EAAgB7uI,GAExD9D,KAAKkgD,OAAOlgD,KAAKu7I,YAAapzE,EAAWwqE,GAMjC,kBAAC/2E,SACV57D,KAAKq+J,uCAAuCl9G,OAAOya,EAAO23E,uBAGlEpyF,OAAOya,GACL,OAAO57D,KAAKkgD,OAAOlgD,KAAK6oJ,YAAajtF,I,6HAIzC,YACAhmD,IAAAA,OAAe,wBAAwB+H,QAAQ,0BAA2BmoJ,I,uHCvD1E,MAAMG,EAAkB,GAOjB,SAASvgB,EAAS5hJ,GACvB,OAAOmiK,EAAgBniK,IAASmiK,EAAgBniK,GAAMwuI,SAOjD,SAASgrB,EAAiBC,GAC/BA,EAAW1lJ,SAASghJ,GAAQoN,EAAgBpN,EAAGhsJ,MAAQgsJ,M,sBCnBzD,MAAMt4G,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,6BAA8B,CAC7E2qC,YAAaD,EACbrrC,WAAY,mCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,yKCDd,MAAMmvJ,EAEJjmH,YACEC,EACAwI,EACAj+B,EACAszI,EACAh9B,EACAohC,EACAzgH,EACAkH,EACAjE,EACA8hD,GAEAzmG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+9J,6BAA+BA,EACpC/9J,KAAK+gI,YAAcA,EACnB/gI,KAAKmiK,+BAAiCA,EAEtCniK,KAAK0hD,aAAeA,EACpB1hD,KAAK4oD,aAAeA,EACpB5oD,KAAKymG,aAAeA,EACpBzmG,KAAK2kD,iBAAmBA,EAExB3kD,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKmmK,gBAAkBnmK,KAAKmmK,gBAAgB9mK,KAAKW,MACjDA,KAAKomK,qBAAuBpmK,KAAKomK,qBAAqB/mK,KAAKW,MAC3DA,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MACrDA,KAAKqmK,mBAAqBrmK,KAAKqmK,mBAAmBhnK,KAAKW,MACvDA,KAAKsmK,wBAA0BtmK,KAAKsmK,wBAAwBjnK,KAAKW,MACjEA,KAAKy9H,sBAAwBz9H,KAAKy9H,sBAAsBp+H,KAAKW,MAG/DumK,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,eAAgBrmI,GAGtB,8BAAC2J,GAC5B,IAAIi4B,EAAcj4B,EAAcrqC,OAChC,IAAK,MAAM8oD,KAASze,EAClB,IAGE,GAFyBye,EAAMq3E,aAAajvH,MAAM/P,IAAOA,EAAEmpI,kBAErC,CACpB,MAAMnuH,EAAW,IAAM2sC,EAAMq3E,cAAetB,GAAQt+H,KAAK+9J,6BAA6B58G,OAAOm9E,WACvFriH,QAAQqW,IAAI1W,OACb,CACL,MAAMwgI,EAAc7zF,EAAMq3E,aAAan2H,MAAM7I,GAAoB,OAAdA,EAAEgpI,UACjDwS,GAAeA,EAAYxS,eACvB5pI,KAAKymG,aAAahjF,OAAO,CAAElX,GAAI6vI,EAAYxS,UAAW,EAAO5pI,KAAK+W,SAASxK,IAIrFvM,KAAKyqB,cAAcF,QAAQ,6BAA8Bg+B,EAAM17C,MAC/D,IAAS7M,KAAK+P,MAAMorD,OAAQ,CAAEtuD,KAAM07C,EAAM17C,OAC1C,MAAOiO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAhB3C,UAkBIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAMvCkqI,mBAAmBv8H,GACjB9pC,KAAK0hD,aAAap6B,gBAChB,kIACCX,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKsmK,wBAAyBx8H,MAMlC,wBAACA,GACtB,IAAIi4B,EAAcj4B,EAAcrqC,OAEhC,IAAK,MAAM28I,KAAetyG,EACxB,IACE,GAAIsyG,EAAYjd,kBAAoBG,EAAAA,2BAAAA,WAC5Bt/H,KAAK+gI,YAAYgb,UAAU/7I,KAAK+W,SAASxK,GAAI6vI,QAInD,SAFMp8I,KAAK+9J,6BAA6B58G,OAAOi7F,GAE3CA,EAAYzS,SAAShvF,OAAOmvF,EAAAA,8CAA+C,CAE7E,MAAMvhF,EAAQvoD,KAAK+P,MAAMorD,OAAO1xD,MAAM7I,GAAMA,EAAEiM,OAASuvI,EAAYnhG,YAC7D9a,EAAQooB,EAAMq3E,aAAa/5H,QAAQu2I,GACzC7zF,EAAMq3E,aAAa38D,OAAO9iC,EAAO,GAGC,IAA9BooB,EAAMq3E,aAAangI,QAAgB28I,EAAYxS,eAC3C5pI,KAAKymG,aAAahjF,OAAO,CAAElX,GAAI6vI,EAAYxS,UAAW,EAAO5pI,KAAK+W,SAASxK,IAIvFvM,KAAKyqB,cAAcF,QAAQ,mCAAoC6xH,EAAYvvI,MAC3E,MAAMszB,EAAQngC,KAAK+P,MAAMysI,aAAa32I,QAAQu2I,GAC9Cp8I,KAAK+P,MAAMysI,aAAav5E,OAAO9iC,EAAO,GACtC,MAAOrlB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCAtB3C,UAwBIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAMvC4gC,aAAajzB,GACX9pC,KAAK0hD,aAAap6B,gBAAgB,sDAAuDX,IACvF,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,MAKjD2zF,sBAAsB2e,GACpBp8I,KAAK+P,MAAM67F,UAAY,EACvB,IAAU5rG,KAAK+P,MAAM8nC,OAAQxD,IAC3BA,EAAKypB,UAAW,EAChBzpB,EAAK0pB,aAAc,EACf1pB,EAAKxnC,OAASuvI,EAAYvvI,MAAQwnC,EAAKyG,MAAMr7C,OAAS,IACxD40C,EAAKypB,UAAW,EAChBzpB,EAAK0pB,aAAc,MAKC,6BACxB,IACE,MAAOy+E,EAAcnf,SAAwBphH,QAAQqW,IAAI,CAACtyB,KAAK+9J,6BAA6Bp/I,MAAO3e,KAAKmiK,+BAA+BxjJ,QACjI8nJ,EAAyB1mC,EAAAA,QAAAA,6BAA2Dyc,EAAcnf,IAClG,iBAAEmlB,EAAF,oBAAoBI,GAAwBxkB,EAAAA,QAAAA,sBAAkDqoC,GAEpGzmK,KAAK+P,MAAMysI,aAAe,IAAIgG,KAAqBI,GACnD5iJ,KAAK+P,MAAMorD,OAAS+rF,EAAAA,QAAAA,uBAA6C1K,GACjEx8I,KAAK+P,MAAM8nC,MAAQumF,EAAAA,QAAAA,6BAAyDoe,GAC5E,MAAO1hI,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAI7CqrJ,kBACE,OAAOnmK,KAAKkgD,OAAOlgD,KAAKomK,sBAGd,eACVpmK,KAAK+P,MAAQ,CACX67F,UAAW5rG,KAAK4oD,aAAa89G,aAAa,gBAC1CC,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClCwvG,WAAW,EACXuzD,aAAc7mK,KAAK+W,SAAS/L,KAC5BwxI,aAAc,GACdrhF,OAAQ,GACRtjB,MAAO,UAGH73C,KAAKmmK,kBAEXnmK,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,eAAgB,I,4LAKvD,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,mCAAoCgxJ,I,sBC7LtF,MAAM3lH,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,mCAAoC,CACnF2qC,YAAaD,EACbrrC,WAAY,yCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,wFCJd,MAAM+vJ,EAEJ7mH,YAAYC,EAAQwI,EAAQj+B,EAAesgD,EAAgBgzF,EAA8Bn1G,GACvF5oD,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+qE,eAAiBA,EACtB/qE,KAAK+9J,6BAA+BA,EACpC/9J,KAAK4oD,aAAeA,EAEpB5oD,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAGjC+oF,aACE/oF,KAAK+P,MAAMsnB,OAAO48D,QAClBj0F,KAAK+P,MAAMshF,KAAK6C,UAChBl0F,KAAK+P,MAAM2hF,WAAY,EAGzBq1E,2BAA2B1vI,EAAQg6D,GACjCh6D,EAAO66D,OAAS,WACd,MAAMG,EAAqB7sD,SAAS8sD,eAAe,sBACnDjB,EAAKzyB,KAAKyzB,GACVhB,EAAKkB,UAAU,eAAe,GAC9BlB,EAAKhmC,SAGPgmC,EAAKc,GAAG,QAAQ,SAAU1tF,GACxB4yB,EAAO+6D,KAAK3tF,MAGd4yB,EAAOs7D,UAAY,SAAU93E,GAC3Bw2E,EAAKuB,MAAM/3E,EAAIpW,OAGjB4yB,EAAOjI,QAAU,SAAUtU,GACzB9a,KAAK+oF,aACL/oF,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BACzCzb,KAAKW,MAEPA,KAAK+P,MAAMsnB,OAAOw7D,QAAU,WAC1B7yF,KAAK+oF,cACL1pF,KAAKW,MAEPA,KAAK+P,MAAM2hF,WAAY,EAGzBs1E,iBACE,MAAMx7J,EAAS,CACbkrE,MAAO12E,KAAK4oD,aAAakB,SACzBvrC,WAAYve,KAAK+W,SAASxK,GAC1B47D,UAAWnoE,KAAKo8I,YAAY5d,aAC5BsuB,QAAS9sJ,KAAK8sJ,QACdv2D,cAAev2F,KAAKu2F,cACpBrvF,QAASlH,KAAK+P,MAAM7I,SAGtB,IAAIT,EACF1C,OAAOovF,SAASC,QAChBC,EAAAA,EAAAA,YACA,qBACAv0F,OAAOD,KAAK2M,GACTrN,KAAKm1F,GAAMA,EAAI,IAAM9nF,EAAO8nF,KAC5BnmF,KAAK,KAER1G,EADEA,EAAIZ,QAAQ,UAAY,EACpBY,EAAI40B,QAAQ,WAAY,UAExB50B,EAAI40B,QAAQ,UAAW,SAG/Br7B,KAAK+P,MAAMsnB,OAAS,IAAI46D,UAAUxrF,GAClCzG,KAAK+P,MAAMshF,KAAO,IAAIpmC,EAAAA,EAEtBjrD,KAAK+mK,2BAA2B/mK,KAAK+P,MAAMsnB,OAAQr3B,KAAK+P,MAAMshF,MAGpD,eACVrxF,KAAK+qE,eAAesoC,uBAAuB,CAAC,4BAC5C,MAAM4zD,EAAoB,CAAC,YAAa,WAExCjnK,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB8xE,kBAAmBA,EACnB//J,QAAS+/J,EAAkB,GAC3Bv1E,WAAW,EACXr6D,OAAQ,KACRg6D,KAAM,KACNiiB,WAAW,GAGb,MAAMw5C,EAAU9sJ,KAAKyvF,aAAajkF,SAAS06I,IACrCghB,EAAkBlnK,KAAKyvF,aAAajkF,SAAS1H,KAC7CqkE,EAAYnoE,KAAKyvF,aAAajkF,SAAS28D,UACvCouB,EAAgBv2F,KAAKyvF,aAAajkF,SAAS8rC,UAEjDt3C,KAAK8sJ,QAAUA,EACf9sJ,KAAKu2F,cAAgBA,EAErB,IACEv2F,KAAKo8I,kBAAoBp8I,KAAK+9J,6BAA6Bp/I,IAAIwpD,EAAW++F,GAC1E,MAAOpsJ,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAH3C,QAKE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,6GAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,yCAA0C4xJ,I,sBCrH5F,MAAMvmH,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,kCAAmC,CAClF2qC,YAAaD,EACbrrC,WAAY,wCACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,uhBC4Bd,MAAMowJ,EAIJlnH,YACE7qC,EACA8qC,EACAwI,EACAj+B,EACAsgD,EACArpB,EACAogF,EACAi8B,EACAwH,EACApD,EACAxI,EACA3N,EACAqS,EACAyH,EACAr/F,EACAggC,EACAi9D,GAEA1jK,KAAKoV,OAASA,EACdpV,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+qE,eAAiBA,EACtB/qE,KAAK0hD,aAAeA,EACpB1hD,KAAK8hI,8BAAgCA,EACrC9hI,KAAK+9J,6BAA+BA,EACpC/9J,KAAKulK,uBAAyBA,EAC9BvlK,KAAKmiK,+BAAiCA,EACtCniK,KAAK25J,sBAAwBA,EAC7B35J,KAAK8lK,wBAA0BA,EAC/B9lK,KAAKgsJ,yBAA2BA,EAChChsJ,KAAKq+J,uCAAyCA,EAC9Cr+J,KAAKymE,gBAAkBA,EACvBzmE,KAAKymG,aAAeA,EACpBzmG,KAAK0jK,6BAA+BA,EAEpC1jK,KAAKonK,2BAA6B/nC,EAAAA,qCAClCr/H,KAAKqnK,8BAAgCx5B,EAAAA,wCACrC7tI,KAAKsnK,2BAA6BnjC,EAAAA,qCAClCnkI,KAAKunK,0BAA4BtmB,EAAAA,oCACjCjhJ,KAAKwnK,iBAAmBloC,EAAAA,2BACxBt/H,KAAKynK,mDAAqDxpB,EAAAA,6DAC1Dj+I,KAAK0nK,aAAenoC,EAAAA,uBACpBv/H,KAAKmvJ,0BAA4BA,EAAAA,0BAEjCnvJ,KAAK+P,MAAQ,CACX43J,QAAS3nK,KAAKmvJ,0BAA0BG,iBACxCsY,2BAA2B,EAC3BzyE,kBAAkB,EAClB0yE,iBAAiB,EACjBzqC,kBAAkB,EAClByY,SAAU,CACRiyB,gBAAgB,EAChBC,eAAe,EACfC,eAAgB,GAChBC,eAAe,GAEjBC,QAAS,CACPpqD,IAAK,CACH/gG,IAAK,EACLqlB,IAAK,GAEPnJ,OAAQ,CACNlc,IAAK,EACLqlB,IAAK,IAGT/d,MAAO,CACL4U,OAAQ,EACR6kF,IAAK,GAEPqqD,gBAAiB,CACflvI,OAAQ,EACR6kF,IAAK,GAEPsqD,iBAAkB,KAClBC,sBAAuB,KACvBC,sBAAsB,EACtBh1D,WAAW,EACXi1D,mBAAoB,CAAC,KAAM,KAAM,MACjCC,eAAe,EACfrjC,WAAY,CACVsjC,qBAAsB,IAAI/iC,EAAAA,mCAC1B4G,iBAAkB,IAAI5G,EAAAA,mCACtBgjC,mBAAoB,IAAIhjC,EAAAA,mCACxBijC,gBAAiB,IAAIjjC,EAAAA,mCACrBga,eAAgB,CACd9mB,eAAgB,IAAI8M,EAAAA,mCACpBkjC,UAAW,IAAIljC,EAAAA,mCACfmjC,cAAe,IAAInjC,EAAAA,mCACnBojC,kBAAmB,IAAIpjC,EAAAA,oCAEzBkb,WAAY,IAAIlb,EAAAA,oCAElBqjC,SAAU,CACRz8B,iBAAkB,IAAI5G,EAAAA,oCAExBE,QAAQ,EACRojC,oCAAoC,EACpC5uE,mBAAmB,GAGrBp6F,KAAKiK,SAAU,EAEfjK,KAAKipK,YAAc,GAEnBjpK,KAAK2yI,eAAiB,GACtB3yI,KAAK+P,MAAM83J,iBAAkB,EAC7B7nK,KAAK+P,MAAMqtH,kBAAmB,EAE9Bp9H,KAAK2T,WAAa,IAAI+6H,EAAAA,gCAEtB1uI,KAAKkpK,uBAAyBlpK,KAAKkpK,uBAAuB7pK,KAAKW,MAC/DA,KAAKmpK,uBAAyBnpK,KAAKmpK,uBAAuB9pK,KAAKW,MAC/DA,KAAKm7F,qBAAuBn7F,KAAKm7F,qBAAqB97F,KAAKW,MAC3DA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKopK,uBAAyBppK,KAAKopK,uBAAuB/pK,KAAKW,MAIjEmtH,oBAAoBxpH,GACd3D,KAAKqpK,iBAAiBhuI,QAAQ,iBAAkB,MAAQ13B,EAAM03B,QAAQ,iBAAkB,MAC1Fr7B,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAKqpK,iBAAmB1lK,GAIO,sCACjC,OAAO3D,KAAKkgD,QAAO2F,UACjB,IAWE,UAVwB7lD,KAAK0hD,aAAajyC,aAAa,CACrDvB,MAAO,gBACPjB,QAAS,mHACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,kBAKf,OAEFjB,KAAK+P,MAAM63J,2BAA4B,QACjC5nK,KAAKymG,aAAa6iE,gBAAgB,CAAE52C,WAAY1yH,KAAK+W,SAASxK,GAAIA,GAAIvM,KAAKo8I,YAAYxS,SAAW5pI,KAAKqpK,iBAAkB,MAC/HrpK,KAAK+P,MAAMggF,eAAgB,QACrB/vF,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SACrC,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAnB3C,QAqBE9a,KAAK+P,MAAM63J,2BAA4B,MAK9B,kBACb,GAAI5nK,KAAKqpK,kBAAoBrpK,KAAK+P,MAAMggF,cACtC,OAAO/vF,KAAK0hD,aAAal7B,0BAI7B20E,qBAAqBC,GACnBp7F,KAAK+P,MAAMqqF,kBAAoBgB,EAGjCmuE,uBACE,OAAOvpK,KAAK+P,MAAMqqF,mBAAqBp6F,KAAK2T,WAAWg7H,WAAW1nE,SAASj8D,OAASu8D,EAAAA,cAAAA,UAGtFiiG,eACE,MAAMC,EAAsB,IAAOzpK,KAAKw8I,aAAc,CAAE3vI,KAAM7M,KAAK2T,WAAW9G,OAC9E7M,KAAK+P,MAAMy4J,cAAiBxoK,KAAK+P,MAAM61H,QAAU6jC,GAAuBzpK,KAAKo8I,YAAY7vI,KAAOk9J,EAAoBl9J,KAASvM,KAAK+P,MAAM61H,QAAU6jC,EAIpJC,qBACM1pK,KAAK2T,WAAWm6G,iBAAmB9tH,KAAKonK,2BAA2BtZ,SACrE9tJ,KAAK2T,WAAWi7H,WAAWuR,QAAS,GAMxCwpB,mBACE,IAAI/kJ,EAAS,IAAI+4H,EAAAA,4CACjB/4H,EAAOg5H,sBAAwB59I,KAAKq9H,eAAe,GACnDr9H,KAAK2T,WAAWurH,eAAet7H,KAAKghB,GAGtCglJ,oBAAoBzpI,GAClBngC,KAAK2T,WAAWurH,eAAej8D,OAAO9iC,EAAO,GAC7CngC,KAAK6pK,4BAGPC,sBAAsB3pI,GACpB,MAAMvb,EAAS5kB,KAAK2T,WAAWurH,eAAe/+F,GAC9Cvb,EAAOi5H,WAAY,EACnBj5H,EAAOk5H,cAAgB,IAAM,IAAOl5H,EAAOg5H,sBAAsBrjE,OAAQ56E,IACvE,MAAM0pI,EAAM,IAAI2U,EAAAA,wDAEhB,OADA3U,EAAIjC,IAAMznI,EACH0pI,KAIX0gC,mBAAmB5pI,GACjB,MAAMvb,EAAS5kB,KAAK2T,WAAWurH,eAAe/+F,GAC9Cvb,EAAOi5H,WAAY,EACnBj5H,EAAOk5H,cAAgB,GACvB99I,KAAK6pK,4BAGPG,sBACEhqK,KAAK2T,WAAWurH,eAAiB,GAGnC2qC,4BACE7pK,KAAK+P,MAAMo1H,WAAWujC,mBAAmBpjC,KAAO,GAEhD,MAAMqkB,EAAQ,IACZ3pJ,KAAK2T,WAAWurH,gBAChB,CAAC72G,EAAQzD,KACP,MAAMqlJ,EAAwB,IAAO,IAAMrlJ,EAAOk5H,cAAe,SACjE,OAAO,IAASz1H,EAAQ4hJ,KAE1B,IAGIC,EAAiB7kC,EAAAA,QAAAA,cAA6CskB,GAEpE,IAAU3pJ,KAAK2T,WAAWurH,gBAAgB,CAACt6G,EAAQub,KACjD,IAAUvb,EAAOk5H,eAAe,CAACqsB,EAAcC,KAC7C,MAAMC,EAAW,IAAOH,GAAiBvoH,GAASA,IAASwoH,EAAa5jH,OACpE8jH,IACFrqK,KAAK+P,MAAMo1H,WAAWujC,mBAAmBpjC,KAAKnlG,EAAQ,IAAMiqI,GAAYC,SAK9ErqK,KAAK+P,MAAMo1H,WAAWujC,mBAAmBnjC,QAAUzmI,OAAOD,KAAKmB,KAAK+P,MAAMo1H,WAAWujC,mBAAmBpjC,MAAM7lI,OAAS,EAKzH07G,yBACEn7G,KAAK2T,WAAWwlG,qBAAqBv1G,KAAK,IAAIk5I,EAAAA,mDAGhDwtB,2BAA2Bj2H,GACzBA,EAAK2+F,eAAgB,EAGvBu3B,0BAA0Bl2H,GACxB,MAAMlU,EAAQngC,KAAK2T,WAAWwlG,qBAAqBtzG,QAAQwuC,GAC3D,IAAe,IAAXlU,EAAc,CAChB,MAAMqqI,EAASxqK,KAAK2T,WAAWwlG,qBAAqBh5E,GAC/CqqI,EAAOn0B,MAGVr2I,KAAK2T,WAAWwlG,qBAAqBl2C,OAAO9iC,EAAO,GAFnDqqI,EAAOx3B,eAAgB,EAK3BhzI,KAAKyqK,0BAGPA,0BACEzqK,KAAK+P,MAAMo1H,WAAWsjC,qBAAqBnjC,KAAOD,EAAAA,QAAAA,cAA6C,IAAMrlI,KAAK2T,WAAWwlG,qBAAsB,SAC3In5G,KAAK+P,MAAMo1H,WAAWsjC,qBAAqBljC,QAAUzmI,OAAOD,KAAKmB,KAAK+P,MAAMo1H,WAAWsjC,qBAAqBnjC,MAAM7lI,OAAS,EAK7HirK,qBACE,IAAI3yB,EAAe,GACf/3I,KAAK2yI,eAAelzI,OAAS,IAC/Bs4I,EAAe/3I,KAAK2yI,eAAe,IAGrC,MAAMg4B,EAAQ,IAAIpqB,EAAAA,8CAA8CxI,GAC5D/3I,KAAK4qK,0CACPD,EAAMhd,cAAe,GAEvB3tJ,KAAK2T,WAAW64H,iBAAiB5oI,KAAK+mK,GACtC3qK,KAAK6qK,sBAGPC,uBAAuB3qI,GACrBngC,KAAK2T,WAAW64H,iBAAiBrsG,GAAO6yG,eAAgB,EACxDhzI,KAAK+qK,2BAGPC,wBACMhrK,KAAKirK,0CACPjrK,KAAK2T,WAAW64H,iBAAmB,IAEnC,IAAUxsI,KAAK2T,WAAW64H,kBAAmBG,IAC3CA,EAAgBuG,eAAiB,KACjCvG,EAAgBghB,cAAe3tJ,KAAK4qK,2CAEtC5qK,KAAK+qK,4BAITG,sBAAsB/qI,GAChBngC,KAAK+P,MAAM61H,QAAU5lI,KAAK2T,WAAW64H,iBAAiBrsG,GAAO4sG,0BAC/D/sI,KAAK2T,WAAW64H,iBAAiBrsG,GAAO6yG,eAAgB,EAExDhzI,KAAK2T,WAAW64H,iBAAiBvpE,OAAO9iC,EAAO,GAEjDngC,KAAK+qK,2BAGPI,aAAahrI,GACXngC,KAAK2T,WAAW64H,iBAAiBrsG,GAAOwtH,cAAe,EACvD3tJ,KAAK2T,WAAW64H,iBAAiBrsG,GAAO+yG,eAAiB,KACzDlzI,KAAK+P,MAAMi5J,oCAAsC,IAAShpK,KAAK2T,WAAW64H,kBAAkB,CAACh6G,EAAK6pH,IAAO7pH,GAAO6pH,EAAGsR,eAAc,GACjI3tJ,KAAK+qK,2BAGPK,kBAAkBjrI,GAChBngC,KAAK2T,WAAW64H,iBAAiBrsG,GAAOwtH,cAAe,EACvD3tJ,KAAK+P,MAAMi5J,qCAAqC,IAAOhpK,KAAK2T,WAAW64H,iBAAkB,CAAEmhB,cAAc,IACrG3tJ,KAAK2T,WAAWi6H,mBAAqB5tI,KAAKqnK,8BAA8BrZ,WAC1EhuJ,KAAK2T,WAAWi6H,iBAAmB5tI,KAAKqnK,8BAA8BtZ,OACtE/tJ,KAAK6qK,uBAEP7qK,KAAK+qK,2BAKPA,2BACE/qK,KAAKqrK,8BACLrrK,KAAKsrK,8BACLtrK,KAAKurK,kCAGPF,8BACErrK,KAAK+P,MAAMo1H,WAAWmH,iBAAiBhH,KAAOD,EAAAA,QAAAA,cAC5C,IAAMrlI,KAAK2T,WAAW64H,kBAAmBG,IACvC,IAAIA,EAAgBqG,cAGpB,OAAOrG,EAAgB6G,kBAG3BxzI,KAAK+P,MAAMo1H,WAAWmH,iBAAiB/G,QAAUzmI,OAAOD,KAAKmB,KAAK+P,MAAMo1H,WAAWmH,iBAAiBhH,MAAM7lI,OAAS,EAGrH6rK,8BACE,MAAMx3B,EAAQ9zI,KAAK2T,WAAW6qH,aAAaooB,MAE3C,GADA5mJ,KAAK+P,MAAM8lI,SAASoyB,eAAgB,EAChCn0B,EAAO,CACT,MAAM03B,EAAMxrK,KAAK2T,WAAW64H,iBACtBz2H,EAAS,IAAUy1J,EAAK,qBACxBniC,EAAM,GACZ,IAAStzH,GAAQ,CAAC01J,EAAY14B,KAC5B,MAAM24B,EAAS,IAASD,EAAY,CAAE1+B,0BAA2B,KAC3D4+B,EAAgB,IAASD,GAAQ,CAACE,EAAKvvB,IAAQA,EAAGsR,cAAgBtR,EAAGt6D,KAAO6pF,EAAM7gC,GAAAA,CAAgB,GAAEsR,EAAGt6D,OAAOs6D,EAAGjJ,WAAY,CAAEpI,KAAM,KAAQ4gC,GAAM,GACrJ5rK,KAAK+P,MAAM8lI,SAASmyB,eAAej1B,GAAoB44B,GACzD,IAAUH,GAAK,CAACnvB,EAAI1xE,KACd,IAAW+gG,EAAQrvB,IAAOA,EAAGsR,cAAgBtR,EAAGt6D,OAClDsnD,EAAI1+D,IAAO,MAKf3qE,KAAK2T,WAAWi6H,mBAAqB5tI,KAAKqnK,8BAA8BrZ,UACxEhuJ,KAAK+P,MAAM8lI,SAASmyB,eAAej1B,GAAoB44B,EAAgB3rK,KAAK2T,WAAWmuD,eAEvF9hE,KAAK+P,MAAM8lI,SAASoyB,eAAgB,MAGxCjoK,KAAK+P,MAAMg5J,SAASz8B,iBAAiBhH,KAAO+D,EAC5CrpI,KAAK+P,MAAMg5J,SAASz8B,iBAAiB/G,QAAUzmI,OAAOD,KAAKmB,KAAK+P,MAAMg5J,SAASz8B,iBAAiBhH,MAAM7lI,OAAS,GAInH8rK,kCACEvrK,KAAK+P,MAAMo1H,WAAWwjC,gBAAgBrjC,KAAOD,EAAAA,QAAAA,cAC3C,IAAMrlI,KAAK2T,WAAW64H,kBAAmBG,IACvC,IAAIA,EAAgBqG,cAGpB,OAAOrG,EAAgBuG,eAAiBvG,EAAgBuG,eAAeK,sBAAsB1mI,KAAO,OAGxG7M,KAAK+P,MAAMo1H,WAAWwjC,gBAAgBpjC,QAAUzmI,OAAOD,KAAKmB,KAAK+P,MAAMo1H,WAAWwjC,gBAAgBrjC,MAAM7lI,OAAS,EAKnHosK,eACE,MAAMxqB,EAAY,IAAIC,EAAAA,wCAChB16I,EAAQ5G,KAAKyuI,YAAY,GAC/B4S,EAAUE,MAAQ36I,EAClBy6I,EAAUpZ,MAAQrhI,EAAM87H,OAAO,GAC/B1iI,KAAK2T,WAAWktI,WAAWj9I,KAAKy9I,GAChCrhJ,KAAK8rK,oBAGPC,iBAAiB5rI,GACfngC,KAAK2T,WAAWktI,WAAW1gH,GAAO6yG,eAAgB,EAClDhzI,KAAK8rK,oBAGPE,gBAAgB7rI,GACVngC,KAAK+P,MAAM61H,SAAW5lI,KAAK2T,WAAWktI,WAAW1gH,GAAOk2G,MAC1Dr2I,KAAK2T,WAAWktI,WAAW1gH,GAAO6yG,eAAgB,EAElDhzI,KAAK2T,WAAWktI,WAAW59E,OAAO9iC,EAAO,GAE3CngC,KAAK8rK,oBAIPA,oBACE9rK,KAAKisK,iCAGPC,uBAAuB/rI,GACrBngC,KAAK2T,WAAWktI,WAAW1gH,GAAO8nG,MAAQjoI,KAAK2T,WAAWktI,WAAW1gH,GAAOohH,MAAM7e,OAAO,GACzF1iI,KAAKisK,iCAGPA,iCACE,MAAMl8J,EAAQ/P,KAAK+P,MAAMo1H,WAAWyb,WAC9BlhJ,EAAS,IAAMM,KAAK2T,WAAWktI,YAAat2G,GAAOA,EAAEyoG,mBAAgBnhI,EAAY04B,EAAEg3G,MAAMna,MACzFjC,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,EAMnD2pK,0BAEMppK,KAAK2T,WAAWu5I,qBAAwBltJ,KAAK2T,WAAWgrH,eAAel/H,OAMvEO,KAAK2T,WAAWu5I,oBAClBltJ,KAAK2T,WAAWgrH,eAAe9mH,SAASmgC,GAAUA,EAAKg7F,eAAgB,IAGvEhzI,KAAK2T,WAAWgrH,eAAiB3+H,KAAK2T,WAAWgrH,eAAersH,QAAQ0lC,IAAUA,EAAKq+F,QAAOl4I,KAAK65C,IAAD,IAAgBA,EAAMg7F,eAAe,MATvIhzI,KAAKu8G,mBAaTA,mBACE,MAAMhyE,EAAI,IAAIq1G,EAAAA,4CACRrW,EAAYvpI,KAAKupI,UACnBvpI,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,UACrC55F,EAAEs6F,YAAc0E,GAAaA,EAAU9pI,OAAS8pI,EAAU,GAAG18H,UAAOgF,EACpE04B,EAAEu1G,YAAcvW,GAAaA,EAAU9pI,OAAS8pI,EAAU,GAAGvjD,MAAM,QAAKn0E,EACxE04B,EAAEw1G,aAAexW,GAAaA,EAAU9pI,OAAS8pI,EAAU,GAAGvjD,WAAQn0E,GAEpE7R,KAAK2T,WAAWgrH,eAAel/H,SACjC8qC,EAAE0qE,SAAWj1G,KAAK2T,WAAWgrH,eAAe,GAAG1pB,UAEjDj1G,KAAK2T,WAAWgrH,eAAe/6H,KAAK2mC,GAGtC4hI,sBACE,MAAM5iC,EAAYvpI,KAAKupI,UACvB,IAAUvpI,KAAK2T,WAAWgrH,gBAAiBp0F,IACzCA,EAAEs6F,YAAc0E,GAAaA,EAAU9pI,OAAS8pI,EAAU,GAAG18H,UAAOgF,EACpE04B,EAAEu1G,YAAcvW,GAAaA,EAAU9pI,OAAS8pI,EAAU,GAAGvjD,MAAM,QAAKn0E,KAI5Eu6J,qBAAqBjsI,GACnBngC,KAAK2T,WAAWgrH,eAAex+F,GAAO6yG,eAAgB,EACtDhzI,KAAKqsK,yBAGPC,oBAAoBnsI,GACdngC,KAAK+P,MAAM61H,SAAW5lI,KAAK2T,WAAWgrH,eAAex+F,GAAOk2G,MAC9Dr2I,KAAK2T,WAAWgrH,eAAex+F,GAAO6yG,eAAgB,EAEtDhzI,KAAK2T,WAAWgrH,eAAe17D,OAAO9iC,EAAO,GAE/CngC,KAAKqsK,yBAKPA,yBACErsK,KAAKusK,mCACLvsK,KAAKwsK,8BACLxsK,KAAKysK,kCACLzsK,KAAK0sK,kCACL1sK,KAAK2sK,uBAGPJ,mCACE,MAAMx8J,EAAQ/P,KAAK+P,MAAMo1H,WAAWua,eAAe9mB,eACnD,GAAI54H,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,QAA8C,CACnF,MAAMzkI,EAAS,IAAMM,KAAK2T,WAAWgrH,gBAAiBp0F,GAAOA,EAAEyoG,mBAAgBnhI,EAAY04B,EAAE+rG,cAAgB/rG,EAAE0qE,WACzGkwB,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,OAEjDsQ,EAAMu1H,KAAO,GACbv1H,EAAMw1H,SAAU,EAIpBinC,8BACE,MAAMz8J,EAAQ/P,KAAK+P,MAAMo1H,WAAWua,eAAekpB,UACnD,GAAI5oK,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,UAAgD,CACrF,MAAMzkI,EAAS,IAAMM,KAAK2T,WAAWgrH,gBAAiBp0F,GAAOA,EAAEyoG,mBAAgBnhI,EAAY04B,EAAEqhG,WACvFzG,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,OAEjDsQ,EAAMu1H,KAAO,GACbv1H,EAAMw1H,SAAU,EAIpBqnC,2BAA2BzsI,GACzB,MAAMi2G,EAAgBp2I,KAAK2T,WAAWgrH,eAAex+F,GAC/C2kG,EAAU,IAAO9kI,KAAKupI,UAAW,CAAE18H,KAAMupI,EAAcvR,cAC7DuR,EAAc2J,aAAejb,EAAQ9+C,MACrChmF,KAAK6sK,iBAAmB/nC,EAAQ9+C,MAChCowD,EAAc0J,YAAc9/I,KAAK6sK,iBAAiBptK,OAASO,KAAK6sK,iBAAiB,GAAK,GACtF7sK,KAAKqsK,yBAGPI,kCACE,MAAM18J,EAAQ/P,KAAK+P,MAAMo1H,WAAWua,eAAempB,cAEnD,GAAI7oK,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,QAA8C,CACnF,MAAM2oC,EAAY,IAAM9sK,KAAK2T,WAAWgrH,gBAAiBp0F,GAAOA,EAAE8rG,OAAS9rG,EAAEs1G,aAAgB,GAAEt1G,EAAEu1G,aAAev1G,EAAEs6F,cAAct6F,EAAEs1G,oBAAiBhuI,IAC7Ik7J,EAAc,IAAM/sK,KAAK2T,WAAWgrH,gBAAiBp0F,GAAOA,EAAEyoG,eAAiBzoG,EAAEs1G,aAAgB,GAAEt1G,EAAEu1G,aAAev1G,EAAEs6F,cAAct6F,EAAEs1G,oBAAiBhuI,IACvJm7J,EAAY,IAAUhtK,KAAKupI,WAAYhqI,GAAM,IAAMA,EAAEggJ,OAAQh1G,GAAO,GAAEA,EAAEqb,MAAQrmD,EAAEsN,OAAO09B,EAAEgc,WAC3F4+E,EAAaE,EAAAA,QAAAA,cAA6CynC,GAChE,IAAUA,GAAW,CAACtzI,EAAOmxC,KACvB,IAAWqiG,EAAWxzI,KAAW,IAAWuzI,EAAavzI,KAC3D2rG,EAAWx6D,GAAOnxC,MAGtBzpB,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,OAEjDsQ,EAAMu1H,KAAO,GACbv1H,EAAMw1H,SAAU,EAIpBmnC,kCACE,MAAM38J,EAAQ/P,KAAK+P,MAAMo1H,WAAWua,eAAeopB,kBACnD,GAAI9oK,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,cAAoD,CACzF,MAAMzkI,EAAS,IAAMM,KAAK2T,WAAWgrH,gBAAiBp0F,GAAOA,EAAEyoG,mBAAgBnhI,EAAY04B,EAAEgsG,mBACvFpR,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,OAEjDsQ,EAAMu1H,KAAO,GACbv1H,EAAMw1H,SAAU,EAIpBonC,qBAAqBxsI,GAEnB,GADAngC,KAAKusK,mCACDvsK,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,cAAoD,CACzF,MAAM8oC,EAAW,IAASjtK,KAAK2T,WAAWgrH,eAAgB,CAAE0X,OAAO,IACnE,IAAU42B,GAAWj1H,IACnBA,EAAKi9D,SAAW90E,EAAQngC,KAAK2T,WAAWgrH,eAAex+F,GAAO80E,SAAWg4D,EAAS,GAAGh4D,aAO3FrmG,UACE,QACG5O,KAAK+P,MAAMy4J,eACXxoK,KAAK+P,MAAMo1H,WAAWsjC,qBAAqBljC,SAC3CvlI,KAAK+P,MAAMo1H,WAAWmH,iBAAiB/G,SACvCvlI,KAAK+P,MAAMo1H,WAAWujC,mBAAmBnjC,SACzCvlI,KAAK+P,MAAMo1H,WAAWwjC,gBAAgBpjC,SACtCvlI,KAAK+P,MAAMo1H,WAAWua,eAAe9mB,eAAe2M,SACpDvlI,KAAK+P,MAAMo1H,WAAWua,eAAekpB,UAAUrjC,SAC/CvlI,KAAK+P,MAAMo1H,WAAWua,eAAempB,cAActjC,SACnDvlI,KAAK+P,MAAMo1H,WAAWua,eAAeopB,kBAAkBvjC,SACvDvlI,KAAK+P,MAAMg5J,SAASz8B,iBAAiB/G,SAI1C2nC,wBACE,OACEltK,KAAK2yI,gBACL3yI,KAAK2yI,eAAelzI,OAAS,GAC7BO,KAAK+P,MAAM8lI,SAASiyB,kBAClB9nK,KAAK+P,MAAM8lI,SAASkyB,eAAkB/nK,KAAK+P,MAAM8lI,SAASkyB,eAA6D,IAA5C/nK,KAAK2T,WAAW64H,iBAAiB/sI,QAIlH0tK,qCACE,OAAOntK,KAAK2yI,gBAAkB3yI,KAAK2yI,eAAelzI,OAAS,EAG7DorK,sBACE7qK,KAAK2T,WAAWm6G,eAAiB9tH,KAAKonK,2BAA2BvZ,WACjE7tJ,KAAKsrK,8BAKP8B,8BACE,OAAmD,IAA5CptK,KAAK2T,WAAW64H,iBAAiB/sI,OAM1C4tK,0BACE,MAAMC,EAAyD,IAA5CttK,KAAK2T,WAAW64H,iBAAiB/sI,OAC9C8tK,EAAanvC,EAAAA,QAAAA,WAAuCp+H,KAAK2T,YACzD65J,EAAaxtK,KAAK2T,WAAWi6H,mBAAqB5tI,KAAKqnK,8BAA8BrZ,SAE3F,OAAIsf,IAAeC,IAAcC,EAOnCC,uBACE,OAAOztK,KAAK+P,MAAM61H,QAAU5lI,KAAK2T,WAAWi6H,mBAAqB5tI,KAAKqnK,8BAA8BrZ,SAQtG0f,mCACE,MAAMJ,EAAyD,IAA5CttK,KAAK2T,WAAW64H,iBAAiB/sI,OAC9C8tK,EAAanvC,EAAAA,QAAAA,WAAuCp+H,KAAK2T,YACzD65J,EAAaxtK,KAAK2T,WAAWi6H,mBAAqB5tI,KAAKqnK,8BAA8BrZ,SAE3F,QAAKsf,IAAcE,KAAeF,GAAeC,IAOnDI,wBACE,IAAIC,EAAiB,GAErB,IAAK,IAAIruK,EAAI,EAAGA,EAAIS,KAAK2T,WAAW64H,iBAAiB/sI,OAAQF,IAAK,CAChE,MAAMmjD,EAAS1iD,KAAK2T,WAAW64H,iBAAiBjtI,GAE5CmjD,EAAOowF,aACL,IAAUpwF,EAAOowF,aAAa4N,YAAa,CAAC,SAC9CktB,EAAehqK,KAAK8+C,EAAOowF,aAAajmI,MAG1C+gK,EAAehqK,KAAK,iCAIxB,OAAO,IAAOgqK,GAAgBzgK,KAAK,MAGrC0gK,6BACuC,OAAjC7tK,KAAK2T,WAAWmuD,eAClB9hE,KAAK2T,WAAWmuD,aAAe,GAInCgsG,gCACE,OAAQ9tK,KAAK+P,MAAMm4J,QAAQjvI,OAAOmJ,MAAQpiC,KAAK+P,MAAMm4J,QAAQpqD,IAAI17E,IAGnE2rI,qBACE,MAAMjwD,EAAM99G,KAAK2T,WAAWqhF,SACtB/7D,EAAS6xG,EAAAA,QAAAA,WAA+C9qI,KAAK2T,WAAWghF,aAI9E,OAFiB30F,KAAKuyJ,YAAYM,mBAAmB/0C,EAAK7kF,EAAQ,GAKpE+0I,qBACE,OAAOhuK,KAAK2T,WAAWm6G,iBAAmB9tH,KAAKonK,2BAA2BtZ,OAAS9tJ,KAAKiuK,WAAajuK,KAAK2T,WAAWmuD,aAGvHosG,+BACE,MAAMpb,EAAY9yJ,KAAKguK,qBACjBlwD,EAAM99G,KAAK2T,WAAWqhF,SACtBm5E,EAASnuK,KAAK+P,MAAMo4J,gBAAgBrqD,IACpC7kF,EAAS6xG,EAAAA,QAAAA,WAA+C9qI,KAAK2T,WAAWghF,aACxE2jB,EAAYt4G,KAAK+P,MAAMo4J,gBAAgBlvI,OAG7C,OAAU,IAAN6kF,EAAag1C,EAAqB,IAATqb,GAIzBl1I,EAAS65H,EAAYx6C,IAIrBt4G,KAAK2T,WAAWm6G,iBAAmB9tH,KAAKonK,2BAA2BvZ,WAC9D7tJ,KAAKuyJ,YAAYM,mBAAmB/0C,EAAK7kF,EAAQ65H,GAInD9yJ,KAAKuyJ,YAAYQ,kBAAkBj1C,EAAK7kF,IAGjDm1I,qBACE,MAAMtb,EAAY9yJ,KAAK2T,WAAWi7H,WAAWyR,YACvCviC,EAAM99G,KAAK2T,WAAWqhF,SACtBm5E,EAASnuK,KAAK+P,MAAMo4J,gBAAgBrqD,IACpC7kF,EAAS6xG,EAAAA,QAAAA,WAA+C9qI,KAAK2T,WAAWghF,aACxE2jB,EAAYt4G,KAAK+P,MAAMo4J,gBAAgBlvI,OAG7C,OAAU,IAAN6kF,EAAag1C,EAAqB,IAATqb,GAIzBl1I,EAAS65H,EAAYx6C,GAIlBt4G,KAAKuyJ,YAAYM,mBAAmB/0C,EAAK7kF,EAAQ65H,GAG1Dub,gCACE,OAAOruK,KAAK+P,MAAM83J,iBAAwD,IAArC7nK,KAAK+P,MAAMs4J,sBAGlDiG,2BACE,OAAOtuK,KAAKupI,UAAU9pI,OAGxB8uK,yBACE,IAAKvuK,KAAK+P,MAAM61H,OAAQ,OAAO,EAC/B,MAAM4oC,EAAUn9B,EAAAA,GAAkBrxI,KAAKyuK,gBAAiBzuK,KAAK2T,YAE7D,OADA3T,KAAKipK,YAAc,IAASuF,GAAUE,IAAY,IAAWA,EAAO/sH,KAAM,cAAgC,qBAAhB+sH,EAAO/sH,QACzF3hD,KAAKipK,YAAYxpK,OAK3BkvK,oCACE,OAAQ3uK,KAAKytK,wBAA0BztK,KAAK2T,WAAWmkD,WAAWr4D,QAAU,EAG9EmvK,0BAA0BzuI,GACxB,OAAOngC,KAAK6uK,iCAAiC1uI,IAAUngC,KAAK4qK,wCAG9DkE,iCACE,OAAQ9uK,KAAK+uK,uBAA0B/uK,KAAK4lI,QAAU5lI,KAAKo8I,YAAYjd,kBAAoBn/H,KAAKwnK,iBAAiBrZ,YAInH6gB,qBACE,IAAKhvK,KAAKktK,0BAA4BltK,KAAK+P,MAAM8lI,SAASiyB,eACxD,OAAO,EAET,MAAM1rI,EAAQ,IACZ,IAAMp8B,KAAK2yI,eAAgB,SAC3B,CAACi5B,EAAKjsK,KACJ,MAAMsvK,EAAgBjvK,KAAK+P,MAAM8lI,SAASmyB,eAAeroK,GACzD,OAAOsvK,EAAgBrD,EAAMqD,EAAgBrD,IAE/C,GAEF,OAAO5rK,KAAK2yI,eAAelzI,SAAW,IAAOO,KAAK+P,MAAM8lI,SAASmyB,gBAAgBvoK,QAAU28B,GAAS,EAGtG6uI,0CACE,OAAOjrK,KAAKgvK,uBAAyBhvK,KAAK+uK,sBAG5CnE,wCACE,OAAO5qK,KAAKgvK,sBAAwBhvK,KAAK+uK,sBAG3CA,sBACE,OAAO/uK,KAAK08F,iBAAiBj9F,OAAS,EAGxCovK,iCAAiC1uI,GAC/B,OAAOngC,KAAK+P,MAAM61H,QAAU5lI,KAAK2T,WAAW64H,iBAAiBrsG,GAAO4sG,0BAItEmiC,6BAA6B/uI,GAC3B,OAAOngC,KAAK+P,MAAM61H,SAAW5lI,KAAK2T,WAAWgrH,eAAex+F,GAAOk2G,MAGrE84B,sBACE,OAAuF,IAAhFnvK,KAAK2T,WAAWgrH,eAAersH,QAAQ0lC,IAAUA,EAAKg7F,gBAAevzI,OAG9E2vK,yBAAyBjvI,GACvB,OAAOngC,KAAK+P,MAAM61H,SAAW5lI,KAAK2T,WAAWktI,WAAW1gH,GAAOk2G,MAGjEg5B,iBAAiBlvI,GACf,OAAQngC,KAAK+P,MAAM61H,QAAoB,IAAVzlG,EAG/BmvI,6BAEE,OAA6B,IADV,IAAStvK,KAAK2T,WAAWktI,WAAY,CAAE7N,eAAe,IACvDvzI,OAGpB8vK,gBACE,MAAMC,EAAWxvK,KAAK0tK,mCAChB+B,EAASzvK,KAAKqtK,0BACdqC,EAAU1vK,KAAK2T,WAAWmuD,aAAe,EACzC6tG,EAAa3vK,KAAK2T,WAAWm6G,iBAAmB9tH,KAAKonK,2BAA2BvZ,WAEtF,OADa8hB,IAAeH,GAAYE,IAAcC,IAAeF,EAIvEG,4BACE,SAAK5vK,KAAK+P,MAAM83J,iBAAmB7nK,KAAK2T,WAAWm7H,iBAAmB9uI,KAAKsnK,2BAA2B9Y,gBAGlGxuJ,KAAK+P,MAAMq4J,kBAAoB,GAAqC,OAAhCpoK,KAAK+P,MAAMq4J,iBAMrDyH,+BACE,MAAM7c,EAAWhzJ,KAAKkuK,+BAChBE,EAAqBpuK,KAAKouK,qBAC1B0B,EAAa9vK,KAAK+P,MAAMolF,iBACxB46E,GAAW/vK,KAAK4O,UAChBohK,EAAehwK,KAAKuuK,yBACpB0B,EAAcjwK,KAAKuvK,gBACnBW,EAA2BlwK,KAAK2T,WAAWu5I,qBAAuBltJ,KAAKmvK,sBACvEgB,GAAkBnwK,KAAK2T,WAAW6qH,aAClC4xC,EAA2BpwK,KAAK4vK,4BACtC,OAAO5c,GAAYob,GAAsB0B,GAAcC,GAAWC,GAAgBC,GAAeC,GAA4BC,GAAkBC,EAGjJjyC,wBACE,QAAIn+H,KAAKo8I,aACAhe,EAAAA,QAAAA,sBAAkDp+H,KAAKo8I,aAMlEi0B,0BACE,OACErwK,KAAK+P,MAAM61H,QACX5lI,KAAKo8I,YAAYlR,cAAgBlrI,KAAK0nK,aAAalZ,gBAClDxuJ,KAAKo8I,YAAYpd,uBAClBh/H,KAAK2T,WAAWm7H,iBAAmB9uI,KAAKsnK,2BAA2B9Y,cAIvE8hB,+BACE,MAAMz4H,EAAQ,IAAS73C,KAAK2T,WAAWgrH,eAAgB,CAAE0X,OAAO,EAAOrD,eAAe,IACtF,OAAOhzI,KAAK+P,MAAM61H,QAAU5lI,KAAK2T,WAAWgrH,eAAel/H,OAAS,GAAKo4C,EAAMp4C,OAAS,EAG1F8wK,oBACE,OAAOvwK,KAAK2T,WAAWm7H,iBAAmB3K,EAAAA,qCAAAA,eAA4H,IAAtE,IAASnkI,KAAK2T,WAAWgrH,eAAgB,CAAE0X,OAAO,IAAS52I,OAG7J+wK,yBAAyBrwI,EAAO0xC,GAC9B,OACE7xE,KAAKqwK,2BACJrwK,KAAKkvK,6BAA6B/uI,IAAUngC,KAAK2T,WAAWgrH,eAAex+F,GAAO80E,WAAapjC,GAC/F7xE,KAAKuwK,qBAAuBvwK,KAAK2T,WAAWgrH,eAAex+F,GAAO80E,WAAapjC,GAAY7xE,KAAKqvK,iBAAiBlvI,GAOtHswI,gBACE,MAAM38B,EAAQ9zI,KAAK2T,WAAW6qH,aAAaooB,MAC3C,IAAI8pB,EAAS,EACXC,EAAY,EACZxC,EAASnuK,KAAK+P,MAAMo4J,gBAAgBrqD,IACpCxF,EAAYt4G,KAAK+P,MAAMo4J,gBAAgBlvI,OAErC66G,IACEA,EAAM9+C,WACR07E,EAAS9hB,EAAAA,mCAAAA,UAEP9a,EAAMn/C,cACRg8E,EAAY7lC,EAAAA,QAAAA,WAA+C8jB,EAAAA,mCAAAA,eAI/Duf,EAASrxJ,KAAKC,IAAIoxJ,EAAQnuK,KAAKuyJ,YAAYC,QAC3Cl6C,EAAYx7F,KAAKC,IAAIu7F,EAAWt4G,KAAKuyJ,YAAYE,WAE7Cn6C,EAAYq4D,IACdA,EAAY,EACZr4D,EAAY,GAGdt4G,KAAK+P,MAAMm4J,QAAQjvI,OAAOlc,IAAM+tH,EAAAA,QAAAA,eAAmD6lC,GACnF3wK,KAAK+P,MAAMm4J,QAAQjvI,OAAOmJ,IAAM0oG,EAAAA,QAAAA,eAAmDxyB,GACnFt4G,KAAK+P,MAAMm4J,QAAQpqD,IAAI/gG,IAAM2zJ,EAC7B1wK,KAAK+P,MAAMm4J,QAAQpqD,IAAI17E,IAAM,IAAQ+rI,EAAQ,GACxCnuK,KAAK+P,MAAM61H,SACd5lI,KAAK2T,WAAWqhF,SAAW07E,EAC3B1wK,KAAK2T,WAAWghF,YAAcm2C,EAAAA,QAAAA,eAAmD6lC,IAIrFC,wBACE,IAAIzC,EAASnuK,KAAK+P,MAAMsU,MAAMy5F,IAC1BxF,EAAYt4G,KAAK+P,MAAMsU,MAAM4U,OACjC,MAAM66G,EAAQ9zI,KAAK2T,WAAW6qH,aAAaooB,MAE3C5mJ,KAAK+P,MAAMu4J,sBAAuB,EAE9Bx0B,IACEA,EAAM9+C,WACRh1F,KAAK+P,MAAMu4J,sBAAuB,EAClC6F,EAASr6B,EAAM9+C,SAAW8+C,EAAMa,aAC5B30I,KAAK+P,MAAM61H,QAAU5lI,KAAKyuK,gBAAgBz5E,WAC5Cm5E,GAAUnuK,KAAKyuK,gBAAgBz5E,SAAWh1F,KAAKguK,uBAI/Cl6B,EAAMn/C,cACR30F,KAAK+P,MAAMu4J,sBAAuB,EAClChwD,EAAYw7B,EAAMn/C,YAAcm/C,EAAMW,gBAClCz0I,KAAK+P,MAAM61H,QAAU5lI,KAAKyuK,gBAAgB95E,cAC5C2jB,GAAawyB,EAAAA,QAAAA,WAA+C9qI,KAAKyuK,gBAAgB95E,aAAe30F,KAAKguK,wBAK3GhuK,KAAK+P,MAAMo4J,gBAAgBrqD,IAAMqwD,EACjCnuK,KAAK+P,MAAMo4J,gBAAgBlvI,OAASq/E,EAGtCu4D,cAAc1oG,GACZ,OAAOnoE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKm7D,aAAen7D,KAAKulK,uBAAuB5mJ,IAAIwpD,GACpD,MAAOrtD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAK/Cg2J,sBAAsB3oG,GACpB,OAAOnoE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKq9H,qBAAuBr9H,KAAKmiK,+BAA+BxjJ,IAAIwpD,GACpE,MAAOrtD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yCAK/Ci2J,oBAAoB5oG,GAClB,OAAOnoE,KAAKkgD,QAAO2F,UACjB,IAIE,GAHA7lD,KAAKw8I,mBAAqBx8I,KAAK+9J,6BAA6Bp/I,IAAIwpD,GAChEnoE,KAAK+P,MAAMq4J,iBAAmB,KAC9BpoK,KAAK+P,MAAMs4J,sBAAwB,KAC/BroK,KAAK2T,WAAW6qH,aAAaooB,QAC/B5mJ,KAAK+P,MAAMs4J,sBAAwBroK,KAAK2T,WAAW6qH,aAAaooB,MAAMhS,cAC7B,OAArC50I,KAAK+P,MAAMs4J,uBAAgC,CAC7C,IAAI2I,EAAyB,IAAShxK,KAAKw8I,aAAc,CAAEtR,YAAa,iBACpElrI,KAAK+P,MAAM61H,SACborC,EAAyB,IAASA,GAAyB1yC,GAClDA,EAAIzxH,OAAS7M,KAAK2T,WAAW9G,QAGxC,MAAMokK,EAA+BD,EAAuBvxK,OAC5DO,KAAK+P,MAAMq4J,iBAAmBpoK,KAAK+P,MAAMs4J,sBAAwB4I,GAGrE,MAAOn2J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAK/Co2J,eAAe/oG,GACb,OAAOnoE,KAAKkgD,QAAO2F,UACjB,IACE,MAAM8sF,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eACxDj6E,QAAgB37D,KAAK8lK,wBAAwBnnJ,IAAIwpD,EAAWwqE,GAClE,IAAUh3E,GAAUC,IAClBA,EAAOgkE,aAAegB,EAAAA,QAAAA,qBAA4ChlE,EAAQ57D,KAAKw8I,iBAEjFx8I,KAAK27D,QAAUA,EACf,MAAMw1G,EAAkB,IAASnxK,KAAK27D,SAAUC,IAC9C,MAAMw1G,GAAYxwC,EAAAA,QAAAA,OAA8BhlE,GAC1Cy1G,EAAQz1G,EAAO23E,sBAAsBT,cAAgB,IAAWl3E,EAAO23E,sBAAsBT,aAAa4N,YAAa,OAC7H,OAAO0wB,GAAYC,KAErBrxK,KAAK08F,iBAAmBy0E,EACxB,MAAOr2J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAK/Cw2J,+BACE,MAAMx9B,EAAQ9zI,KAAK2T,WAAW6qH,aAAaooB,MAI3C,GAHA5mJ,KAAK+P,MAAM8lI,SAASmyB,eAAiB,GACrChoK,KAAK+P,MAAM8lI,SAASiyB,gBAAiB,EACrC9nK,KAAK+P,MAAM8lI,SAASkyB,eAAgB,EAChCj0B,GAASA,EAAMiB,gBAAgBt1I,OAAQ,CACzC,MAAMuoK,EAAiB,GACvB,IAAUl0B,EAAMiB,iBAAkBC,IAC5BA,EAAGd,WACL8zB,EAAehzB,EAAGnoI,MAAQk+H,GAAAA,CAAgB,GAAEiK,EAAGjzD,OAAOizD,EAAG5B,WAAY,CAAEpI,KAAM,SAIjF,MAAMj1H,EAAS,IAAU/V,KAAK27D,QAAS,2CACvC,IAAS5lD,GAAQ,CAAC4lD,EAASh8D,KACzB,GAAIqoK,EAAeroK,GAAM,CACvB,MAAM+0I,EAAO,IAAS/4E,GAAS,CAACiwG,EAAKpqI,IAAMoqI,EAAM7gC,GAAAA,CAAevpG,EAAE+xG,sBAAsBV,QAAS,CAAE7H,KAAM,MAAO,GAC1GumC,EAAYvJ,EAAeroK,GAAO+0I,EACxCszB,EAAeroK,GAAO4xK,EAAY,EAAI,EAAIA,MAG9CvxK,KAAK+P,MAAM8lI,SAASmyB,eAAiBA,EAErC,MAAMwJ,EAAa,IAAS19B,EAAMiB,gBAAiB,CAAEb,UAAU,EAAMnyD,KAAM,IAC3E/hF,KAAK+P,MAAM8lI,SAASkyB,cAAgByJ,EAAW/xK,SAAWq0I,EAAMiB,gBAAgBt1I,OAElFO,KAAK+P,MAAM8lI,SAASiyB,gBAAiB,EAGvC2J,iBAAiBtpG,GACf,OAAOnoE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKupI,gBAAkBvpI,KAAKgsJ,yBAAyBrtI,IAAIwpD,GACzDnoE,KAAK6sK,iBAAmB7sK,KAAKupI,UAAU9pI,OAASO,KAAKupI,UAAU,GAAGvjD,MAAQ,GACrEhmF,KAAKsuK,6BACJtuK,KAAKyuK,gBACPzuK,KAAK2T,WAAWm7H,eAAiB9uI,KAAKyuK,gBAAgB3/B,eAEtD9uI,KAAK2T,WAAWm7H,eAAiB9uI,KAAKsnK,2BAA2BhZ,YAGrEtuJ,KAAK2T,WAAW02I,kBAAoBrqJ,KAAKupI,UACzC,MAAOzuH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAK/C42J,qBAAqBvpG,GACnB,OAAOnoE,KAAKkgD,QAAO2F,gBACX5pC,QAAQqW,IAAI,CAChBtyB,KAAK6wK,cAAc1oG,GACnBnoE,KAAK8wK,sBAAsB3oG,GAC3BnoE,KAAK+wK,oBAAoB5oG,GACzBnoE,KAAKyxK,iBAAiBtpG,GACtBnoE,KAAKkxK,eAAe/oG,KAEtBnoE,KAAKwpK,kBAITmI,kBACE3xK,KAAKgqK,sBACLhqK,KAAKgrK,wBACLhrK,KAAKmsK,sBAGPyF,gCACE,OAAO5xK,KAAKkgD,QAAO2F,UACjB,MAAMsiB,EAAYnoE,KAAK2T,WAAW6qH,aAAaqB,UAAUhzH,KACzD7M,KAAK4wK,wBACL5wK,KAAKywK,sBACCzwK,KAAK0xK,qBAAqBvpG,GAChCnoE,KAAKsxK,+BACLtxK,KAAK2xK,qBAMmB,+BAC1B3xK,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACEn1F,KAAK2T,WAAWs2H,iBAAmBjqI,KAAK+qE,eAAegmB,iBAAiB5oC,SACxE,IAASnoD,KAAK2T,WAAWurH,gBAAiB7qF,QAAwCxiC,IAA/BwiC,EAAKupG,8BAClD59I,KAAK+9J,6BAA6BrlH,OAAO14C,KAAK2T,YACpD3T,KAAKyqB,cAAcF,QAAQ,oCAAqCvqB,KAAK2T,WAAW9G,MAChF7M,KAAK0oD,OAAOr8B,GAAG,2BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCAP3C,QASE9a,KAAK+P,MAAMolF,kBAAmB,GAIN,+BAC1B,IACEn1F,KAAK+P,MAAMolF,kBAAmB,QACxBn1F,KAAK+9J,6BAA6B/yG,MAAMhrD,KAAKyuK,gBAAiBzuK,KAAK2T,YACzE3T,KAAKyqB,cAAcF,QAAQ,UAAW,oCACtCvqB,KAAK0oD,OAAOr8B,GAAG,sCAAuC,CAAEvoB,KAAM9D,KAAKo8I,YAAYvvI,KAAMs7D,UAAWnoE,KAAKo8I,YAAY5d,eACjH,MAAO1jH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCAN3C,QAQE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC08E,oBACE,IAAI7xK,KAAK+P,MAAM61H,OAOb,OAAO5lI,KAAKkgD,OAAOlgD,KAAKmpK,wBANxBnpK,KAAK0hD,aAAa95B,cAAc,uFAAwFjB,IACtH,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKkpK,2BAUhC4I,iBACE,OAAO9xK,KAAKkgD,QAAO2F,UACjB,IACE,MAAMsiB,EAAYnoE,KAAK0oD,OAAOl9C,OAAO28D,UAC/BwqE,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,gBAE7D51I,KAAKo8I,YAAap8I,KAAKwuI,8BAAgCvyH,QAAQqW,IAAI,CAClEtyB,KAAK+9J,6BAA6Bp/I,IAAIwpD,EAAWnoE,KAAK0oD,OAAOl9C,OAAO1H,MACpE9D,KAAKq+J,uCAAuC1/I,IAAIwpD,EAAWwqE,KAE7D,MAAO73H,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8CAKlB,8BAAC63D,GAC5B,OAAO3yE,KAAKkgD,QAAO2F,UACjB,IACE,aAAa7lD,KAAKymE,gBAAgBw3B,uCAAuCtrB,EAAWzL,MAAOlnE,KAAK+W,SAASxK,GAAIomE,EAAW1L,SAAS16D,GAAIvM,KAAK0oD,OAAOl9C,OAAO28D,WACxJ,MAAOrtD,GAEP,OADA9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAClC63D,MAObxvB,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+qE,eAAesoC,uBAAuB,CAAC,2BAE5CrzG,KAAKiK,QAAUjK,KAAK+qE,eAAe9gE,UAEnCjK,KAAK+P,MAAM61H,OAAS5lI,KAAK0oD,OAAOl9C,OAAO28D,WAAanoE,KAAK0oD,OAAOl9C,OAAO1H,KAEvE9D,KAAK2yI,eAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eAC7D51I,KAAK+P,MAAM83J,gBAAkB7nK,KAAK+W,SAASke,WAAWqrG,cAAcyxC,gBACpE/xK,KAAK+P,MAAMqtH,iBAAmBp9H,KAAK+W,SAASke,WAAWqrG,cAAc0xC,iBAErE,MAAOhuC,EAAe3/G,EAAOkuI,SAAqBt2I,QAAQqW,IAAI,CAC5DtyB,KAAK8hI,8BAA8BnjH,MACnC3e,KAAK25J,sBAAsBh7I,MAC3B3e,KAAK0jK,6BAA6B/kJ,QAEpC3e,KAAKuyJ,YAAcA,EAEnB,MAAMxuB,EAAsB,IAASC,GAAgBrB,IAAkBpE,EAAAA,QAAAA,kBAA4CoE,EAAa9C,UAAUhzH,QAK1I,GAHA7M,KAAKgkI,cAAgB,IAASD,GAAqB,EAAGlE,UAAAA,KAAoC,YAAnBA,EAAUhzH,KAAqB,EAAI,IAE1G7M,KAAK2T,WAAW6qH,aAAex+H,KAAKgkI,cAAc,IAC7ChkI,KAAK2T,WAAW6qH,aACnB,OAGF,IAAUn6G,GAAQgwB,IAChBr0C,KAAK+P,MAAMsU,MAAM4U,QAAU8xG,GAAAA,CAAe12F,EAAK0uC,QAC/C/iF,KAAK+P,MAAMsU,MAAMy5F,KAAOzpE,EAAK2pE,OAE/Bh+G,KAAKyuI,YAAciqB,EAAAA,qBAAAA,4BAAiDr0I,GACpErkB,KAAKiuK,WAAa5pJ,EAAM5kB,OAExB,MAAM0oE,EAAYnoE,KAAK+P,MAAM61H,OAAS5lI,KAAK0oD,OAAOl9C,OAAO28D,UAAYnoE,KAAK2T,WAAW6qH,aAAaqB,UAAUhzH,WACtG7M,KAAK0xK,qBAAqBvpG,GAE5BnoE,KAAK+P,MAAM61H,cACP5lI,KAAK8xK,iBACX9xK,KAAK2T,WAAay1H,EAAAA,QAAAA,wBAChBppI,KAAKo8I,YACLp8I,KAAKgkI,cACLhkI,KAAKq9H,eACLr9H,KAAKwuI,uBACLxuI,KAAKyuI,YACLzuI,KAAKupI,WAGHvpI,KAAKo8I,YAAYrS,kBACnB/pI,KAAK+P,MAAM43J,QAAUxY,EAAAA,0BAA0BnvJ,KAAKo8I,YAAYrS,gBAAgBtuG,eAC5Ez7B,KAAKo8I,YAAYrS,kBAAoBolB,EAAAA,0BAAAA,MACvCnvJ,KAAK+P,MAAM43J,QAAUxY,EAAAA,0BAAAA,SAGnBnvJ,KAAKo8I,YAAYxS,UACnB5pI,KAAKuoD,YAAcvoD,KAAKymG,aAAal+C,MAAMvoD,KAAKo8I,YAAYxS,SACxD5pI,KAAK+P,MAAM43J,UAAYxY,EAAAA,0BAAAA,UACzBnvJ,KAAKqpK,uBAAyBrpK,KAAKymG,aAAawrE,aAAajyK,KAAKo8I,YAAYxS,YAKpF5pI,KAAK2T,WAAW02I,kBAAoBrqJ,KAAKupI,UACzCvpI,KAAK2T,WAAWg7H,iBAAmB3uI,KAAKkyK,wBAAwBlyK,KAAK2T,WAAWg7H,YAChF3uI,KAAKyuK,gBAAkB74J,IAAAA,KAAa5V,KAAK2T,mBAClC3T,KAAK2T,WAAWwrH,gBAEnBn/H,KAAKo8I,YAAYjd,kBAAoBG,EAAAA,2BAAAA,aACvC,IAAUt/H,KAAK2T,WAAW64H,kBAAmBG,IAC3C,MAAM/wE,EAAS,IAAO57D,KAAK08F,iBAAkB,CAAC,6BAA8BiwC,EAAgBI,4BACxFnxE,IACF+wE,EAAgBghB,cAAe,EAC/BhhB,EAAgBuG,eAAiBt3E,YAIjC57D,KAAK0xK,qBAAqBvpG,IAEhCnoE,KAAK2T,WAAWi7H,WAAaxQ,EAAAA,QAAAA,uDAAmF,KAAMp+H,KAAK2T,WAAWmuD,cAGpI9hE,KAAK+P,MAAM61H,QACb5lI,KAAKuyJ,YAAYU,aAAajzJ,KAAKo8I,YAAYzR,KAAM3qI,KAAK2T,WAAWqhF,SAAU81C,EAAAA,QAAAA,WAA+C9qI,KAAK2T,WAAWghF,cAGhJ30F,KAAK2T,WAAWu5I,oBAAsBltJ,KAAK2T,WAAWgrH,eAAel/H,OAAS,EAE9EO,KAAK4wK,wBACL5wK,KAAKywK,gBACLzwK,KAAKsxK,+BACL,MAAOx2J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BA3F3C,QA6FE9a,KAAK+P,MAAMujG,WAAY,O,sYAQ/B,YACA19F,IAAAA,OAAe,wBAAwBV,WAAW,wCAAyCiyJ,I,sBCjyC3F,MAAM5mH,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,4BAA6B,CAC5E2qC,YAAaD,EACbrrC,WAAY,kCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,4UC6Fd,MAAMo7J,EAEJlyH,YACEC,EACAwI,EACArjB,EACA5a,EACAm+B,EACAlH,EACAqpB,EACAgzF,EACA8E,EACA0C,EACA5I,EACAhD,EACAlzD,GAEAzmG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKqlC,UAAYA,EACjBrlC,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAK0hD,aAAeA,EACpB1hD,KAAK+qE,eAAiBA,EACtB/qE,KAAKymG,aAAeA,EAEpBzmG,KAAK+9J,6BAA+BA,EACpC/9J,KAAK6iK,uBAAyBA,EAC9B7iK,KAAKulK,uBAAyBA,EAC9BvlK,KAAK28J,qBAAuBA,EAC5B38J,KAAK25J,sBAAwBA,EAE7B35J,KAAKq/H,qCAAuCA,EAAAA,qCAC5Cr/H,KAAKs/H,2BAA6BA,EAAAA,2BAClCt/H,KAAKmvJ,0BAA4BA,EAAAA,0BAEjCnvJ,KAAKqnK,8BAAgCx5B,EAAAA,wCACrC7tI,KAAKu/H,uBAAyBA,EAAAA,uBAC9Bv/H,KAAK26J,4BAA8BA,EAAAA,4BACnC36J,KAAKmvJ,0BAA4BA,EAAAA,0BAEjCnvJ,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK8xK,eAAiB9xK,KAAK8xK,eAAezyK,KAAKW,MAC/CA,KAAKoyK,oBAAsBpyK,KAAKoyK,oBAAoB/yK,KAAKW,MACzDA,KAAKqyK,UAAYryK,KAAKqyK,UAAUhzK,KAAKW,MACrCA,KAAKsyK,eAAiBtyK,KAAKsyK,eAAejzK,KAAKW,MAC/CA,KAAKuyK,0BAA4BvyK,KAAKuyK,0BAA0BlzK,KAAKW,MACrEA,KAAKkpK,uBAAyBlpK,KAAKkpK,uBAAuB7pK,KAAKW,MAC/DA,KAAKwyK,yBAA2BxyK,KAAKwyK,yBAAyBnzK,KAAKW,MACnEA,KAAKyyK,yBAA2BzyK,KAAKyyK,yBAAyBpzK,KAAKW,MACnEA,KAAK0yK,mBAAqB1yK,KAAK0yK,mBAAmBrzK,KAAKW,MAGzDumK,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,cAAermI,GAGlDiyF,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAC3B7xH,KAAKumK,UAAU,GAGjBloC,oBACE,OAAOE,EAAAA,QAAAA,kBAA4Cv+H,KAAKo8I,YAAY5d,cAGtEL,wBACE,OAAOC,EAAAA,QAAAA,sBAAkDp+H,KAAKo8I,aAGhEs2B,qBACE1yK,KAAKqlC,UAAUL,SAAShlC,KAAKo8I,YAAYpd,uBACzCz1E,EAAE,uBAAuB+gB,OAAOC,QAAQ,MAG1CooG,sBACE3yK,KAAKqlC,UAAUL,SAAShlC,KAAKo8I,YAAYvvI,MACzC08C,EAAE,oCAAoC+gB,OAAOC,QAAQ,MAGvDqoG,sBACE,OAAO5yK,KAAKo8I,aAAep8I,KAAKo8I,YAAY5P,iBAAiB/sI,OAG/DozK,yBACE,OAAO7yK,KAAKo8I,aAAep8I,KAAKo8I,YAAYnP,qBAAqBxtI,OAGnEqzK,mBACE,OAAO9yK,KAAK+P,MAAMgjK,kBAGpBvzC,oBAAoBC,GAElB,MAAO,WADUA,EAAK75E,KAAO65E,EAAK75E,KAAO65E,EAAKroF,IAChBqoF,EAAKl5E,KAGrCm5E,oBAAoB1nF,GAClB,OAAOA,EAAK6mF,aAAap/H,OAAS,EAGpCkgI,mBAAmBF,GACjB,SAAQA,EAAK75E,OAAS65E,EAAKroF,IAG7B47H,UACE,OAAOhzK,KAAKo8I,YAAYxS,QAMI,iCAC5B,IAEE,MAAMib,EAAW,IAAM7kJ,KAAKo8I,YAAY0S,WAAY,SAC9C9uJ,KAAK+9J,6BAA6B50E,SAASnpF,KAAKo8I,YAAayI,GACnE7kJ,KAAKyqB,cAAcF,QAAQ,UAAW,wCACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAI7Cm4J,sBACEjzK,KAAK0hD,aAAa95B,cAAc,uHAAwHjB,IACtJ,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKyyK,6BAOA,iCAC5B,IACE,MAAM72J,EAAW,IAAM5b,KAAKo8I,YAAYzR,MAAOt2F,GAASr0C,KAAK28J,qBAAqBx7G,OAAO9M,WACnFp4B,QAAQqW,IAAI1W,GAClB5b,KAAKyqB,cAAcF,QAAQ,UAAW,uCACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAI7Co4J,sBACElzK,KAAK0hD,aAAa95B,cAAc,0FAA2FjB,IACzH,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKwyK,6BAQF,+BAC1B,IACE,MAAMp2B,EAAcxmI,IAAAA,KAAa5V,KAAKo8I,aACtCA,EAAY/R,KAAOrqI,KAAK2T,WAAW02H,WAC7BrqI,KAAK+9J,6BAA6B/yG,MAAMhrD,KAAKo8I,YAAaA,GAAa,GAC7Ep8I,KAAKyqB,cAAcF,QAAQ,UAAW,oCACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAI7Cq4J,oBACE,OAAOnzK,KAAKkgD,OAAOlgD,KAAKkpK,wBAG1BqJ,4BACMvyK,KAAKo8I,YAAYrS,kBAAoB/pI,KAAKmvJ,0BAA0BC,IACtEpvJ,KAAK+P,MAAM43J,QAAW,kBACb3nK,KAAKo8I,YAAYrS,kBAAoB/pI,KAAKmvJ,0BAA0BE,SAEpErvJ,KAAKo8I,YAAYrS,kBAAoB/pI,KAAKmvJ,0BAA0B9nF,OAD7ErnE,KAAK+P,MAAM43J,QAAW,YASN,uBAClB,IACE3nK,KAAK+P,MAAMqjK,eAAgB,EAC3B,MAAM74G,QAAev6D,KAAK6iK,uBAAuBlkJ,IAAI3e,KAAK+P,MAAMvE,OAAO28D,WACvEnoE,KAAKu6D,OAAS,IACZA,GACC5mB,GACCA,EAAMk+F,SAASnI,MAAQ1pI,KAAKo8I,YAAY7vI,IACxConC,EAAMk+F,SAASnI,MAAQ1pI,KAAKo8I,YAAYtkE,gBACkCjmE,IAA1E,IAAO7R,KAAKo8I,YAAYzR,MAAOub,GAAQA,EAAI35I,KAAOonC,EAAMk+F,SAASnI,QAErE1pI,KAAK+P,MAAMgjK,kBAAoBM,EAAAA,QAAAA,aAAmCrzK,KAAKu6D,QACvE,MAAOz/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iDAZ3C,QAcE9a,KAAK+P,MAAMqjK,eAAgB,GAI/Bf,YACE,OAAOryK,KAAKkgD,OAAOlgD,KAAKsyK,gBAMD,4BACvB,IACEtyK,KAAK+P,MAAMujK,aAAc,EACzB,MAAOl3B,EAAa/3H,SAAepI,QAAQqW,IAAI,CAC7CtyB,KAAK+9J,6BAA6Bp/I,IAAI3e,KAAK+P,MAAMvE,OAAO28D,UAAWnoE,KAAK+P,MAAMvE,OAAO1H,MACrF9D,KAAK25J,sBAAsBh7I,QAoB7B,GAlBA3e,KAAKo8I,YAAcA,EACnBp8I,KAAKuzK,cAAgBn1C,EAAAA,QAAAA,qCAAiEge,GACtFp8I,KAAK2T,WAAW02H,KAAOrqI,KAAKo8I,YAAY/R,KACxCrqI,KAAK2T,WAAW0yH,SAAWrmI,KAAKo8I,YAAY/V,SACxCrmI,KAAKo8I,YAAY/R,OACnBrqI,KAAK+P,MAAMyjK,cAAe,GAExBxzK,KAAKo8I,YAAY2S,kBACnB/uJ,KAAK2T,WAAW8/J,iBAAmB,IAAOzzK,KAAKo8I,YAAY0S,UAAW,CAAEjK,SAAU7kJ,KAAKo8I,YAAY2S,gBAAgBlK,YAGrH7kJ,KAAK+P,MAAM2jK,WAAa,IAAOt3B,EAAYzd,gBAAiBp0F,GACnDvqC,KAAK0/H,oBAAoBn1F,KAGlCvqC,KAAK4gJ,WA/OX,SAA2Bv8H,EAAO+3H,GAGhC,OAFA/3H,EA/EF,SAA4BA,EAAO+3H,GACjC,MAAM8J,EAAM9J,EAAYzR,KAAK,GAuB7B,OAtBA,IAAUtmH,GAAQxH,IAChBA,EAAE82J,oBAAqB,EACvB92J,EAAEihD,UAAW,EACRooF,IAGLrpI,EAAE+2J,YAAc,GAChB,IAAU/2J,EAAEs6I,QAAS13G,IACnB,MAAMo0H,EAAgC,IAAO3tB,EAAImV,YAAa,CAAEj0B,IAAK3nF,EAAE2nF,IAAKm0B,SAAU,QAAStzB,MAAOxoF,EAAEwoF,MAAOsvB,OAAQ93G,EAAE83G,SACnHuc,EAA8B,IAAO5tB,EAAImV,YAAa,CAAEj0B,IAAK3nF,EAAE2nF,IAAKm0B,SAAU,SAAUhE,OAAQ93G,EAAE83G,SAClGwc,EAA8B,IAAO7tB,EAAImV,YAAa,CAAEj0B,IAAK3nF,EAAE2nF,IAAKm0B,SAAU,QAAStzB,MAAOxoF,EAAEwoF,MAAOsvB,OAAQ,KAC/Gyc,EAA4B,IAAO9tB,EAAImV,YAAa,CAAEj0B,IAAK3nF,EAAE2nF,IAAKm0B,SAAU,SAAUhE,OAAQ,KAC9F0c,EAA0B,IAAO/tB,EAAImV,YAAa,CAAEj0B,IAAK,GAAIm0B,SAAU,SAAUhE,OAAQ,KAE1Fsc,GAAkCC,GAAgCC,GAAgCC,GAA8BC,EAInIp3J,EAAE82J,oBAAqB,GAHvB92J,EAAE82J,oBAAqB,EACvB92J,EAAE+2J,YAAYhwK,KAAK67C,WAMlBp7B,EAuDC6vJ,CAAmB7vJ,EAAO+3H,GAClC/3H,EAjDF,SAA2BA,EAAO+3H,GAChC,IAAKA,EAAYzR,MAAoC,IAA5ByR,EAAYzR,KAAKlrI,OACxC,OAAO4kB,EAGT,MAAM6hI,EAAM9J,EAAYzR,KAAK,GAuC7B,OAtCA,IAAUtmH,GAAQxH,IAChB,GAAIqpI,EAAIiV,aAAc,CACpB,MAAMnwG,EAAQqmF,EAAAA,GAAkBx0H,EAAE+9B,OAAQsrG,EAAIiV,cAC9C,IAASnwG,EAAO,CAAEojB,GAAI,WACtBvxD,EAAEs3J,4BAA8B,IAAMnpH,GAAQzrD,IACrC,CAAEI,IAAK,IAAYJ,EAAEoiD,KAAM,KAAMh+C,MAAOpE,EAAEoE,UAE/CkZ,EAAEs3J,4BAA4B10K,SAChCod,EAAE82J,oBAAqB,GAI3B,GAAIztB,EAAInX,SAASgS,aAAaC,+CAAgD,CAC5E,MAAMozB,EAAiB,IAAMluB,EAAInX,SAASgS,aAAaC,+CAA+CE,mBAAoBzhG,IACxH,MAAM40H,EAAuB,IAAM50H,EAAE0hG,kBAAmBziJ,IACtD,MAAM41K,EAAS,GAAGz0K,eAAeC,KAAK+c,EAAE+9B,OAAQl8C,EAAEiB,KAC5C40K,EAAOD,GAAU,IAAW51K,EAAE2I,OAAQwV,EAAE+9B,OAAOl8C,EAAEiB,MACvD,KACGjB,EAAEg6E,WAAagjE,EAAAA,0DAAAA,QAAoE44B,GACnF51K,EAAEg6E,WAAagjE,EAAAA,0DAAAA,iBAA6E44B,GAC5F51K,EAAEg6E,WAAagjE,EAAAA,0DAAAA,IAAgE64B,GAC/E71K,EAAEg6E,WAAagjE,EAAAA,0DAAAA,SAAqE64B,GACpF71K,EAAEg6E,WAAagjE,EAAAA,0DAAAA,cAA0E44B,GAAUtvK,SAAS6X,EAAE+9B,OAAOl8C,EAAEiB,KAAM,IAAMqF,SAAStG,EAAE2I,OAAO,GAAI,KACzJ3I,EAAEg6E,WAAagjE,EAAAA,0DAAAA,YAAwE44B,GAAUtvK,SAAS6X,EAAE+9B,OAAOl8C,EAAEiB,KAAM,IAAMqF,SAAStG,EAAE2I,OAAO,GAAI,KAI1J,OAAO3I,KAET,OAAO,IAAU21K,OAAsBxiK,MAEzC,IAASuiK,GAAiB70K,GAAmB,IAAbA,EAAEE,SAClCod,EAAE23J,wBAA0BJ,EACxBv3J,EAAE23J,wBAAwB/0K,SAC5Bod,EAAE82J,oBAAqB,OAItBtvJ,EAKCowJ,CAAkBpwJ,EAAO+3H,GAC1B/3H,EA4OeqwJ,CAAkBrwJ,EAAOrkB,KAAKo8I,aAChDp8I,KAAK+P,MAAM4kK,kBAAmB,IAAO30K,KAAK4gJ,WAAY,CAAE+yB,oBAAoB,IAExEv3B,EAAYxS,QAAS,CACvB,MAAM96G,QAAa9uB,KAAKymG,aAAawrE,aAAa71B,EAAYxS,SAC9D5pI,KAAKqpK,iBAAmBv6I,GAE1B,MAAOhU,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0CA7B3C,QA+BE9a,KAAK+P,MAAMujK,aAAc,GAI7BxB,iBACE,OAAO9xK,KAAKkgD,OAAOlgD,KAAKoyK,qBAGd,eACVpyK,KAAK+P,MAAQ,CACX67F,UAAW,EACX+6D,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClC+tH,eAAe,EACf+iD,eAAgB,OAChBxB,eAAe,EACfE,aAAa,EACbhgE,WAAW,EACX9nG,OAAQ,CACN28D,UAAWnoE,KAAKyvF,aAAajkF,SAAS28D,UACtCrkE,KAAM9D,KAAKyvF,aAAajkF,SAAS1H,MAEnC6jK,QAAS3nK,KAAKmvJ,0BAA0BG,iBACxCyjB,kBAAmB,EACnB4B,kBAAkB,EAClBnB,cAAc,EACdE,YAAY,EACZt2C,iBAAkBp9H,KAAK+W,SAASke,WAAWqrG,cAAc0xC,iBACzDpjH,aAAc5uD,KAAK+qE,eAAezrD,kBAAkB,CAAC,2BACrDu1J,cAAe70K,KAAK+qE,eAAezrD,kBAAkB,CAAC,oBACtDw1J,eAAgB90K,KAAK+qE,eAAezrD,kBAAkB,CAAC,4BACvDw4B,UAAW93C,KAAK+W,SAASghC,WAG3B/3C,KAAK+P,MAAM67F,UAAY5rG,KAAK4oD,aAAa89G,aAAa,eAEtD1mK,KAAK2T,WAAa,CAChB02H,KAAM,GACNopC,sBAAkB5hK,SAGd7R,KAAK8xK,uBACL9xK,KAAKqyK,YACXryK,KAAKuyK,4BACLvyK,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,cAAe,I,wPAKtD,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,kCAAmCi9J,I,wGChZtE,MAAM4C,EAEnB90H,YAAYC,EAAQ8rG,GAClBhsJ,KAAKkgD,OAASA,EACdlgD,KAAKgsJ,yBAA2BA,EAGlC7oG,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAKg1K,WACLh1K,KAAKi1K,mBAAqB,GAC1B,MAAM1rC,QAAkBvpI,KAAKgsJ,yBAAyBrtI,IAAI3e,KAAKo8I,YAAY5d,cACrExjE,EAAWh7D,KAAKo8I,YAAY/V,SAElC,IAAUrrE,GAAWr9C,IACnB,IAAU4rH,GAAYzE,IACpB,IAAUA,EAAQya,OAAQ59F,IACpBA,EAAKo2B,cAAgBp6D,EAAQ/Y,SAASd,OACxC9D,KAAKi1K,mBAAmBrxK,KAAK+9C,GAC7B3hD,KAAKg1K,YAAa,gB,8HCrBhC,MAAMz0H,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,oCAAqC,CACpF2qC,YAAaD,EACbrrC,WAFoF,UAGpFH,SAAU,CACRqnI,YAAa,IACbtkG,UAAW,Q,sFCRfliC,QAAQ5W,OAAO,oBAAoBkW,WAAW,qDAA9C,4DAAoG,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GACnJn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb19D,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,KAIvB/9D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAQA,EAAKs/H,oBAGf3zK,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKiK,QAAU8gE,EAAe9gE,UAC9BjK,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBCpET,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,2CAA4C,CAC3F2qC,YAAaD,EACbrrC,WAAY,qDACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,IACjB77B,QAAS,IACT47B,aAAc,Q,kECdlB,MAAMxc,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,wBAAwBC,UAAU,qCAAsC,CACrF2qC,YAAaD,EACbxrC,SAAU,CACRimD,SAAU,IACVohF,YAAa,IACbtkG,UAAW,Q,+FCPA,MAAMo9H,EAEnBj1H,YAAYC,EAAQwI,EAAQqiB,EAAgBtgD,EAAes2G,GACzD/gI,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK+qE,eAAiBA,EACtB/qE,KAAKyqB,cAAgBA,EACrBzqB,KAAK+gI,YAAcA,EAMG,2BACtB,IACE/gI,KAAK+P,MAAMujK,aAAc,EACzB,MAAM6B,QAAiBn1K,KAAK+gI,YAAYkb,aAAaj8I,KAAK+W,SAASxK,GAAI,CAAEq+H,SAAW,QAAO5qI,KAAK+P,MAAMvE,OAAO1H,OAAQqkE,UAAWnoE,KAAK+P,MAAMvE,OAAO28D,YAClJ,KAAIgtG,EAAS11K,OAAS,GAGpB,MAAM,IAAImb,EAAAA,EAAgB,WAAU5a,KAAK+P,MAAMvE,OAAO1H,kBAFtD9D,KAAK+P,MAAMisI,QAAUm5B,EAAS,GAIhC,MAAOr6J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAT3C,QAWE9a,KAAK+P,MAAMujK,aAAc,GAI7BnwH,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAQ,CACXujK,aAAa,EACbhgE,WAAW,EACX9nG,OAAQ,CACN1H,KAAM9D,KAAK0oD,OAAOl9C,OAAO1H,KACzBqkE,UAAWnoE,KAAK0oD,OAAOl9C,OAAO28D,WAEhC6zE,QAAS,CACPl4I,UAAM+N,EACN4xF,WAAO5xF,EACPujK,iBAAavjK,UAIX7R,KAAKq1K,qBACXr1K,KAAK+P,MAAMujG,WAAY,M,0JChD7B,MAAM/yD,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,wBAAwBC,UAAU,gCAAiC,CAChF2qC,YAAaD,EACbrrC,WAFgF,UAGhFH,SAAU,CACRgC,SAAU,Q,sBCVd,MAAMwpC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,gCAAiC,CAChF2qC,YAAaD,EACbrrC,WAAY,sCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,Q,sFCJlB,MAAM6lF,EAEJr1H,YAAYC,EAAQwI,EAAQC,EAAWl+B,EAAeszI,EAA8BpB,EAAsB15G,EAAMxB,GAC9GzhD,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK2oD,UAAYA,EACjB3oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+9J,6BAA+BA,EACpC/9J,KAAK28J,qBAAuBA,EAC5B38J,KAAKijD,KAAOA,EACZjjD,KAAKyhD,UAAYA,EAEjBzhD,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK8iG,aAAe9iG,KAAK8iG,aAAazjG,KAAKW,MAC3CA,KAAKu1K,wBAA0Bv1K,KAAKu1K,wBAAwBl2K,KAAKW,MAGnEw1K,oBACMx1K,KAAK+P,MAAMi7G,YACbhrH,KAAKijG,oBAIPjjG,KAAK8iG,eAGPA,eACMltF,IAAAA,UAAkB5V,KAAK+iG,YACzB/iG,KAAK2oD,UAAU7gC,OAAO9nB,KAAK+iG,UAC3B/iG,KAAK+iG,SAAW,MAIpBE,oBACEjjG,KAAK+iG,SAAW/iG,KAAK2oD,UAAU3oD,KAAKu1K,wBAAyBv1K,KAAK+P,MAAMmzF,aAG1Et4B,eACE,MAAMnmE,EAAO,IAAIzE,KAAKijD,KAAK,CAAC,IAASjjD,KAAKy1K,iBAAiB,CAACjjJ,EAAK43C,IAAQ53C,EAAM,KAAO43C,GAAK,MAC3FpqE,KAAKyhD,UAAUyB,OAAOz+C,EAAMzE,KAAK8sJ,QAAU,aAGhB,gCAC3B,IACE9sJ,KAAKy1K,sBAAwBz1K,KAAK28J,qBAAqBvmF,KAAKp2E,KAAKo8I,YAAY5d,aAAcx+H,KAAK8sJ,QAAS9sJ,KAAKu2F,eAC9G,MAAOz7E,GACP9a,KAAK8iG,eACL9iG,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wCAIjC,eACV9a,KAAK+P,MAAQ,CACXi7G,aAAa,EACb9nB,YAAa,IACbr5B,OAAQ,GACRypC,WAAW,GAGb,MAAMw5C,EAAU9sJ,KAAKyvF,aAAajkF,SAAS06I,IACrCghB,EAAkBlnK,KAAKyvF,aAAajkF,SAAS1H,KAC7CqkE,EAAYnoE,KAAKyvF,aAAajkF,SAAS28D,UACvCouB,EAAgBv2F,KAAKyvF,aAAajkF,SAAS8rC,UAEjDt3C,KAAKy1K,gBAAkB,GACvBz1K,KAAK8sJ,QAAUA,EACf9sJ,KAAKu2F,cAAgBA,EAErB,IACE,MAAO6lD,EAAaq5B,SAAyBx5J,QAAQqW,IAAI,CACvDtyB,KAAK+9J,6BAA6Bp/I,IAAIwpD,EAAW++F,GACjDlnK,KAAK28J,qBAAqBvmF,KAAKjO,EAAW2kF,EAASv2D,KAGrDv2F,KAAKo8I,YAAcA,EACnBp8I,KAAKy1K,gBAAkBA,EACvB,MAAO36J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAT3C,QAWE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACEr0B,KAAK8iG,gB,mIAIT,YACAltF,IAAAA,OAAe,wBAAwBV,WAAW,sCAAuCogK,I,sBChGzF,MAAM/0H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,iCAAkC,CACjF2qC,YAAaD,EACbrrC,WAAY,uCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,Q,8JCAlB,MAAMimF,EAEJz1H,YAAYC,EAAQwI,EAAQC,EAAW26C,EAAW74E,EAAekyI,EAAsBhD,EAAuBrN,EAA0B/oD,GACtIvjG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK2oD,UAAYA,EACjB3oD,KAAKsjG,UAAYA,EACjBtjG,KAAKyqB,cAAgBA,EACrBzqB,KAAK28J,qBAAuBA,EAC5B38J,KAAK25J,sBAAwBA,EAC7B35J,KAAKssJ,yBAA2BA,EAChCtsJ,KAAKujG,aAAeA,EAEpBvjG,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAGjCslG,uBACE,IAAIP,EAAW/kG,KAAK+kG,SAChBC,EAAchlG,KAAKglG,YAEvBhlG,KAAK8iG,eACL9iG,KAAKijG,kBAAkB8B,EAAUC,GACjCz7C,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAGlC45B,iBACE,MAAMv9F,EAAQw2B,GAAAA,CAAOp9B,KAAK27E,MAAMT,MAAM39C,OAAO,YAE7Cv9B,KAAKujG,aAAasB,eAAej+F,EAAO5G,KAAK27E,MAAMg6F,SAAU31K,KAAK+kG,UAGpEjB,oBACE,MAAMl9F,EAAQw2B,GAAAA,CAAOp9B,KAAK27E,MAAMT,MAAM39C,OAAO,YAE7Cv9B,KAAKujG,aAAaQ,kBAAkBn9F,EAAO5G,KAAK27E,MAAML,YAAat7E,KAAK27E,MAAMJ,YAAav7E,KAAKglG,aAGlGlC,eACE,IAAIC,EAAW/iG,KAAK+iG,SAChBntF,IAAAA,UAAkBmtF,KACpB/iG,KAAK2oD,UAAU7gC,OAAOi7E,GACtBA,OAAWlxF,GAIfoxF,oBACE,MAAMC,EAAcljG,KAAK+P,MAAMmzF,YAE/BljG,KAAK+iG,SAAW/iG,KAAK2oD,WAAU9C,UAC7B,UACQ7lD,KAAK41K,WAEX51K,KAAKmkG,iBACLnkG,KAAK8jG,oBACL,MAAO71F,GACPjO,KAAK8iG,eACL9iG,KAAKyqB,cAAcxc,MAAM,UAAWA,MAEvB,IAAdi1F,GAGL+C,aACE,MAAMP,EAAcn8C,EAAE,aAChBw7C,EAAW/kG,KAAKujG,aAAaoC,eAAeD,GAClD1lG,KAAK+kG,SAAWA,EAEhB,MAAMa,EAAiBr8C,EAAE,gBACnBy7C,EAAchlG,KAAKujG,aAAasC,kBAAkBD,GACxD5lG,KAAKglG,YAAcA,EAEnBhlG,KAAKmkG,iBACLnkG,KAAK8jG,oBACL9jG,KAAKijG,oBAGP2yE,WACE,OAAO51K,KAAKkgD,QAAO2F,UACjB,IACE,MAAM81B,QAAc37E,KAAKssJ,yBAAyBS,OAAO/sJ,KAAK+P,MAAM8lK,WAAW1tG,UAAWnoE,KAAK+P,MAAM8lK,WAAW/oB,SAC1Gx1G,EAAY,IAAOqkC,EAAMrgC,WAAY,CAAEx3C,KAAM9D,KAAK+P,MAAM8lK,WAAWt/E,gBACzE,GAAIj/C,EAAW,CACb,MAAMre,EAAS8xG,GAAAA,CAAezzF,EAAUskC,MAAM3iD,QACxC6kF,EAAMgtB,EAAAA,QAAAA,SAA6CxzF,EAAUskC,MAAMkiC,KACzE99G,KAAK27E,MAAQ,CACXT,KAAMS,EAAMm6F,UACZ36F,QAAS,GACTI,YAAa,EACbD,YAAariD,EACbuiD,SAAU,GACVE,WAAW,EACXI,sBAAuB,EACvB65F,SAAW73D,EAAM99G,KAAK+1K,QAAW,IACjCx5F,SAAU,IAGd,MAAOzhE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4CAK/CuZ,aACEr0B,KAAK8iG,eAGK,eACV9iG,KAAK+P,MAAQ,CACXi7G,aAAa,EACb9nB,YAAa,KACboQ,WAAW,EACXuiE,WAAY,CACV/oB,QAAS9sJ,KAAKyvF,aAAajkF,SAAS06I,IACpC3vD,cAAev2F,KAAKyvF,aAAajkF,SAAS8rC,UAC1C6wB,UAAWnoE,KAAKyvF,aAAajkF,SAAS28D,UACtC++F,gBAAiBlnK,KAAKyvF,aAAajkF,SAAS1H,MAE9CkyK,YAAY,GAGd,UACQh2K,KAAKssJ,yBAAyBS,OAAO/sJ,KAAK+P,MAAM8lK,WAAW1tG,UAAWnoE,KAAK+P,MAAM8lK,WAAW/oB,SAClG,MAAO7+I,GAIP,OAHAjO,KAAK+P,MAAMimK,YAAa,EACxBh2K,KAAK+P,MAAMujG,WAAY,OACvBtzG,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,gCAI7C,IACE,MAAMgoK,QAAej2K,KAAK28J,qBAAqBh+I,IAAI3e,KAAK+P,MAAM8lK,WAAW1tG,UAAWnoE,KAAK+P,MAAM8lK,WAAW/oB,SACpG5G,EAAMiU,EAAAA,QAAAA,WAAkC8b,EAAOz2B,KACrD,IAAI0G,EAIF,MAAM,IAAIvnJ,MAAM,sBAJT,CACP,MAAMouE,QAAa/sE,KAAK25J,sBAAsBh7I,IAAIunI,EAAIj5D,MACtDjtF,KAAK+1K,QAAUhpG,EAAKixC,UAIhBh+G,KAAK41K,WACX51K,KAAK+P,MAAMimK,YAAa,EAExBh2K,KAAKsjG,UAAUiC,OAAM,KACnBvlG,KAAKimG,gBAEP,MAAOnrF,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wCAhB3C,QAkBE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,+JAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,uCAAwCwgK,I,sBCpK1F,MAAMn1H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,wBAAyB,CACxE2qC,YAAaD,EACbrrC,WAAY,8BACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,wPCDd,MAAMm/J,EAEJj2H,YACEC,EACAwI,EACAj+B,EACAm+B,EACAmiB,EACA4uF,EACArN,EACAyR,EACA1iB,GAEAr7I,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAK+qE,eAAiBA,EACtB/qE,KAAK25J,sBAAwBA,EAC7B35J,KAAKssJ,yBAA2BA,EAChCtsJ,KAAK+9J,6BAA+BA,EACpC/9J,KAAKq7I,0BAA4BA,EAEjCr7I,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK+9G,SAAW/9G,KAAK+9G,SAAS1+G,KAAKW,MACnCA,KAAK4sJ,cAAgB5sJ,KAAK4sJ,cAAcvtJ,KAAKW,MAC7CA,KAAKomK,qBAAuBpmK,KAAKomK,qBAAqB/mK,KAAKW,MAC3DA,KAAKm2K,kBAAoBn2K,KAAKm2K,kBAAkB92K,KAAKW,MACrDA,KAAKo2K,uBAAyBp2K,KAAKo2K,uBAAuB/2K,KAAKW,MAG1C,0BACrB,IACE,MAAMkpH,QAAkBlpH,KAAKq7I,0BAA0B18H,MACjD03J,EAAkB,IAASntD,EAAW,CAAE2W,UAAW,gBACzD7/H,KAAKq2K,gBAAkB,IAASA,GAAkBC,GAAOA,EAAG17B,iBAE5D,MAAM27B,EAAqB,IAAOrtD,EAAW,CAAEr8G,KAAM,eACrD,GAAI0pK,GAAsBA,EAAmBz7B,QAAS,CACpD,MAAM07B,EAAM,IAAU,IAAMD,EAAmBz7B,QAAS,QACxD,IAAU96I,KAAKqkB,OAAQ0oD,IACrBA,EAAKgsF,IAAM,IAAWyd,EAAKzpG,EAAKryB,eAGpC,MAAO5/B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAI7C27J,eACE,OAAOz2K,KAAKkgD,OAAOlgD,KAAKm2K,mBAGP,sBACjB,IACE,MAAM9xJ,QAAcrkB,KAAK25J,sBAAsBh7I,MAC/C,IAAU0F,GAAQ0oD,GAAUA,EAAKgW,OAASgoD,GAAAA,CAAeh+D,EAAKgW,UAC9D/iF,KAAKqkB,MAAQA,EACbrkB,KAAK02K,SAAW55J,KAAKyhB,MAA+D,GAAzD,IAASv+B,KAAKqkB,OAAO,CAACmO,EAAKu6C,IAASA,EAAKixC,IAAMxrF,GAAK,IAAW,GAC1FxyB,KAAK02K,SAAW55J,KAAK+3E,MAAsB,IAAhB70F,KAAK02K,UAAoB,IACpD12K,KAAK20F,YAAc,IAAS30F,KAAKqkB,OAAO,CAACmO,EAAKu6C,IAAS+9D,EAAAA,QAAAA,eAAmD/9D,EAAKgW,QAAUvwD,GAAK,GAC9H,MAAO1X,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAI7CijG,WACE,OAAO/9G,KAAKkgD,OAAOlgD,KAAK4sJ,eAGA,6BACxB,IACE5sJ,KAAK+P,MAAM4mK,qBAAsB,EACjC32K,KAAKw8I,mBAAqBx8I,KAAK+9J,6BAA6Bp/I,MAC5D,MAAMi4J,EAAY,IAAM52K,KAAKqkB,OAAQ0oD,GAASA,EAAKlgE,OACnD7M,KAAK62K,oBAAsB,IACzB72K,KAAKw8I,cACL,CAAChqH,EAAK8rG,KACJA,EAAIqM,KAAO,IAASrM,EAAIqM,MAAOub,GAAQ0wB,EAAUzxK,SAAS+gJ,EAAIj5D,QAC9D,MAAM4pF,EAAsB/rC,EAAAA,QAAAA,2BAA+DxM,EAAIqM,MAG/F,OAFAn4G,EAAIwrF,KAAO64D,EAAoB74D,IAC/BxrF,EAAIuwD,QAAU8zF,EAAoB9zF,OAC3BvwD,IAET,IAAI4zH,EAAAA,+BAENpmJ,KAAK62K,oBAAoB9zF,OAAS+nD,EAAAA,QAAAA,eAAmD9qI,KAAK62K,oBAAoB9zF,QAE1G/iF,KAAKo2K,gCACDp2K,KAAK82K,iBAAiB92K,KAAK+W,SAASxK,IAE5C,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCArB3C,QAuBE9a,KAAK+P,MAAM4mK,qBAAsB,GAIrCxQ,kBACE,OAAOnmK,KAAKkgD,OAAOlgD,KAAKomK,sBAGJ,uBAAC7nJ,GACrB,IACE,MAEMw4J,SAFoB/2K,KAAKssJ,yBAAyBvuC,SAASx/F,IAC3B6qG,MAAMjrH,KAAKoB,GAAMA,EAAEq8E,QACV//D,QAAO,CAACugB,EAAO9vB,KAC5D8vB,EAAM4hF,KAAO8sB,EAAAA,QAAAA,SAA6Cx+H,EAAEwxG,KAC5D1hF,EAAM2mD,QAAU+nD,EAAAA,QAAAA,eAAmDx+H,EAAE2sB,QAC9DmD,IACN,IAAIgqH,EAAAA,+BACPpmJ,KAAKg3K,cAAgBD,EACrB,MAAOj8J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8CAQ7Cs7J,yBACE,OAAOp2K,KAAK+P,MAAMqtH,kBAAoBp9H,KAAK+P,MAAMqwH,mBAGvC,eACV,MAAMA,EAAqBpgI,KAAK+qE,eAAezrD,kBAAkB,CAAC,sBAAuB,EACzFtf,KAAK+P,MAAQ,CACX4mK,qBAAqB,EACrBrjE,WAAW,EACX8sB,mBAAAA,EACAhD,iBAAkBp9H,KAAK+W,SAASke,WAAWqrG,cAAc0xC,wBAGrDhyK,KAAK+9G,WACPqiB,SACIpgI,KAAKy2K,qBAEPz2K,KAAKmmK,kBAEXnmK,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,4LAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,8BAA+BghK,I,sBC3JjF,MAAM31H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,qBAAsB,CACrE2qC,YAAaD,EACbrrC,WAAY,2BACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,IACV04E,aAAc,Q,iRCGlB,MAAMwnF,EAEJh3H,YACEC,EACAwI,EACAj+B,EACAm+B,EACAlH,EACAqpB,EACA4uF,EACAkJ,EACAlG,EACAoB,EACA1iB,EACAiR,GAEAtsJ,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAK0hD,aAAeA,EACpB1hD,KAAK+qE,eAAiBA,EACtB/qE,KAAK4sJ,cAAgB5sJ,KAAK4sJ,cAAcvtJ,KAAKW,MAC7CA,KAAK6iK,uBAAyBA,EAC9B7iK,KAAK28J,qBAAuBA,EAC5B38J,KAAK+9J,6BAA+BA,EACpC/9J,KAAKq7I,0BAA4BA,EACjCr7I,KAAK25J,sBAAwBA,EAC7B35J,KAAKssJ,yBAA2BA,EAEhCtsJ,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK4sJ,cAAgB5sJ,KAAK4sJ,cAAcvtJ,KAAKW,MAC7CA,KAAKqyK,UAAYryK,KAAKqyK,UAAUhzK,KAAKW,MACrCA,KAAKsyK,eAAiBtyK,KAAKsyK,eAAejzK,KAAKW,MAC/CA,KAAKomK,qBAAuBpmK,KAAKomK,qBAAqB/mK,KAAKW,MAC3DA,KAAKm2K,kBAAoBn2K,KAAKm2K,kBAAkB92K,KAAKW,MACrDA,KAAKk3K,gBAAkBl3K,KAAKk3K,gBAAgB73K,KAAKW,MACjDA,KAAKm3K,eAAiBn3K,KAAKm3K,eAAe93K,KAAKW,MAC/CA,KAAKo2K,uBAAyBp2K,KAAKo2K,uBAAuB/2K,KAAKW,MAC/DA,KAAKo3K,kBAAoBp3K,KAAKo3K,kBAAkB/3K,KAAKW,MAGvDumK,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,OAAQrmI,GAK3Ck3I,iBAAiBl3I,GACfngC,KAAK+P,MAAMunK,mBAAqBjyC,EAAAA,QAAAA,cAC9B,IAAMrlI,KAAK2T,WAAWwjJ,QAASE,IAC7B,IAAIA,EAAMrkB,cAGV,OAAOqkB,EAAMjwB,QAGjBpnI,KAAK+P,MAAMwnK,sBAAwBz4K,OAAOD,KAAKmB,KAAK+P,MAAMunK,oBAAoB73K,OAAS,EACvFO,KAAKw3K,cAAcr3I,GAGrBq3I,cAAcr3I,GACRngC,KAAK2T,WAAWwjJ,OAAOh3H,KACzBngC,KAAK2T,WAAWwjJ,OAAOh3H,GAAOq4H,WAAY,GAI9Cif,WACE,MAAMpgB,EAAQ,IAAIS,EAAAA,8BAClBT,EAAMhhB,OAAQ,EACdghB,EAAME,OAAS8B,EAAAA,2BAAAA,WACfr5J,KAAK2T,WAAWwjJ,OAAOvzJ,KAAKyzJ,GAG9BqgB,YAAYv3I,GACV,MAAMk3H,EAAQr3J,KAAK2T,WAAWwjJ,OAAOh3H,GACjCk3H,EAAMhhB,MACRr2I,KAAK2T,WAAWwjJ,OAAOl0F,OAAO9iC,EAAO,GAErCk3H,EAAMrkB,eAAgB,EAExBhzI,KAAKq3K,mBAGPM,aAAax3I,GACXngC,KAAK2T,WAAWwjJ,OAAOh3H,GAAO6yG,eAAgB,EAC9ChzI,KAAKq3K,mBAGPO,uBACE,OAAO,IAAS53K,KAAK2T,WAAWwjJ,QAASE,GAChCA,EAAME,SAAW8B,EAAAA,2BAAAA,YAAyChC,EAAMhhB,OAASghB,EAAMmB,aACrF/4J,OAOLo4K,iBAAiB13I,GACfngC,KAAK+P,MAAM+nK,mBAAqBzyC,EAAAA,QAAAA,cAC9B,IAAMrlI,KAAK2T,WAAWinC,QAASh0C,IAC7B,IAAIA,EAAMosI,cAGV,OAAOpsI,EAAMwgI,QAGjBpnI,KAAK+P,MAAMgoK,sBAAwBj5K,OAAOD,KAAKmB,KAAK+P,MAAM+nK,oBAAoBr4K,OAAS,EACvFO,KAAKg4K,cAAc73I,GAGrB63I,cAAc73I,GACRngC,KAAK2T,WAAWinC,OAAOza,KACzBngC,KAAK2T,WAAWinC,OAAOza,GAAOq4H,WAAY,GAI9CxjH,WACE,MAAMpuC,EAAQ,IAAImxJ,EAAAA,8BAClBnxJ,EAAMyvI,OAAQ,EACdr2I,KAAK2T,WAAWinC,OAAOh3C,KAAKgD,GAG9B89D,YAAYvkC,GACV,MAAMv5B,EAAQ5G,KAAK2T,WAAWinC,OAAOza,GACjCv5B,EAAMyvI,MACRr2I,KAAK2T,WAAWinC,OAAOqoB,OAAO9iC,EAAO,GAErCv5B,EAAMosI,eAAgB,EAExBhzI,KAAK63K,mBAGPI,aAAa93I,GACXngC,KAAK2T,WAAWinC,OAAOza,GAAO6yG,eAAgB,EAC9ChzI,KAAK63K,mBAGPlf,cAAcx4H,GACZ,OAAOu4H,EAAAA,qBAAAA,cAAmC14J,KAAK2T,WAAWinC,OAAOza,IAGnE+3I,uBACE,OAAO,IAASl4K,KAAK2T,WAAWinC,QAASh0C,GAChCA,EAAMu5I,SAAWv5I,EAAMosI,eAAiBpsI,EAAM4xJ,aACpD/4J,OAOL04K,uBACE,OAAOn4K,KAAK2T,WAAW4xD,eAAiBvlE,KAAKgoK,eAAe7O,MAO9Dif,sBACE,OAAOp4K,KAAK2T,WAAW4xD,eAAiBvlE,KAAKgoK,eAAe5O,MAG1C,uBAClB,MAAM9vB,EAAO,IAAU,IAAMtpI,KAAKw8I,cAAele,GAAQA,EAAIqM,QAC7D,IAAI5oE,EAAcunE,EAAK7pI,OACvB,IAAK,MAAMymJ,KAAO5c,EAChB,UACQtpI,KAAK28J,qBAAqBM,SAAS/W,GACzClmJ,KAAKyqB,cAAcF,QAAQ,2BAA4B27H,EAAIr5I,MAC3D,MAAOiO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uBACzC9a,KAAK2T,WAAW4xD,aAAevlE,KAAKgoK,eAAe7O,YAC7Cn5J,KAAK25J,sBAAsB3uG,MAAMhrD,KAAK+sE,KAAM/sE,KAAK2T,YANzD,UAQIouD,EACkB,IAAhBA,IACF/hE,KAAK2T,WAAW4xD,aAAevlE,KAAKgoK,eAAe7O,YAC7Cn5J,KAAK25J,sBAAsB3uG,MAAMhrD,KAAK+sE,KAAM/sE,KAAK2T,cAM/D0kK,YACE,OAAOr4K,KAAKkgD,OAAOlgD,KAAKm3K,gBAO1BmB,kBACE,MAAMjgB,EAAU5C,EAAAA,QAAAA,iBAAyCz1J,KAAK+sE,KAAM/sE,KAAK2T,YAEzE,OADgB8hJ,EAAAA,QAAAA,aAAqCz1J,KAAK+sE,KAAMsrF,GAChD54J,OAGlB84K,eACE,OAAQv4K,KAAK+P,MAAMyoK,kBAAoBx4K,KAAK+P,MAAM0oK,qBAAuBz4K,KAAK2T,WAAW4xD,eAAiBvlE,KAAKgoK,eAAe5O,MAGhIlrC,cACE,QAAQluH,KAAK+P,MAAMwnK,uBAA0Bv3K,KAAK+P,MAAMgoK,uBAA0B/3K,KAAKs4K,mBAAsBt4K,KAAKu4K,gBAGpH5G,kBACE3xK,KAAK2T,WAAa8hJ,EAAAA,QAAAA,iBAAyCz1J,KAAK+sE,MAK3C,0BACrB,IACE,MAAMm8C,QAAkBlpH,KAAKq7I,0BAA0B18H,MACvD3e,KAAK+W,SAAW,IAAOmyG,EAAW,CAAEr8G,KAAM,eACtC7M,KAAK+W,UAAY/W,KAAK+W,SAAS+jI,SACjC,IAAU96I,KAAK+W,SAAS+jI,SAAUC,GACzB,IAAUA,EAAOE,KAAM9jG,IAC5B,GAAIA,IAAOn3C,KAAK+sE,KAAKryB,UAGnB,OAFA16C,KAAK+sE,KAAKgsF,KAAM,EAChB/4J,KAAK+sE,KAAK+xD,KAAOic,EAAOjc,MACjB,OAKf,MAAOhkH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAI7C27J,eACE,OAAOz2K,KAAKkgD,OAAOlgD,KAAKm2K,mBAGL,wBACnB,IACEn2K,KAAK+sE,WAAa/sE,KAAK25J,sBAAsB3uG,MAAMhrD,KAAK+sE,KAAM/sE,KAAK2T,YAC/D3T,KAAK2T,WAAW4xD,eAAiBvlE,KAAKgoK,eAAe5O,aACjDp5J,KAAKq4K,YAEbr4K,KAAKyqB,cAAcF,QAAQ,UAAW,6BACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,0BAI7C2qD,aACE,MAAMizG,EAAgB14K,KAAK43K,uBACrBe,EAAgB34K,KAAKk4K,uBACrBU,EAAgB54K,KAAKm4K,uBACrBU,EAAe74K,KAAKo4K,sBAE1B,GAAIM,IAAkBC,EACpB34K,KAAK0hD,aAAa95B,cAChB,mJACCjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKk3K,yBAIzB,IAAKwB,GAAiBC,EAC3B34K,KAAK0hD,aAAa95B,cAChB,kJACCjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKk3K,yBAIzB,GAAIwB,GAAiBC,EAC1B34K,KAAK0hD,aAAa95B,cAChB,iRACCjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKk3K,yBAIzB,GAAI0B,EACT54K,KAAK0hD,aAAa95B,cAChB,qJACCjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKk3K,wBAIzB,KAAI2B,EAUT,OAAO74K,KAAKkgD,OAAOlgD,KAAKk3K,iBATxBl3K,KAAK0hD,aAAa95B,cAChB,yIACCjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKk3K,qBASf,sBACjB,IACEl3K,KAAK+P,MAAMujK,aAAc,EACzB,MAAM77H,EAAWz3C,KAAKyvF,aAAajkF,SAAS1H,KAC5C9D,KAAKqkB,YAAcrkB,KAAK25J,sBAAsBh7I,MAC9C3e,KAAK+sE,KAAO,IAAO/sE,KAAKqkB,MAAO,CAAExX,KAAM4qC,IACvCz3C,KAAK+P,MAAMyoK,iBAAmB,IAAOx4K,KAAKqkB,MAAO,CAAEkhD,aAAcvlE,KAAKgoK,eAAe5O,QACrF,MAAOt+I,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAP3C,QASE9a,KAAK+P,MAAMujK,aAAc,GAI7B8C,yBACE,OAAOp2K,KAAK+P,MAAMqtH,kBAAoBp9H,KAAK+qE,eAAezrD,kBAAkB,CAAC,oBAGxD,0BACrB,IACE,MAAMm4B,EAAWz3C,KAAKyvF,aAAajkF,SAAS1H,KACtCipE,QAAa/sE,KAAKssJ,yBAAyBO,QAAQp1G,GACzDz3C,KAAKg3K,cAAgB,IAAI5wB,EAAAA,8BACzBpmJ,KAAKg3K,cAAch5D,IAAM8sB,EAAAA,QAAAA,SAA6C/9D,EAAK6O,MAAMkiC,KACjF99G,KAAKg3K,cAAcj0F,OAAS+nD,EAAAA,QAAAA,eAAmD/9D,EAAK6O,MAAM3iD,QAC1F,MAAOne,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2CAI7Cg+J,eACE,OAAO94K,KAAKkgD,OAAOlgD,KAAKo3K,mBAG1Br5D,WACE,OAAO/9G,KAAKkgD,OAAOlgD,KAAK4sJ,eAG1BkmB,mBACE,OAAO9yK,KAAK+P,MAAMgjK,kBAGA,uBAClB,IACE/yK,KAAK+P,MAAMqjK,eAAgB,EAC3B,MAAM74G,QAAev6D,KAAK6iK,uBAAuBlkJ,MACjD3e,KAAKu6D,OAASA,EAAOjoD,QAAQ+hC,GAAgC,SAAvBA,EAAKw9F,SAAS4N,OACpDz/I,KAAK+P,MAAMgjK,kBAAoBM,EAAAA,QAAAA,aAAmCrzK,KAAKu6D,QACvE,MAAOz/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAN3C,QAQE9a,KAAK+P,MAAMqjK,eAAgB,GAI/Bf,YACE,OAAOryK,KAAKkgD,OAAOlgD,KAAKsyK,gBAG1BlgD,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAC3B7xH,KAAKumK,UAAU,GAGS,6BACxB,IACEvmK,KAAK+P,MAAM4mK,qBAAsB,EACjC32K,KAAKw8I,mBAAqBx8I,KAAK+9J,6BAA6Bp/I,MAE5D3e,KAAK62K,oBAAsB,IAAIzwB,EAAAA,8BAC/BpmJ,KAAKw8I,aAAe,IAAMx8I,KAAKw8I,cAAele,IAC5CA,EAAIqM,KAAO,IAASrM,EAAIqM,MAAOub,GAAQA,EAAIj5D,OAASjtF,KAAK+sE,KAAKlgE,OACvDyxH,KAETt+H,KAAKw8I,aAAe,IAASx8I,KAAKw8I,cAAele,GAA4B,IAApBA,EAAIqM,KAAKlrI,SAClEO,KAAKw8I,aAAe,IAAMx8I,KAAKw8I,cAAele,IAC5C,MAAMu4C,EAAsB/rC,EAAAA,QAAAA,2BAA+DxM,EAAIqM,MAK/F,OAJArM,EAAItgB,IAAM64D,EAAoB74D,IAC9BsgB,EAAIv7C,OAAS8zF,EAAoB9zF,OACjC/iF,KAAK62K,oBAAoB74D,KAAO64D,EAAoB74D,IACpDh+G,KAAK62K,oBAAoB9zF,QAAU8zF,EAAoB9zF,OAChDu7C,KAETt+H,KAAK62K,oBAAoB9zF,OAAS+nD,EAAAA,QAAAA,eAAmD9qI,KAAK62K,oBAAoB9zF,QAC9G/iF,KAAK40F,YAAck2C,EAAAA,QAAAA,eAAmD9qI,KAAK+sE,KAAKgW,QAChF/iF,KAAK+P,MAAM0oK,mBAAqB,IAAOz4K,KAAKw8I,aAAc,CAAErS,gBAAiB,cAC7EnqI,KAAK+sE,KAAKixC,IAAMlhG,KAAKyhB,MAAsB,GAAhBv+B,KAAK+sE,KAAKixC,KAAY,GAE7Ch+G,KAAKo2K,gCACDp2K,KAAK84K,eAEb,MAAOh+J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCA3B3C,QA6BE9a,KAAK+P,MAAM4mK,qBAAsB,GAIrCxQ,kBACE,OAAOnmK,KAAKkgD,OAAOlgD,KAAKomK,sBAGd,eACVpmK,KAAK+P,MAAQ,CACX67F,UAAW,EACX+6D,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClCwvK,aAAa,EACbF,eAAe,EACfuD,qBAAqB,EACrB9kD,eAAe,EACfve,WAAW,EACXy/D,kBAAmB,EACnBuE,mBAAoB,GACpBC,uBAAuB,EACvBO,mBAAoB,GACpBC,uBAAuB,EACvBS,kBAAkB,EAClBC,oBAAoB,EACpB7pH,aAAc5uD,KAAK+qE,eAAezrD,kBAAkB,CAAC,oBACrD89G,kBAAkB,GAGpBp9H,KAAKgoK,eAAiBpR,EAAAA,6BAEtB52J,KAAK+P,MAAMqtH,iBAAmBp9H,KAAK+W,SAASke,WAAWqrG,cAAc0xC,iBAErEhyK,KAAK+P,MAAM67F,UAAY5rG,KAAK4oD,aAAa89G,aAAa,cAEhD1mK,KAAK+9G,iBACL/9G,KAAKqyK,kBACLryK,KAAKmmK,wBACLnmK,KAAKy2K,eAEXz2K,KAAK+4K,iBAAmB,IAAS1f,EAAAA,4BACjCr5J,KAAK2T,WAAa8hJ,EAAAA,QAAAA,iBAAyCz1J,KAAK+sE,MAChE/sE,KAAK2T,WAAWinC,OAAS89G,EAAAA,qBAAAA,kBAAuC14J,KAAKw8I,aAAcx8I,KAAK2T,WAAWinC,QACnG56C,KAAK2T,WAAWinC,OAAS89G,EAAAA,qBAAAA,cAAmC14J,KAAK2T,WAAWinC,QAE5E56C,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,OAAQ,I,2PAK/C,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,2BAA4B+hK,I,sBCvd9E,MAAM12H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,0BAA2B,CAC1E2qC,YAAaD,EACbrrC,WAAY,gCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,Q,yICDlB,MAAMupF,EAEJ/4H,YAAYC,EAAQwI,EAAQC,EAAW26C,EAAW74E,EAAekvI,EAAuBrN,EAA0B/oD,GAChHvjG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK2oD,UAAYA,EACjB3oD,KAAKsjG,UAAYA,EACjBtjG,KAAKyqB,cAAgBA,EACrBzqB,KAAK25J,sBAAwBA,EAC7B35J,KAAKssJ,yBAA2BA,EAChCtsJ,KAAKujG,aAAeA,EAEpBvjG,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAGjCslG,uBACE,IAAIP,EAAW/kG,KAAK+kG,SAChBC,EAAchlG,KAAKglG,YAEvBhlG,KAAK8iG,eACL9iG,KAAKijG,kBAAkB8B,EAAUC,GACjCz7C,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQjd,EAAAA,mBAGlC62C,iBACE,MAAMv9F,EAAQw2B,GAAAA,CAAOp9B,KAAK27E,MAAMT,MAAM39C,OAAO,YAC7Cv9B,KAAKujG,aAAasB,eAAej+F,EAAO5G,KAAK27E,MAAMg6F,SAAU31K,KAAK+kG,UAGpEjB,oBACE,MAAMl9F,EAAQw2B,GAAAA,CAAOp9B,KAAK27E,MAAMT,MAAM39C,OAAO,YAC7Cv9B,KAAKujG,aAAaQ,kBAAkBn9F,EAAO5G,KAAK27E,MAAML,YAAa,EAAGt7E,KAAKglG,aAG7ElC,eACE,IAAIC,EAAW/iG,KAAK+iG,SAChBntF,IAAAA,UAAkBmtF,KACpB/iG,KAAK2oD,UAAU7gC,OAAOi7E,GACtB/iG,KAAK+iG,cAAWlxF,GAIpBoxF,oBACE,MAAMC,EAAcljG,KAAK+P,MAAMmzF,YAE/BljG,KAAK+iG,SAAW/iG,KAAK2oD,WAAU9C,UAC7B,UACQ7lD,KAAK41K,WACX51K,KAAKmkG,iBACLnkG,KAAK8jG,oBACL,MAAO71F,GACPjO,KAAK8iG,eACL9iG,KAAKyqB,cAAcxc,MAAM,UAAWA,MAEvB,IAAdi1F,GAGL+C,aACE,MAAMP,EAAcn8C,EAAE,aAChBw7C,EAAW/kG,KAAKujG,aAAaoC,eAAeD,GAClD1lG,KAAK+kG,SAAWA,EAEhB,MAAMa,EAAiBr8C,EAAE,gBACnBy7C,EAAchlG,KAAKujG,aAAasC,kBAAkBD,GACxD5lG,KAAKglG,YAAcA,EAEnBhlG,KAAKmkG,iBACLnkG,KAAK8jG,oBACL9jG,KAAKijG,oBAGP2yE,WACE,OAAO51K,KAAKkgD,QAAO2F,UACjB,IACE,MAAM81B,QAAc37E,KAAKssJ,yBAAyBO,QAAQ7sJ,KAAK+P,MAAM8lK,WAAWp+H,UAChF,GAAIkkC,EAAO,CACT,MAAM1iD,EAAS8xG,GAAAA,CAAepvD,EAAMC,MAAM3iD,QACpC6kF,EAAMgtB,EAAAA,QAAAA,SAA6CnvD,EAAMC,MAAMkiC,KACrE99G,KAAK27E,MAAQ,CACXT,KAAMS,EAAM+uD,kBACZpvD,YAAariD,EACb08I,SAAW73D,EAAM99G,KAAK+1K,QAAW,MAGrC,MAAOj7J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAK/CuZ,aACEr0B,KAAK8iG,eAGK,eACV9iG,KAAK+P,MAAQ,CACXi7G,aAAa,EACb9nB,YAAa,KACboQ,WAAW,EACXuiE,WAAY,CACVp+H,SAAUz3C,KAAKyvF,aAAajkF,SAAS1H,MAEvCkyK,YAAY,GAGd,IAGE,SAF0Bh2K,KAAKssJ,yBAAyBO,QAAQ7sJ,KAAK+P,MAAM8lK,WAAWp+H,UAErE,CACf,MAAMs1B,QAAa/sE,KAAK25J,sBAAsBh7I,IAAI3e,KAAK+P,MAAM8lK,WAAWp+H,UACxEz3C,KAAK+1K,QAAUhpG,EAAKixC,KAAO,QAErBh+G,KAAK41K,WAEP51K,KAAK+P,MAAMimK,YACbh2K,KAAKsjG,UAAUiC,OAAM,KACnBvlG,KAAKimG,qBAITjmG,KAAK+P,MAAMimK,YAAa,EAE1B,MAAOl7J,GACP9a,KAAK+P,MAAMimK,YAAa,EACxBh2K,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAnB3C,QAqBE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,wIAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,gCAAiC8jK,I,sBC/InF,MAAMz4H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,+BAAgC,CAC/E2qC,YAAaD,EACbrrC,WAAY,qCACZklD,aAAc,U,6ECFhB,MAAM6+G,EAEJh5H,YAAYC,EAAQwI,EAAQj+B,EAAe03I,EAAgCpE,EAA8Br8G,GACvG1hD,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAKmiK,+BAAiCA,EACtCniK,KAAK+9J,6BAA+BA,EACpC/9J,KAAK0hD,aAAeA,EAEpB1hD,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKk5K,kBAAoBl5K,KAAKk5K,kBAAkB75K,KAAKW,MACrDA,KAAKm5K,uBAAyBn5K,KAAKm5K,uBAAuB95K,KAAKW,MAC/DA,KAAKomK,qBAAuBpmK,KAAKomK,qBAAqB/mK,KAAKW,MAC3DA,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MACrDA,KAAKg9D,gBAAkBh9D,KAAKg9D,gBAAgB39D,KAAKW,MACjDA,KAAKo5K,qBAAuBp5K,KAAKo5K,qBAAqB/5K,KAAKW,MAGjC,+BAC1B,IACEA,KAAK+P,MAAMspK,uBAAwB,EACnCr5K,KAAKq9H,qBAAuBr9H,KAAKmiK,+BAA+BxjJ,MAChEohH,EAAAA,QAAAA,sBAAoD//H,KAAKq9H,eAAgBr9H,KAAKw8I,cAC9E,MAAO1hI,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAL3C,QAOE9a,KAAK+P,MAAMspK,uBAAwB,GAIvCH,oBACE,OAAOl5K,KAAKkgD,OAAOlgD,KAAKm5K,wBAGH,wBAACrvI,GACtB,IAAIi4B,EAAcj4B,EAAcrqC,OAChC,IAAK,MAAMsrF,KAAiBjhD,EAC1B,UACQ9pC,KAAKmiK,+BAA+BhhH,OAAO4pC,GACjD/qF,KAAKyqB,cAAcF,QAAQ,sCAAuCwgE,EAAcl+E,MAChF,MAAMszB,EAAQngC,KAAKq9H,eAAex3H,QAAQklF,GAC1C/qF,KAAKq9H,eAAep6D,OAAO9iC,EAAO,GAClC,MAAOrlB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAN3C,UAQIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAMvC4gC,aAAajzB,GACX9pC,KAAK0hD,aAAap6B,gBAAgB,wDAAyDX,IACzF,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,MAKvB,6BACxB,IACE9pC,KAAK+P,MAAM4mK,qBAAsB,EACjC32K,KAAKw8I,mBAAqBx8I,KAAK+9J,6BAA6Bp/I,MAC5D,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAJ3C,QAME9a,KAAK+P,MAAM4mK,qBAAsB,GAIrCxQ,kBACE,OAAOnmK,KAAKkgD,OAAOlgD,KAAKomK,sBAGA,mCAClBpmK,KAAKk5K,0BACLl5K,KAAKmmK,kBAGbnpG,kBACE,OAAOh9D,KAAKkgD,OAAOlgD,KAAKo5K,sBAGd,eACVp5K,KAAK+P,MAAQ,CACXspK,uBAAuB,EACvB1C,qBAAqB,EACrBrjE,WAAW,SAGPtzG,KAAKmmK,wBACLnmK,KAAKk5K,oBAEXl5K,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,6HAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,qCAAsC+jK,I,qBC7GxF,MAAM14H,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,oCAAqC,CACpF2qC,YAAaD,EACbrrC,WAAY,0CACZklD,aAAc,U,qJCEhB,MAAMk/G,EAEJr5H,YAAYC,EAAQwI,EAAQzB,EAASvF,EAAcj3B,EAAesgD,EAAgBo3F,EAAgCrgC,GAChH9hI,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+qE,eAAiBA,EACtB/qE,KAAKmiK,+BAAiCA,EACtCniK,KAAK8hI,8BAAgCA,EACrC9hI,KAAKs9H,6BAA+BA,EAAAA,6BAEpCt9H,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKu5K,yBAA2Bv5K,KAAKu5K,yBAAyBl6K,KAAKW,MACnEA,KAAKm5K,uBAAyBn5K,KAAKm5K,uBAAuB95K,KAAKW,MAGjEwpK,eACE,MAAMgQ,EAAyB,IAASx5K,KAAKq9H,gBAAiBz4G,GAAWA,EAAOi7G,YAAc7/H,KAAK2T,WAAW6qH,aAAaqB,UAAUhzH,OACrI7M,KAAK+P,MAAM0pK,kBAAoG5nK,IAArF,IAAO2nK,GAAyB50J,GAAWA,EAAO/X,OAAS7M,KAAK2T,WAAW9G,OAGvG+kK,gCACE5xK,KAAKwpK,eAGPt7C,cACE,MAAMwrD,GAAe15K,KAAK+P,MAAM0pK,cAAgBz5K,KAAK+P,MAAM4pK,YAC3D,OAAI35K,KAAK2T,WAAW00H,SACXroI,KAAK2T,WAAW4mE,KAAK96E,OAAS,GAAKi6K,GAAe15K,KAAK2T,WAAW6qH,aAEpEk7C,GAAe15K,KAAK2T,WAAW6qH,aAGV,iCAC5B,IACEx+H,KAAK+P,MAAMolF,kBAAmB,EAC9Bn1F,KAAK2T,WAAWu8H,mBAAqBlwI,KAAK+qE,eAAegmB,iBAAiB5oC,SACrEnoD,KAAK2T,WAAW00H,WACnBroI,KAAK2T,WAAW4mE,KAAOwlD,EAAAA,QAAAA,UAAwC//H,KAAK2T,mBAEhE3T,KAAKmiK,+BAA+BzpH,OAAO14C,KAAK2T,YACtD3T,KAAKyqB,cAAcF,QAAQ,UAAW,qCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,6BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAX3C,QAaE9a,KAAK+P,MAAMolF,kBAAmB,GAIlCykF,sBACE,OAAO55K,KAAKkgD,OAAOlgD,KAAKu5K,0BAGE,+BAC1B,IACEv5K,KAAKq9H,qBAAuBr9H,KAAKmiK,+BAA+BxjJ,MAChE,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,sCAI7Co+J,oBACE,OAAOl5K,KAAKkgD,OAAOlgD,KAAKm5K,wBAGX,kBACb,IAAKn5K,KAAK2T,WAAW00H,UAAYroI,KAAK2T,WAAW6zH,UAAYxnI,KAAK+P,MAAMggF,cACtE,OAAO/vF,KAAK0hD,aAAal7B,0BAIjB,eACVxmB,KAAK+qE,eAAesoC,uBAAuB,CAAC,8BAC5CrzG,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBme,WAAW,EACXmmE,cAAc,EACdE,aAAa,EACb5pF,eAAe,GAGjB/vF,KAAK2T,WAAa,IAAI28I,EAAAA,kCACtBtwJ,KAAK2T,WAAW4mE,KAAK32E,KAAK,IAAI0jI,EAAAA,wCAE9B,IACE,MAAMtD,QAAsBhkI,KAAK8hI,8BAA8BnjH,MAI/D,GAHA3e,KAAKgkI,cAAgB,IAASA,GAAgBrB,IAAkBpE,EAAAA,QAAAA,kBAA4CoE,EAAa9C,UAAUhzH,QAEnI7M,KAAK2T,WAAW6qH,aAAex+H,KAAKgkI,cAAc,IAC7ChkI,KAAK2T,WAAW6qH,aACnB,aAEIx+H,KAAKk5K,oBACX,MAAOp+J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAV3C,QAYE9a,KAAK+P,MAAMujG,WAAY,EAGzBtzG,KAAKinD,QAAQipC,eAAiB,KAC5B,IAAKlwF,KAAK2T,WAAW00H,UAAYroI,KAAK2T,WAAW6zH,UAAYxnI,KAAK+P,MAAMggF,cACtE,MAAO,IAKb17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAG7B5sC,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,yJAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,0CAA2CokK,I,sBC/H7F,MAAM/4H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,8BAA+B,CAC9E2qC,YAAaD,EACbrrC,WAAY,oCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,Q,0MCGlB,MAAMoqF,EAEJ55H,YACEC,EACAwI,EACAzB,EACA5hB,EACA5a,EACAm+B,EACAmiB,EACAo3F,EACAN,EACAzD,EACAt8B,EACApgF,EACAq8G,EACA8E,GAEA7iK,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAKqlC,UAAYA,EACjBrlC,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAK0hD,aAAeA,EACpB1hD,KAAK+qE,eAAiBA,EACtB/qE,KAAKmiK,+BAAiCA,EACtCniK,KAAK6hK,2BAA6BA,EAClC7hK,KAAKo+J,wBAA0BA,EAC/Bp+J,KAAK8hI,8BAAgCA,EACrC9hI,KAAK+9J,6BAA+BA,EACpC/9J,KAAK6iK,uBAAyBA,EAC9B7iK,KAAKs9H,6BAA+BA,EAAAA,6BAEpCt9H,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK85K,sBAAwB95K,KAAK85K,sBAAsBz6K,KAAKW,MAC7DA,KAAKqyK,UAAYryK,KAAKqyK,UAAUhzK,KAAKW,MACrCA,KAAKsyK,eAAiBtyK,KAAKsyK,eAAejzK,KAAKW,MAC/CA,KAAKmmK,gBAAkBnmK,KAAKmmK,gBAAgB9mK,KAAKW,MACjDA,KAAKomK,qBAAuBpmK,KAAKomK,qBAAqB/mK,KAAKW,MAC3DA,KAAKm5K,uBAAyBn5K,KAAKm5K,uBAAuB95K,KAAKW,MAC/DA,KAAK+5K,oBAAsB/5K,KAAK+5K,oBAAoB16K,KAAKW,MACzDA,KAAKg6K,yBAA2Bh6K,KAAKg6K,yBAAyB36K,KAAKW,MAGrEq+H,oBACE,OAAOE,EAAAA,QAAAA,kBAA4Cv+H,KAAK+qF,cAAc80C,WAGxEG,iBACE,OAAOhgI,KAAKq+H,qBAAuBr+H,KAAK+qF,cAAck1C,iBAGxDsmC,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,gBAAiBrmI,GAGpDiyF,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAC3B7xH,KAAKumK,UAAU,GAGjB0T,uBAAuBtvG,GACrB3qE,KAAKqlC,UAAUL,SAAShlC,KAAK2T,WAAW4mE,KAAK5P,GAAKs9D,OAClD1+E,EAAE,0BAA4BohB,GAC3BL,OACAC,QAAQ,MAGb2jD,cACE,OAAIluH,KAAK2T,WAAW00H,SACXroI,KAAK2T,WAAW4mE,KAAK96E,OAAS,GAAKO,KAAK+P,MAAM4pK,YAEhD35K,KAAK+P,MAAM4pK,YAMU,iCAC5B,IACE35K,KAAK+P,MAAMolF,kBAAmB,EAE5Bn1F,KAAK2T,WAAW3I,OAAShL,KAAK+qF,cAAc//E,MAC5ChL,KAAK2T,WAAW6qH,aAAaqB,UAAUhzH,OAAS7M,KAAK+qF,cAAc80C,WACnE7/H,KAAK2T,WAAW9G,OAAS7M,KAAK+qF,cAAcl+E,YAEtC7M,KAAKmiK,+BAA+BzpH,OAAO14C,KAAK2T,kBAChD3T,KAAKmiK,+BAA+BhhH,OAAOnhD,KAAK+qF,eACtD/qF,KAAKyqB,cAAcF,QAAQ,UAAW,qCACtCvqB,KAAK0oD,OAAOr8B,GACV,0CACA,CACE87C,UAAWnoE,KAAK2T,WAAW6qH,aAAaqB,UAAUhzH,KAClD/I,KAAM9D,KAAK2T,WAAW9G,MAExB,CAAEq0B,QAAQ,YAGNlhC,KAAKmiK,+BAA+BvgG,OAAO5hE,KAAK2T,WAAY3T,KAAK+qF,eACvE/qF,KAAKyqB,cAAcF,QAAQ,UAAW,qCACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAEjC,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAxB3C,QA0BE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC4kF,sBACE,IAAI/5K,KAAK+qF,cAAco1C,KAWrB,OAAOngI,KAAKkgD,OAAOlgD,KAAKg6K,0BAXG,CAC3B,MAAM39J,EAASrc,KAAK+qF,cAAc60C,aAAangI,OAAS,EAAI,IAAM,GAClEO,KAAK0hD,aAAa95B,cACf,qCAAoC5nB,KAAK+qF,cAAc60C,aAAangI,6BAA6B4c,0DACjGsK,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKg6K,8BASP,8BACzB,IACEh6K,KAAK+P,MAAMmqK,sBAAuB,EAClC,MAAMp2K,EAAO9D,KAAKyvF,aAAajkF,SAAS1H,KAClCqkE,EAAYnoE,KAAKyvF,aAAajkF,SAAS28D,WACtC+kE,EAAWpyE,SAAgB7+C,QAAQ0nH,WAAW,CAAC3jI,KAAK6hK,2BAA2BljJ,IAAIwpD,EAAWrkE,GAAO9D,KAAKo+J,wBAAwBz/I,IAAIwpD,EAAWrkE,KACxJ,GAAsB,aAAlBg3D,EAAO5iD,QAAsD,MAA7B4iD,EAAOq/G,OAAOr/J,IAAI5C,OAEpD,MADAlY,KAAK0oD,OAAOr8B,GAAG,6BACT,IAAI1tB,MAAM,iCAiBlB,MAdsB,cAAlBm8D,EAAO5iD,QACTlY,KAAK+qF,cAAgBq3E,EAAAA,QAAAA,sBAAuDtnG,EAAOn3D,OACnF3D,KAAK2T,WAAW4mE,KAAOzf,EAAOn3D,MAAM42E,OAEpCv6E,KAAK+qF,cAAgBq3E,EAAAA,QAAAA,yBAA0Dl1B,EAAUvpI,OACzF3D,KAAK2T,WAAW4mE,KAAO2yD,EAAUvpI,MAAM42E,MAGzCv6E,KAAK2T,WAAW6qH,aAAe,IAAOx+H,KAAKgkI,eAAgBrB,GAAiBA,EAAa9C,UAAUhzH,OAAS7M,KAAK+qF,cAAc80C,YAC/H7/H,KAAK2T,WAAWpH,GAAKvM,KAAK+qF,cAAcx+E,GACxCvM,KAAK2T,WAAW9G,KAAO7M,KAAK+qF,cAAcl+E,KAC1C7M,KAAK2T,WAAW3I,KAAOhL,KAAK+qF,cAAc//E,KAC1ChL,KAAKo6K,YAAcp6K,KAAK2T,WAAW6zH,SAE5BxnI,KAAK+qF,cACZ,MAAOjwE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCA1B3C,QA4BE9a,KAAK+P,MAAMmqK,sBAAuB,GAItCG,mBACE,OAAOr6K,KAAKkgD,OAAOlgD,KAAK85K,uBAGA,2BAAC3xG,GACzB,IACEnoE,KAAK+P,MAAM4mK,qBAAsB,EACjC,MAAMn6B,QAAqBx8I,KAAK+9J,6BAA6Bp/I,IAAIwpD,GACjEnoE,KAAK+qF,cAAc60C,aAAeG,EAAAA,QAAAA,qBAAmD//H,KAAK+qF,cAAeyxD,GACzGzc,EAAAA,QAAAA,qBAAmD//H,KAAK+qF,eACxD,MAAOjwE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAN3C,QAQE9a,KAAK+P,MAAM4mK,qBAAsB,GAIrCxQ,gBAAgBh+F,GACd,OAAOnoE,KAAKkgD,OAAOlgD,KAAKomK,qBAAsBj+F,GAGhD2qG,mBACE,OAAO9yK,KAAK+P,MAAMgjK,kBAGA,qBAAC5qG,GACnB,IACEnoE,KAAK+P,MAAMqjK,eAAgB,EAC3BpzK,KAAKu6D,aAAev6D,KAAK6iK,uBAAuBlkJ,IAAIwpD,GACpDnoE,KAAKu6D,OAAS,IAASv6D,KAAKu6D,QAAS5mB,GAAUA,EAAMk+F,SAASnI,MAAQ1pI,KAAK+qF,cAAcx+E,KACzFvM,KAAK+P,MAAMgjK,kBAAoBM,EAAAA,QAAAA,aAAmCrzK,KAAKu6D,QACvE,MAAOz/C,GACP9a,KAAKyqB,cAAc,UAAW3P,EAAK,6BANrC,QAQE9a,KAAK+P,MAAMqjK,eAAgB,GAI/Bf,UAAUlqG,GACR,OAAOnoE,KAAKkgD,OAAOlgD,KAAKsyK,eAAgBnqG,GAGd,+BAC1B,IACEnoE,KAAKq9H,qBAAuBr9H,KAAKmiK,+BAA+BxjJ,MAChE,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,sCAI7Co+J,oBACE,OAAOl5K,KAAKkgD,OAAOlgD,KAAKm5K,wBAG1BmB,kBACE,MAAMC,EAAav6K,KAAKyvF,aAAajkF,SAAS1H,KACxC02K,EAAe,IACnBx6K,KAAK+qF,cAAc60C,aAAavR,SAASiQ,GACvCA,EAAI38C,IAAIrvE,QAAQ5T,GAAMA,EAAEm+I,WAAan+I,EAAEm+I,UAAU4B,iBAAmB//I,EAAEm+I,UAAU4B,gBAAgB36I,OAASy2K,IAAYp8K,KAAKO,GAAMA,EAAEoF,UAItI9D,KAAK2T,WAAW4mE,KAAOv6E,KAAK2T,WAAW4mE,KAAKp8E,KAAK40B,GAC1CynJ,EAAar1K,SAAS4tB,EAASq0G,KAI7B,IAAKr0G,EAAUotG,MAAM,GAHnBptG,IAOE,kBACb,IAAK/yB,KAAK2T,WAAW00H,UAAYroI,KAAK2T,WAAW6zH,WAAaxnI,KAAKo6K,aAAep6K,KAAK+P,MAAMggF,cAC3F,OAAO/vF,KAAK0hD,aAAal7B,0BAIjB,eACV,IACExmB,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB+kF,sBAAsB,EACtBvD,qBAAqB,EACrBvD,eAAe,EACfvhD,eAAe,EACfve,WAAW,EACXy/D,kBAAmB,EACnBnnE,UAAW,EACX+6D,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClC61K,aAAa,EACb/qH,aAAc5uD,KAAK+qE,eAAezrD,kBAAkB,CAAC,8BACrDywE,eAAe,GAGjB/vF,KAAK+P,MAAM67F,UAAY5rG,KAAK4oD,aAAa89G,aAAa,iBAEtD1mK,KAAK2T,WAAa,IAAI28I,EAAAA,kCAEtBtwJ,KAAKgkI,oBAAsBhkI,KAAK8hI,8BAA8BnjH,YAElC3e,KAAKq6K,2BAEzBr6K,KAAKmmK,gBAAgBnmK,KAAK+qF,cAAc80C,iBACxC7/H,KAAKqyK,UAAUryK,KAAK+qF,cAAc80C,iBAClC7/H,KAAKk5K,qBAEbl5K,KAAKs6K,kBACL,MAAOx/J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BA9B3C,QAgCE9a,KAAK+P,MAAMujG,WAAY,EAGzBtzG,KAAKinD,QAAQipC,eAAiB,KAC5B,IAAKlwF,KAAK2T,WAAW00H,UAAYroI,KAAK2T,WAAW6zH,WAAaxnI,KAAKo6K,aAAep6K,KAAK+P,MAAMggF,cAC3F,MAAO,IAKb5sC,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,gBAAiB,GAEpDxmK,KAAK+P,MAAMggF,eAAgB,G,mSAI/B,YACAn6E,IAAAA,OAAe,wBAAwBV,WAAW,oCAAqC2kK,I,0RCpSvF,MAAMY,EAIJx6H,YACEmoD,EACAloD,EACAwI,EACAtzC,EACAqV,EACAm7I,EACAjsG,EACAhV,EACAjD,EACAogF,EACAkqB,EACAM,GAEAtsJ,KAAKooG,WAAaA,EAClBpoG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKoV,OAASA,EACdpV,KAAKyqB,cAAgBA,EACrBzqB,KAAK4lK,yBAA2BA,EAChC5lK,KAAK25D,gBAAkBA,EACvB35D,KAAK2kD,iBAAmBA,EACxB3kD,KAAK0hD,aAAeA,EACpB1hD,KAAK8hI,8BAAgCA,EACrC9hI,KAAKgsJ,yBAA2BA,EAChChsJ,KAAKssJ,yBAA2BA,EAEhCtsJ,KAAK06K,kBAAoBnxB,EAAAA,4BAEzBvpJ,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK26K,eAAiB36K,KAAK26K,eAAet7K,KAAKW,MAC/CA,KAAKqoG,eAAiBptF,EAAAA,GAAAA,kBACtBjb,KAAK46K,yBAA2B3/J,EAAAA,GAAAA,wBAChCjb,KAAKkpG,mBAAqBlpG,KAAKkpG,mBAAmB7pG,KAAKW,MACvDA,KAAK66K,iCAAmC76K,KAAK66K,iCAAiCx7K,KAAKW,MAKrFktK,wBACE,OAAOltK,KAAK41I,gBAAkB51I,KAAK41I,eAAen2I,OAAS,EAG7Dq7K,+BACE,IAAIC,GAAQ,EAMZ,OALA,IAAU/6K,KAAK41I,gBAAiBvhG,IAC1BA,EAAKrV,UAAwC,IAA5BqV,EAAKqsG,YAAYjhJ,SACpCs7K,GAAQ,MAGLA,EAKTC,kBACEh7K,KAAK2T,WAAWsgI,eAAerwI,KAAK,IAAIioJ,EAAAA,wBACxC7rJ,KAAKi7K,uBAGPC,oBAAoB/6I,GAClBngC,KAAK2T,WAAWsgI,eAAe9zG,GAAO6yG,eAAgB,EACtDhzI,KAAKi7K,uBAGPE,mBAAmBh7I,GACZngC,KAAK2T,WAAWsgI,eAAe9zG,GAAOk2G,MAGzCr2I,KAAK2T,WAAWsgI,eAAehxE,OAAO9iC,EAAO,GAF7CngC,KAAK2T,WAAWsgI,eAAe9zG,GAAO6yG,eAAgB,EAIxDhzI,KAAKi7K,uBAGPA,uBACE,MAAMlrK,EAAQ/P,KAAK+P,MAAMo1H,WAAWi2C,eAC9B17K,EAAS,IAAMM,KAAK2T,WAAWsgI,gBAAiB0W,GAAQA,EAAG3X,mBAAgBnhI,EAAY84I,EAAG99I,OAC1Fs4H,EAAaE,EAAAA,QAAAA,cAA6C3lI,GAChEqQ,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,QAAUzmI,OAAOD,KAAKsmI,GAAY1lI,OAAS,EAGnD47K,yBAAyBl7I,GACvB,MAAM23G,EAAK93I,KAAK2T,WAAWsgI,eAAe9zG,GACtC,IAAW23G,EAAGjrI,KAAM08I,EAAAA,4BAAAA,OACtBzR,EAAG9sI,KAAOu+I,EAAAA,4BAAAA,MACD,IAAWzR,EAAGjrI,KAAM08I,EAAAA,4BAAAA,WAC7BzR,EAAG9sI,KAAOu+I,EAAAA,4BAAAA,SAEZvpJ,KAAKi7K,uBAGPK,oBACE,OAAO,IAAOt7K,KAAK2T,WAAWsgI,eAAgB,CAAEjpI,KAAMhL,KAAK06K,kBAAkBjxB,UAM/EoxB,iCAAiChiK,GAC/B7Y,KAAKoV,OAAOE,YAAW,KACrBtV,KAAK2T,WAAW4nK,yBAA2B1iK,EACvCA,IACF7Y,KAAK2T,WAAW6nK,6BAA+B,OAQrDC,2BAA2B1kK,EAAU47H,EAAgByoC,GACnDrkK,EAASke,WAAWqrG,cAAcsV,eAAiBjD,EACnD57H,EAASke,WAAWqrG,cAAcyxC,gBAAkB/xK,KAAK2T,WAAWo+J,gBACpEh7J,EAASke,WAAWqrG,cAAc0xC,iBAAmBhyK,KAAK2T,WAAWq+J,iBACrEj7J,EAASke,WAAWqrG,cAAci7C,yBAA2Bv7K,KAAK2T,WAAW4nK,yBAC7ExkK,EAASke,WAAWqrG,cAAck7C,6BAA+Bx7K,KAAK2T,WAAW6nK,6BACjFzkK,EAASke,WAAWqrG,cAAc2T,eAAiBmnC,EACnDrkK,EAASke,WAAWqrG,cAAcC,yBAA2BvgI,KAAK2T,WAAW4sH,yBAC7ExpH,EAASizF,aAAehqG,KAAK+P,MAAMg5F,mBAGrC2yE,sBACE,MAAM/oC,EAAiB,IAAM3yI,KAAK41I,gBAAiBvhG,IACjD,GAAIA,EAAKrV,SAAU,CACjB,MAAMqqG,EAAM,IAAIkO,EAAAA,uBAKhB,OAJAlO,EAAIx8H,KAAOwnC,EAAKxnC,KAChBw8H,EAAIqX,YAAc,IAAMrsG,EAAKqsG,YAAa,QAC1CrX,EAAImO,YAAcnjG,EAAKmjG,YACvBnO,EAAIqO,qBAAuBrjG,EAAKqjG,qBACzBrO,MAGX,IAAOsJ,OAAgB9gI,GAEvB,MAAMupK,EAAiB,IACrB,IAAMp7K,KAAK2T,WAAWsgI,gBAAiB0W,GAAQA,EAAG3X,mBAAgBnhI,EAAY84I,SAC9E94I,GAIF,OAFA,IAAOupK,OAAgBvpK,GAEhB,CAAC8gI,EAAgByoC,GAGW,wCACnC,MAAMO,EAAiB,IAAS37K,KAAK2T,WAAWsgI,eAAgB,CAAEjB,eAAe,IACjF,IAAK2oC,EAAel8K,OAClB,OAEF,MAAMmc,EAAW,GACXggK,EAAgB57K,KAAK2kD,iBAAiBE,aAC5C7kD,KAAK2kD,iBAAiBoV,cAAc/5D,KAAK+W,SAASxK,IAElD,IACE,MAAMsvK,QAAyB77K,KAAK8hI,8BAA8BnjH,MAC5DqlH,EAAgB,IACpB63C,GACCl5C,IAAkBpE,EAAAA,QAAAA,kBAA4CoE,EAAa9C,UAAUhzH,QAAU0xH,EAAAA,QAAAA,mBAA6CoE,EAAa9C,UAAUhzH,QAGtK8uK,EAAe9jK,SAASitH,IACtBd,EAAcnsH,SAAS8qH,IACrB/mH,EAAShY,KAAK5D,KAAKgsJ,yBAAyB7qG,OAAOwhF,EAAa9C,UAAUhzH,KAAMi4H,EAAQj4H,aAT9F,QAaE7M,KAAK2kD,iBAAiBoV,cAAc6hH,UAGd3/J,QAAQ0nH,WAAW/nH,IACjC/D,SAASikK,IACjB,GAAsB,YAAlBA,EAAQ5jK,QAAqD,KAA7B4jK,EAAQ3B,OAAOr/J,IAAI5C,OACrD,MAAM4jK,EAAQ3B,UAKpB4B,sBACM/7K,KAAK2T,WAAWq+J,kBAClBhyK,KAAK+P,MAAMisK,QAAQC,WAAY,EAC/Bj8K,KAAK+P,MAAMisK,QAAQE,SAAU,EAC7Bl8K,KAAKssJ,yBAAyBv1F,aAAa/2D,KAAK+W,SAASxK,IACtDyP,MAAK,KACJhc,KAAK+P,MAAMisK,QAAQG,iBAAkB,EACrCn8K,KAAK+P,MAAMisK,QAAQE,SAAU,EAC7Bl8K,KAAK2T,WAAWq+J,kBAAmB,KAEpCl1G,OAAM,KACL98D,KAAK+P,MAAMisK,QAAQG,iBAAkB,EACrCn8K,KAAK+P,MAAMisK,QAAQE,SAAU,EAC7Bl8K,KAAK2T,WAAWq+J,kBAAmB,OAGvChyK,KAAK+P,MAAMisK,QAAQC,WAAY,EAC/Bj8K,KAAK2T,WAAWq+J,kBAAmB,GAInB,uBAClB,IACEhyK,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAOw9C,EAAgByoC,GAAkBp7K,KAAK07K,4BAExC17K,KAAKo8K,kCAEXp8K,KAAKy7K,2BAA2Bz7K,KAAK+W,SAAU47H,EAAgByoC,SACzDp7K,KAAK25D,gBAAgBE,eAAe75D,KAAK+W,SAASxK,GAAIvM,KAAK+W,UAEjE,MAAMslK,EAAkB,IAAM1pC,GAAiBoF,IAC7C,MAAME,EAAkB,IAAOj4I,KAAKs8K,kBAAmB,CAAEzvK,KAAMkrI,EAAalrI,OAC5E,GAAIorI,EACF,OAAOj4I,KAAK4lK,yBAAyB56G,MAAMhrD,KAAK+P,MAAMwO,WAAY05H,EAAiBF,YAGjF97H,QAAQqW,IAAI+pJ,GAElB,MAAMnzD,EAAYlpH,KAAK2kD,iBAAiBukE,YAClCqzD,EAAmB,IAAOrzD,GAAY70E,GAASA,EAAK9nC,KAAOvM,KAAK+W,SAASxK,KAC3EgwK,IACFv8K,KAAKy7K,2BAA2Bc,EAAkB5pC,EAAgByoC,GAClEp7K,KAAK2kD,iBAAiB63H,aAAatzD,IAErClpH,KAAKyqB,cAAcF,QAAQ,UAAW,sCACtCvqB,KAAK0oD,OAAOr8B,GAAG,kBACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCA1B3C,QA4BE9a,KAAK+P,MAAMolF,kBAAmB,EAG9Bn1F,KAAKooG,WAAW6B,WAAW,qBAAsB,CAC/CnlG,SAAU,aACVF,SAAU,CACR,aAAc5E,KAAK+P,MAAMg5F,mBAAmBmB,UAC5C,WAAYlqG,KAAK+P,MAAMg5F,mBAAmBoB,QAC1C,YAAanqG,KAAK+P,MAAMi5F,aAMhCyzE,YAEE,IADc,IAASz8K,KAAK2T,WAAWsgI,eAAgB,CAAEjB,eAAe,IAC9DvzI,OAUR,OAAOO,KAAKkgD,OAAOlgD,KAAK26K,gBATxB36K,KAAK0hD,aAAa95B,cACf,oLACAjB,IACC,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAK26K,mBAUlC+B,2BACE,OAAO18K,KAAK2T,WAAW4sH,2BAA6BvgI,KAAKmgK,cAAc5/B,yBAGzEr3B,mBAAmBvlG,GACjB,OAAO3D,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK+P,MAAMg5F,mBAAmBtlB,QAAU9/E,KAKhC,eACV3D,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBwnF,2BAA4B,GAC5BrpE,WAAW,EACX/0F,WAAYve,KAAK0oD,OAAOl9C,OAAO+S,WAC/B4mH,WAAY,CACVi2C,eAAgB,IAAI11C,EAAAA,oCAEtBs2C,QAAS,CACPE,SAAS,EACTC,iBAAiB,EACjBF,WAAW,GAEbjzE,SAAU,IAGZhpG,KAAK2T,WAAa,CAChBo+J,iBAAiB,EACjBC,kBAAkB,EAClBuJ,0BAA0B,EAC1BC,6BAA8B,GAC9BvnC,eAAgB,GAChB1T,0BAA0B,EAC1Bq8C,4BAA4B,GAG9B,KACG58K,KAAK41I,eAAgB51I,KAAK+W,gBAAkBkF,QAAQqW,IAAI,CAACtyB,KAAK4lK,yBAAyBjnJ,IAAI3e,KAAK+P,MAAMwO,YAAave,KAAK25D,gBAAgB5iD,SAAS/W,KAAK+P,MAAMwO,cAE7Jve,KAAK+P,MAAMg5F,mBAAqB/oG,KAAK+W,SAASizF,aAE9C,IAAUhqG,KAAK41I,gBAAiBvhG,IAC9BA,EAAKwoI,qBAAuB,IAAI3nB,EAAAA,qCAChC,MAAMz2I,EAAU,IAAOze,KAAK+W,SAASke,WAAWqrG,cAAcsV,gBAAiBiC,GAAOA,EAAGhrI,OAASwnC,EAAKxnC,OACnG4R,IACF41B,EAAKrV,UAAW,EAChB,IAAUvgB,EAAQiiI,aAAco8B,IAC9B,MAAM7hJ,EAAO,IAAOoZ,EAAKwoI,qBAAsB,CAAEhwK,KAAMiwK,IACnD7hJ,IACFA,EAAK+D,UAAW,UAMxBh/B,KAAKs8K,kBAAoB1mK,IAAAA,KAAa5V,KAAK41I,gBAE3C51I,KAAK2T,WAAWo+J,gBAAkB/xK,KAAK+W,SAASke,WAAWqrG,cAAcyxC,gBACzE/xK,KAAK2T,WAAWq+J,iBAAmBhyK,KAAK+W,SAASke,WAAWqrG,cAAc0xC,iBAC1EhyK,KAAK2T,WAAW4nK,yBAA2Bv7K,KAAK+W,SAASke,WAAWqrG,cAAci7C,yBAClFv7K,KAAK2T,WAAW6nK,6BAA+Bx7K,KAAK+W,SAASke,WAAWqrG,cAAck7C,6BACtFx7K,KAAK2T,WAAW4sH,yBAA2BvgI,KAAK+W,SAASke,WAAWqrG,cAAcC,yBAClFvgI,KAAK2T,WAAWsgI,eAAiB,IAAMj0I,KAAK+W,SAASke,WAAWqrG,cAAc2T,gBAAiB0W,IAC7FA,EAAGtU,OAAQ,EACXsU,EAAG3X,eAAgB,EACZ2X,KAGT3qJ,KAAKmgK,cAAgBrhK,OAAOM,OAAO,GAAIY,KAAK2T,YAC5C,MAAOmH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gDAlC3C,QAoCE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,yOAK5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,gCAAiCulK,I,sBCrWnF,MAAMl6H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,0BAA2B,CAC1E2qC,YAAaD,EACbrrC,WAAY,gCACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,8JCDd,MAAMgmK,EAEJ98H,YACEC,EACAz1B,EACAkvC,EACAmoE,EACAi8B,EACAoE,EACA2D,EACA/6F,EACA27B,GAEA1mG,KAAKkgD,OAASA,EACdlgD,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EACvB35D,KAAK8hI,8BAAgCA,EACrC9hI,KAAK+9J,6BAA+BA,EACpC/9J,KAAKmiK,+BAAiCA,EACtCniK,KAAK8lK,wBAA0BA,EAC/B9lK,KAAK+qE,eAAiBA,EACtB/qE,KAAK0mG,WAAaA,EAElB1mG,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKmsJ,OAASnsJ,KAAKmsJ,OAAO9sJ,KAAKW,MAC/BA,KAAKu7I,YAAcv7I,KAAKu7I,YAAYl8I,KAAKW,MAG1B,oBACf,MAAMiK,EAAUjK,KAAK+qE,eAAe9gE,UAC9B0oI,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eAC9D51I,KAAK6mG,WAAa7mG,KAAK+W,SAAS/L,OAASs+C,EAAAA,uBAAAA,8BAAuDtpD,KAAK+W,SAAS/L,OAASs+C,EAAAA,uBAAAA,iCAEvH,IACE,MAAOg9F,EAAO9J,EAAcnf,EAAgB1hE,EAAS6rC,SAAcvrF,QAAQqW,IAAI,CAC7EtyB,KAAK8hI,8BAA8BnjH,MACnC3e,KAAK+9J,6BAA6Bp/I,MAClC3e,KAAKmiK,+BAA+BxjJ,MACpC3e,KAAK8lK,wBAAwBnnJ,SAAI9M,EAAW8gI,GAC5C3yI,KAAK0mG,WAAWc,SAElBxnG,KAAKw8I,aAAeA,EACpBx8I,KAAK27D,QAAUA,EAEf37D,KAAKioG,aAAejoG,KAAK+W,SAASmxF,OAAOzoG,OACrC,IACE,IACE,IAAMO,KAAK+W,SAASmxF,QAAS5pG,IAC3B,MAAMq7B,EAAM6tE,EAAK/9F,MAAMkwB,GAAQA,EAAIptB,KAAOjO,IAC1C,OAAOq7B,EAAMA,EAAI9sB,KAAO,MAE1B0jC,SAEF,MAEF,IAECtmC,GAIHjK,KAAKsmJ,MAAQA,EACbtmJ,KAAKq9H,eAAiBA,IAJtBr9H,KAAKsmJ,MAAQ,IAASA,GAAQlO,IAAU7Z,EAAAA,QAAAA,kBAA4C6Z,EAAKvY,UAAUhzH,QACnG7M,KAAKq9H,eAAiB,IAASA,GAAiBz4G,IAAYm7G,EAAAA,QAAAA,cAA4Cn7G,MAK1G,MAAO9J,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAI7CqxI,SACE,OAAOnsJ,KAAKkgD,OAAOlgD,KAAKu7I,aAGd,eACVv7I,KAAK+P,MAAQ,CACXujG,WAAW,SAGPtzG,KAAKmsJ,SAEXnsJ,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,+MAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,gCAAiC6nK,I,sBC/FnF,MAAMx8H,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,uBAAwB,CACvE2qC,YAAaD,EACbrrC,WAAY,6BACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,kNCKd,MAAMimK,EAEJ/8H,YAAYC,EAAQwI,EAAQzB,EAAS8jB,EAAgB2tE,EAAuBh3F,EAAcj3B,EAAeq3G,EAA+Br7B,EAAcpH,GACpJr/F,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKinD,QAAUA,EACfjnD,KAAK+qE,eAAiBA,EACtB/qE,KAAK04I,sBAAwBA,EAC7B14I,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAK8hI,8BAAgCA,EACrC9hI,KAAKymG,aAAeA,EACpBzmG,KAAKq/F,cAAgBA,EACrBr/F,KAAKi9K,aAAe,WAEpBj9K,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAKk9K,cAAgB,CACnB,IAAKloJ,EAAAA,EAAYrxB,MAAOstJ,EAAAA,8BAAAA,YACxB,IAAK/7H,EAAAA,EAASvxB,MAAOstJ,EAAAA,8BAAAA,UAGvBjxJ,KAAKq0H,cAAgB,CACnB,IAAKx/F,EAAAA,GAAKlxB,MAAOytJ,EAAAA,6BAAAA,KACjB,IAAK38H,EAAAA,GAAQ9wB,MAAOytJ,EAAAA,6BAAAA,YACpB,IAAK3qJ,EAAAA,GAAK9C,MAAOytJ,EAAAA,6BAAAA,KACjB,IAAKt8I,EAAAA,GAAUnR,MAAOytJ,EAAAA,6BAAAA,kBAGxBpxJ,KAAK+P,MAAQ,CACX20G,WAAYusC,EAAAA,8BAAAA,WACZksB,YAAa/rB,EAAAA,6BAAAA,IACbgsB,iBAAiB,EACjBxxE,UAAW,EACX0H,WAAW,EACXvjB,eAAe,EACfitC,WAAY,KACZloH,SAAU,MAGZ9U,KAAK2T,WAAa,CAChBsnC,UAAW,GACXm1E,cAAe,GACfC,wBAAyB,GACzBE,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GACpB4sD,gBAAiB,GACjBhqD,4BAA6B,GAC7BiqD,4BAA4B,EAC5BC,iCAAiC,EACjCC,oBAAqB9rB,EAAAA,yBAAAA,SACrB+rB,wBAAyB,KACzBC,qBAAsBr+E,EAAcs+E,sBAAsBr2B,GAAAA,IAC1DxO,UAAW,IAGb94I,KAAK49K,oBAAsB3sB,EAAAA,8BAC3BjxJ,KAAK69K,aAAezsB,EAAAA,6BAEpBpxJ,KAAK89K,mBAAqB99K,KAAK89K,mBAAmBz+K,KAAKW,MACvDA,KAAK+9K,YAAc/9K,KAAK+9K,YAAY1+K,KAAKW,MACzCA,KAAKmtH,oBAAsBntH,KAAKmtH,oBAAoB9tH,KAAKW,MACzDA,KAAKg+K,mBAAqBh+K,KAAKg+K,mBAAmB3+K,KAAKW,MACvDA,KAAKy0H,mBAAqBz0H,KAAKy0H,mBAAmBp1H,KAAKW,MACvDA,KAAK4zH,yBAA2B5zH,KAAK4zH,yBAAyBv0H,KAAKW,MACnEA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAC/CA,KAAKi+K,mBAAqBj+K,KAAKi+K,mBAAmB5+K,KAAKW,MACvDA,KAAKk+K,0BAA4Bl+K,KAAKk+K,0BAA0B7+K,KAAKW,MAGvEk+K,0BAA0Bv6K,GACxB3D,KAAKy0H,mBAAmB,CAAEqkB,UAAWn1I,IAErC3D,KAAKo/C,iBAGPA,iBACE,IAAKp/C,KAAK24I,2BACR,OAGF,MAAMwlC,GAAW/+H,EAAAA,EAAAA,IAAep/C,KAAK+P,MAAMquK,gBAAiBp+K,KAAK2T,WAAWmlI,UAAW94I,KAAK+P,MAAM+E,SAASgkI,WAC3G94I,KAAKy0H,mBAAmB,CAAE4pD,cAAeF,IAG3CvqD,2BACE,MAAMhvH,EAAW,CACfmF,KAmCF,SAAoBu0K,GAClB,OAAQA,GACN,KAAKltB,EAAAA,6BAAAA,IACH,MAAO,MACT,KAAKA,EAAAA,6BAAAA,WACH,MAAO,cAxCLmtB,CAAWv+K,KAAK+P,MAAMotK,aAC5B5/I,OA2CF,SAAqBA,GACnB,OAAQA,GACN,KAAK0zH,EAAAA,8BAAAA,QACH,MAAO,UACT,KAAKA,EAAAA,8BAAAA,WACH,MAAO,YAhDHutB,CAAYx+K,KAAK+P,MAAM20G,YAC/BvhH,MAqBiB8G,EArBDjK,KAAK+qE,eAAe9gE,UAqBVw0K,EArBqBz+K,KAAK+qE,eAAezrD,kBAAkB,CAAC,4BAsBlFrV,EACK,QAGLw0K,EACK,iBAGF,YA7BP,oBASF,SAA+BC,EAA4BC,GACzD,OAAQD,GAA8BC,GACpC,KAAKjtB,EAAAA,yBAAAA,SACH,MAAO,UACT,KAAKA,EAAAA,yBAAAA,QACH,MAAO,UACT,QACE,MAAO,OAhBUktB,CAAsB5+K,KAAK2T,WAAW2pK,2BAA4Bt9K,KAAK2T,WAAW6pK,sBAoBzG,IAAmBvzK,EAASw0K,EAb5B,OAJIz+K,KAAK+P,MAAMotK,cAAgB/rB,EAAAA,6BAAAA,MAC7BxsJ,EAAS4kF,KAAOxpF,KAAK2T,WAAW48G,0BAG3B,CAAE3rH,SAAAA,GA4CX4vH,eAAe5zG,GACb5gB,KAAK+P,MAAMotK,YAAcv8J,EAG3Bq9J,mBAAmBl0K,GACjB/J,KAAK+P,MAAM20G,WAAa36G,EACpBA,GAAQ/J,KAAK49K,oBAAoBzsB,QACnCnxJ,KAAKi9K,aAAe,UAEpBj9K,KAAKi9K,aAAe,WAIxB4B,gBACE,MAAMC,EACJ9+K,KAAK+P,MAAMotK,cAAgB/rB,EAAAA,6BAAAA,OACzBpxJ,KAAK2T,WAAWy8G,gBAAkBpwH,KAAK2T,WAAW28G,sBAAyBtwH,KAAK2T,WAAW48G,2BAA6BvwH,KAAK2T,WAAW88G,qBAC1I,IAAUzwH,KAAK2T,WAAWksH,WACtBk/C,EACJ/+K,KAAK+P,MAAMotK,cAAgB/rB,EAAAA,6BAAAA,YAA2C,IAAUpxJ,KAAK2T,WAAW0qK,gBAAkB,IAAUr+K,KAAK2T,WAAWksH,WACxIm/C,EAAmBh/K,KAAK+P,MAAMotK,aAAe/rB,EAAAA,6BAAAA,WAAAA,KAA+C,IAAUpxJ,KAAK2T,WAAWsrK,aAEtHC,EAAqB,IAAUl/K,KAAK2T,WAAWksH,WAErD,OAAQ7/H,KAAK2T,WAAWsnC,WAAa6jI,GAAoBC,GAAsBC,GAAoBh/K,KAAK+P,MAAMolF,kBAAoB+pF,EAGpIzqD,mBAAmBptH,GACjBrH,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,GAIPy2K,mBAAmB9gD,EAAYloH,GAC7B,OAAO9U,KAAKkgD,QAAO2F,UACjB,GAAK/wC,IAAa9U,KAAK+P,MAAMitH,aAAeA,GAAch9H,KAAK+P,MAAM+E,WAAaA,GAAlF,CAIA9U,KAAK+P,MAAMitH,WAAaA,EACxBh9H,KAAK+P,MAAM+E,SAAWA,EAEtB,IACE,MAAMinD,QAAoB/7D,KAAK04I,sBAAsB0B,mBAAmBpd,GAIxE,GAHAh9H,KAAK+P,MAAMquK,gBAAkBriH,EAC7B/7D,KAAKmtH,oBAAoBpxD,GAErBjnD,EAASgkI,WAAahkI,EAASgkI,UAAUr5I,OAAS,EAAG,CACvD,MAAMqO,EAAYhP,OAAOwG,YAAYwP,EAASgkI,UAAU36I,KAAK40B,GAAa,CAACA,EAASjvB,KAAM,OAC1F9D,KAAKk+K,0BAA0BpwK,IAEjC,MAAOgN,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAK/CqyG,oBAAoBxpH,GAClB3D,KAAK2T,WAAW0qK,cAAgB16K,EAChC3D,KAAK+P,MAAMggF,eAAgB,EAG7BovF,gBAAgB/0G,GACdpqE,KAAKo/K,SAAWC,GAAAA,CAAUj1G,GAC1BpqE,KAAK+P,MAAMqtK,iBAAkB,EAC7Bp9K,KAAK+P,MAAM67F,UAAY,EAGR,oBACf5rG,KAAKo/K,SAAW,GAChBp/K,KAAK+P,MAAMolF,kBAAmB,EAE9B,IACE,IAAIv0E,EACA0+J,EAAgBt/K,KAAK+P,MAAM20G,aAAe1kH,KAAK49K,oBAAoBzsB,QAEvE,OAAQnxJ,KAAK+P,MAAMotK,aACjB,KAAKn9K,KAAK69K,aAAazuB,IACrBxuI,EAAS2wI,EAAAA,+BAAAA,WACT,MACF,KAAKvxJ,KAAK69K,aAAaxsB,WACrBzwI,EAAS2wI,EAAAA,+BAAAA,OACT,MACF,KAAKH,EAAAA,6BAAAA,gBACHxwI,EAAS2wI,EAAAA,+BAAAA,OACT+tB,GAAgB,EAChB,MACF,KAAKt/K,KAAK69K,aAAax2G,IACrBzmD,EAAS2wI,EAAAA,+BAAAA,IACT,MACF,QACE,MAAM,IAAI32I,EAAAA,EAAe,oCAG7B,IAAI2kK,EAAkB,GAGpBA,EADEv/K,KAAK2T,WAAW6rK,iBACA,GAEAx/K,KAAK2T,WAAWksH,UAEpC,MAAM/+G,EAAU,CACd2+J,cAAeH,EACfz/C,UAAW0/C,EACXtkI,UAAWj7C,KAAK2T,WAAWsnC,WAGzBr6B,IAAW2wI,EAAAA,+BAAAA,YACbzwI,EAAQsvG,cAAgBpwH,KAAK2T,WAAWy8G,cACxCtvG,EAAQuvG,wBAA0BrwH,KAAK2T,WAAW08G,wBAClDvvG,EAAQyvG,2BAA2BvwH,KAAK2T,WAAW48G,yBAC/CzvG,EAAQyvG,2BACVzvG,EAAQ0vG,mBAAqBxwH,KAAK2T,WAAW68G,mBAC7C1vG,EAAQ2vG,mBAAqBzwH,KAAK2T,WAAW88G,oBAE/C3vG,EAAQ4+J,aAAe1/K,KAAK2T,WAAW0/G,4BACvCvyG,EAAQu8J,gBAAkBr9K,KAAK2T,WAAW0pK,gBACtCr9K,KAAK2T,WAAW2pK,6BAClBx8J,EAAQ6+J,WAAa,CACnBC,YAAa5/K,KAAK2T,WAAW4pK,iCAE3Bv9K,KAAK2T,WAAW6pK,sBAAwB9rB,EAAAA,yBAAAA,SAC1C5wI,EAAQ6+J,WAAWE,SAAW7/K,KAAK2T,WAAW8pK,wBACrCz9K,KAAK2T,WAAW6pK,sBAAwB9rB,EAAAA,yBAAAA,UACjD5wI,EAAQ6+J,WAAW9qE,QAAU70G,KAAK2T,WAAW+pK,qBAAqBniJ,MAAM,KAAK+iC,UAAU,MAGlF19C,IAAW2wI,EAAAA,+BAAAA,OACpBzwI,EAAQ+sG,iBAAmB7tH,KAAK2T,WAAW0qK,cAE3Cv9J,EAAQm+J,YAAcj/K,KAAK2T,WAAWsrK,kBAGlCj/K,KAAKymG,aAAaq5E,iBAAiB9/K,KAAK+W,SAASxK,GAAIqU,EAAQE,GAEnE9gB,KAAKyqB,cAAcF,QAAQ,UAAW,kCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,2BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,4BAA6B6M,EAAK,8BAC3D9a,KAAKm/K,gBAAgBrkK,EAAIA,IAAIrW,KAAK2gB,SApEpC,QAsEEplB,KAAK+P,MAAMolF,kBAAmB,GAIlC4qF,SACE,OAAO//K,KAAKkgD,OAAOlgD,KAAK+9K,aAGF,2BACtB,IACE,MAAMz3B,QAActmJ,KAAK8hI,8BAA8BnjH,MACjD4+I,EAAa,IAAMjX,EAAO,aAAajwI,MAAK,CAAC+xD,EAAGC,IACrC,YAAXD,EAAEv7D,MACI,EAEK,YAAXw7D,EAAEx7D,KACG,EAEF,IAET7M,KAAKu9J,WAAaA,EACdv9J,KAAKu9J,WAAW99J,OAAS,IAC3BO,KAAK2T,WAAWksH,UAAY7/H,KAAKu9J,WAAW,GAAG1wJ,MAEjD,MAAOiO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAI7CklK,gBACE,OAAOhgL,KAAKkgD,OAAOlgD,KAAKg+K,oBAGX,kBACb,GAAIh+K,KAAK2T,WAAW0qK,eAAiBr+K,KAAK+P,MAAMggF,cAC9C,OAAO/vF,KAAK0hD,aAAal7B,0BAI7B28B,UACE,OAAOnjD,KAAKkgD,QAAO2F,UAIjB,GAHA7lD,KAAK2T,WAAW6rK,kBAAmB,QAC7Bx/K,KAAKggL,gBAEPhgL,KAAK0oD,OAAOl9C,OAAOwxH,WAAY,CACjC,MAAMA,EAAah4H,SAAShF,KAAK0oD,OAAOl9C,OAAOwxH,WAAY,IACvDA,IAAe/3H,OAAOC,MAAM83H,KAC9Bh9H,KAAK+P,MAAMotK,YAAc/rB,EAAAA,6BAAAA,gBACzBpxJ,KAAK+P,MAAMitH,WAAaA,GAI5Bh9H,KAAK+P,MAAMujG,WAAY,EAEvBtzG,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAK2T,WAAW0qK,eAAiBr+K,KAAK+P,MAAMggF,cAC9C,MAAO,OAMf17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,G,+KAI/B,YACAn6E,IAAAA,OAAe,wBAAwBV,WAAW,6BAA8B8nK,I,sBC7WhF,MAAMz8H,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,mCAAoC,CACnF2qC,YAAaD,EACbrrC,WAAY,yCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,0KCDd,MAAMkpK,EAEJhgI,YAAYC,EAAQwI,EAAQj+B,EAAekvC,EAAiBmoE,EAA+B+/B,EAA4B/vD,EAAcouE,EAAenuE,GAClJ/xG,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EACvB35D,KAAK8hI,8BAAgCA,EACrC9hI,KAAK6hK,2BAA6BA,EAElC7hK,KAAK8xG,aAAeA,EACpB9xG,KAAKkgL,cAAgBA,EACrBlgL,KAAK+xG,YAAcA,EAEnB/xG,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKmgL,qBAAuBngL,KAAKmgL,qBAAqB9gL,KAAKW,MAC3DA,KAAKogL,uBAAyBpgL,KAAKogL,uBAAuB/gL,KAAKW,MAE/DA,KAAKqgL,kBAAoBrgL,KAAKqgL,kBAAkBhhL,KAAKW,MAGvDsgL,oBAAoBpzC,GAIlB,OAHAA,EAAUrgI,KAAOojJ,EAAAA,uCACjB/iB,EAAUrN,UAAYmwB,EAAAA,sCACtB9iB,EAAU3yD,KAAKgpE,EAAAA,uCAAyC,GACjDrW,EAMG,eACV,MAAMn2H,EAAW/W,KAAK+W,SACtB/W,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBme,WAAW,GAGbtzG,KAAK2T,WAAa,CAChB4sK,kBAAmB,IAGrB,IACE,MAAMz8K,EAAO9D,KAAKyvF,aAAajkF,SAASlN,GACxC,IAAK85I,EAAMlL,SAAmBjxH,QAAQqW,IAAI,CACxCtyB,KAAK8hI,8BAA8BnjH,IAAI7a,GACvC9D,KAAK6hK,2BAA2BE,UAAU/R,EAAAA,sCAAuCC,EAAAA,0CAEnF,MAAMz8C,QAAcxzG,KAAK8xG,aAAa0B,MAAMz8F,EAAS08F,SAC/CP,QAAclzG,KAAK+xG,YAAYmB,QAC/BstE,QAAyBxgL,KAAKkgL,cAAc58B,SAASvsI,EAAUy8F,EAAON,GAC5ElzG,KAAKo4I,KAAOA,EACS,IAAjBlL,EAAU3gI,KACZ2gI,EAAYltI,KAAKsgL,oBAAoBpzC,IAEvCA,EAAYuzC,EAAAA,QAAAA,cAAwCvzC,GAEpDltI,KAAK0gL,wBAA0B,GAC/B1gL,KAAK2gL,gBAAkBzzC,EACvB,MAAM0zC,EAAe1zC,EAAU3yD,KAAKgpE,EAAAA,uCAAuCz/I,GACvE88K,IACF5gL,KAAK0gL,wBAA0B,IAASF,EAAiBE,yBAA0BrsI,GAC7EA,aAAgBu+D,EAAAA,qBAAuBguE,EAAaxuE,wBACFvgG,IAA7C+uK,EAAaxuE,mBAAmB/9D,EAAK9nC,OACnC8nC,aAAgBy+D,EAAAA,qBAAuB8tE,EAAatuE,0BACTzgG,IAA7C+uK,EAAatuE,mBAAmBj+D,EAAK9nC,OAKlDvM,KAAK6gL,uBAAyB,IAAUL,EAAiBE,2BAA4B1gL,KAAK0gL,yBAC1F1gL,KAAK6gL,uBAAyB,IAAS7gL,KAAK6gL,wBAAyBxsI,GAAS,CAACysI,EAAAA,UAAAA,SAAoBA,EAAAA,UAAAA,WAAqB37K,SAASkvC,EAAKpjC,KAAK1E,MAC3I,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4CA/B3C,QAiCE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAMA,6BACxB,IACE1gI,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAM4rF,EAAc,IAAS/gL,KAAK0gL,wBAAyB1gL,KAAK2T,WAAW4sK,mBACrEI,EAAkBF,EAAAA,QAAAA,yBAAmD7qK,IAAAA,KAAa5V,KAAK2gL,iBAAkB3gL,KAAKo4I,KAAKvY,UAAUhzH,KAAMk0K,GACnIC,EAAa,GACjBC,EAAa,GACf,IAAK,MAAM5sI,KAAQr0C,KAAK2T,WAAW4sK,mBAAqB,GACpC,SAAdlsI,EAAKrpC,KACPg2K,EAAWp9K,KAAKywC,EAAK9nC,IACE,SAAd8nC,EAAKrpC,MACdi2K,EAAWr9K,KAAKywC,EAAK9nC,UAGnBvM,KAAK6hK,2BAA2Bj0J,aAAa+yK,SAC7C3gL,KAAK25D,gBAAgBunH,iBAAiBlhL,KAAK+W,SAASxK,GAAIvM,KAAKo4I,KAAKvY,UAAUhzH,KAAMm0K,EAAYC,EAAY,GAAI,IACpHjhL,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAI7CqmK,kBACE,OAAOnhL,KAAKkgD,OAAOlgD,KAAKmgL,sBAME,6BAACr2I,GAC3B,IACE9pC,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAM4rF,EAAc,IAAU/gL,KAAK0gL,2BAA4B52I,GACzD62I,EAAkBF,EAAAA,QAAAA,yBAAmD7qK,IAAAA,KAAa5V,KAAK2gL,iBAAkB3gL,KAAKo4I,KAAKvY,UAAUhzH,KAAMk0K,GACnIK,EAAgB,GACpBC,EAAgB,GAClB,IAAK,MAAMhtI,KAAQvK,GAAiB,GAChB,SAAduK,EAAKrpC,KACPo2K,EAAcx9K,KAAKywC,EAAK9nC,IACD,SAAd8nC,EAAKrpC,MACdq2K,EAAcz9K,KAAKywC,EAAK9nC,UAGtBvM,KAAK6hK,2BAA2Bj0J,aAAa+yK,SAC7C3gL,KAAK25D,gBAAgBunH,iBAAiBlhL,KAAK+W,SAASxK,GAAIvM,KAAKo4I,KAAKvY,UAAUhzH,KAAM,GAAI,GAAIu0K,EAAeC,GAC/GrhL,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAlB3C,QAoBE9a,KAAK+P,MAAMolF,kBAAmB,GAIlCkrF,kBAAkBv2I,GAChB,OAAO9pC,KAAKkgD,OAAOlgD,KAAKogL,uBAAwBt2I,I,0KAIpD,YACAl0B,IAAAA,OAAe,wBAAwBV,WAAW,yCAA0C+qK,I,8HC1J5F,MAKaqB,EAAqB,CAChC9gI,YANoCxrC,EAAQ,OAO5CE,WAFgC,UAGhCH,SAAU,CACRpR,MAAO,IACPyD,SAAU,IACVtD,KAAM,MAIV8R,IAAAA,OAAe,wBAAwBC,UAAU,qBAAsByrK,I,yDCbvE,MAAMC,EAEJthI,cACEjgD,KAAKyb,UAAYR,EAAAA,GAAAA,gCAEjBjb,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAG7C+H,aAAapE,GACX3D,KAAKoH,SAASpH,KAAK8D,KAAMH,I,aAI7B,a,6ECfA,MAAM48C,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,wBAAwBC,UAAU,mCAAoC,CACnF2qC,YAAaD,EACbrrC,WAAYssK,EAAAA,QACZzsK,SAAU,CACRgC,SAAU,Q,4RCSd,MAAMyqK,EAGJvhI,YAAYC,EAAQwI,EAAQtzC,EAAQqV,EAAekvI,EAAuB73B,EAA+BkqB,EAA0BjhF,EAAgBpR,GACjJ76D,OAAOM,OAAOY,KAAM,CAClBkgD,OAAAA,EACAwI,OAAAA,EACAtzC,OAAAA,EACAqV,cAAAA,EACAkvI,sBAAAA,EACA73B,8BAAAA,EACAkqB,yBAAAA,EACAjhF,eAAAA,EACApR,gBAAAA,IAGF35D,KAAK06K,kBAAoBnxB,EAAAA,4BACzBvpJ,KAAKyhL,iBAAmBxmK,EAAAA,GAAAA,2BAExBjb,KAAK0hL,qBAAuB1hL,KAAK0hL,qBAAqBriL,KAAKW,MAC3DA,KAAK2hL,0BAA4B3hL,KAAK2hL,0BAA0BtiL,KAAKW,MACrEA,KAAK4hL,sBAAwB5hL,KAAK4hL,sBAAsBviL,KAAKW,MAI/D0hL,qBAAqB3uC,EAAkBl6H,GACrC7Y,KAAKoV,OAAOE,YAAW,KACrBtV,KAAK2T,WAAWiiI,eAAiB51I,KAAK2T,WAAWiiI,eAAez3I,KAAK0jL,GAAYA,EAAOh1K,OAASkmI,EAAmB8uC,EAAS,IAAKA,EAAQ3tC,SAAUr7H,QAIxJ8oK,0BAA0B9oK,GACxB7Y,KAAKoV,OAAOE,YAAW,KACrBtV,KAAK2T,WAAW+hI,sBAAwB78H,KAI5C+oK,sBAAsB/oK,GACpB7Y,KAAKoV,OAAOE,YAAW,KACrBtV,KAAK2T,WAAWgiI,SAAW98H,KAI/BipK,0BACE,MAAM/xK,EAAQ/P,KAAK+P,MAAMo1H,WAAW48C,aAC9BC,EAAQ,IAAUhiL,KAAK2T,WAAWsgI,eAAgB,SAClDguC,EAAY,IAAUD,EAAM7jL,KAAKmqF,GAAMA,EAAE1iC,QACzCs8H,EAA0B,IAASD,GAAY35F,IAAOA,EAAE0qD,gBACxDmvC,EAAW,IAAUniL,KAAKoiL,aAAc,SACxCC,EAAiBh9C,EAAAA,QAAAA,cAA6C68C,GACpE,IAAUD,GAAW,CAACjrI,EAAM2zB,UACb94D,IAATmlC,GAAsB,IAAWmrI,EAAUnrI,KAC7CqrI,EAAe13G,GAAO3zB,MAG1B,MAAMmuF,EAAa,GACnB,IAAIm9C,EAAQ,EACZ,IAAUtiL,KAAK2T,WAAWsgI,gBAAiB0W,IACzCxlB,EAAWwlB,EAAGH,aAAa39I,MAAQ,GACnC,IAAU89I,EAAG3kE,OAAO,CAACu8F,EAAQC,KACvBD,EAAO38H,OAASy8H,EAAeC,KACjCn9C,EAAWwlB,EAAGH,aAAa39I,MAAM21K,GAAWD,EAAO38H,MAErD08H,UAGJvyK,EAAMu1H,KAAOH,EACbp1H,EAAMw1H,SAAU,EAChB,IAAQJ,GAAaxhI,IACf7E,OAAOD,KAAK8E,GAAOlE,OAAS,IAC9BsQ,EAAMw1H,SAAU,MAKtBk9C,YAAYrvB,GACVA,EAAaptE,MAAMpiF,KAAK,IAAImnJ,EAAAA,iDAG9B23B,eAAetvB,EAAcjzH,GAC3BizH,EAAaptE,MAAM/iB,OAAO9iC,EAAO,GACjCngC,KAAK8hL,0BAIPa,cAAcvvB,GACZA,EAAanJ,YAAYrmJ,KAAK,IAAIqnJ,EAAAA,uDAGpC23B,qBAAqBxvB,GACfA,EAAa5I,aAAax/I,OAAShL,KAAK06K,kBAAkBlxB,OAC5D4J,EAAanJ,YAAYrmJ,KAAK,IAAI0vJ,EAAAA,uDAGhCF,EAAa5I,aAAax/I,OAAShL,KAAK06K,kBAAkBjxB,SAC5D2J,EAAanJ,YAAYrmJ,KAAK,IAAI4vJ,EAAAA,yDAItCqvB,sBAAsBzvB,GACpBA,EAAanJ,YAAYrmJ,KAAK,IAAI2vJ,EAAAA,wDAGpCuvB,iBAAiB1vB,EAAcjzH,GAC7BizH,EAAanJ,YAAYhnF,OAAO9iC,EAAO,GAIzC4iJ,yBACE,OACE/iL,KAAK+P,MAAMolF,kBACVn1F,KAAK2T,WAAWgiI,WAAa31I,KAAKgjL,gBACnChjL,KAAK+P,MAAMkzK,gBACXjjL,KAAK+P,MAAMmzK,eACXljL,KAAK+P,MAAMo1H,WAAW48C,aAAax8C,QAIvCikC,eACExpK,KAAK+P,MAAMkzK,oBAAwHpxK,IAAvG,IAAO7R,KAAKgkI,eAAgBrB,GAAiBA,EAAa9C,UAAUhzH,OAAS7M,KAAK2T,WAAW9G,OACzH7M,KAAK+P,MAAMmzK,cAAgB,SAASz4K,KAAKzK,KAAK2T,WAAW9G,MAG3Dm2K,eACE,QACEhjL,KAAK+P,MAAMyuF,aAAex+F,KAAK2T,WAAWqhF,UAC1Ch1F,KAAK+P,MAAM2uF,gBAAkB1+F,KAAK2T,WAAWghF,aACf,IAA7B30F,KAAK2T,WAAWqhF,UAAkD,IAAhCh1F,KAAK2T,WAAWghF,aAOvDwuF,gBACMnjL,KAAK2T,WAAWqhF,SAAWh1F,KAAK0yC,SAASsiD,WAC3Ch1F,KAAK2T,WAAWqhF,SAAWh1F,KAAK0yC,SAASsiD,UAEvCh1F,KAAK2T,WAAWghF,YAAcm2C,EAAAA,QAAAA,eAAmD9qI,KAAK0yC,SAASiiD,eACjG30F,KAAK2T,WAAWghF,YAAcm2C,EAAAA,QAAAA,eAAmD9qI,KAAK0yC,SAASiiD,cAKnGyuF,qBACE,OAAOpjL,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACEn1F,KAAKmjL,gBACL,MAAM9/B,EAAQrjJ,KAAK+qE,eAAegmB,iBAAiB5oC,SACnDnoD,KAAK2T,WAAWkgI,MAAQwP,QAClBrjJ,KAAK8hI,8BAA8BppF,OAAO14C,KAAK2T,YACrD3T,KAAKyqB,cAAcF,QAAQ,iCAAkCvqB,KAAK2T,WAAW9G,MAC7E7M,KAAK0oD,OAAOr8B,GAAG,4BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAR3C,QAUE9a,KAAK+P,MAAMolF,kBAAmB,MAOpCkuF,eACE,OAAOrjL,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKoiL,mBAAqBpiL,KAAKgsJ,yBAAyBrtI,MACxD,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAO/CsnH,mBACE,OAAOpiI,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKgkI,oBAAsBhkI,KAAK8hI,8BAA8BnjH,MAC9D,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAO/CwoK,gBACE,OAAOtjL,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK8mE,iBAAmB9mE,KAAK25D,gBAAgBmN,WAAW9mE,KAAK+W,SAASxK,IACtE,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAO/CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+qE,eAAesoC,uBAAuB,CAAC,4BAC5C,MAAMt8F,EAAW/W,KAAK+W,SACtB/W,KAAK0yC,SAAW+iG,EAAAA,gCAChBz1I,KAAK2T,WAAa,IAAI6hI,EAAAA,iCAAiCx1I,KAAK0yC,UAC5D1yC,KAAK2T,WAAW++G,WAAa1yH,KAAK+W,SAASxK,GAC3CvM,KAAK2T,WAAWgiI,UAAW,EAC3B31I,KAAK2T,WAAWiiI,eAAiB0B,EAAAA,QAAAA,uCAAuEt3I,KAAK+W,SAASke,WAAWqrG,cAAcsV,gBAE/I51I,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBuJ,gBAAiB,EACjBF,aAAc,EACd+pE,mBAAoB,CAAC,KAAM,KAAM,MACjCj1D,WAAW,EACX2vE,gBAAgB,EAChBC,eAAe,EACfK,cAAexsK,EAASke,WAAWqrG,cAAc2T,eAAex0I,OAChE8mJ,0BAA2BxvI,EAASke,WAAWqrG,cAAci7C,yBAC7DiI,6BAA8BzsK,EAASke,WAAWqrG,cAAck7C,6BAChE3T,gBAAiB9wJ,EAASke,WAAWqrG,cAAcyxC,gBACnD5sC,WAAY,CACV48C,aAAc,IAAIr8C,EAAAA,oCAEpBz7H,QAASjK,KAAK+qE,eAAe9gE,WAG/B,MAAMoa,QAAcrkB,KAAK25J,sBAAsBh7I,YACzC3e,KAAKoiI,mBAEX,MAAMqhD,EAAqB34C,EAAAA,QAAAA,0BACzBzmH,EACArkB,KAAKgkI,cACL,GACAhkI,KAAK+P,MAAMw2I,0BACXvmJ,KAAK+P,MAAMyzK,8BAQb,GANAxjL,KAAK+P,MAAMyuF,aAAeilF,EAAmBzlE,IAC7Ch+G,KAAK+P,MAAM2uF,gBAAkB+kF,EAAmB1gG,OAC5C/iF,KAAK+P,MAAMw2I,4BACbvmJ,KAAK2T,WAAWgiI,UAAW,GAGzB31I,KAAK+P,MAAMwzK,cAAe,OACtBvjL,KAAKqjL,eACX,MAAMjI,EAAiBrkK,EAASke,WAAWqrG,cAAc2T,eACzDj0I,KAAK2T,WAAWsgI,eAAiBE,EAAAA,2BAAAA,2BAAsDinC,GAGzF,IAAUp7K,KAAK2T,WAAWsgI,gBAAiB0W,IACjB,IAApBA,EAAG3kE,MAAMvmF,QACXkrJ,EAAG3kE,MAAMpiF,KAAK,IAAImnJ,EAAAA,0DAIhB/qJ,KAAKsjL,gBACX,MAAOxoK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAzD3C,QA2DE9a,KAAK+P,MAAMujG,WAAY,O,6KAQ/B,a,sFC7RA19F,QAAQ5W,OAAO,wBAAwBkW,WAAW,qDAAlD,2CAAwG,SAAUE,EAAQkoD,EAAaC,GACrI3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb19D,KAAK2/D,yBAA2B,WAC9BpC,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,KAIvB/9D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAOA,EAAKkrG,MAAM9/I,OAAS,GAG7BO,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBCvET,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,2CAA4C,CAC3F2qC,YAAaD,EACbrrC,WAAY,qDACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,sBCZrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,6BAA8B,CAC7E2qC,YAAaD,EACbrrC,WAAY,mCACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,ubCkBd,MAAM2sK,EAGJzjI,YACEC,EACAwI,EACAtzC,EACA21D,EACAtgD,EACAm+B,EACAlH,EACAiY,EACAggG,EACArN,EACAwX,EACAhiC,EACA+gC,EACAlG,EACAoB,EACA/R,EACA8Z,GAEAhnK,OAAOM,OAAOY,KAAM,CAClBkgD,OAAAA,EACAwI,OAAAA,EACAtzC,OAAAA,EACA21D,eAAAA,EACAtgD,cAAAA,EACAm+B,aAAAA,EACAlH,aAAAA,EACAiY,gBAAAA,EACAggG,sBAAAA,EACArN,yBAAAA,EACAwX,+BAAAA,EACAhiC,8BAAAA,EACA+gC,uBAAAA,EACAlG,qBAAAA,EACAoB,6BAAAA,EACA/R,yBAAAA,EACA8Z,wBAAAA,IAGF9lK,KAAK06K,kBAAoBnxB,EAAAA,4BACzBvpJ,KAAK2jL,sBAAwBluC,EAAAA,gCAE7Bz1I,KAAKyhL,iBAAmBxmK,EAAAA,GAAAA,2BACxBjb,KAAK4jL,sBAAwB3oK,EAAAA,GAAAA,gCAE7Bjb,KAAK6jL,wBAA0B7jL,KAAK6jL,wBAAwBxkL,KAAKW,MACjEA,KAAKqyK,UAAYryK,KAAKqyK,UAAUhzK,KAAKW,MACrCA,KAAK8jL,2BAA6B9jL,KAAK8jL,2BAA2BzkL,KAAKW,MACvEA,KAAK0hL,qBAAuB1hL,KAAK0hL,qBAAqBriL,KAAKW,MAI7D8jL,2BAA2BpuJ,GACzB,OAAO11B,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK2T,WAAW+hI,sBAAwBhgH,KAI5CgsJ,qBAAqB3uC,EAAkBl6H,GACrC7Y,KAAKoV,OAAOE,YAAW,KACrBtV,KAAK2T,WAAWiiI,eAAiB51I,KAAK2T,WAAWiiI,eAAez3I,KAAK0jL,GAAYA,EAAOh1K,OAASkmI,EAAmB8uC,EAAS,IAAKA,EAAQ3tC,SAAUr7H,QAKxJipK,0BACE,MAAM/xK,EAAQ/P,KAAK+P,MAAMo1H,WAAW48C,aAE9BgC,EAAiB,IAAU/jL,KAAKoiL,gBAAiBpiL,KAAKupI,WACtD44C,EAAW,IAAU4B,EAAgB,SAErC/B,EAAQ,IAAUhiL,KAAK2T,WAAWsgI,eAAgB,SAClD+vC,EAAsB,IAAShC,EAAO,CAAEhvC,eAAe,IACvDivC,EAAY,IAAM+B,EAAqB,QACvC3B,EAAiBh9C,EAAAA,QAAAA,cAA6C48C,GACpE,IAAUA,GAAW,CAACjrI,EAAM2zB,UACb94D,IAATmlC,GAAsB,IAAWmrI,EAAUnrI,KAC7CqrI,EAAe13G,GAAO3zB,MAG1B,MAAMitI,EAAsBnlL,OAAOuI,OAAOg7K,GAC1CtyK,EAAMw1H,SAAU,EAChB,IAAUvlI,KAAK2T,WAAWsgI,gBAAiB0W,IACzC,IAAUA,EAAG3kE,OAAQu8F,IACf,IAAW0B,EAAqB1B,EAAO38H,QAAkC,IAAzB28H,EAAOvvC,eACzDuvC,EAAO2B,WAAY,EACnBn0K,EAAMw1H,SAAU,GAEhBg9C,EAAO2B,WAAY,QAM3BzB,YAAYrvB,GACVA,EAAaptE,MAAMpiF,KAAK,IAAImnJ,EAAAA,iDAG9B23B,eAAetvB,EAAcjzH,GACtBizH,EAAaptE,MAAM7lD,GAAOk2G,MAG7B+c,EAAaptE,MAAM/iB,OAAO9iC,EAAO,GAFjCizH,EAAaptE,MAAM7lD,GAAO6yG,eAAgB,EAI5ChzI,KAAK8hL,0BAGPqC,gBAAgBntI,GACTA,EAAKq/F,QACRr/F,EAAKg8F,eAAgB,GAMzB2vC,cAAcvvB,GACZA,EAAanJ,YAAYrmJ,KAAK,IAAIqnJ,EAAAA,uDAGpC23B,qBAAqBxvB,GACfA,EAAa5I,aAAax/I,OAAShL,KAAK06K,kBAAkBlxB,OAC5D4J,EAAanJ,YAAYrmJ,KAAK,IAAI0vJ,EAAAA,uDAGhCF,EAAa5I,aAAax/I,OAAShL,KAAK06K,kBAAkBjxB,SAC5D2J,EAAanJ,YAAYrmJ,KAAK,IAAI4vJ,EAAAA,yDAItCqvB,sBAAsBzvB,GACpBA,EAAanJ,YAAYrmJ,KAAK,IAAI2vJ,EAAAA,wDAGpCuvB,iBAAiB1vB,EAAcjzH,GAC7BizH,EAAanJ,YAAYhnF,OAAO9iC,EAAO,GAIzComI,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,eAAgBrmI,GAGnDikJ,yBACE,OACEpkL,KAAK+P,MAAMolF,kBACVn1F,KAAK2T,WAAWgiI,WAAa31I,KAAKgjL,gBACnChjL,KAAK+P,MAAMo1H,WAAW48C,aAAax8C,SACnCvlI,KAAK+P,MAAMs0K,kBAAoBrkL,KAAK2T,WAAWihI,cAInDouC,eACE,QACEhjL,KAAK+P,MAAMyuF,aAAex+F,KAAK2T,WAAWqhF,UAC1Ch1F,KAAK+P,MAAM2uF,gBAAkB1+F,KAAK2T,WAAWghF,aACf,IAA7B30F,KAAK2T,WAAWqhF,UAAkD,IAAhCh1F,KAAK2T,WAAWghF,aAOvDwuF,gBACMnjL,KAAK2T,WAAWqhF,SAAWygD,EAAAA,gCAAAA,WAC7Bz1I,KAAK2T,WAAWqhF,SAAWygD,EAAAA,gCAAAA,UAEzBz1I,KAAK2T,WAAWghF,YAAcm2C,EAAAA,QAAAA,eAAmD2K,EAAAA,gCAAAA,eACnFz1I,KAAK2T,WAAWghF,YAAcm2C,EAAAA,QAAAA,eAAmD2K,EAAAA,gCAAAA,cAIrFrjB,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAC3B7xH,KAAKumK,UAAU,GAGjB+d,8BACE,GAAItkL,KAAK2T,WAAWgiI,UAAY31I,KAAKs1I,SAAU,CAC7C,MAAM9M,EAAWxoI,KAAK2T,WAAWqhF,SAC3BJ,EAAck2C,EAAAA,QAAAA,WAA+C9qI,KAAK2T,WAAWghF,aACnF,GAAI6zC,EAAWxoI,KAAKs1I,SAAStgD,UAAYJ,EAAc50F,KAAKs1I,SAAS3gD,YACnE,OAAO,EAGX,OAAO,EAIoB,8BAACwrE,EAAeC,GAC3CpgK,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACEn1F,KAAKmjL,sBACCnjL,KAAK8hI,8BAA8B92E,MAAMm1G,EAAeC,GAC9DpgK,KAAKyqB,cAAcF,QAAQ,iCAAkCvqB,KAAKo4I,KAAKvY,UAAUhzH,MACjF7M,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAN3C,QAQE9a,KAAK+P,MAAMolF,kBAAmB,GAIlCovF,qBACE,MAAMC,EAAoB,IAASxkL,KAAK2T,WAAWsgI,eAAgB,CAAE4W,aAAa,EAAM3W,UAAU,IAC5FuwC,EAAqB,IAASzkL,KAAK8mE,WAAY,CAAE49G,YAAY,EAAM1pG,SAAS,IAC5E2pG,EACG3kL,KAAKskL,8BADRK,EAEkC,IAA7BH,EAAkB/kL,OAFvBklL,EAGsC,IAA9BF,EAAmBhlL,OAGjC,KAAIklL,GAAkBA,GAAoBA,GAkBxC,OAAO3kL,KAAKkgD,OAAOlgD,KAAK6jL,wBAAyB7jL,KAAKyuK,gBAAiBzuK,KAAK2T,YAlBf,CAC7D,MAAMixK,EAAW,CACf9wC,MACE,sNACFhP,QAAS,2IACTh+D,WACE,8LAEE+9G,EAAoB,GAAEF,EAAiBC,EAAS9wC,MAAQ,aAAe,aAC3E6wC,EAAmBC,EAAS9/C,QAAU,aAAe,aACrD6/C,EAAsBC,EAAS99G,WAAa,aAAe,qCAE7D9mE,KAAK0hD,aAAa95B,cAAci9J,GAAmBl+J,IACjD,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAK6jL,wBAAyB7jL,KAAKyuK,gBAAiBzuK,KAAK2T,gBAQrD,kCAC7B,MAAM1G,EAAUjN,KAAK0lJ,SACjB,2KACA,kJAEJ,OAAO,IAAIzpI,SAASld,IAClBiB,KAAK0hD,aAAa95B,cAAc3a,EAASlO,MAI7C+lL,qBACE,OAAO9kL,KAAKkgD,QAAO2F,UACjB,IACE,MAAMk/G,EAAgB/kK,KAAK0oD,OAAOl9C,OAAOlN,GAIzC,GAHA0B,KAAK+P,MAAMolF,kBAAmB,SAENn1F,KAAK+kL,4BAE3B,aAEI/kL,KAAK8hI,8BAA8Bg8B,aAAa99J,KAAK+W,SAASxK,GAAIw4J,GAAgB/kK,KAAK0lJ,UAE7F1lJ,KAAKyqB,cAAcF,QAAQ,iCAAkCw6I,GAC7D/kK,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAb3C,QAeE9a,KAAK+P,MAAMolF,kBAAmB,MAMpC29E,mBACE,OAAO9yK,KAAK+P,MAAMgjK,kBAIpBV,YACE,OAAOryK,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMqjK,eAAgB,EAC3BpzK,KAAKu6D,aAAev6D,KAAK6iK,uBAAuBlkJ,IAAI3e,KAAKo4I,KAAKvY,UAAUhzH,MACxE7M,KAAK+P,MAAMgjK,kBAAoBM,EAAAA,QAAAA,aAAmCrzK,KAAKu6D,QACvE,MAAOz/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAL3C,QAOE9a,KAAK+P,MAAMqjK,eAAgB,MAOjCjN,kBACE,OAAOnmK,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAM4mK,qBAAsB,EACjC32K,KAAKw8I,mBAAqBx8I,KAAK+9J,6BAA6Bp/I,IAAI3e,KAAKo4I,KAAKvY,UAAUhzH,MACpF7M,KAAKw8I,aAAe,IAAMx8I,KAAKw8I,cAAele,IAC5C,MAAMu4C,EAAsB/rC,EAAAA,QAAAA,2BAA+DxM,EAAIqM,MAM/F,OALArM,EAAItgB,IAAM64D,EAAoB74D,IAC9BsgB,EAAIv7C,OAAS8zF,EAAoB9zF,OAC7B/iF,KAAK2T,WAAWihI,cAAgB,GAAyB,iBAApBtW,EAAI4M,aAC3ClrI,KAAK+P,MAAMs0K,oBAEN/lD,KAELt+H,KAAK2T,WAAWihI,cAAgB,IAClC50I,KAAK+P,MAAMi1K,mBAAsBhlL,KAAK+P,MAAMs0K,kBAAoBrkL,KAAK2T,WAAWihI,cAAiB,KAG/F50I,KAAK+P,MAAMqtH,wBACPp9H,KAAK82K,iBAAiB92K,KAAKo4I,KAAKvY,UAAUhzH,MAElD,MAAOiO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCApB3C,QAsBE9a,KAAK+P,MAAM4mK,qBAAsB,MAOvC0M,eACE,OAAOrjL,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMk1K,kBAAmB,EAC9B,IACE,MAAM98G,EAAYnoE,KAAKo4I,KAAKvY,UAAUhzH,KACtC7M,KAAKoiL,mBAAqBpiL,KAAKgsJ,yBAAyBrtI,IAAI3e,KAAK+P,MAAMm1K,sBAAwB,GAAK/8G,GACpGnoE,KAAKupI,UAAY,IAASvpI,KAAKoiL,aAAc,CAAEviD,UAAW13D,IAC1D,IAAUnoE,KAAKupI,WAAY86B,IACzBA,EAAIxkC,UAAY13D,EAChB,IAAUk8F,EAAI9kB,OAAQ59F,IACpB,MAAMy6F,EAAc,IAAOp8I,KAAKw8I,aAAc,CAAEzkE,YAAap2B,EAAKo2B,cAClEp2B,EAAKwoF,gBAAkBiS,GAAeA,EAAYvvI,KAAOuvI,EAAYvvI,KAAO,UAGhF,MAAOiO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAZ3C,QAcE9a,KAAK+P,MAAMk1K,kBAAmB,MAOpCxkE,aACE,OAAOzgH,KAAKkgD,QAAO2F,UACjB,IACE,MAAM8sF,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eACxDztE,EAAYnoE,KAAKo4I,KAAKvY,UAAUhzH,KACtC7M,KAAK27D,cAAgB37D,KAAK8lK,wBAAwBnnJ,IAAIwpD,EAAWwqE,GACjE,MAAO73H,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAO/CwoK,gBACE,OAAOtjL,KAAKkgD,QAAO2F,UACjB,IACE,MAAMsiB,EAAYnoE,KAAK0oD,OAAOl9C,OAAOlN,GAErC,GAAI0B,KAAKmlL,QAYP,OAXAnlL,KAAK8mE,iBAAmB9mE,KAAK25D,gBAAgBmN,WAAW9mE,KAAK+W,SAASxK,IACtEvM,KAAK8mE,WAAWjvD,SAAS+vD,IACnBA,EAAI2rC,kBAAoB3rC,EAAI2rC,iBAAiBvzG,KAAK+W,SAASxK,KAAOq7D,EAAI2rC,iBAAiBvzG,KAAK+W,SAASxK,IAAI6nI,WAAWjvI,SAASgjE,KAC/HP,EAAIoT,SAAU,EACdpT,EAAI88G,YAAa,EACjB1kL,KAAK2T,WAAW+5G,WAAW9pH,KAAKgkE,YAIpC5nE,KAAKolL,mBAAqBplL,KAAK2T,WAAW+5G,WAAWvvH,KAAKo4E,GAAMA,EAAE1pE,OAAMM,KAAK,OAK/E,MAAM25D,QAAmB9mE,KAAK25D,gBAAgBmN,WAAW9mE,KAAK+W,SAASxK,GAAI47D,GAC3EnoE,KAAKolL,mBAAqBt+G,EAAW3oE,KAAKo4E,GAAMA,EAAE1pE,OAAMM,KAAK,MAC7D,MAAO2N,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAM/CuqK,yBAAyBxtC,GACvB,IAAKA,EAAG91D,KAEN,YADA81D,EAAGytC,MAAQ,KAGb,MAAM5wC,EAAO3J,GAAAA,CAAgB,GAAE8M,EAAG1X,KAAKp+C,OAAO81D,EAAG1X,KAAKiT,WAAY,CAAEpI,KAAM,KACpEumC,EAAYxmC,GAAAA,CAAgB,GAAE8M,EAAG91D,OAAO81D,EAAGzE,WAAY,CAAEpI,KAAM,KACrE6M,EAAGytC,MAAQxoK,KAAK+3E,MAAO6/C,EAAO68B,EAAa,KAGvB,uBAACppG,GACrB,IACE,MAGMo9G,SAHyBvlL,KAAKssJ,yBAAyBU,QAAQ7kF,IAEjBihD,MAAMiF,SAAS9uH,GAAMA,EAAE+7C,WAAWn9C,KAAK2tB,GAAMA,EAAE8vD,UACzC//D,QAAO,CAACugB,EAAO9vB,KACvE8vB,EAAM4hF,KAAO8sB,EAAAA,QAAAA,SAA6Cx+H,EAAEwxG,KAC5D1hF,EAAM2mD,QAAU+nD,EAAAA,QAAAA,eAAmDx+H,EAAE2sB,QAC9DmD,IACN,IAAIgqH,EAAAA,+BACPpmJ,KAAK+P,MAAMinK,cAAgBuO,EAC3B,MAAOzqK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gDAK7CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKiK,QAAUjK,KAAK+qE,eAAe9gE,UACnCjK,KAAKmlL,QAAUnlL,KAAK+qE,eAAezrD,kBAAkB,CAAC,4BAEtDtf,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBuJ,gBAAiB,EACjBF,aAAc,EACd+pC,SAAU,EACVE,YAAa,EACbouC,oBAAqB,CAAE74D,IAAK,EAAGj7B,OAAQ,GACvC6oB,UAAW,EACX+6D,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClC+tH,eAAe,EACfuhD,eAAe,EACfuD,qBAAqB,EACrBsO,kBAAkB,EAClB3xE,WAAW,EACXy/D,kBAAmB,EACnBwQ,cAAevjL,KAAK+W,SAASke,WAAWqrG,cAAc2T,eAAex0I,OACrE8mJ,0BAA2BvmJ,KAAK+W,SAASke,WAAWqrG,cAAci7C,yBAClEiI,6BAA8BxjL,KAAK+W,SAASke,WAAWqrG,cAAck7C,6BACrE3T,gBAAiB7nK,KAAK+W,SAASke,WAAWqrG,cAAcyxC,gBACxD30C,iBAAkBp9H,KAAK+W,SAASke,WAAWqrG,cAAc0xC,iBACzDkT,sBAAuBllL,KAAK+qE,eAAezrD,kBAAkB,CAAC,4BAC9D+kK,kBAAmB,EACnBW,mBAAoB,EACpBzc,mBAAoB,CAAC,KAAM,KAAM,MACjCpjC,WAAY,CACV48C,aAAc,IAAIr8C,EAAAA,qCAItB1lI,KAAK+P,MAAM67F,UAAY5rG,KAAK4oD,aAAa89G,aAAa,gBAEtD,MAAM5iK,EAAO9D,KAAK0oD,OAAOl9C,OAAOlN,IAEzB+lB,EAAOiiI,EAAOlO,SAAcn8H,QAAQqW,IAAI,CAACtyB,KAAK25J,sBAAsBh7I,MAAO3e,KAAK8hI,8BAA8BnjH,MAAO3e,KAAK8hI,8BAA8BnjH,IAAI7a,KAEnK9D,KAAKo4I,KAAOA,EACZp4I,KAAK2T,WAAa,IAAI6hI,EAAAA,iCAAiCC,EAAAA,iCACvDz1I,KAAK2T,WAAW9G,KAAO7M,KAAKo4I,KAAKvY,UAAUhzH,KAC3C7M,KAAK2T,WAAW++G,WAAa1yH,KAAK+W,SAASxK,GAC3CvM,KAAK2T,WAAW2+H,SAAWtyI,KAAKo4I,KAAKvY,UAAUyS,SAE/C,MAAMmxC,EAAqB34C,EAAAA,QAAAA,0BACzBzmH,EACAiiI,EACAxiJ,EACA9D,KAAK+P,MAAMw2I,0BACXvmJ,KAAK+P,MAAMyzK,8BAEbxjL,KAAK+P,MAAMyuF,aAAeilF,EAAmBzlE,IAC7Ch+G,KAAK+P,MAAM2uF,gBAAkB+kF,EAAmB1gG,OAEhD,MAAM+wD,EAAQ9zI,KAAKo4I,KAAKwO,MAmBxB,GAlBI9S,IACF9zI,KAAKs1I,SAAW1/H,IAAAA,KAAak+H,GAC7B9zI,KAAK2T,WAAaogI,EAAAA,QAAAA,8BAA+DD,GACjF9zI,KAAK2T,WAAW++G,WAAa1yH,KAAK+W,SAASxK,GAE3CvM,KAAK+P,MAAM8mK,oBAAoB74D,IAAM81B,EAAMa,aAC3C30I,KAAK+P,MAAM8mK,oBAAoB9zF,OAAS+nD,EAAAA,QAAAA,eAAmDgJ,EAAMW,kBAEnGz0I,KAAK0lJ,SAAWnnB,EAAAA,QAAAA,kBAA4Cv+H,KAAKo4I,KAAKvY,UAAUhzH,MAChF7M,KAAKwlL,mBAAqBjnD,EAAAA,QAAAA,mBAA6Cv+H,KAAKo4I,KAAKvY,UAAUhzH,MAC3F7M,KAAKylL,YAAczlL,KAAK0lJ,WAAa1lJ,KAAKwlL,mBAEtCxlL,KAAKylL,aAAezlL,KAAK+P,MAAMw2I,4BACjCvmJ,KAAK2T,WAAWgiI,UAAW,SAEvB31I,KAAKqyK,kBACLryK,KAAKmmK,kBAEPnmK,KAAK+P,MAAMwzK,cAAe,OACtBvjL,KAAKqjL,eACX,MAAMjI,EAAiBp7K,KAAK+W,SAASke,WAAWqrG,cAAc2T,eAC9Dj0I,KAAK2T,WAAWsgI,eAAiBE,EAAAA,2BAAAA,2BAAsDinC,EAAgBp7K,KAAKupI,WAC5G,IAAUvpI,KAAK2T,WAAWsgI,gBAAiB0W,IACjB,IAApBA,EAAG3kE,MAAMvmF,QACXkrJ,EAAG3kE,MAAMpiF,KAAK,IAAImnJ,EAAAA,0DAIlB/qJ,KAAKygH,aACX,MAAMkyB,EAAiB2E,EAAAA,QAAAA,uCAAuEt3I,KAAK+W,SAASke,WAAWqrG,cAAcsV,gBACrI,IAASjD,GAAiBkF,GAAO,IAAO73I,KAAK2T,WAAWiiI,eAAgB,CAAE/oI,KAAMgrI,EAAGhrI,SACnF7M,KAAK2T,WAAWiiI,eAAiB,IAAS51I,KAAK2T,WAAWiiI,eAAgBjD,GAC1E,IAAU3yI,KAAK2T,WAAWiiI,gBAAiBiC,IACzC,MAAMl8E,EAAU,IAAS37D,KAAK27D,QAAS,CAAC,8BAA+B37D,KAAKo4I,KAAKvY,UAAUhzH,OACrF6nI,EAAO,IACX/4E,GACA,CAACiwG,EAAK8Z,IACG9Z,EAAM7gC,GAAAA,CAAe26C,EAAInyC,sBAAsBV,QAAS,CAAE7H,KAAM,MAEzE,GAEF6M,EAAG1X,KAAOgV,EAAAA,QAAAA,YAA0CT,GACpD10I,KAAKqlL,yBAAyBxtC,YAG1B73I,KAAKsjL,gBAEXtjL,KAAKyuK,gBAAkB74J,IAAAA,KAAa5V,KAAK2T,YACzC,MAAOmH,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAzG3C,QA2GE9a,KAAK+P,MAAMujG,WAAY,MAO7Bj/E,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,eAAgB,I,gXAKvD,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,mCAAoCwuK,I,qBCpjBtF,MAAMnjI,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,8BAA+B,CAC9E2qC,YAAaD,EACbrrC,WAAY,oCACZklD,aAAc,OACdrlD,SAAU,CACRgC,SAAU,Q,kECLd,MAAM4uK,EAEJ1lI,YAAYC,EAAQwI,EAAQj+B,EAAei3B,EAAcogF,EAA+BhF,GACtF98H,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK0hD,aAAeA,EACpB1hD,KAAK8hI,8BAAgCA,EACrC9hI,KAAK88H,2BAA6BA,EAElC98H,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKoiI,iBAAmBpiI,KAAKoiI,iBAAiB/iI,KAAKW,MACnDA,KAAK4lL,sBAAwB5lL,KAAK4lL,sBAAsBvmL,KAAKW,MAC7DA,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MAGhC,wBAAC8pC,GACtB,IAAIi4B,EAAcj4B,EAAcrqC,OAChC,IAAK,MAAM24I,KAAQtuG,EACjB,IACkD,gBAA1BsuG,EAAKvY,UAAU5mH,cAElBjZ,KAAK88H,2BAA2BsmC,aAAahrB,EAAKvY,UAAUhzH,OAC1Em5C,SAAShqC,MAAK6pC,MAAAA,IACf,MAAMhpC,EAAIrX,KAAKwZ,MAAMmpD,EAAU1jE,MAC3BoY,EAAE2sH,MAAQ3sH,EAAE2sH,KAAKq8C,mBACZhpK,EAAE2sH,KAAKq8C,iBAEV7lL,KAAK88H,2BAA2BumC,oBAAoBxmJ,YAGtD7c,KAAK8hI,8BAA8B3gF,OAAOi3F,GAElDp4I,KAAKyqB,cAAcF,QAAQ,iCAAkC6tH,EAAKvY,UAAUhzH,MAC5E,MAAMszB,EAAQngC,KAAKgkI,cAAcn+H,QAAQuyI,GACzCp4I,KAAKgkI,cAAc/gE,OAAO9iC,EAAO,GACjC,MAAOrlB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAlB3C,UAoBIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAMvC4gC,aAAajzB,GACX,MAAMg8I,EAAkBh8I,EAAcn5B,MAAMynI,GAAmC,gBAA1BA,EAAKvY,UAAU5mH,SAC9DhM,EAAU64K,EACZ,6PACA,oKACJ9lL,KAAK0hD,aAAaj6B,iBAAiBq+J,EAAkB,0BAA4B,gBAAiB74K,GAAU0Z,IAC1G,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,MAKtB,8BACzB,IACE9pC,KAAKgkI,oBAAsBhkI,KAAK8hI,8BAA8BnjH,MAC9D,MAAO7D,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAI7CsnH,mBACE,OAAOpiI,KAAKkgD,OAAOlgD,KAAK4lL,uBAGd,eACV5lL,KAAK+P,MAAQ,CACXujG,WAAW,SAGPtzG,KAAKoiI,mBAEXpiI,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,0HAI5B,YACA9qH,IAAAA,OAAe,wBAAwBV,WAAW,oCAAqCywK,I,+DCvFvF/vK,GAAAA,OAAe,wBAAwBV,WAAW,yCAA0C,CAC1F,SACA,mBACA,kBACA,aACA,gBACA,SAAUE,EAAQuvC,EAAkBgV,EAAiBosH,EAAYt7J,GAyH/D,SAASu7J,EAAen3H,GACtBA,EAAKo3H,WAAaC,EAAcr3H,GAChCz5C,EAAO+wK,mBAGT,SAASD,EAAc1uK,GACrB,MAAM4uK,EAAY5uK,EAAIlF,QAAQ+hC,GACZ,KAATA,IAET,OAAO,IAAIrJ,IAAIo7I,GAAWp3K,OAASo3K,EAAU3mL,OA6C/C,SAAS4mL,IACP,MAAMC,EAAsBlxK,EAAOzB,WAAWojD,aAAauvH,oBAAoBh0K,QAAQ+hC,GACrE,KAATA,IAEHkyI,EAA2BnxK,EAAOzB,WAAWojD,aAAawvH,yBAAyBj0K,QAAQ+hC,GAC/E,KAATA,IAET,IAAK,IAAI90C,EAAI,EAAGA,EAAI+mL,EAAoB7mL,OAAQF,IAC9C,IAAK,IAAIs6E,EAAI,EAAGA,EAAI0sG,EAAyB9mL,OAAQo6E,IACnD,GAAIysG,EAAoB/mL,KAAOgnL,EAAyB1sG,GAGtD,OAFAzkE,EAAOzB,WAAWojD,aAAakvH,YAAa,OAC5C7wK,EAAO+wK,mBAKb/wK,EAAOzB,WAAWojD,aAAakvH,YAAa,EAC5C7wK,EAAO+wK,mBAiCT,SAASK,IACP,MAAMx9G,EAAO5zD,EAAOzB,WAEfq1D,EAAKy9G,UAAU5tK,UAClBmwD,EAAKy9G,UAAUC,aAAc,EAC7B19G,EAAKy9G,UAAU1pK,IAAM,EACrBisD,EAAKy9G,UAAUrkJ,IAAM,GAElB4mC,EAAK29G,YAAY9tK,UACpBmwD,EAAK29G,YAAYC,aAAe,IAE7B59G,EAAK69G,eAAehuK,UACvBmwD,EAAK69G,eAAeC,aAAe,IAEhC99G,EAAK+9G,iBAAiBluK,UACzBmwD,EAAK+9G,iBAAiBC,eAAiB,IAEpCh+G,EAAK/8D,MAAM4M,UACdmwD,EAAK/8D,MAAMg7K,UAAUl9K,KAAO,WAC5Bi/D,EAAK/8D,MAAMg7K,UAAUC,QAAU,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,IAC/CisD,EAAK/8D,MAAMk7K,WAAWp9K,KAAO,WAC7Bi/D,EAAK/8D,MAAMk7K,WAAWD,QAAU,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,IAChDisD,EAAK/8D,MAAMm7K,mBAAmBr9K,KAAO,WACrCi/D,EAAK/8D,MAAMm7K,mBAAmBF,QAAU,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,IACxDisD,EAAK/8D,MAAMo7K,SAASt9K,KAAO,WAC3Bi/D,EAAK/8D,MAAMo7K,SAASH,QAAU,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,KAE3CisD,EAAKjS,aAAal+C,UACrBmwD,EAAKjS,aAAauvH,oBAAsB,GACxCt9G,EAAKjS,aAAawvH,yBAA2B,IAE1Cv9G,EAAKs+G,QAAQzuK,UAChBmwD,EAAKs+G,QAAQhB,oBAAsB,IAEhCt9G,EAAKu+G,SAAS1uK,UACjBmwD,EAAKu+G,SAASC,aAAe,CAAC,oBAE3Bx+G,EAAKy+G,QAAQ5uK,UAChBmwD,EAAKy+G,QAAQC,YAAc,CAAC,oBAEzB1+G,EAAK2+G,qBAAqB9uK,UAC7BmwD,EAAK2+G,qBAAqBpB,yBAA2B,IAzQzDnxK,EAAOrF,MAAQ,CACbujG,WAAW,EACXne,kBAAkB,GAGpB//E,EAAOzB,WAAa,CAClBkF,SAAS,EACT+uK,qBAAsB,CACpB/uK,SAAS,GAEXgvK,eAAgB,CACdhvK,SAAS,GAEX4tK,UAAW,CACT5tK,SAAS,EACT6tK,aAAa,EACb3pK,IAAK,EACLqlB,IAAK,GAEPukJ,YAAa,CACX9tK,SAAS,EACT+tK,aAAc,IAEhBC,eAAgB,CACdhuK,SAAS,EACTiuK,aAAc,IAEhBC,iBAAkB,CAChBluK,SAAS,EACTmuK,eAAgB,IAElB/6K,MAAO,CACL4M,SAAS,EACTouK,UAAW,CACTl9K,KAAM,WACNm9K,QAAS,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,KAE3BoqK,WAAY,CACVp9K,KAAM,WACNm9K,QAAS,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,KAE3BqqK,mBAAoB,CAClBr9K,KAAM,WACNm9K,QAAS,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,KAE3BsqK,SAAU,CACRt9K,KAAM,WACN+9K,KAAM,GACNZ,QAAS,CAAC,CAAE9kJ,IAAK,EAAGrlB,IAAK,MAG7BgrK,yBAA0B,CACxBlvK,SAAS,GAEXk+C,aAAc,CACZl+C,SAAS,EACTytK,oBAAqB,GACrBC,yBAA0B,IAE5Be,QAAS,CACPzuK,SAAS,EAETytK,oBAAqB,IAEvB0B,eAAgB,CACdnvK,SAAS,EACTovK,cAAe,WAEjBV,SAAU,CACR1uK,SAAS,EACT2uK,aAAc,CAAC,oBAEjBC,QAAS,CACP5uK,SAAS,EACT6uK,YAAa,CAAC,oBAEhBC,qBAAsB,CACpB9uK,SAAS,EACT0tK,yBAA0B,KAI9BnxK,EAAO6wK,YAAa,EACpB7wK,EAAO+wK,iBAAmB,WACxB/wK,EAAO6wK,WACJ7wK,EAAOzB,WAAWgzK,YAAY9tK,SAAWzD,EAAOzB,WAAWgzK,YAAYC,aAAaX,YACpF7wK,EAAOzB,WAAWkzK,eAAehuK,SAAWzD,EAAOzB,WAAWkzK,eAAeC,aAAab,YAC1F7wK,EAAOzB,WAAWozK,iBAAiBluK,SAAWzD,EAAOzB,WAAWozK,iBAAiBC,eAAef,YAChG7wK,EAAOzB,WAAWojD,aAAal+C,UAC7BzD,EAAOzB,WAAWojD,aAAakvH,YAC9B7wK,EAAOzB,WAAWojD,aAAauvH,oBAAoBL,YACnD7wK,EAAOzB,WAAWojD,aAAawvH,yBAAyBN,aAC3D7wK,EAAOzB,WAAW2zK,QAAQzuK,SAAWzD,EAAOzB,WAAW2zK,QAAQhB,oBAAoBL,YACnF7wK,EAAOzB,WAAW4zK,SAAS1uK,SAAWzD,EAAOzB,WAAW4zK,SAASC,aAAavB,YAC9E7wK,EAAOzB,WAAW8zK,QAAQ5uK,SAAWzD,EAAOzB,WAAW8zK,QAAQC,YAAYzB,YAC3E7wK,EAAOzB,WAAWg0K,qBAAqB9uK,SAAWzD,EAAOzB,WAAWg0K,qBAAqBpB,yBAAyBN,YAGvH7wK,EAAO8yK,QAAU,SAAUr5H,EAAMxa,GAC1Bwa,IACHA,EAAO,IAET3kC,QAAQkgD,IAAI/1B,GACZwa,EAAKjrD,KAAKywC,IAGZj/B,EAAO+yK,WAAa,SAAUt5H,EAAM1uB,GAC9B0uB,GAAQA,EAAKpvD,OAAS,GACxBovD,EAAKoU,OAAO9iC,EAAO,GAErB6lJ,EAAen3H,IAGjBz5C,EAAOgzK,WAAa,SAAUv5H,EAAM1uB,EAAOx8B,GACrCkrD,GAAQA,EAAKpvD,OAAS0gC,IACxB0uB,EAAK1uB,GAASx8B,GAEhBqiL,EAAen3H,IAejBz5C,EAAOizK,mBAAqB,WAC1BjzK,EAAOzB,WAAWkzK,eAAeC,aAAaljL,KAAK,CAAE0kL,WAAY,GAAI/gL,UAAU,IAC/E6N,EAAOmzK,iCAGTnzK,EAAOozK,sBAAwB,SAAUroJ,GACvC,MAAM0uB,EAAOz5C,EAAOzB,WAAWkzK,eAAeC,aAC1Cj4H,GAAQA,EAAKpvD,OAAS,GACxBovD,EAAKoU,OAAO9iC,EAAO,GAErB/qB,EAAOmzK,iCAGTnzK,EAAOmzK,8BAAgC,WACrC,MAAM15H,EAAOz5C,EAAOzB,WAAWkzK,eAAeC,aAAa3oL,KAAKk2C,GACvDA,EAAKi0I,aAEdlzK,EAAOzB,WAAWkzK,eAAeC,aAAab,WAAaC,EAAcr3H,GACzEz5C,EAAO+wK,oBAGT/wK,EAAOqzK,gBAAkB,SAAUtlL,GAC7BA,EAAK+jL,QAAQznL,OAAS,IAGR,cAAd0D,EAAK4G,KACP5G,EAAK+jL,QAAQtjL,KAAK,CAAEw+B,IAAK,EAAGrlB,IAAK,IACV,aAAd5Z,EAAK4G,MAAwB5G,IAASiS,EAAOzB,WAAW1H,MAAMm7K,oBAAsBjkL,IAASiS,EAAOzB,WAAW1H,MAAMo7K,UAC9HlkL,EAAK+jL,QAAQtjL,KAAK,CAAEw+B,IAAK,EAAGrlB,IAAK,MAIrC3H,EAAOszK,iBAAmB,SAAU75H,EAAM1uB,GACxC/qB,EAAO+yK,WAAWt5H,EAAM1uB,GACxBkmJ,KAGFjxK,EAAOuzK,iBAAmB,SAAU95H,EAAM1uB,EAAOx8B,GAC/CyR,EAAOgzK,WAAWv5H,EAAM1uB,EAAOx8B,GAC/B0iL,KAuBFjxK,EAAOwzK,iCAAmC,SAAUzoJ,GAClD,MAAM0uB,EAAOz5C,EAAOzB,WAAW2zK,QAAQhB,oBACnCz3H,GAAQA,EAAKpvD,OAAS,GACxBovD,EAAKoU,OAAO9iC,EAAO,GAErB/qB,EAAOyzK,4CAGTzzK,EAAOyzK,yCAA2C,WAChD,MAAMh6H,EAAOz5C,EAAOzB,WAAW2zK,QAAQhB,oBAAoBnoL,KAAKk2C,GACvDA,EAAKy0I,MAAQz0I,EAAKlxC,KAAOkxC,EAAKtqC,KAAOsqC,EAAKhoC,OAEnD+I,EAAOzB,WAAW2zK,QAAQhB,oBAAoBL,WAAaC,EAAcr3H,GACzEz5C,EAAO+wK,oBAGT/wK,EAAOsnD,KAAO,WACZtnD,EAAOrF,MAAMolF,kBAAmB,EAChCqxF,IACAT,EAAWrpH,KAAKtnD,EAAOzB,YACpBqI,MAAK,KACJyO,EAAcF,QAAQ,UAAW,0CACjCnV,EAAOrF,MAAMolF,kBAAmB,KAEjCr4B,OAAOhiD,IACN1F,EAAOrF,MAAMolF,kBAAmB,EAChC1qE,EAAcxc,MAAM,UAAW6M,EAAK,0CAiD1C+qC,iBACE,IAAIkjI,EACJ,MAAMlkI,EAAaF,EAAiBE,cACnCzvC,EAAO2B,SAAUgyK,SAAiB9sK,QAAQqW,IAAI,CAACqnC,EAAgB5iD,SAAS8tC,GAAakhI,EAAWnpJ,WAC7FmsJ,EAAQtkL,KAAKoU,UACf/Z,OAAOM,OAAOgW,EAAOzB,WAAYo1K,EAAQtkL,MACzC+hL,KAEFpxK,EAAOrF,MAAMujG,WAAY,EAG3Blf,O,sBClSJ,MAAM7zC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,yCAA0C,CACzF2qC,YAAaD,EACbrrC,WAAY,4C,qBCJd,MAAMqrC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,0BAA2B,CAC1E2qC,YAAaD,EACbrrC,WAAY,gCACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,Q,6JCHlB,MAAMxlC,EAAS,CAAC,MAAO,SAAU,OAAQ,QAAS,YAAa,OAAQ,YAAa,OAAQ,cAAe,OAAQ,WAAY,YAAa,UAAW,cAEvJ,MAAM++H,EAEJ/oI,YAAYC,EAAQwI,EAAQC,EAAWl+B,EAAeszI,EAA8BpB,EAAsBl7G,EAAWwB,GACnHjjD,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAK2oD,UAAYA,EACjB3oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK+9J,6BAA+BA,EACpC/9J,KAAK28J,qBAAuBA,EAC5B38J,KAAKijD,KAAOA,EACZjjD,KAAKyhD,UAAYA,EAEjBzhD,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK8iG,aAAe9iG,KAAK8iG,aAAazjG,KAAKW,MAC3CA,KAAKipL,oBAAsBjpL,KAAKipL,oBAAoB5pL,KAAKW,MACzDA,KAAKkpL,mBAAqBlpL,KAAKkpL,mBAAmB7pL,KAAKW,MACvDA,KAAKmpL,kBAAoBnpL,KAAKmpL,kBAAkB9pL,KAAKW,MAGvDw1K,oBACMx1K,KAAK+P,MAAMi7G,YACbhrH,KAAKijG,oBAIPjjG,KAAK8iG,eAGPA,eACMltF,IAAAA,UAAkB5V,KAAK+iG,YACzB/iG,KAAK2oD,UAAU7gC,OAAO9nB,KAAK+iG,UAC3B/iG,KAAK+iG,SAAW,MAIpBE,oBACEjjG,KAAK+iG,SAAW/iG,KAAK2oD,UAAU3oD,KAAKmpL,kBAAmBnpL,KAAK+P,MAAMmzF,aAG3C,0BAACgjD,EAAK5uG,GAC7B,MAAM+xF,EAAM,CACV+/C,IAAKljC,EACLmjC,KAAM,IAGR,OADAhgD,EAAIggD,WAAarpL,KAAK28J,qBAAqBvmF,KAAK8vE,EAAIrmB,UAAWqmB,EAAIr5I,KAAMyqC,EAAUzqC,MAC5Ew8H,EAGe,yBAAC/K,GACvB,MAAM+K,EAAM,CACVigD,YAAahrD,EACbqM,KAAM,IAGF/uH,EAAW,IAAU,IAAM0iH,EAAIqM,MAAOub,GAAQ,IAAMA,EAAIpuF,YAAaxgB,GAAct3C,KAAKipL,oBAAoB/iC,EAAK5uG,QACjHjvB,QAAei7I,EAAAA,EAAAA,SAAY1nJ,GAEjC,OADAytH,EAAIsB,KAAOtiH,EAAOo7I,UACXp6B,EAGc,0BACrB,IACE,MAAMmT,QAAqBx8I,KAAK+9J,6BAA6Bp/I,IAAI3e,KAAK+P,MAAM8lK,WAAW1tG,WACjFohH,EAAuB,IAAS/sC,GAAele,GAAQA,EAAIrjF,YAAcj7C,KAAK+P,MAAM8lK,WAAW/xK,OAC/F0lL,EAAe,IAAMD,EAAsBvpL,KAAKkpL,oBAChDzkL,QAAawX,QAAQqW,IAAIk3J,GACzBpzG,EAAO,IAAU3xE,GAAM,CAAC65H,EAAKn+F,IAC1B,IAAUm+F,EAAIqM,MAAOub,GACnB,IAAMA,EAAImjC,MAAOh/G,IACV,CACVo/G,MAAOx/H,EAAO9pB,EAAQ8pB,EAAOxqD,QAC7BiqL,KAAMr/G,EACNs/G,QAASzjC,EAAIkjC,IAAIv8K,aAMzB7M,KAAK4pL,UAAYxzG,EACjB,MAAOt7D,GACP9a,KAAK8iG,eACL9iG,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wCAI7C8vD,eACE,MAAMnmE,EAAO,IAAIzE,KAAKijD,KAAK,CAAEjjD,KAAK6pL,SAAW,IAAS7pL,KAAK4pL,WAAW,CAACp3J,EAAK43C,IAAQ53C,EAAM,KAAO43C,EAAIu/G,QAAU,IAAMv/G,EAAIs/G,MAAM,MAC/H1pL,KAAKyhD,UAAUyB,OAAOz+C,EAAMzE,KAAK+P,MAAM8lK,WAAW/xK,KAAO,aAG/C,eACV9D,KAAK+P,MAAQ,CACXi7G,aAAa,EACb9nB,YAAa,IACbr5B,OAAQ,GACRypC,WAAW,EACXuiE,WAAY,CACV1tG,UAAWnoE,KAAKyvF,aAAajkF,SAAS28D,UACtCrkE,KAAM9D,KAAKyvF,aAAajkF,SAAS1H,OAIrC9D,KAAK4pL,UAAY,GACjB,UACQ5pL,KAAKmpL,oBACX,MAAOruK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAH3C,QAKE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACEr0B,KAAK8iG,gB,mIAIT,YACAltF,IAAAA,OAAe,wBAAwBV,WAAW,gCAAiC8zK,I,qPC5GnF,MAAM,OAAE/0B,EAAF,OAAUC,EAAV,OAAkBC,GAAWH,EAAAA,0BAMpB,SAAS,EAACrgJ,EAAYwsJ,EAAgB,IACnD,GAAIA,aAAyBzxB,EAAAA,gCAAiC,CAC5D,MAAMo7C,EAoEV,SAAwC3pB,EAAeC,GACrD,MAAMrnC,EAAY,IAEXsnC,EAAQC,EAAoBC,EAAaxpB,EAAYypB,GAAap3B,EAAAA,QAAAA,mCAAkE+2B,IACpIM,EAAQC,EAAoBC,EAAa3pB,EAAY4pB,GAAax3B,EAAAA,QAAAA,mCAAkEg3B,GACrI2pB,EAAqBC,EAA2B3pB,GAGtD,GAAI0pB,IAFuBC,EAA2BvpB,GAEP,CAE7C1nC,EAAUn1H,KAAK,CAAEc,OAAQyvJ,EAAQ1U,KAAMsqC,EAAoBjmL,KAAMu8J,EAAOxzJ,OACpEkqI,GAAcwpB,GAEhBxnC,EAAUn1H,KAAK,CAAEc,OAAQyvJ,EAAQ1U,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMizI,EAAWlqI,KAAM9C,KAAMgtI,EAAW/rI,MAAQu0H,EAAAA,uBAAAA,aAG1H,MAAM0qD,EAAoCC,EAA+B9pB,GAEzE,OADArnC,EAAUn1H,QAAQqmL,GACXlxD,EAGT,GAAI0nC,aAAkBxpB,EAAAA,sBAAuB,CAC3C,MAAMkzC,EAAuCC,EAAgC9pB,EAAoBI,GAC7FypB,GACFpxD,EAAUn1H,KAAKumL,OAEZ,CAEL,MAAME,EAAiBzpB,EACpBziK,KAAK80I,IACJ,OAAKA,EAAIE,cAAiBF,EAAI1mI,GAElB0mI,EAAI1mI,QAAT,GAoG8BmnI,EAnGlB,IAAO8sB,EAAW,CAAE3zJ,KAAMomI,EAAIE,eAmGJQ,EAlGUV,EAmG7C/D,EAAAA,QAAAA,aAAsDwE,EAAQC,GAClEl0I,OACH,CAAEiF,OAAQwvJ,EAAQzU,KAAMiU,EAAAA,wBAAAA,wBAAiD5vJ,KAAM4vI,EAAO7mI,MAExF,MA1GQ,CAAEnI,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,wBAAiD5vJ,KAAMmvI,EAAIpmI,MAqGpG,IAA6C6mI,EAAQC,KA/F9CrhI,QAAQ2gI,GAAQA,IACnBla,EAAUn1H,QAAQymL,GAMpB,GAFAtxD,EAAUn1H,KAAK,CAAEc,OAAQwvJ,EAAQzU,KAAMsqC,EAAoBjmL,KAAMu8J,EAAOxzJ,OAEpE0zJ,GAAeI,EAAa,CAE9B,MAAM2pB,EAA+BF,EAAgC7pB,EAAaI,GAOlF,GANqC,OAAjC2pB,GACFA,EAA6BzyK,SAAS0yK,IACpCxxD,EAAUn1H,KAAK2mL,MAIfnqB,EAActxB,iBAAmB3K,EAAAA,qCAAAA,SAAgDg8B,EAAcrxB,iBAAmB3K,EAAAA,qCAAAA,QAA8C,CAElK,MAAMy6B,EAAezqB,EAAAA,2BAAAA,iCAA4DgsB,EAAeppB,EAAWlqI,MACrGgyJ,EAAe1qB,EAAAA,2BAAAA,iCAA4DisB,EAAeppB,EAAWnqI,MAC3GksH,EAAUn1H,QAAQ4mL,EAAwB5rB,EAAcC,UAErD,IAAK9nB,GAAcC,GAGxB,GADAje,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMkzI,EAAWnqI,KAAM9C,KAAMitI,EAAWhsI,MAAQu0H,EAAAA,uBAAAA,aACpH6gC,EAActxB,iBAAmB3K,EAAAA,qCAAAA,QAA8C,CAEjF,MAAMoF,EAAY4K,EAAAA,2BAAAA,iCAA4DisB,EAAeppB,EAAWnqI,MACxGksH,EAAUn1H,QAAQ4mL,EAAwBpqB,EAAc/V,kBAAmB9gB,UAExE,GAAIwN,IAAeC,IAExBje,EAAUn1H,KAAK,CAAEc,OAAQyvJ,EAAQ1U,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMizI,EAAWlqI,KAAM9C,KAAMgtI,EAAW/rI,MAAQu0H,EAAAA,uBAAAA,aACpH4gC,EAAcrxB,iBAAmB3K,EAAAA,qCAAAA,SAA8C,CAEjF,MAAMoF,EAAY4K,EAAAA,2BAAAA,iCAA4DisB,EAAerpB,EAAWlqI,MACxGksH,EAAUn1H,QAAQ4mL,EAAwBrqB,EAAc9V,kBAAmB9gB,IAI/E,MAAM83B,EAAUnZ,EAAAA,wCAAAA,yBAAiEuY,GAC3Ea,EAAgB/Z,EAAAA,2CAAAA,6BAAwE6Y,EAAeiB,GAC7G,GAAKlB,EAAcvxB,WAAWuR,OAKvB,CAEL,MAAMohB,EAAUrZ,EAAAA,wCAAAA,yBAAiEmY,GAC3EmB,EAAgBja,EAAAA,2CAAAA,6BAAwE4Y,EAAeoB,GAC7G,GAAInB,EAAcxxB,WAAWuR,OAAQ,CACnC,MAAMsqC,GA8F6CxhC,EA9FsBuY,EA8FMtY,EA9FSoY,EA+F5E/Z,EAAAA,2CAAAA,aAAwD0B,EAA4BC,GACxFzpJ,OACH,CAAEiF,OAAQwvJ,EAAQzU,KAAMiU,EAAAA,wBAAAA,0BAAmD5vJ,KAAMmlJ,EAA2Bp8I,MAE9G,MAlGC49K,GACF1xD,EAAUn1H,KAAK6mL,QAGjB1xD,EAAUn1H,KAAK,CAAEc,OAAQyvJ,EAAQ1U,KAAMiU,EAAAA,wBAAAA,0BAAmD5vJ,KAAM09J,EAAc30J,YAd5GuzJ,EAAcxxB,WAAWuR,QAE3BpnB,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,0BAAmD5vJ,KAAMw9J,EAAcz0J,OAqGpH,IAAyDo8I,EAA4BC,EArFnF,OAAOnwB,EAtKmB2xD,CAA+BvqB,EAAexsJ,GACtE,OAAOm2K,EAGT,OADwBI,EAA+Bv2K,GAQzD,SAASu2K,EAA+Bv2K,GACtC,MAAMolH,EAAY,GAElB,IAAKuF,EAAKiR,EAAiBv0E,EAAUr9C,EAASsxH,GAAU7F,EAAAA,QAAAA,mCAAkEz1H,GAY1H,GAVIqnD,GACFA,EAASnjD,SAAS8F,IAEhB,GADAo7G,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAM6Z,EAAQ9Q,KAAM9C,KAAM4T,EAAQ3S,MAAQu0H,EAAAA,uBAAAA,aACtE,IAAxC5rH,EAAW02I,kBAAkB5qJ,OAAc,CAC7C,MAAM8pI,EAAY4K,EAAAA,2BAAAA,oCAA+DxgI,EAAYgK,EAAQ9Q,KAAM8Q,EAAQm9B,OACnHi+E,EAAUn1H,QAAQ4mL,EAAwB72K,EAAW02I,kBAAmB9gB,QAK1E5rH,IAEFo7G,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAM6Z,EAAQ9Q,KAAM9C,KAAM4T,EAAQ3S,MAAQu0H,EAAAA,uBAAAA,aAC9G5rH,EAAWm7H,iBAAmB3K,EAAAA,qCAAAA,SAA8C,CAE9E,MAAMoF,EAAY4K,EAAAA,2BAAAA,iCAA4DxgI,EAAYgK,EAAQ9Q,MAClGksH,EAAUn1H,QAAQ4mL,EAAwB72K,EAAW02I,kBAAmB9gB,IAI5E,GAAIjL,aAAe2Y,EAAAA,sBAEjBle,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMyrI,EAAgB1iI,KAAM9C,KAAMwlI,EAAgBvkI,MAAQu0H,EAAAA,uBAAAA,iBAC7H,CAEL,MAAMorD,EAAiC17C,EACpC38H,QAAQ2gI,IAASA,EAAIE,eAAiBF,EAAI1mI,KAC1CpO,KAAK80I,IAAD,CAAYvuI,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,wBAAiD5vJ,KAAMmvI,EAAIpmI,SACpGksH,EAAUn1H,QAAQ+mL,GAIpB,GAAIh3K,EAAWi7H,WAAWuR,QAAUxsI,EAAWm6G,iBAAmBuR,EAAAA,qCAAAA,OAA6C,CAC7G,MAAMogB,EAAOyI,EAAAA,wCAAAA,yBAAiE5pB,GACxE0hB,EAAauH,EAAAA,2CAAAA,6BAAwE5zI,EAAY8rI,GACvG1mB,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,0BAAmD5vJ,KAAMk8I,EAAWnzI,OAI7G,MAAM+9K,EAAkBZ,EAA2B1rD,GAKnD,OAJwB,OAApBssD,GACF7xD,EAAUn1H,KAAK,CAAEc,OAAQuvJ,EAAQxU,KAAMmrC,EAAiB9mL,KAAMw6H,EAAIzxH,OAG7DksH,EA6GT,SAASixD,EAA2B1rD,GAClC,OAAIA,aAAegT,EAAAA,sBAAyBhT,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,WACnGo0B,EAAAA,wBAAAA,WACEp1B,aAAeqS,EAAAA,qBAAwBrS,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,UACzGo0B,EAAAA,wBAAAA,UACEp1B,aAAe2Y,EAAAA,uBAA0B3Y,aAAeoP,EAAAA,uBAAyBpP,EAAIa,kBAAoBG,EAAAA,2BAAAA,YAC3Go0B,EAAAA,wBAAAA,YAEF,KAGT,SAAS82B,EAAwB5rB,EAAcC,GAO7C,OAN2BA,EACxB1gK,KAAK2gK,IAEJ,OAOmC1S,EARpB,IAAOwS,EAAc,CAAE/xJ,KAAMiyJ,EAAOjyJ,OAQJw/I,EAPAyS,EAQnC3qB,EAAAA,2BAAAA,aAAwCiY,EAAYC,GACxD5sJ,OACH,CAAEiF,OAAQwvJ,EAAQzU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMsoJ,EAAWv/I,MAE5E,KALT,IAAyCu/I,EAAYC,KALhD/5I,QAAQkpB,GAAMA,IAuBnB,SAAS4uJ,EAAgC7pB,EAAaI,GACpD,IAAIkqB,EAAU,GAkCd,OAhCKtqB,EAAY3pB,WACf+pB,EAAY9oJ,SAASm/H,IACnB,MAAMmqB,EAAoB,IAAOZ,EAAa,CAAE1zJ,KAAMmqI,EAAWnqI,OACjE,GAAIs0J,GAEF,GADgBxxB,EAAAA,QAAAA,aAAwCwxB,EAAmBnqB,GAC/Dv3I,OAAQ,CAClB,MAAMqrL,EAAgB,CACpBpmL,OAAQwvJ,EACRzU,KAAMiU,EAAAA,wBAAAA,QACN5vJ,KAAMq9J,EAAkBt0J,KACxB9C,KAAMo3J,EAAkBn2J,MAAQu0H,EAAAA,uBAAAA,YAElCsrD,EAAQjnL,KAAKknL,QAEV,CACL,MAAMC,EAAe,IAAI7kD,EAAAA,kBAEzB,GADgByJ,EAAAA,QAAAA,aAAwCo7C,EAAc/zC,GAC1Dv3I,OAAQ,CAClB,MAAMurL,EAAgB,CAAEtmL,OAAQuvJ,EAAQxU,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMkzI,EAAWnqI,KAAM9C,KAAMitI,EAAWhsI,MAAQu0H,EAAAA,uBAAAA,YAC/HsrD,EAAQjnL,KAAKonL,QAKnBzqB,EAAY1oJ,SAASk/H,IAEnB,IAD0B,IAAO4pB,EAAa,CAAE9zJ,KAAMkqI,EAAWlqI,OACzC,CACtB,MAAMo+K,EAAgB,CAAEvmL,OAAQyvJ,EAAQ1U,KAAMiU,EAAAA,wBAAAA,QAAiC5vJ,KAAMizI,EAAWlqI,KAAM9C,KAAMgtI,EAAW/rI,MAAQu0H,EAAAA,uBAAAA,YAC/HsrD,EAAQjnL,KAAKqnL,QAII,IAAnBJ,EAAQprL,OACHorL,EAEF,O,yGChRT,MAAM,OAAE52B,EAAF,OAAUC,GAAWF,EAAAA,0BAEZ,SAAS,EAACrgJ,GACvB,MAAMjP,EAASiP,EAAWpH,GAAK2nJ,EAASD,EACxC,OAAItgJ,EAAW3I,OAASsyH,EAAAA,6BAAAA,UACf,CAAC,CAAE54H,OAAAA,EAAQ+6I,KAAMiU,EAAAA,wBAAAA,UAAmC5vJ,KAAM6P,EAAW9G,OACnE8G,EAAW3I,OAASsyH,EAAAA,6BAAAA,OACtB,CAAC,CAAE54H,OAAAA,EAAQ+6I,KAAMiU,EAAAA,wBAAAA,OAAgC5vJ,KAAM6P,EAAW9G,YADpE,I,sMCLT,SAASq+K,EAAoBC,EAAcC,GACzC,OAAO,IAAeD,EAAcC,EAAc,QAGpD,SAASC,EAAoBF,EAAcC,GACzC,OAAO,IAAeA,EAAcD,EAAc,QAGpD,SAASG,EAAoBH,EAAcC,GASzC,OARwB,IAAmBD,EAAcC,GAAc,CAACG,EAAaC,IAE/ED,EAAY1+K,MAAQ2+K,EAAY3+K,OASxC,SAAiB0+K,EAAaC,GAC5B,IAAIC,EAAUp6C,EAAAA,GAAkBk6C,EAAaC,GAK7C,OAJAC,EAAU,IAASA,GAAU/c,IACnB,IAAWA,EAAO/sH,KAAM,eAAiB,IAAW+sH,EAAO/sH,KAAM,gBAGnE8pI,EAAQhsL,OAZNisL,CAAQH,EAAaC,KAejC,SAASG,EAAsBR,EAAcC,EAAc3rC,EAAM/6I,EAAQknL,GAIvE,OAH0BA,EAAaT,EAAcC,GACnBjtL,KAAKqnD,IAAD,CAAiB1hD,KAAM0hD,EAAS34C,KAAMnI,OAAAA,EAAQ+6I,KAAAA,MAK/E,SAASosC,EAAoBV,EAAcC,EAAc3rC,GAY9D,OAXKz/G,MAAMC,QAAQkrJ,KACjBA,EAAeA,EAAe,CAACA,GAAgB,GAC/CC,EAAeA,EAAe,CAACA,GAAgB,IAGjC,IACXO,EAAsBR,EAAcC,EAAc3rC,EAAMuU,EAAAA,0BAAAA,OAAkCk3B,MAC1FS,EAAsBR,EAAcC,EAAc3rC,EAAMuU,EAAAA,0BAAAA,OAAkCs3B,MAC1FK,EAAsBR,EAAcC,EAAc3rC,EAAMuU,EAAAA,0BAAAA,OAAkCq3B,M,2IC3ClF,SAAS,EAACjrB,EAAeD,GACtC,MAAO2rB,EAAcv2C,EAAUspB,GAAgBmF,EAAAA,QAAAA,yBAAyD5D,GAElGD,aAAyB3qB,EAAAA,mCAC7B2qB,EAAgB,IAAI3qB,EAAAA,iCAAiCC,EAAAA,kCAGvD,MAAOs2C,EAAcz2C,EAAUspB,GAAgBoF,EAAAA,QAAAA,yBAAyD7D,GAQxG,MANkB,KACb0rB,EAAAA,EAAAA,qBAAoBC,EAAcC,EAAcr4B,EAAAA,wBAAAA,eAChDm4B,EAAAA,EAAAA,qBAAoBt2C,EAAUD,EAAUoe,EAAAA,wBAAAA,mBACxCm4B,EAAAA,EAAAA,qBAAoBhtB,EAAcD,EAAclL,EAAAA,wBAAAA,Y,sBClBvD,MAAMnzG,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,wBAAyB,CACxE2qC,YAAaD,EACbrrC,WAAY,8BACZklD,aAAc,QACdrlD,SAAU,CACRpB,WAAY,IACZwsJ,cAAe,Q,8ICCnB,MAAM6rB,EAEJ/rI,YAAY7qC,EAAQwzC,EAAck5E,GAChC9hI,KAAK4oD,aAAeA,EACpB5oD,KAAK8hI,8BAAgCA,EAErC9hI,KAAKisL,cAAgBjsL,KAAKisL,cAAc5sL,KAAKW,MAC7CA,KAAKksL,4BAA8BlsL,KAAKksL,4BAA4B7sL,KAAKW,MAGzEoV,EAAO4xD,OACL,oBACCrzD,IACC3T,KAAK+P,MAAMgpH,UAAY/4H,KAAKksL,4BAA4Bt2K,IAAAA,KAAajC,OAEvE,GAIJw4K,WAAWphL,EAAcqhL,GACvB,IAAIC,EAAU,IASd,OARID,IAAmBp4B,EAAAA,0BAAAA,OACjBjpJ,IAAiB2oJ,EAAAA,wBAAAA,UACnB24B,EAAU,MAGZA,EAAU,MAGLA,EAMTJ,gBACEjsL,KAAK+P,MAAMu8K,kBAAoBtsL,KAAK+P,MAAMu8K,iBAC1CtsL,KAAK4oD,aAAa2jI,6BAA6BvsL,KAAK+P,MAAMu8K,kBAQ5DJ,4BAA4Bv4K,GAC1B,MAAMwsJ,EAAgBngK,KAAKmgK,cAE3B,OAAIxsJ,aAAsB28I,EAAAA,mCAEjBk8B,EAAAA,EAAAA,SAA0B74K,GACxBA,aAAsB6hI,EAAAA,kCAExBi3C,EAAAA,EAAAA,SAAsB94K,EAAYwsJ,GAChCxsJ,aAAsB+6H,EAAAA,iCAI/B1uI,KAAK+P,MAAMq1C,OAAS,CAAE04D,IAAKnqG,EAAWqhF,SAAU/7D,OAAQtlB,EAAWghF,cAE5D+3F,EAAAA,EAAAA,SAAwB/4K,EAAYwsJ,IAGtC,GAGTh9G,UACE,MAAMwpI,EAAc3sL,KAAK4oD,aAAagkI,6BAChChvH,EAAkC,kBAAhB+uH,GAA4BA,EAEpD3sL,KAAK+P,MAAQ,CACXu8K,iBAAkB1uH,EAClBm7D,UAAW,GACX3zE,OAAQ,CAAE04D,IAAK,KAAM7kF,OAAQ,Q,oEAKnC,YACArjB,IAAAA,OAAe,wBAAwBV,WAAW,8BAA+B82K,I,sFCtFjFp2K,QAAQ5W,OAAO,wBAAwBkW,WAAW,+CAAgD,CAChG,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrC0tD,cAAe,GACfC,WAAW,IAGb19D,KAAK2/D,yBAA2B,WAC9BpC,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAK29D,WAAa,SAAUtpB,EAAMupB,GAC3B59D,KAAK69D,cAAcxpB,KAIxBA,EAAKypB,SAAWF,EACXA,IACHvpB,EAAK0pB,aAAc,KAIvB/9D,KAAK69D,cAAgB,SAAUxpB,GAC7B,OAAOA,EAAK68B,QAAQzxE,OAAS,GAG/BO,KAAKi+D,mBAAqB,WACxB,OAAO,IAASj+D,KAAK+P,MAAM0wD,iBAAkBpsB,GAASr0C,KAAK69D,cAAcxpB,KAAO50C,QAGlFO,KAAK09D,UAAY,WACf19D,KAAK+P,MAAM2tD,WAAa19D,KAAK+P,MAAM2tD,UACnC,IAAU19D,KAAK+P,MAAM0wD,iBAAkBpsB,IACjCr0C,KAAK69D,cAAcxpB,IACrBr0C,KAAK29D,WAAWtpB,EAAMr0C,KAAK+P,MAAM2tD,eAKvC19D,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,qBC3EX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,qCAAsC,CACrF2qC,YAAaD,EACbrrC,WAAY,+CACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdmc,gBAAiB,Q,sBCZrB,MAAMzc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,uBAAwB,CACvE2qC,YAAaD,EACbrrC,WAAY,6BACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,qOCAd,MAAM81K,EAEJ5sI,YACEC,EACAwI,EACAj+B,EACAm+B,EACAk9G,EACAjD,EACA9E,EACAM,EACAv8B,EACApgF,EACAi7G,GAEA38J,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EAEpB5oD,KAAK8lK,wBAA0BA,EAC/B9lK,KAAK6iK,uBAAyBA,EAC9B7iK,KAAK+9J,6BAA+BA,EACpC/9J,KAAKq+J,uCAAyCA,EAC9Cr+J,KAAK8hI,8BAAgCA,EACrC9hI,KAAK0hD,aAAeA,EACpB1hD,KAAK28J,qBAAuBA,EAE5B38J,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAK8sL,UAAY9sL,KAAK8sL,UAAUztL,KAAKW,MACrCA,KAAK+sL,eAAiB/sL,KAAK+sL,eAAe1tL,KAAKW,MAC/CA,KAAKgtL,kBAAoBhtL,KAAKgtL,kBAAkB3tL,KAAKW,MACrDA,KAAKqyK,UAAYryK,KAAKqyK,UAAUhzK,KAAKW,MACrCA,KAAKsyK,eAAiBtyK,KAAKsyK,eAAejzK,KAAKW,MAGjDumK,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,SAAUrmI,GAG7CiyF,aACEpyH,KAAK+P,MAAM8hH,eAAgB,EAC3B7xH,KAAKumK,UAAU,GAGjB1lC,mBACE,OAAOD,EAAAA,QAAAA,iBAAwC5gI,KAAK47D,QAGtDyiE,oBACE,OAAOE,EAAAA,QAAAA,kBAA4Cv+H,KAAK47D,OAAO4iE,aAAaqB,UAAUhzH,MAGxF8zH,SACE,OAAOC,EAAAA,QAAAA,OAA8B5gI,KAAK47D,QAG5CqxH,eACE,GAAIjtL,KAAK+P,MAAMm9K,WAAY,CACzB,MAAMl+K,EAAO+7H,GAAAA,CAAe/qI,KAAK+P,MAAMm9K,WAAaltL,KAAK+P,MAAMo9K,eAAgB,CAAEniD,KAAM,KACnFhrI,KAAK+P,MAAMq9K,cAAgBp+K,GAC7BhP,KAAK+P,MAAMlB,OAAOq+K,YAAa,EAC/BltL,KAAK+P,MAAMlB,OAAOo5J,eAAgB,GACzBjoK,KAAK+P,MAAM+jI,MAAMu5C,UAAYr+K,EAAOhP,KAAK+P,MAAMq9K,cAAgBptL,KAAK+P,MAAM+jI,MAAMm7B,eACzFjvK,KAAK+P,MAAMlB,OAAOq+K,YAAa,EAC/BltL,KAAK+P,MAAMlB,OAAOo5J,eAAgB,IAElCjoK,KAAK+P,MAAMlB,OAAOq+K,YAAa,EAC/BltL,KAAK+P,MAAMlB,OAAOo5J,eAAgB,QAGpCjoK,KAAK+P,MAAMlB,OAAOq+K,YAAa,EAC/BltL,KAAK+P,MAAMlB,OAAOo5J,eAAgB,EAItCqlB,cACE,OACGttL,KAAK+P,MAAMlB,OAAOo5J,gBAClBjoK,KAAK+P,MAAMlB,OAAOq+K,YACnBltL,KAAK+P,MAAMm9K,YACXltL,KAAK+P,MAAMq9K,gBAAkBriD,GAAAA,CAAe/qI,KAAK+P,MAAMm9K,WAAaltL,KAAK+P,MAAMo9K,eAAgB,CAAEniD,KAAM,KAQpF,wBAACuiD,GACtB,IAKE,GAJAvtL,KAAK47D,OAAO23E,sBAAsBV,QAAU7yI,KAAK+P,MAAMm9K,WAAaltL,KAAK+P,MAAMo9K,eAAe95C,OAAO,SAC/FrzI,KAAKq+J,uCAAuCrzG,MAAMhrD,KAAKwtL,UAAUj6C,sBAAuBvzI,KAAK47D,OAAO23E,uBAC1GvzI,KAAKyqB,cAAcF,QAAQ,UAAW,+BAElCgjK,EAAU,CACZ,MAAM3xK,EAAW,IACf,IAAM5b,KAAK47D,OAAOgkE,cAAetB,GACxB,IAAMA,EAAIqM,MAAOt2F,GAASr0C,KAAK28J,qBAAqBx7G,OAAO9M,cAGhEp4B,QAAQqW,IAAI1W,GAClB5b,KAAKyqB,cAAcF,QAAQ,UAAW,wCAGxCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAI7C2yK,eACE,IAAI7sD,EAAAA,QAAAA,OAA8B5gI,KAAK47D,QAQrC,OAAO57D,KAAKkgD,OAAOlgD,KAAKgtL,mBAAmB,GAP3ChtL,KAAK0hD,aAAa75B,gBAChB,kMACC0lK,GACQvtL,KAAKkgD,OAAOlgD,KAAKgtL,kBAAmBO,KAQ/B,uBAClB,MAAM56C,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eAC9D,IACE,MAAOh6E,EAAQ4gF,EAAc7Z,EAAchnE,SAAiB1/C,QAAQqW,IAAI,CACtEtyB,KAAK8lK,wBAAwBnnJ,IAAI3e,KAAK+P,MAAMo4D,UAAWwqE,EAAgB3yI,KAAK+P,MAAMjM,MAClF9D,KAAK+9J,6BAA6Bp/I,IAAI3e,KAAK+P,MAAMo4D,WACjDnoE,KAAK8hI,8BAA8BnjH,IAAI3e,KAAK+P,MAAMo4D,WAClDnoE,KAAK8lK,wBAAwBnnJ,IAAI3e,KAAK+P,MAAMo4D,UAAWwqE,KAEzD/2E,EAAOgkE,aAAegB,EAAAA,QAAAA,qBAA4ChlE,EAAQ4gF,GAE1E,MAAM1I,EAAQnR,EAAaikB,MAM3B,GALA5mJ,KAAK+P,MAAM+jI,MAAQ,CACjBm7B,cAAe,EACfoe,UAAU,EACVzqJ,QAAS,GAEPkxG,GAASl4E,EAAO23E,sBAAsBT,aAAc,CACtD,MAAM46C,EAAiB,IAAO55C,EAAMiB,gBAAiB,CAAEloI,KAAM+uD,EAAO23E,sBAAsBT,aAAajmI,OACvG,GAAI6gL,EAAgB,CAClB1tL,KAAK+P,MAAM+jI,MAAMu5C,UAAW,EAC5B,MAAMM,EAAqB,IAAShyH,EAAS,CAAC,0CAA2CC,EAAO23E,sBAAsBT,aAAajmI,OAC7H6nI,EAAO,IAASi5C,GAAoB,CAAC/hB,EAAKpqI,IAAMoqI,EAAM7gC,GAAAA,CAAevpG,EAAE+xG,sBAAsBV,QAAS,CAAE7H,KAAM,MAAO,GACrH4iD,EAAiB7iD,GAAAA,CAAgB,GAAE2iD,EAAe3rG,OAAO2rG,EAAet6C,WAAY,CAAEpI,KAAM,KAClGhrI,KAAK+P,MAAM+jI,MAAMm7B,cAAgB2e,EAAiBl5C,GAItD10I,KAAK47D,OAASA,EACd57D,KAAKwtL,UAAY53K,IAAAA,KAAagmD,GAC9B57D,KAAK+P,MAAMm9K,WAAaloL,SAAS42D,EAAO23E,sBAAsBV,QAAQrpI,MAAM,GAAI,GAAI,IACpFxJ,KAAK+P,MAAMo9K,eAAiBvxH,EAAO23E,sBAAsBV,QAAQrpI,OAAO,GACxExJ,KAAK+P,MAAMq9K,cAAgBriD,GAAAA,CAAenvE,EAAO23E,sBAAsBV,QAAS,CAAE7H,KAAM,KACxFhrI,KAAK+P,MAAM+jI,MAAMlxG,QAAU5iC,KAAK+P,MAAM+jI,MAAMm7B,cAAgBjvK,KAAK+P,MAAMq9K,cACvE,MAAOtyK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAI7CgyK,YACE,OAAO9sL,KAAKkgD,OAAOlgD,KAAK+sL,gBAM1Bja,mBACE,OAAO9yK,KAAK+P,MAAMgjK,kBAGA,uBAClB,IACE/yK,KAAK+P,MAAMqjK,eAAgB,EAC3B,MAAM74G,QAAev6D,KAAK6iK,uBAAuBlkJ,IAAI3e,KAAK+P,MAAMo4D,WAChEnoE,KAAKu6D,OAAS,IAASA,GAAS5mB,GAAUA,EAAMk+F,SAASnI,MAAQ1pI,KAAK47D,OAAO23E,sBAAsBhnI,KACnGvM,KAAK+P,MAAMgjK,kBAAoBM,EAAAA,QAAAA,aAAmCrzK,KAAKu6D,QACvE,MAAOz/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iDAN3C,QAQE9a,KAAK+P,MAAMqjK,eAAgB,GAI/Bf,YACE,OAAOryK,KAAKkgD,OAAOlgD,KAAKsyK,gBAMd,eACVtyK,KAAK+P,MAAQ,CACX67F,UAAW,EACX+6D,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClC+tH,eAAe,EACfuhD,eAAe,EACf9/D,WAAW,EACXnrC,UAAWnoE,KAAKyvF,aAAajkF,SAAS28D,UACtCrkE,KAAM9D,KAAKyvF,aAAajkF,SAAS1H,KACjCivK,kBAAmB,EACnBxK,mBAAoB,CAAC,KAAM,KAAM,MACjCslB,cAAc,EACdX,WAAY,EACZC,eAAgB,KAChBW,yBAA0B,GAC1BC,gCAAiC,GACjCl/K,OAAQ,CACNq+K,YAAY,EACZjlB,eAAe,IAInBjoK,KAAK+P,MAAM67F,UAAY5rG,KAAK4oD,aAAa89G,aAAa,UAEtD,UACQ1mK,KAAK8sL,kBACL9sL,KAAKqyK,iBAC4CxgK,IAAnD7R,KAAK47D,OAAO23E,sBAAsBT,eACpC9yI,KAAK+P,MAAM+9K,yBAA2B9tL,KAAK47D,OAAO23E,sBAAsBT,aAAa4N,YAAY1gJ,KAAK47D,OAAO23E,sBAAsBT,aAAa4N,YAAYjhJ,OAAS,IACtJy1J,EAAAA,EAAAA,wCAENr9I,SAASm2K,IACZA,EAAOnhL,MAAQ7M,KAAK+P,MAAM+9K,2BAC5B9tL,KAAK+P,MAAMg+K,gCAAkCC,EAAO1rG,iBAI1D,MAAOxnE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAd3C,QAgBE9a,KAAK+P,MAAMujG,WAAY,GAI3BnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,SAAU,I,8PAKjD,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,6BAA8B23K,I,sBClQhF,MAAMtsI,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,wBAAwB6W,UAAU,wBAAyB,CACxE2qC,YAAaD,EACbrrC,WAAY,8BACZklD,aAAc,OACdrlD,SAAU,CACR06E,aAAc,IACd14E,SAAU,Q,gNCad,MAAMk3K,EAEJhuI,YAAYC,EAAQwI,EAAQj+B,EAAei3B,EAAckH,EAAcmiB,EAAgB66F,EAA0BE,EAAyB/H,GACxI/9J,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyqB,cAAgBA,EACrBzqB,KAAK0hD,aAAeA,EACpB1hD,KAAK4oD,aAAeA,EACpB5oD,KAAK+qE,eAAiBA,EACtB/qE,KAAK4lK,yBAA2BA,EAChC5lK,KAAK8lK,wBAA0BA,EAC/B9lK,KAAK+9J,6BAA+BA,EAEpC/9J,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAC/BA,KAAKygH,WAAazgH,KAAKygH,WAAWphH,KAAKW,MACvCA,KAAKkuL,gBAAkBluL,KAAKkuL,gBAAgB7uL,KAAKW,MACjDA,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAKqvF,kBAAoBrvF,KAAKqvF,kBAAkBhwF,KAAKW,MAGvDumK,UAAUpmI,GACRngC,KAAK4oD,aAAa49G,eAAe,UAAWrmI,GAGvB,wBAAC2J,GACtB,IAAIi4B,EAAcj4B,EAAcrqC,OAChC,IAAK,MAAMm8D,KAAU9xB,EACnB,UACQ9pC,KAAK8lK,wBAAwB3kH,OAAOya,GAC1C57D,KAAKyqB,cAAcF,QAAQ,8BAA+BqxC,EAAO23E,sBAAsB1mI,MACvF,MAAMszB,EAAQngC,KAAK27D,QAAQ91D,QAAQ+1D,GACnC57D,KAAK27D,QAAQsH,OAAO9iC,EAAO,GAC3B,MAAOrlB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAN3C,UAQIinD,EACkB,IAAhBA,GACF/hE,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,UAMvC4gC,aAAajzB,GACX9pC,KAAK0hD,aAAap6B,gBAAgB,iDAAkDX,IAClF,GAAIA,EACF,OAAO3mB,KAAKkgD,OAAOlgD,KAAKqvF,kBAAmBvlD,MAK5B,wBACnB,MAAM6oG,EAAiB3yI,KAAK+W,SAASke,WAAWqrG,cAAcsV,eAC9D,IACE,MAAOj6E,EAAS6gF,EAAc3G,SAAkB55H,QAAQqW,IAAI,CAC1DtyB,KAAK8lK,wBAAwBnnJ,SAAI9M,EAAW8gI,GAC5C3yI,KAAK+9J,6BAA6Bp/I,MAClC3e,KAAK4lK,yBAAyBjnJ,IAAI3e,KAAK+W,SAASxK,MAGlDvM,KAAK27D,QAAU,IAAMA,GAAUC,IAC7BA,EAAOgkE,aAAegB,EAAAA,QAAAA,qBAA4ChlE,EAAQ4gF,GACnE5gF,KAET,MAAMuyH,EA/EZ,SAAuBt4C,EAAUl6E,GAM/B,OALA,IAAUk6E,GAAWr6G,IACnB,MAAM21I,EAAkB,IAASx1G,EAAS,CAAC,0CAA2CngC,EAAE3uB,KAAM,iDAAkD2uB,EAAEg8G,cAClJh8G,EAAE01C,QAAUigG,EACZ31I,EAAEumD,KAKN,SAAqBpmB,GACnB,MAAM3sD,EAAO,IAAQ2sD,GAAUn6B,GAAMupG,GAAAA,CAAevpG,EAAE+xG,sBAAsBV,QAAS,CAAE7H,KAAM,OACvFztG,EAAS43G,EAAAA,QAAAA,YAA0CnmI,GACzD,MAAQ,GAAEuuB,EAAOwkD,OAAOxkD,EAAO61G,WARpBg7C,CAAYjd,MAEhBt7B,EAyEkBw4C,CAAcx4C,EAAUl6E,GACvC2yH,EAA2BtuL,KAAK+W,SAASke,WAAWqrG,cAAcsV,eACxE51I,KAAK61I,SAAW,IAASs4C,GAAe95I,IAEtC,GADgB,IAAOi6I,GAA2Bz2C,GAAOA,EAAGhrI,OAASwnC,EAAKxnC,QAC3D7M,KAAK+qE,eAAezrD,kBAAkB,CAAC,6BACpD,OAAO+0B,KAGX,MAAOv5B,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAI7C2lG,aACE,OAAOzgH,KAAKkgD,OAAOlgD,KAAKkuL,iBAGd,eACVluL,KAAK+P,MAAQ,CACXujG,WAAW,EACXqzD,YAAa3mK,KAAK0oD,OAAOk+G,SAAS9iK,KAClC8nG,UAAW5rG,KAAK4oD,aAAa89G,aAAa,kBAGtC1mK,KAAKygH,aAEXzgH,KAAK+P,MAAMujG,WAAY,EAGzBnwD,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,QAG1BrsG,aACMr0B,KAAK+P,MAAM42J,cAAgB3mK,KAAK0oD,OAAOk+G,SAAS9iK,MAClD9D,KAAK4oD,aAAa49G,eAAe,UAAW,I,iLAKlD,YACA5wJ,IAAAA,OAAe,wBAAwBV,WAAW,8BAA+B+4K,I,iBC9HjF,MAAMhqL,EAAQF,OAAOE,KAAOF,OAAOE,MAAQ,GAE3CA,EAAKL,KAAK,CAAC,uBAGXK,EAAKL,KAAK,CAAC,gBAAiB0I,iDAC5BrI,EAAKL,KAAK,CAAC,YAAa,MACxB,IAAIrD,EAAIilC,SACNgxC,EAAIj2E,EAAEklC,cAAc,UACpBjK,EAAIj7B,EAAEguL,qBAAqB,UAAU,GACvC/3G,EAAEzsE,KAAO,kBACTysE,EAAE3wB,OAAQ,EACV2wB,EAAEg4G,IAAM,yDACRhzJ,EAAEizJ,WAAWC,aAAal4G,EAAGh7C,I,qBCb7B,MAAM+kB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,mBAAmB6W,UAAU,iBAAkB,CAC5D2qC,YAAaD,EACbrrC,WAAY,oB,uDCFdU,QAAQ5W,OAAO,mBAAmBkW,WAAW,iBAAkB,CAC7D,SACA,SACA,eACA,gBACA,SAAUE,EAAQ8qC,EAAQuvC,EAAchlE,GACtC,IAAIvV,EAAa,IAAIy5K,gBAerB,SAASx4G,EAAiBC,GACxB,OAAOA,EAAK/6C,QAAQ,8EAA+E,IAGrG,SAASu7C,EAAWR,EAAMw4G,EAAW,OACnC,IAAKx4G,EACH,MAAO,GAGT,MAAMa,EAAgB,GAChB43G,EAAaz4G,EAAKnqD,OAAOsP,MAAMqzJ,GAErC,IAAK,MAAME,KAAaD,EAAY,CAClC,MAAMxkH,EAAO8L,EAAiB24G,GAAWzzJ,QAAQ,KAAM,IAAIA,QAAQ,SAAU,IAC7E47C,EAAcrzE,KAAK,CAAEymE,KAAAA,EAAM8M,MAAO,CAAC,CAAED,gBAAiB,KAAM16C,gBAAiB,KAAM/T,KAAM4hD,MAG3F,OAAO4M,EAETpxB,eAAekpI,EAASC,EAASC,EAAOC,EAAU/mH,EAAW5pD,EAAYrJ,EAAYg9G,GAAU,EAAMvwH,EAAS,KAC5GqE,EAAAA,GAAAA,IACQ,oBAAmBuY,gBAAyBnJ,EAAO+5K,oBAAqB,CAC5E3jL,OAAQ,CACNyjL,MAAAA,EACAC,SAAAA,EACA/mH,UAAAA,EACA+pD,QAAAA,EACA88D,QAAAA,EACArtL,OAAAA,GAEFytL,OAAQl6K,EAAWk6K,OACnBC,mBAAqBC,IACnBl6K,EAAQ,GAAE45K,QAAgBp4G,EAAW04G,EAAcxmL,cAAc4N,UACjEtB,EAAOq9E,YAGVz2E,MAAMtF,IACLtB,EAAQ,GAAE45K,QAAgBp4G,EAAWlgE,EAASjS,KAAM,MACpD2Q,EAAOq9E,YAER31B,OAAOhiD,IACc,aAAhBA,EAAI7N,SAAwBwd,EAAcxc,MAAM,UAAW6M,EAAK,mCAtD1E1F,EAAOm6K,UAAY,GACnBn6K,EAAOo6K,UAAY,GAEnBp6K,EAAOguF,oBAAsB,SAAUC,GAChCA,GAIH0rF,EAAS,SAAU35K,EAAO65K,MAAO75K,EAAO85K,SAAU95K,EAAO+yD,UAAW/yD,EAAOmJ,WAAYrJ,GACvF65K,EAAS,SAAU35K,EAAO65K,MAAO75K,EAAO85K,SAAU95K,EAAO+yD,UAAW/yD,EAAOmJ,WAAYrJ,KAJvFA,EAAWu6K,QACXv6K,EAAa,IAAIy5K,kBAiErBv5K,EAAO49E,IAAI,YAAY,WACjB99E,GACFA,EAAWu6K,WAff5pI,iBACS3F,GAAO2F,UACZzwC,EAAO65K,MAAQx/F,EAAajkF,SAASyjL,MACrC75K,EAAO85K,SAAWz/F,EAAajkF,SAAS0jL,SACxC95K,EAAO+5K,aAAe1/F,EAAajkF,SAAS2jL,aAC5C/5K,EAAO+yD,UAAYsnB,EAAajkF,SAAS28D,UACzC/yD,EAAOmJ,WAAakxE,EAAajkF,SAAS+S,WAE1CwwK,EAAS,SAAU35K,EAAO65K,MAAO75K,EAAO85K,SAAU95K,EAAO+yD,UAAW/yD,EAAOmJ,WAAYrJ,GACvF65K,EAAS,SAAU35K,EAAO65K,MAAO75K,EAAO85K,SAAU95K,EAAO+yD,UAAW/yD,EAAOmJ,WAAYrJ,MAU3Fk/E,O,sBCvFJ,MAAM7zC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,mBAAmB6W,UAAU,iBAAkB,CAC5D2qC,YAAaD,EACbrrC,WAAY,2BACZH,SAAU,CACRw6K,UAAW,IACXC,UAAW,IACXnmH,aAAc,IACdH,oBAAqB,Q,wFCNzBtzD,QAAQ5W,OAAO,mBAAmBkW,WAAW,2BAA4B,CACvE,YACA,OACA,YACA,SAAUmwB,EAAW4d,EAAMxB,GACzBzhD,KAAK0vL,aAAe5wL,OAAOyyF,OAAO,CAChCo+F,OAAQ,SACRC,OAAQ,WAGV5vL,KAAK+P,MAAQ,CACXy5D,cAAenkC,EAAUokC,UACzBC,eAAe,EACfC,YAAY,EACZC,WAAW,EACXC,OAAQ,GACRshB,OAAQ,CACNrhB,aAAc,GACdC,cAAe,IAEjBmhB,OAAQ,CACNphB,aAAc,GACdC,cAAe,KAInB/pE,KAAKyjD,MAAQ,CACXurI,QAAShvL,KAAK0vL,aAAaC,QAG7B3vL,KAAK6vL,gBAAkB,SAAUb,GAC/BhvL,KAAKyjD,MAAMurI,QAAUhvL,KAAK0vL,aAAaV,EAAQvzJ,gBAGjDz7B,KAAKmqE,KAAO,WACV9kC,EAAUL,SAAShlC,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASllH,aAAa3rE,KAAKisE,GAAQA,EAAIC,OAAMl9D,KAAKwgD,EAAAA,mBAC3FpE,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAGlCvqE,KAAKwqE,cAAgB,WACnBnlC,EAAUL,SAAShlC,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASjlH,cAAc58D,KAAKwgD,EAAAA,mBACrEpE,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,MAGlCvqE,KAAKyqE,eAAiB,WACpBzqE,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASjlH,cAAgB,IAGjD/pE,KAAK0qE,WAAa,SAAUL,GAC1B,IAAIM,EAAM3qE,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASjlH,cAAclkE,QAAQwkE,IAClD,IAATM,EACF3qE,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASjlH,cAAcnmE,KAAKymE,GAElDrqE,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASjlH,cAAc9G,OAAO0H,EAAK,IAI7D3qE,KAAK4qE,aAAe,WAGlB,MAAMnmE,EAAO,IAAIw+C,EAAK,CAAC,IAASjjD,KAAK+P,MAAM/P,KAAKyjD,MAAMurI,SAASllH,cAAc,CAACt3C,EAAK43C,IAAQ53C,EAAM43C,EAAIC,KAAO1c,EAAAA,kBAAkB,MAC9HlM,EAAUyB,OAAOz+C,EAAMzE,KAAKqpE,aAAe,kB,wfC9D1C,WAAyBtjE,GAAzB,iHAEoBC,EAAAA,GAAAA,IAAA,2BACDD,EADC,WAErB,CACEyF,OAAQ,KALT,uBAEK/G,EAFL,EAEKA,KAFL,kBAQIA,GARJ,uCAUGyB,EAAAA,EAAAA,IAAgB,EAAD,IAVlB,0D,sBCDA,I,8YCCA,WAA4BH,GAA5B,iHAE+BC,EAAAA,GAAAA,IAAA,2BACZD,EADY,cAEhC,CACEyF,OAAQ,KALT,uBAEW8uD,EAFX,EAEK71D,KAFL,kBAQI61D,GARJ,uCAUGp0D,EAAAA,EAAAA,IAAgB,EAAD,IAVlB,0D,gFCCA,SAAS4pL,EAAT,GAAoD,IAA3B51B,EAA2B,EAA3BA,QAAS61B,EAAkB,EAAlBA,QACvC,OACE,4BACE,4BACE,cACE9uL,UAAU,yCACV,cAAY,SAHhB,UAKMi5J,GAAW,IALjB,gBAOA,4BACE,cACEj5J,UAAU,uCACV,cAAY,SAHhB,UAKM8uL,GAAW,IALjB,kBCuEC,IAAMC,GAAwBt6K,EAAAA,EAAAA,IA1E9B,WAAyB,kBCNH3P,EDQrBkqL,GCRqBlqL,GDOLsY,EAAAA,EAAAA,MCNfjY,EAAAA,EAAAA,UACL,CAAC,eAAgBL,EAAe,QAAS,cACzC,kBHLG,SAAP,kCGKUmqL,CAAanqL,KACnB,CACEiI,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,2CDEXitJ,GAAU,UAAA+1B,EAAexrL,YAAf,eAAqB0rL,mBAAoB,EACnDJ,IAAW,UAAAE,EAAexrL,YAAf,eAAqB2rL,YAAa,GAAKl2B,EAExD,OACE,iCACE,SAACj5H,EAAA,EAAD,CACE/yB,MAAM,YACN4xB,YAAa,CAAC,CAAEl5B,MAAO,0BAGxBqpL,EAAe7gL,WACd,iBAAKnO,UAAU,cAAcH,MAAO,CAAEmuC,UAAW,OAAjD,mDAEE,cAAGhuC,UAAU,qCAGf,iCACE,gBAAKA,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UAEE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CACE/yB,KAAK,oBACLpD,MAAM,yBAER,SAACm2B,EAAA,GAAD,CAAYpjC,UAAU,aAAtB,UACE,kBAAOA,UAAU,QAAjB,UACE,4BACE,2BACE,kDACA,4CAAKgvL,EAAexrL,YAApB,aAAK,EAAqB4rL,iBAA1B,QAAuC,uBASrD,gBAAKpvL,UAAU,OAAf,UACE,UAACq1B,EAAA,EAAD,YAEE,SAACC,EAAA,EAAD,CACE5yB,MAAK,UAAEssL,EAAexrL,YAAjB,aAAE,EAAqB6rL,SAC5Bh/K,KAAK,gBACLvH,KAAK,eAGP,SAACwsB,EAAA,EAAD,CACE5yB,MAAK,UAAEssL,EAAexrL,YAAjB,aAAE,EAAqB8rL,WAC5Bj/K,KAAK,iBACLvH,KAAK,WAGP,SAACwsB,EAAA,EAAD,CACE5yB,MAAK,UAAEssL,EAAexrL,YAAjB,aAAE,EAAqB2rL,UAC5B9+K,KAAK,cACLvH,KAAK,OAHP,UAME,SAAC+lL,EAAD,CAAe51B,QAASA,EAAS61B,QAASA,mBAUQ,I,6WEpE3D,WAAwBhqL,GAAxB,iHAE0BC,EAAAA,GAAAA,IAAA,2BACPD,EADO,SAE3B,CACEyF,OAAQ,KALT,uBAEW6+F,EAFX,EAEK5lG,KAFL,kBAQI4lG,GARJ,uCAUGnkG,EAAAA,EAAAA,IAAgB,EAAD,IAVlB,0D,iyBCVMsqL,EAA2B,CACtChqJ,OAAQ,cACRoQ,SAAU,QACVt4C,GAAI,SACJy4C,O,SAAQlM,EACRiM,SAAS,EACTI,SAAU,SACVL,KAGF,YAAuD,IAAlClzC,EAAkC,EAAlCA,MACb1C,EAKA,CAAC,QAAQkE,SAAS,IAAUxB,IACvB,eAGL,CAAC,WAAWwB,SAAS,IAAUxB,IAC1B,gBAGF,gBAXT,OAAO,iBAAM1C,WAAW6L,EAAAA,EAAAA,GAAK,QAAS7L,GAA/B,SAA4C0C,MCjBxCurL,EAAyB,CACpC1oJ,OAAQ,YACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI0mJ,UAAY,KACnCnyL,GAAI,WACJgwC,gBAAgB,EAChBwI,SAAS,GCLE45I,EAA0B,CACrClqJ,OAAQ,aACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI4mJ,WAAa,KACpCryL,GAAI,YACJgwC,gBAAgB,EAChBwI,SAAS,GCLEq4I,EAA6B,CACxC3oJ,OAAQ,gBACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI6mJ,cAAgB,KACvCtyL,GAAI,eACJgwC,gBAAgB,EAChBwI,SAAS,G,8BCGE+5I,EAAwB,CACnCj6I,SAPF,SAAkB7M,GAChB,IAAM+mJ,EAAa1zJ,GAAAA,CAAO2M,EAAI62D,WAE9B,OADgBkwF,EAAW3tF,OAAS,GACnB4tF,EAAAA,EAAAA,SAAQD,GAAc,KAKvCtqJ,OAAQ,UACRloC,GAAI,cACJgwC,gBAAgB,EAChBwI,SAAS,G,WCXElG,EAAwB,CACnCpK,OAAQ,eACRloC,GAAI,UACJgwC,gBAAgB,EAChBwI,SAAS,EACT1I,iBAAiB,EACjBluC,MAAO,MACPg3C,SAAU,SACVH,OAAQ,kBAAM,MACdF,KAGK,YAA+C,IAAxB9M,EAAwB,EAAxBA,IACtBv+B,EAAS,CACb2jL,aAAcplJ,EAAIC,SAAS4mJ,aAC3B1B,SAAUnlJ,EAAIC,SAASymJ,SACvBtoH,UAAWp+B,EAAIC,SAAS61F,UACxBovD,MAAOllJ,EAAIC,SAASgnJ,OAGtB,OACE,iBAAK/vL,UAAU,cAAf,WAEE,SAACqK,EAAA,EAAD,CACEC,GAAG,eACHC,OAAQA,EACR0C,MAAM,SACNjN,UAAU,cAJZ,UAME,cAAGA,UAAU,4BAA4B,cAAY,YAIvD,SAACqK,EAAA,EAAD,CAAMC,GAAG,aAAaC,OAAQA,EAAQ0C,MAAM,OAA5C,UACE,cAAGjN,UAAU,6BAA6B,cAAY,gB,2GC1BvD,SAASgwL,GAAT,GAAmD,I,IAAzBxsL,EAAyB,EAAzBA,KACzB0hC,GCLCrnB,EAAAA,EAAAA,UACL,iBAAM,CAAC0xK,EAAYtB,EAAUwB,EAAWvB,EAAcv+I,EAASigJ,KAC/D,IDIF,G,GAA4B1nL,EAAAA,EAAAA,UAAS,CAAE7K,GAAI,WAAYqqC,MAAM,I,EAA7D,E,g0BAAOR,EAAP,KAAeM,EAAf,KAEA,GACEZ,EAAAA,EAAAA,UACE,CACE1B,QAAAA,EACA1hC,KAAAA,EACAwjC,aAAc,CACZE,OAAQ,CAACA,KAGbU,EAAAA,WACAE,EAAAA,UACAC,EAAAA,eAXIK,EAAR,EAAQA,cAAeC,EAAvB,EAAuBA,kBAAmBC,EAA1C,EAA0CA,aAAcnwB,EAAxD,EAAwDA,KAAMowB,EAA9D,EAA8DA,WAcxDI,EAAaP,IACbQ,EAAaP,IAEnB,OACE,SAAC+B,EAAA,EAAD,WACE,SAAC,KAAD,WACE,UAAC,KAAD,CACEpqC,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAG9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,SAKG2D,EAAKhF,OAAS,EACb2Z,EAAKjb,KAAI,SAAC4rC,GACRP,EAAWO,GACX,MAAwCA,EAAIoD,cAApCxtC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CAEEwpC,MAAOP,EAAIO,MACXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAJFnB,OASX,yBACE,eAAI4N,QAAS,EAAGtM,UAAU,yBAA1B,iCAWd,SAASsgH,EAAiBjjH,EAAYqqC,GACpCF,EAAU,CAAEnqC,GAAAA,EAAIqqC,KAAAA,K,gBExFP7kC,GAAoB,CAC/B0iC,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIS,IACvBlsC,GAAI,OACJu4C,KAOK,YAAwD,IAA7B/yC,EAA6B,EAApCH,MAAaomC,EAAuB,EAAvBA,IACtC,OACE,SAACW,GAAA,EAAD,CAAeX,IAAKA,EAAKY,iBAAe,EAAxC,SACG7mC,KATLwqC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,UCVCh/B,GAAsB,CACjCsuB,OAAQ,aACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI9wB,QAAU,KACjC3a,GAAI,aACJgwC,gBAAgB,EAChBwI,SAAS,GCJEH,GAAuB,CAClCnQ,OAAQ,UACRoQ,SAAU,SAAC7M,GAAD,OACRA,EAAImnJ,YAAaH,EAAAA,EAAAA,SAAQ/rL,SAAS+kC,EAAImnJ,WAAY,KAAO,KAC3D5yL,GAAI,cACJgwC,gBAAgB,EAChBwI,SAAS,G,6rBCPJ,IAAMlG,GAAuB,CAClCpK,OAAQ,cACRloC,GAAI,UACJgwC,gBAAgB,EAChBwI,SAAS,EACT1I,iBAAiB,EACjBluC,MAAO,QACPg3C,SAAU,SACVH,OAAQ,kBAAM,MACdF,KAGK,YAA8C,IAAvB9M,EAAuB,EAAvBA,IAC5B,OAEE,sBAAK9oC,UAAU,eAAkB8oC,EAAIa,6BAArC,cACE,cAAG3pC,UAAU,4BAA4B,cAAY,cChB9CknE,GAAyB,CACpC3hC,OAAQ,YACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAI81F,WAAa,KACpCvhI,GAAI,YACJgwC,gBAAgB,EAChBwI,SAAS,G,YCJJ,SAASq6I,KACd,OAAuC5+I,EAAAA,EAAAA,KAA/BjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAElB,OACE,SAACjE,GAAA,EAAD,CACEhrC,MAAOW,EAAS20C,gBAChB7xC,SAIJ,SAAiC6xC,GAC/BrG,EAAiB,CAAEqG,gBAAAA,O,wyBC6BhB,SAASm4I,GAAT,GAIgB,IC9CrBluF,EACAmuF,EAEA,EAAOC,EAAYC,EAEbzuF,EASA0uF,E,ID6BNnnF,EAGqB,EAHrBA,KACAonF,EAEqB,EAFrBA,YACAriL,EACqB,EADrBA,UAEA,GAAuCmjC,EAAAA,EAAAA,KAA/BjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAClB,G,GAA4CnL,EAAAA,EAAAA,GAAkB,Q,EAA9D,E,g0BAAOC,EAAP,KAAuBC,EAAvB,KACMxB,GE3CCrnB,EAAAA,EAAAA,UAAQ,iBAAM,CAAChb,GAAMoU,GAAQiwD,GAAWv3B,GAAS+F,MAAU,IF4C5DkwE,GAAuB/oG,EAAAA,EAAAA,GAAY4pB,GClDzCw7D,EDmDY5+F,EAAS20C,gBClDrBo4I,EDkDsCI,EChDtC,E,k1BAAA,EAAoCtoL,EAAAA,EAAAA,UAAgC,MAApE,GAAOmoL,EAAP,KAAmBC,EAAnB,KAEMzuF,GAAe1vF,EAAAA,EAAAA,cAAY,WAC1Bk+K,IAILI,cAAcJ,GACdC,EAAc,SACb,CAACD,IAEEE,GAAgBp+K,EAAAA,EAAAA,cACpB,SAAC8vF,IACKouF,GAAeD,GAInBE,EACEI,YAAW,2BAAC,6GACJN,IADI,2CAEK,IAAdnuF,MAGP,CAACouF,EAAYD,KAGf9nL,EAAAA,EAAAA,YAAU,WAOR,OANK25F,GAAgBmuF,EAGnBG,EAActuF,GAFdJ,IAKKA,IACN,CAACI,EAAasuF,EAAe1uF,EAAcwuF,EAAYD,IDgB1D,OAWIxpJ,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAM4lG,EACNtiE,YAAa,CAAEC,SAAAA,EAAAA,GACfC,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,QAClBC,aAAcV,GAEhBL,gBAVF,WAWI,OAAO,GAET++E,mBAAmB,EACnB/9E,uBAAuB,EACvBg5E,kBAAmB,EACnBl6E,SAhBF,SAgBWyqJ,EAAKC,GACZ,gBAAUD,EAAIpnJ,GAAd,YAAoBqnJ,KAGxBhpJ,EAAAA,WACAC,EAAAA,gBACAC,EAAAA,UACAs9E,EAAAA,YACAr9E,EAAAA,cACAC,EAAAA,EACAE,EAAAA,IArCAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAJ,EANF,EAMEA,iBACAK,EAPF,EAOEA,SACAb,EARF,EAQEA,YACAc,EATF,EASEA,gBATF,IAUE35B,MAAS45B,EAVX,EAUWA,UAAWzB,EAVtB,EAUsBA,UA+BtB3+B,EAAAA,EAAAA,YAAU,WACRmgC,EAAgBm9E,KACf,CAACA,EAAsBn9E,IAE1B,IAAME,EAAaP,IACbQ,EAAaP,IAEnB,OACE,UAAC,KAAD,YACE,SAAC,KAAD,CAAYh4B,KAAK,WAAW1K,MAAM,aAAlC,UACE,SAAC,KAAD,WACE,SAAC,KAAD,WACE,SAACuqL,GAAD,WAKN,SAAC,KAAD,KAEA,SAAC1lJ,EAAA,EAAD,CAAW9nC,MAAO+jC,EAAgBtgC,SA6EtC,SAA+BzD,GAC7BgkC,EAAkBhkC,OA5EhB,UAAC,KAAD,CACE1C,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAG9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAACisC,EAAA,EAAD,CACE5C,KAAM/wB,EACNowB,WAAYA,EACZp6B,UAAWA,EACXg7B,aAAa,gBACbC,UAAW,SAACN,EAAD,OAAQpqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAA9B,OACT,UAAC,EAAAs/B,SAAD,YACE,SAAC,KAAD,CACEkK,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,GAMNoqC,EAAI1D,aACH,2BACE,mBACA,eAAI94B,QAASw8B,EAAIO,MAAM7qC,OAAS,EAAhC,UACE,SAACwxL,GAAD,CAAgBxsL,KAAMslC,EAAIC,SAAS4tC,eAb5Bj4E,YAuBvB,UAACqtC,EAAA,EAAD,YACE,SAAClB,EAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,EAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAY4zF,EAAK5qG,OACjB+jC,kBAMR,SAA8B0E,GAC5BU,EAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8B4jC,SAAAA,gBAOjD,SAASq5E,EAAiBjjH,EAAYqqC,GACpCiK,GAAiB,SAACtuC,GAAD,UAAC,MACbA,GADY,IAEf6jC,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,S,gUGxJb,IAAMmpJ,IAAkBp8K,EAAAA,EAAAA,IAvCxB,WACL,ICJsB3P,EDKhBgsL,GCLgBhsL,GDIAsY,EAAAA,EAAAA,MCHfjY,EAAAA,EAAAA,UACL,CAAC,eAAgBL,EAAe,QAAS,SACzC,kBnBSG,SAAP,kCmBTUisL,CAASjsL,KACf,CACEiI,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,2BDLQ,SAUVglL,IAVU,iFAUzB,6GACQF,EAAUG,UADlB,4CAVyB,sBAczB,OACE,iCACE,SAACjxJ,EAAA,EAAD,CACE/yB,MAAM,iBACN4xB,YAAa,CAAC,CAAEl5B,MAAO,eACvBs6B,QAAM,EACNC,QAAS4wJ,EAAU3iL,UACnBgyB,SAAU6wJ,KAGZ,gBAAKhxL,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC,IAAD,CAAuByxC,SAtBP,CACtBuG,gBAAiB,GACjB/Q,SAAU,GACVC,OAAQ,CAAE7pC,GAAI,OAAQqqC,MAAM,IAmB4B7B,WAAW,OAA7D,UACE,SAACsqJ,GAAD,CACE/mF,KAAM0nF,EAAUttL,MAAQ,GACxBgtL,YAAaQ,EACb7iL,UAAW2iL,EAAU3iL,uBASoB,I,gYE3ChD,WACLrJ,EACAosL,EACAC,EACAlD,EACA/mH,GALK,+GAQeniE,EAAAA,GAAAA,IAAA,2BACID,EADJ,uBACgCosL,EADhC,WAEhB,CACE3mL,OAAQ,CAAE4mL,MAAAA,EAAOlD,SAAAA,EAAU/mH,UAAAA,KAX5B,cAQGkqH,EARH,yBAcIA,EAAI5tL,MAdR,uCAgBGyB,EAAAA,EAAAA,IAAgB,EAAD,IAhBlB,yD,yCCAA,IAAMmkH,GAA2B,CACtC7jF,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAAUA,EAAI/mB,MAAO+tK,EAAAA,EAAAA,SAAQhnJ,EAAI/mB,MAAQ,KACnD1kB,GAAI,OACJgwC,gBAAgB,EAChBwI,SAAS,GCNE/sC,GAA2B,CACtCy8B,OAAQ,OACRoQ,SAAU,OACVt4C,GAAI,OACJgwC,gBAAgB,EAChBwI,SAAS,GCLE7pC,GAA8B,CACzCu5B,OAAQ,UACRoQ,SAAU,UACVt4C,GAAI,UACJgwC,gBAAgB,EAChBwI,SAAS,G,wyBC8BJ,SAASw7I,GAAT,GAAoE,I,IAAzC7tL,EAAyC,EAAzCA,KAAM2K,EAAmC,EAAnCA,UACtC,GACEmjC,EAAAA,EAAAA,KADMjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAElB,G,GAA4CnL,EAAAA,EAAAA,GAAkB,U,EAA9D,E,g0BAAOC,EAAP,KAAuBC,EAAvB,KACMxB,GCpCCrnB,EAAAA,EAAAA,UAAQ,iBAAM,CAACurG,GAAMtgH,GAAMkD,MAAU,IDqCtC45G,GAAuB/oG,EAAAA,EAAAA,GAAY4pB,GAEzC,GAUIG,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAAA,EACAsjC,YAAa,CAAEC,SAAAA,EAAAA,GACfC,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,QAClBC,aAAcV,IAGlBmB,EAAAA,WACAC,EAAAA,gBACAC,EAAAA,UACAC,EAAAA,eAxBAK,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAC,EANF,EAMEA,SACAb,EAPF,EAOEA,YACAc,EARF,EAQEA,gBARF,IASE35B,MAAS45B,EATX,EASWA,UAAWzB,EATtB,EASsBA,UAmBtB3+B,EAAAA,EAAAA,YAAU,WACRmgC,EAAgBm9E,KACf,CAACA,EAAsBn9E,IAE1B,IAAME,EAAaP,IACbQ,EAAaP,IAEnB,OACE,UAAC,KAAD,YACE,SAAC,KAAD,CAAYh4B,KAAK,aAAa1K,MAAM,YAEpC,SAAC6kC,EAAA,EAAD,CAAW9nC,MAAO+jC,EAAgBtgC,SAmEtC,SAA+BzD,GAC7BgkC,EAAkBhkC,OAlEhB,UAAC,KAAD,CACE1C,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAG9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKE,SAACisC,EAAA,EAAD,CACE5C,KAAM/wB,EACNowB,WAAYA,EACZp6B,UAAWA,EACXg7B,aAAa,kBACbC,UAAW,SAACN,EAAD,OAAQpqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAA9B,OACT,SAAC,EAAAs/B,SAAD,WACE,SAAC,KAAD,CACEkK,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,IAHMA,YAcvB,SAACqtC,EAAA,EAAD,WACE,SAACzJ,EAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYhS,EAAKhF,OACjB+jC,kBAMR,SAA8B0E,GAC5BU,EAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8B4jC,SAAAA,eAOjD,SAASq5E,EAAiBjjH,EAAYqqC,GACpCiK,GAAiB,SAACtuC,GAAD,UAAC,MACbA,GADY,IAEf6jC,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,SEhGb,IAAM4pJ,IAAqB78K,EAAAA,EAAAA,IApD3B,WACL,IAAM3P,GAAgBsY,EAAAA,EAAAA,KACtB,ECPK,WACL,IAAMqO,GAAcC,EAAAA,EAAAA,kBAEpB,GAQIrO,EAAAA,GAAAA,4BAPF9S,OACcgnL,EAFhB,EAEIj0K,WACA4wK,EAHJ,EAGIA,aACAF,EAJJ,EAIIA,MACAC,EALJ,EAKIA,SACA/mH,EANJ,EAMIA,UAIJ,IAAKqqH,EACH,MAAM,IAAI7zL,MAAM,oCAGlB,IAAMgB,EAAM,CACV,eACA6yL,EACA,QACA,SACArD,EACAF,EACAC,EACA/mH,GAOIjyD,GAAQ9P,EAAAA,EAAAA,UACZzG,GACA,kBPnCG,SAAP,2COoCM8yL,CAAcD,EAAerD,EAAcF,EAAOC,EAAU/mH,KAC9D,CACEuqH,sBAAsB,EACtB9uK,QAAS,SAAC9I,GACRm2C,GAAAA,GAAoB,wBAAyBn2C,EAAc,OAKjE,MAAO,CAAE5E,MAAAA,EAAOy8K,gBAhBhB,WACE,OAAOjmK,EAAYI,kBAAkBntB,KDtBJizL,GAA3B18K,EAAR,EAAQA,MAAOy8K,EAAf,EAAeA,gBACf,GAEIr0K,EAAAA,GAAAA,4BADF9S,OAGIs0B,EAAc,CAClB,CACEl5B,MAAO,aACP05B,KAAM,aACNC,WAAY,CAAEjiC,GAAIyH,IAEpB,CAAEa,MAVJ,EACYqoL,OAUV,CAAEroL,MAXJ,EACmBsoL,UAWjB,CAAEtoL,MAAO,WAQX,OACE,iCAEE,SAACq6B,EAAA,EAAD,CACE/yB,MAAM,aACN4xB,YAAaA,EACboB,QAAM,EACNC,QAASjrB,EAAM9G,WAAa8G,EAAM28K,WAClCzxJ,SAAUuxJ,KAGZ,gBAAK1xL,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAAC,IAAD,CACEyxC,SAnBc,CACtBxK,SAAU,GACVC,OAAQ,IAkBArB,WAAW,eAFb,UAKE,SAACwrJ,GAAD,CACE7tL,KAAOyR,EAAMzR,MAAQ,GACrB2K,UAAW8G,EAAM9G,uBASyB,I,uBE7D3C+iD,GAAmBv8C,KAAAA,OAC9B,mCACA,IACA9R,KCHWqyD,GAAcvgD,KAAAA,OACzB,8BACA,IACA9R,KCAWm0D,GAAcriD,KAAAA,OAAe,wBAAyB,CACjEugD,GACAhE,KACCruD,KCRH,MAAMy8C,GAAgCvrC,EAAQ,OAqFjCwnH,GAAc5mH,QACxB5W,OAAO,kBAAmB,CAAC,gBAAiBi5D,KAC5CrzC,OAAO,CAAC,yBA9EX,SAAgBoxC,GAGd,MAAMt7B,EAAQ,CACZ52B,KAAM,QACN2C,IAAK,SACL28C,OAAQ,WACRsW,UAAU,EAEVxQ,QAAO,gFAAkB,SAAiBhJ,EAAQwI,EAAQ3xC,EAAU0T,EAAem6B,EAAcD,GAC/F,OAAOzE,GAAO2F,UACZ,IAAKzrC,EAAAA,EAAAA,IAAmBrD,EAAS/L,MAKjC,UrCrBD,SAAP,kCqCsBgBjE,CAAKgQ,EAASxK,IACpBo4C,EAAiBoV,cAAchjD,EAASxK,UAClCq4C,EAAasV,oBAAoBnjD,EAAU,IACjD,MAAOrY,GACP+rB,EAAcxc,MAAM,6GACpBy6C,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,SAV1CwnB,EAAOr8B,GAAG,wBA8CZ+pD,EAAO,CACXtyE,KAAM,aACN2C,IAAK,wEACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,GACbrrC,WAAY,oBAKlB8gD,EAAuBC,SAASv7B,GAChCs7B,EAAuBC,SA1CL,CAChBnyD,KAAM,kBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAsCjBmgD,EAAuBC,SAjCV,CACXnyD,KAAM,aACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,gBA6BjBmgD,EAAuBC,SAxBR,CACbnyD,KAAM,eACN2C,IAAK,0EACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,kBAoBjBmgD,EAAuBC,SAASmgB,MAM/BvgE,UAAU,iBAAkBm6K,GAC5Bn6K,UAAU,cAAe08K,IACzB18K,UAAU,YAAai8K,IAAiBhuL,M,0dCnF3C,IAAMgvL,EAAW,iBCFjB,EAAel9K,IAAAA,OACL,0BAA2B,IAClCkqD,UAAU,qBDGN,WACL,MAAO,CACLC,SAAU,IACVz/B,KAGF,SAAcknB,EAAe4oB,EAAc2iH,GACzC,IAA2Bt3K,EAAcs3K,EAAjCC,kBAER,GAAKv3K,EAAL,CAIA,IAAMw3K,EAAsBn0L,OAAOD,KAAKk0L,GACrCzgL,QAAO,SAAC4gL,GAAD,OAAUA,EAAKt3J,WAAWk3J,IAAaI,IAAS,GAAL,OAAQJ,EAAR,UAClD30L,KAAI,SAAC+0L,GAAD,MAAU,CAAC,IAAYA,EAAK73J,QAAQy3J,EAAU,KAAMC,EAAMG,OAE3DnjL,GAAQyL,EAAAA,EAAAA,IAAWC,GAErB1L,IAAUiL,EAAAA,GAAAA,OAKVjL,IAAUiL,EAAAA,GAAAA,SAIdi4K,EAAoBp7K,SAAQ,YAA0B,I,IAAA,G,EAAA,E,4CAAA,I,gxBAAxBq7K,EAAwB,YAAlBvvL,OAAkB,MAAVuvL,EAAU,EAC9CvqE,EAAev4C,EAAK8iH,KAAKA,IAAS,GACxC9iH,EAAK8iH,KAAKA,EAAM,UAAGvqE,EAAH,YAAmBhlH,GAAQsoB,WAV3CmkD,EAAKp6C,aCzBX,K,WCDam9J,EAAoBv9K,IAAAA,OACvB,6BAA8B,IACrCmvC,QAAQ,cAAequI,EAAAA,aAAatvL,K,yECyBhC,SAASuvL,EAAaC,GAC3B,IAAMC,EAAiB/rK,GAAAA,CAAS8rK,GAEhCvsK,IAAAA,OAAe,CACb9Z,QAAS,aAAF,OAAesmL,EAAf,2BACPtyL,UAAW,mBACXuyL,UAAU,I,eC9Bd,EAAe59K,IAAAA,OACL,yBAA0B,CAACu9K,IAClCpuI,QAAQ,gBAAiBt6B,EAAAA,IACzBs6B,QAAQ,gBDgCJ,WACL,MAAO,CACLsuI,aAAAA,EACA7sK,wBAAAA,EAAAA,GACA/W,aAAAA,EAAAA,GACAyX,YAAAA,EAAAA,GACAC,mBAAAA,EAAAA,GACAP,wBAAAA,EAAAA,GACAjX,QAAAA,EAAAA,GACAyX,yBAAAA,EAAAA,GACAC,+BAAAA,EAAAA,GACAC,gBAAAA,EAAAA,GACAI,kBAAAA,EAAAA,GACAC,oBAAAA,EAAAA,GACAC,cAAAA,EAAAA,GACAC,gBAAAA,EAAAA,GACAE,qBAAAA,EAAAA,GACAY,2BAAAA,EAAAA,GACAV,sBAAAA,EAAAA,GACAD,mBAAAA,EAAAA,GACAiB,0BAAAA,EAAAA,GACAG,mBAAAA,EAAAA,GACAV,eAAAA,EAAAA,GACAF,yBAAAA,EAAAA,GACAN,2BAAAA,EAAAA,GACAT,iBAAAA,EAAAA,OCxDDs9B,QAAQ,oBAAqBx+B,EAAAA,IAJhC,K,6GCDaktK,GAAwB9qL,EAAAA,EAAAA,ICmB9B,YAA2D,IAAjCsD,EAAiC,EAAjCA,MAAOQ,EAA0B,EAA1BA,MAAO8B,EAAmB,EAAnBA,SAM7C,OACE,gBAAKtN,UAAU,MAAf,UACE,gBAAKA,UAAU,gCAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CACE/yB,KAAK,OACLpD,MAAM,iBACNqD,aAAW,EACXtQ,UAAU,qBAEZ,SAACojC,EAAA,GAAD,WACE,SAAC,KAAD,CACEj2B,cAjBU,CACpBtK,KAAM,GACN4vL,QAAS,IAgBC1pL,iBAAkB,kBCxCzB,SAA0ByC,GAC/B,OAAOnE,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,MAAMsG,EAAAA,EAAAA,MACH5B,SAAS,2BACTiC,KACC,YACA,6BACA,SAAC3G,GAAD,QAAYA,GAAQ2I,EAAM6hB,OAAM,SAAC1hB,GAAD,OAAUA,EAAKC,OAAS/I,QAE5D4vL,SAASnpL,EAAAA,EAAAA,MAAQs1C,IAAGt3C,EAAAA,EAAAA,SD+BcyB,CAAiByC,IACzC8B,SAAUA,EACVC,iBAAe,EAJjB,SAMG,gBACCnH,EADD,EACCA,OACAwH,EAFD,EAECA,OACAgf,EAHD,EAGCA,aACAnf,EAJD,EAICA,cACAC,EALD,EAKCA,aACAC,EAND,EAMCA,QAND,OAQC,UAAC,KAAD,CACE3N,UAAU,kBACVsN,SAAUsf,EACVE,YAAU,EAHZ,WAKE,SAACnc,EAAA,EAAD,CACE/J,QAAQ,YACRjB,MAAM,OACNiI,OAAQA,EAAO/K,KACf0E,UAAQ,EAJV,UAME,SAAC,KAAD,CACEwlB,GAAIC,EAAAA,EACJnqB,KAAK,OACLxF,GAAG,YACHkK,UAAQ,EACRyJ,YAAY,mBACZ,UAAQ,yBAIXhG,EAAMxM,OAAS,IACd,SAACmS,EAAA,EAAD,CACE/J,QAAQ,cACRjB,MAAM,wBACNI,QAAQ,4GACR6H,OAAQA,EAAO6kL,QAJjB,UAME,SAAC5hL,EAAA,EAAD,CACEnO,MAAO0D,EAAOqsL,QACdtsL,SAAU,SAACssL,GAAD,OACRhlL,EAAc,UAAWglL,IAE3BznL,MAAOA,EACP+F,OAAO,wBACPnK,QAAQ,cACRoK,YAAY,uCAKlB,gBAAKhR,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACEnH,UAAW4G,EACX,UAAQ,wBACRQ,UAAWT,EACXU,YAAY,mBAJd,WAME,SAACmC,EAAA,EAAD,CAAMF,KAAK,OAAOG,SAAO,EAACzC,KAAK,OANjC,sCD7FmC,CACvD,QACA,WACA,UGLF,EAAe4G,IAAAA,OACL,sBAAuB,IAE9BC,UAAU,iBAAkB49K,GAH/B,K,+PCFO,SAASE,EACdh0L,GAEA,I,IAAMi0L,EAKN,SAA8Bj0L,GAC5B,qCAA+BA,GANXk0L,CAAqBl0L,GAC3C,G,GAAkCie,EAAAA,EAAAA,GAAgBg2K,EAAe,I,EAAjE,E,8zBAEA,MAAO,CAFP,W,01BCQF,SAAS/gI,GAAwB5yD,GAC/B,IAAQiwC,EAAsBjwC,EAAtBiwC,WAAYtpC,EAAU3G,EAAV2G,MACpB,OACE,0BACE,UAAC,GAAAklB,EAAA,OAAD,SAEM7rB,GAFN,eAIE,kBAAO8J,KAAK,WAAW2rB,QAASwa,EAAY9oC,SAAU,kBAAM,QAAS,KACrE,2BAAQR,UAMT,SAASktL,GAAT,GAKW,QAJhBniI,cAAAA,OAIgB,MAJA,GAIA,EAHhBvqD,EAGgB,EAHhBA,SACA2sL,EAEgB,EAFhBA,YACApwL,EACgB,EADhBA,MAEA,OACE,SAAC,KAAD,CACE4O,mBAAmB,EACnBN,YAAa8hL,EACbptL,QAASgrD,EACThuD,MAAOA,EACPuO,SAAO,EACPolD,WAAY,CAAEzE,OAAAA,IACdzrD,SAAU,SAACgB,GAAD,OAAYhB,E,gDAAagB,I,4kBAKlC,SAAS4rL,GACdr0L,EACAuJ,GAEA,IAAMkiC,EAIR,SAAoBzrC,GAClB,2CAAqCA,GALnB6e,CAAW7e,GAC7B,OAAOie,EAAAA,EAAAA,GAAgBwtB,EAAWliC,EAAc2iC,gB,mdCjD3C,8HAEoB7lC,GAAAA,GAAAA,IAAiBC,MAFrC,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,GAAAA,IAAgB,EAAD,GAAe,2BALjC,0D,sBASA,SAAe+tL,GAAtB,mC,oDAAO,WAAyBnwL,GAAzB,iHAEyBkC,GAAAA,GAAAA,KAAgBC,KAAY,CAAEnC,KAAAA,IAFvD,uBAEW61B,EAFX,EAEKl1B,KAFL,kBAGIk1B,GAHJ,uCAKGzzB,EAAAA,GAAAA,IAAgB,EAAD,GAAe,wBALjC,yD,yBAiBP,SAASD,GAAS3H,GAChB,IAAImI,EAAM,QAKV,OAJInI,IACFmI,GAAO,IAAJ,OAAQnI,IAGNmI,E,mcCzBT,IAAMytL,GAAU,CACd5hK,IAAK,CAAC,QACNqH,IAAK,SAACr7B,GAAD,gB,gDAAmB41L,GAAQ5hK,M,kkBAA3B,CAAgCh0B,I,QAGhC,SAAS61L,GAAiB9vL,GAC/B,OAA4B+B,EAAAA,GAAAA,UAAS8tL,GAAQ5hK,KAAK,kBDb7C,WAAP,gCCa0D8hK,K,kWAApB,EAClCx7K,UAAW,GACXvU,OAAAA,IACGsU,EAAAA,GAAAA,IAAU,6BAGf,MAAO,CAAE6uF,KANT,EAAQ/iG,KAMa2K,UANrB,EAAcA,W,yKCPT,SAASilL,GAAT,GAIG,IAHR1wL,EAGQ,EAHRA,MAGQ,IAFRsO,YAAAA,OAEQ,MAFM,YAEN,EADR7K,EACQ,EADRA,SAEA,OACE,iBAAKnG,UAAU,uCAAf,WACE,SAAC,KAAD,CAAQA,UAAU,wBAClB,kBACE8I,KAAK,OACL9I,UAAU,cACV0C,MAAOA,EACPyD,SAAQ,+GAAE,SAAC1I,GAAD,OAAO0I,EAAS1I,EAAEY,OAAOqE,UACnCsO,YAAaA,EACb,UAAQ,8BAMT,SAASw1B,GACd9nC,GAEA,I,IAAMyrC,EAKN,SAAoBzrC,GAClB,sCAAgCA,GANhB6e,CAAW7e,GAC7B,G,GAA0Bie,EAAAA,EAAAA,GAAgBwtB,EAAW,GAAIS,gB,EAAzD,E,g0BAEA,MAAO,CAFP,W,4BCjCF,GAA+M,yE,2GCiBxM,SAASyoJ,GAAT,GAQG,I,IAPR3iI,EAOQ,EAPRA,cACAvqD,EAMQ,EANRA,SACA2qD,EAKQ,EALRA,aACAgiI,EAIQ,EAJRA,YACA/hI,EAGQ,EAHRA,iBACAC,EAEQ,EAFRA,aACAtuD,EACQ,EADRA,MAGM4wL,EAAW,wBACjB,G,GAAkCprL,EAAAA,EAAAA,UAASorL,G,EAA3C,E,g0BAAOriI,EAAP,KAAkBsiI,EAAlB,KAUA,OARAjrL,EAAAA,EAAAA,YAAU,WAENirL,EADExiI,EALS,sBAQEuiI,KAEd,CAACviI,KAGF,iBAAK/wD,UDvCyB,2ECuC9B,WACE,gBAAKA,UAAW28B,GAAhB,UACE,SAAC,KAAD,CACE3rB,YAAa8hL,EACbptL,QAASgrD,EACTvqD,SAAU,SAACgB,GAAD,OAAYhB,EAASgB,IAC/BwpD,aAAW,EACXjuD,MAAOA,OAGX,gBAAK1C,UAAW28B,GAAhB,UACE,mBACE38B,UDnDgH,qECoDhH8I,KAAK,SACL/B,UAAWiqD,EACX/iD,QAAS,SAACxQ,GACRA,EAAE+jC,iBACFsvB,KANJ,UASE,cAAG9wD,UAAWixD,W,4JC7CjB,SAASuiI,GAAT,GAA0C,IAAf1qL,EAAe,EAAfA,KAChC,OAAQA,GACN,KAAKD,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,OACH,OACE,gBAAK0kL,IAAKv0J,GAAQ/5B,MAAM,KAAKw0L,IAAI,iBAAiB,cAAY,SAElE,KAAK5qL,EAAAA,GAAAA,MACH,OACE,gBAAK0kL,IAAKh+J,GAAOtwB,MAAM,KAAKw0L,IAAI,iBAAiB,cAAY,SAEjE,KAAK5qL,EAAAA,GAAAA,kBACH,OACE,gBAAK0kL,IAAKmG,GAAYD,IAAI,uBAAuB,cAAY,SAEjE,KAAK5qL,EAAAA,GAAAA,gBACL,KAAKA,EAAAA,GAAAA,kBACH,OAAO,gBAAK0kL,IAAKoG,GAAMF,IAAI,sBAAsB,cAAY,SAC/D,KAAK5qL,EAAAA,GAAAA,sBACH,OACE,gBAAK0kL,IAAKqG,GAAUH,IAAI,2BAA2B,cAAY,SAEnE,KAAK5qL,EAAAA,GAAAA,iBACH,OACE,gBACE5J,MAAM,KACNsuL,IAAK9zJ,GACLg6J,IAAI,sBACJ,cAAY,SAGlB,QACE,OACE,cACEzzL,WAAW6L,EAAAA,EAAAA,GAAK,QAAS,aAAagoL,EAAAA,GAAAA,qBAAoB/qL,IAC1D,cAAY,U,wCCrCf,SAASgrL,GAAT,GAAmD,IAAxBhrL,EAAwB,EAAxBA,KAAMjH,EAAkB,EAAlBA,QACtC,OAAKuX,EAAAA,GAAAA,IAAmBtQ,IAKtB,kBAAM9I,UAAU,YAAhB,WACE,kCACI,SAAC,GAAA+zL,EAAD,CAAK/zL,UAAU,+BAA+B,cAAY,aAE9D,2BAAOqZ,EAAAA,GAAAA,IAAkBvQ,GAAQ,aAAe,WAEhD,0BAAOjH,OAVF,KCJJ,SAASmyL,GAAT,GAMsB,IAL3BtxL,EAK2B,EAL3BA,MACA2N,EAI2B,EAJ3BA,KACAhE,EAG2B,EAH3BA,SACAiE,EAE2B,EAF3BA,YACAoyB,EAC2B,EAD3BA,UAEA,OACE,kBAAM1iC,UAAU,8BAAhB,WACE,SAACuQ,EAAA,EAAD,CACEvQ,WAAW6L,EAAAA,EAAAA,GAAK,2BAA4B62B,GAC5CryB,KAAMA,EACNG,QAASF,KAEX,0BAAO5N,IACN2J,IAAY,iBAAMrM,UAAU,aAAhB,SAA8BqM,OCX1C,SAAS4nL,GAAT,GAIG,QAHRC,UAAAA,OAGQ,MAHI,GAGJ,EAFRprL,EAEQ,EAFRA,KACAqO,EACQ,EADRA,aAEA,GAAyB,IAArB+8K,EAAU11L,OACZ,OACE,gBAAKwB,UAAU,oCAAf,UACE,iBAAMA,UAAU,sBAAhB,qCAKN,IAAMgG,EAAWkuL,EAAU,GAE3B,OACE,iBAAKl0L,UAAU,oCAAf,WACE,kBAAMA,UAAU,sBAAhB,WACE,SAACg0L,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASmuL,WAAY,SACtC9jL,KAAK,SACLC,aAAW,MAGVtK,EAAS6uD,QACV,SAACm/H,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASouL,aAAc,WACxC/jL,KAAK,UACLC,aAAW,KAIf,SAAC+jL,GAAD,CACEp7B,QAASjzJ,EAASsuL,sBAClBxF,QAAS9oL,EAASuuL,sBAClBC,QAASxuL,EAASyuL,sBAClBC,UAAW1uL,EAAS2uL,2BAEtB,SAACX,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAAS4uL,YAAa,UACvCvkL,KAAK,WACLC,aAAW,KAEb,SAAC0jL,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAAS6uL,WAAY,SACtCxkL,KAAK,OACLC,aAAW,QAIf,kBAAMtQ,UAAU,6BAAhB,WACE,4BACGgG,EAAS6uD,MAAQ,QAAU,aAD9B,IAC6C7uD,EAASm6E,iBAErDn6E,EAAS6uD,QACR,SAACm/H,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASopL,UAAW,QACrC/+K,KAAK,aACLC,aAAW,KAGf,SAACwjL,GAAD,CAAiBjyL,QAASsV,EAAcrO,KAAMA,UAatD,SAASurL,GAAT,GAKwB,IAJtBp7B,EAIsB,EAJtBA,QACA61B,EAGsB,EAHtBA,QACA0F,EAEsB,EAFtBA,QACAE,EACsB,EADtBA,UAEMI,EAAkB77B,EAAU61B,EAElC,OACE,SAACkF,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUy5K,EAAiB,aAClCzkL,KAAK,MACLC,aAAW,EAHb,SAKGwkL,EAAkB,IACjB,kBAAM90L,UAAU,wBAAhB,WACE,SAACg0L,GAAD,CACEtxL,MAAOu2J,EACP5oJ,KAAK,QACLC,aAAW,EACXoyB,UAAU,kBAEZ,SAACsxJ,GAAD,CACEtxL,MAAOosL,EACPz+K,KAAK,QACLC,aAAW,EACXoyB,UAAU,iBAEZ,SAACsxJ,GAAD,CACEtxL,MAAO8xL,EACPnkL,KAAK,QACLC,aAAW,EACXoyB,UAAU,kBAEZ,SAACsxJ,GAAD,CACEtxL,MAAOgyL,EACPrkL,KAAK,QACLC,aAAW,EACXoyB,UAAU,sBC/Gf,SAASqyJ,GAAT,GAIG,QAHRb,UAAAA,OAGQ,MAHI,GAGJ,EAFRprL,EAEQ,EAFRA,KACAqO,EACQ,EADRA,aAEA,GAAyB,IAArB+8K,EAAU11L,OACZ,OACE,gBAAKwB,UAAU,oCAAf,UACE,iBAAMA,UAAU,sBAAhB,qCAKN,IAAMgG,EAAWkuL,EAAU,GAE3B,OACE,iBAAKl0L,UAAU,oCAAf,WACE,kBAAMA,UAAU,gCAAhB,WACE,SAACg0L,GAAD,CAAM3jL,KAAK,MAAMC,aAAW,EAAC5N,MAAK,UAAKsD,EAASgvL,SAAd,WAElC,SAAChB,GAAD,CACE3jL,KAAK,aACLC,aAAW,EACX5N,MAAK,WAAKm9F,EAAAA,GAAAA,UAAS75F,EAASivL,aAAvB,cAIT,kBAAMj1L,UAAU,6CAAhB,WACE,0CAAkBgG,EAASkvL,sBAC3B,SAAClB,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASopL,UAAW,QACrC/+K,KAAK,aACLC,aAAW,KAEb,SAACwjL,GAAD,CAAiBhrL,KAAMA,EAAMjH,QAASsV,UCtCvC,SAASg+K,GAAT,GAIG,QAHRjB,UAAAA,OAGQ,MAHI,GAGJ,EAFR/8K,EAEQ,EAFRA,aACArO,EACQ,EADRA,KAEA,GAAyB,IAArBorL,EAAU11L,OACZ,OACE,gBAAKwB,UAAU,oCAAf,UACE,iBAAMA,UAAU,sBAAhB,mBAKN,IAAMgG,EAAWkuL,EAAU,GAE3B,OACE,iBAAKl0L,UAAU,oCAAf,WACE,kBAAMA,UAAU,gDAAhB,WACE,SAACg0L,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASqpL,SAAU,OACpCh/K,KAAK,OACLC,aAAW,KAEb,SAAC0jL,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASspL,WAAY,SACtCj/K,KAAK,qBAEP,SAAC2jL,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASmpL,UAAW,QACrC9+K,KAAK,MACLC,aAAW,EAHb,SAKGtK,EAASmpL,UAAY,IACpB,kBAAMnvL,UAAU,YAAhB,WACE,SAACg0L,GAAD,CACEtxL,MAAOsD,EAASkpL,iBAChB7+K,KAAK,QACLC,aAAW,EACXoyB,UAAU,kBAEZ,SAACsxJ,GAAD,CACEtxL,MAAOsD,EAASmpL,UAAYnpL,EAASkpL,iBACrC7+K,KAAK,QACLC,aAAW,EACXoyB,UAAU,yBAOpB,kBAAM1iC,UAAU,6CAAhB,WACE,qCACA,SAACg0L,GAAD,CACEtxL,OAAO2Y,EAAAA,GAAAA,GAAUrV,EAASopL,UAAW,QACrC/+K,KAAK,aACLC,aAAW,KAEb,SAACwjL,GAAD,CAAiBhrL,KAAMA,EAAMjH,QAASsV,UC3DvC,SAASi+K,GAAT,GAAkD,MAAtB37K,EAAsB,EAAtBA,YAEjC,QADiBX,EAAAA,GAAAA,IAAgBW,EAAY1P,OAE3C,KAAK0O,EAAAA,GAAAA,WACH,OACE,SAACs8K,GAAD,CACEb,UAAWz6K,EAAYua,WAAW8kD,WAAa,GAC/ChwE,KAAM2Q,EAAY1P,KAClBoN,aAAcsC,EAAY6/B,MAAMpiC,UAGtC,KAAKuB,EAAAA,GAAAA,OACH,OACE,SAACw7K,GAAD,CACEC,UAAWz6K,EAAYq/D,UACvBhwE,KAAM2Q,EAAY1P,KAClBoN,aAAcsC,EAAY6/B,MAAMpiC,UAGtC,KAAKuB,EAAAA,GAAAA,MACH,OACE,SAAC08K,GAAD,CACEjB,WAAW,UAAAz6K,EAAY47K,aAAZ,eAAmBv8G,YAAa,GAC3ChwE,KAAM2Q,EAAY1P,KAClBoN,aAAcsC,EAAY6/B,MAAMpiC,UAGtC,QACE,OACE,gBAAKlX,UAAU,oCAAf,UACE,iBAAMA,UAAU,sBAAhB,kBCjCH,SAASs1L,GAAT,GAAmD,IAAjBr+K,EAAiB,EAAjBA,OACvC,OACE,iBAAMjX,WAAW6L,EAAAA,EAAAA,GAAK,QAAD,gBAAmB0pL,GAAuBt+K,KAA/D,SACGA,IAAWgB,EAAAA,GAAAA,GAAuB,KAAO,SAKhD,SAASs9K,GAAuBt+K,GAC9B,OAAIA,IAAWgB,EAAAA,GAAAA,KACN,SAEF,UCgBF,SAASu9K,GAAT,GAAqE,MAA1C/7K,EAA0C,EAA1CA,YAAaxL,EAA6B,EAA7BA,QAASw2G,EAAoB,EAApBA,UAChDz7G,GAAUoW,EAAAA,EAAAA,MACVq2K,GAASp8K,EAAAA,GAAAA,IAAkBI,EAAY1P,MAEvC2rL,EAuIR,SAAyBj8K,GAGvB,QAFiBX,EAAAA,GAAAA,IAAgBW,EAAY1P,OAG3C,KAAK0O,EAAAA,GAAAA,OACH,OAAOgB,EAAYq/D,UAAUt6E,OAAS,GAClC2d,EAAAA,GAAAA,sBAAqB1C,EAAYq/D,UAAU,GAAG6F,MAC9C,KACN,KAAKlmE,EAAAA,GAAAA,WACH,OAAOgB,EAAYua,WAAW8kD,WAC5Br/D,EAAYua,WAAW8kD,UAAUt6E,OAAS,GACxC2d,EAAAA,GAAAA,sBAAqB1C,EAAYua,WAAW8kD,UAAU,GAAG6F,MACzD,KACN,QACE,OAAO,MArJUg3G,CAAgBl8K,GAE/B8sF,EA8GR,SAAgChxF,GAC9B,MAA4B29K,IAAQ,SAAC3sF,GACnC,OAAKhxF,EAGE,IACLA,EACGrY,KAAI,SAACG,GAAD,OAAQkpG,EAAK/9F,MAAK,SAACkwB,GAAD,OAASA,EAAI6Q,KAAOlsC,QAC1CH,KAAI,SAACw7B,GAAD,OAASA,MAAAA,OAAT,EAASA,EAAK9sB,SALd,MAFH26F,EAAR,EAAQA,KAAMp4F,EAAd,EAAcA,UAWd,OAAIo4F,GAAQA,EAAK/nG,OAAS,EACjB+nG,EAAKr6F,KAAK,MAGfiC,EACK,kBAGF,UAlIMynL,CAAuBn8K,EAAYwtF,QAC1C1uE,GAAQ/e,EAAAA,GAAAA,IAAkBC,GAEhC,OACE,iBAAKzZ,UC7Cc,kFD6CnB,WACE,mBACE8I,KAAK,SACLmF,QAAO,8GAAE,kBAAMA,EAAQwL,MACvBzZ,UCjDiH,2FD8CnH,UAKE,SAACqK,GAAA,EAAD,CACErK,WAAW6L,EAAAA,EAAAA,GAAK,yBCpDiM,mFDqDjNvB,GAAIiuB,EACJhuB,OAAQ,CACN+S,WAAY7D,EAAYnO,GACxBjO,GAAIoc,EAAYnO,IALpB,UAQE,iBAAKtL,UAAU,qBAAf,WACE,iBAAMA,WAAW6L,EAAAA,EAAAA,GAAK,sBAAuB,iBAA7C,UACE,SAAC2nL,GAAD,CAAiB1qL,KAAM2Q,EAAY1P,UAErC,kBAAM/J,UAAU,YAAhB,WACE,iBAAKA,UAAU,oCAAf,WACE,6BACE,iBAAMA,UAAU,qCAAhB,SACGyZ,EAAY7N,QAEf,iBAAM5L,UAAU,qCAAhB,SACGy1L,GACC,SAACn6K,GAAA,EAAD,CACE7B,YAAaA,EACb8B,qBAAmB,KAGrB,iCACE,SAAC+5K,GAAD,CAAwBr+K,OAAQwC,EAAYzB,UAC5C,iBAAMhY,UAAU,8BAAhB,SACG01L,YAMVjxE,IACC,kBAAMzkH,UAAU,oBAAhB,WACE,uCACA,0BAAOykH,WAIb,SAAC2wE,GAAD,CAAkB37K,YAAaA,KAC/B,iBAAKzZ,UAAU,oCAAf,WACE,kBAAMA,UAAU,6BAAhB,WACGgZ,EAAAA,GAAAA,IAAoBS,EAAY1P,QAC/B,0BACG0P,EAAYq/D,UAAUt6E,OAAS,IAC9B,kBAAMwB,UAAU,mCAAhB,WACE,SAAC,KAAD,CACEA,UAAU,2BACV,cAAY,SAEbyZ,EAAYq/D,UAAU,GAAGk8G,SAL5B,QAME,SAACzkL,EAAA,EAAD,CACEF,KAAK,aACLrQ,UAAU,8BAEX6/F,EAAAA,GAAAA,UAASpmF,EAAYq/D,UAAU,GAAGm8G,aAVrC,QAWE,SAAC,KAAD,CACEj1L,UAAU,2BACV,cAAY,SAbhB,UAeGyZ,EAAYygC,YAff,aAeG,EAAkB17C,OAfrB,aAoBN,kBAAMwB,UAAU,kBAAhB,WACE,SAAC,KAAD,CACEA,UAAU,2BACV,cAAY,SAEbumG,SAGHkvF,IACA,iBAAMz1L,UAAU,mBAAhB,UACG61L,EAAAA,GAAAA,eAAcp8K,EAAY2sD,oBAQxCp9D,IACC,SAACqB,GAAA,EAAD,CACEC,GAAG,+BACHC,OAAQ,CAAElN,GAAIoc,EAAYnO,IAC1BtL,UC5IgT,yFDyIlT,UAKE,SAAC,MAAD,CAAQgO,MAAM,OAAd,UACE,SAAC,KAAD,CAAOhO,UAAU,eAAe,cAAY,gB,2YE3IxD,IAAMqW,GAAU,aAET,SAAey/K,GAAtB,mC,oDAAO,WAAsCC,GAAtC,uHAE6BhxL,GAAAA,GAAAA,IAAA,UAAmBsR,GAAnB,WAAqC,CACnE9L,OAAQ,CAAEy1G,IAAKz7G,KAAKC,UAAUuxL,IAC9B9xI,aAAc,OACdvuC,QAAS,CACPorG,OAAQ,eANT,gBAEKprG,EAFL,EAEKA,QAASlS,EAFd,EAEcA,KAOXu9G,EAA2BrrG,EAAQ,uBACnC+kG,EAAWsG,EAAyB3mF,QAAQ,cAAe,IAAIpP,QACrEi3B,EAAAA,GAAAA,QAAOz+C,EAAMi3G,GAXV,yDAaGx1G,EAAAA,GAAAA,IAAgB,EAAD,GAAa,IAb/B,2D,qfCHA,SAAS+wL,KACd,I,IAAA,G,GAAkC9tL,EAAAA,EAAAA,UAChC,I,EADF,E,g0BAAO+tL,EAAP,KAAkBC,EAAlB,KAMA,MAAO,CAAED,UAAAA,EAAW1pF,OAEpB,SAAgBlvG,EAAmB0gC,GACjCm4J,GAAa,SAACC,GACZ,IAAMC,E,kWAAe,IAAKD,GAQ1B,OANKp4J,EAGHq4J,EAAa/4L,IAAM,SAFZ+4L,EAAa/4L,GAKf+4L,MAZiBC,cAFNx4L,OAAOD,KAAKq4L,GAAWz3L,Q,+7DCoBxC,SAAS83L,GAAT,GAGmB,IAFxBC,EAEwB,EAFxBA,eACAC,EACwB,EADxBA,QAEA,MAAwBtuL,EAAAA,EAAAA,UAAS,GAAjC,GAAOiQ,EAAP,KAAas+K,EAAb,KACA,KAAkC/D,EAPjB,kBAOjB,GAAOt6K,EAAP,KAAkBs+K,EAAlB,KAEMC,GAAcxzL,EAAAA,GAAAA,IAAkB,CACpCC,OAAQ,SAACC,GAAD,OAuHL,SAAuBuzL,GAC5B,IAAMC,EAAS,2BACf,OAAQD,GACN,IAAK,MACH,gBAAUC,EAAV,qBACF,IAAK,OACH,gBAAUA,EAAV,sBACF,IAAK,OACH,gBAAUA,EAAV,uBACF,IAAK,QACH,gBAAUA,EAAV,sBAEF,QACE,gBAAUA,EAAV,iBApIoBC,CAAczzL,EAAS0zL,qBAG/C,EAA8Df,KAAtDC,EAAR,EAAQA,UAAmBe,EAA3B,EAAmBzqF,OAAyB8pF,EAA5C,EAA4CA,cAC5C,GAAqCn+K,EAAAA,GAAAA,IAAmB,SACnDq+K,GADkD,IAErDp+K,KAAAA,EACAC,UAAAA,EACAsoG,MAAO,CACL73G,EAAAA,GAAAA,gBACAA,EAAAA,GAAAA,kBACAA,EAAAA,GAAAA,0BAPI0P,EAAR,EAAQA,aAAc/C,EAAtB,EAAsBA,WAUhByhL,EAAoB1+K,EAAa8U,OAAM,SAACtV,GAAD,OAASk+K,EAAUl+K,EAAIzM,OAEpE,OACE,SAAC,MAAD,CACEtL,UCtDsH,sFDuDtH,aAAW,kBACXkC,KAAK,SAHP,UAKE,gBAAKlC,UAAU,eAAf,UACE,iBAAKA,UAAU,gBAAf,WACE,iBAAKA,UAAU,eAAf,WACE,mBAAQ8I,KAAK,SAAS9I,UAAU,QAAQiO,QAASuoL,EAAjD,UACE,SAAC,KAAD,OAEF,eAAIx2L,UAAU,cAAd,0CAEF,iBAAKA,UAAU,aAAf,WACE,iBAAMA,UAAU,eAAhB,UACE,iBAAKA,UAAU,yBAAf,WACE,uIAIA,iBAAMA,UAAU,aAAhB,SAA8B22L,EAAYnzL,aAG9C,mBACA,gBAAKxD,UAAU,wBAAf,UACE,SAAC8tC,GAAA,EAAD,CACEzwC,GAAG,mCACHsI,MAAM,4BACN8uB,QAASwiK,EACT9wL,SAiDd,WACEoS,EAAa3B,SAAQ,SAACmB,GAAD,OAASi/K,EAAgBj/K,EAAIzM,IAAK2rL,YA/C/C,iBAAKj3L,UAAU,YAAf,WACE,gBAAKA,UAAU,wBAAf,SACGuY,EAAarb,KAAI,SAAC6a,GAAD,OAChB,gBAEE/X,WAAW6L,EAAAA,EAAAA,GC1FJ,wFD4FL,8BAJJ,UAOE,SAACiiC,GAAA,EAAD,CACEzwC,GAAE,UAAK0a,EAAIzM,IACX3F,MAAK,UAAKoS,EAAInM,KAAT,aAAkBmM,EAAIquD,IAAtB,KACL3xC,UAAWwhK,EAAUl+K,EAAIzM,IACzBnF,SAAU,kBACR6wL,EAAgBj/K,EAAIzM,IAAK2qL,EAAUl+K,EAAIzM,SAXtCyM,EAAIzM,UAiBf,gBAAKtL,UAAU,+BAAf,UACE,SAACsiC,GAAA,EAAD,CACEjC,QAAS7qB,GAAc,IACvB2C,KAAMA,EACN6oB,aAAcy1J,EACdr+K,UAAWA,EACXmqB,kBAAmBm0J,EACnBlhL,WAAYA,aAKpB,iBAAKxV,UAAU,eAAf,WACE,SAAC,MAAD,CAAQiO,QAASuoL,EAASxoL,MAAM,UAAhC,qBAGA,SAAC,MAAD,CAAQC,QAalB,YAxGwB,mCAyGtBipL,IAdyCnwL,SAAUsvL,EAAgB,EAA3D,qCA3Fc,kDA4GxB,gGACwB,IAAlBA,EADN,uBAEIrmI,EAAAA,GAAsB,8BAA+B,IAFzD,mDAMUmnI,GACJt5L,OAAOD,KAAKq4L,GAAW/4L,IAAI8G,SAPjC,OASIwyL,IATJ,gDAWIxmI,EAAAA,GAAoB,qCAApB,MAXJ,0DA5GwB,uB,2GEfnB,SAASonI,GAAT,GAAmE,I,IAAvC7+K,EAAuC,EAAvCA,aAAcg+K,EAAyB,EAAzBA,eAC/C,G,GAA4BruL,EAAAA,EAAAA,WAAS,G,EAArC,E,g0BAAOmvL,EAAP,KAAeC,EAAf,KAEA,OAAK/+K,GAkCL,SAAmCA,GACjC,MAAiC,WAA7BzV,OAAOovF,SAASthB,UAGbr4D,EAAa7I,MAAK,SAACqI,GAAD,OAASkB,EAAAA,GAAAA,IAAwBlB,EAAIhO,SAlC3DwtL,CAA0Bh/K,IAK7B,iCACE,UAAC,MAAD,CAAQtK,QAQZ,WACOsK,KAILhV,EAAAA,GAAAA,IAAW,sCAAuC,CAChDM,SAAU,eAGZyzL,GAAU,KAjBsBvpL,KAAK,SAAS/N,UAAU,QAAtD,WACE,SAAC,KAAD,CAAUA,UAAU,qBAAqB,cAAY,SAAU,IADjE,gBAiCAq3L,IACE,SAACf,GAAD,CACEC,eAAgBA,EAChBC,QAhBR,WACEc,GAAU,SA9BH,K,qCCjBJ,SAASE,GAAT,GAAoE,IAAjCxuL,EAAiC,EAAjCA,QACxC,OACE,SAAC4xB,GAAA,EAAD,CAAkB3tB,MAAM,cAAxB,UACE,SAACw1B,GAAA,EAAD,UACGz5B,GACC,4FACgE,KAC9D,SAACqB,GAAA,EAAD,CAAMC,GAAG,6BAAT,gCAFF,8BAMA,gHCdV,OAA4Z,yE,k/DCiD5Z,IAWKmtL,GAXCxgL,GAAS,CACb,CAAEvU,MAAOuV,EAAAA,GAAAA,GAAsBtS,MAAO,MACtC,CAAEjD,MAAOuV,EAAAA,GAAAA,KAAwBtS,MAAO,SAGpC+xL,GAAgB,CACpB,CAAEh1L,MAAO,EAAGiD,MAAO,QACnB,CAAEjD,MAAO,EAAGiD,MAAO,SACnB,CAAEjD,MAAO,EAAGiD,MAAO,Y,SAGhB8xL,GAAAA,EAAAA,EAAAA,IAAAA,GAAAA,MAAAA,EAAAA,EAAAA,MAAAA,GAAAA,QAAAA,EAAAA,EAAAA,UAAAA,GAAAA,YAAAA,EAAAA,EAAAA,WAAAA,GAAAA,a,CAAAA,KAAAA,GAAAA,KAOL,IAAM5xJ,GAAa,iBAEZ,SAAS8xJ,GAAT,GAA4D,MAAjCC,EAAiC,EAAjCA,YAAaxH,EAAoB,EAApBA,UACvCpnL,GAAUoW,EAAAA,EAAAA,MAEhB,KAA0C2zK,GAExC,eAAgB,IAFlB,GAAO8E,EAAP,KAAsBC,EAAtB,KAGA,KAA4CtxJ,GAAkBX,IAA9D,GAAOY,EAAP,KAAuBC,EAAvB,KACA,KAAkCgsJ,EAAwB7sJ,IAA1D,GAAOztB,EAAP,KAAkBs+K,EAAlB,KACA,MAAwBxuL,EAAAA,EAAAA,UAAS,GAAjC,GAAOiQ,EAAP,KAAas+K,EAAb,KACMsB,GAAsBl7K,EAAAA,GAAAA,GAAY4pB,GAExC,KAA8CssJ,GAE5C,kBAAmB,IAFrB,GAAOiF,EAAP,KAAwBC,EAAxB,KAIA,KAAwClF,GAEtC,SAAU,IAFZ,GAAOmF,EAAP,KAAqBC,EAArB,KAGA,KAAkCpF,GAA4B,MAAO,IAArE,GAAOqF,EAAP,KAAkBC,EAAlB,KACA,KAAsCtF,GACpC,QACA,IAFF,GAAOuF,EAAP,KAAoBC,EAApB,KAIA,KAAwC/xJ,GAAkB,UAA1D,GAAOgyJ,EAAP,KAAqBC,EAArB,KACA,KAAgD1F,GAC9C,aACA,GAFF,GAAOhiI,EAAP,KAAyB2nI,EAAzB,KAIA,KAAwC3F,GACtC,gBACA,GAFF,GAAO/hI,EAAP,KAAqB2nI,EAArB,KAKA,KAAsC5F,GACpC,eACA,IAFF,GAAO6F,EAAP,KAAoBC,EAApB,KAIA,KAAgC9F,GAA4B,YAAa,IAAzE,GAAO+F,EAAP,KAAiBC,EAAjB,KACA,MAAoChG,GAClC,cACA,IAFF,GAAOiG,GAAP,MAAmBC,GAAnB,MAIA,MAAsClG,GACpC,qBACAniL,GAFF,GAAOsoL,GAAP,MAAoBC,GAApB,MAIA,MAA0CpG,GACxC,gBACA,IAFF,GAAOqG,GAAP,MAAsBC,GAAtB,MAKMhzE,IAActxG,EAAAA,GAAAA,KAEdukL,GAAmD,CACvD54E,MAoNF,SACEm3E,EACAG,GACA,QACA,GAA6B,IAAzBH,EAAcr5L,QAA2C,IAA3Bw5L,EAAgBx5L,OAChD,MAAO,GAGT,IAAM+6L,GAAe,QAClB9gL,EAAAA,GAAAA,OAAsB,CACrB5P,EAAAA,GAAAA,OACAA,EAAAA,GAAAA,cACAA,EAAAA,GAAAA,oBAJiB,KAMlB4P,EAAAA,GAAAA,MAAqB,CAAC5P,EAAAA,GAAAA,QANJ,KAOlB4P,EAAAA,GAAAA,WAA0B,CACzB5P,EAAAA,GAAAA,gBACAA,EAAAA,GAAAA,kBACAA,EAAAA,GAAAA,wBAViB,KAYlB4P,EAAAA,GAAAA,MAAqB,CAAC5P,EAAAA,GAAAA,mBAZJ,GAef2wL,GAAiB,QACpB/B,GAAegC,IAAM,CACpB5wL,EAAAA,GAAAA,MACAA,EAAAA,GAAAA,gBACAA,EAAAA,GAAAA,SAJmB,KAMpB4uL,GAAen+I,MAAQ,CACtBzwC,EAAAA,GAAAA,cACAA,EAAAA,GAAAA,oBARmB,KAUpB4uL,GAAeiC,UAAYhhL,EAAAA,IAVP,KAWpB++K,GAAekC,WAAajhL,EAAAA,IAXR,GAcjBkhL,EAA0B/B,EAAczqE,SAC5C,SAACysE,GAAD,OAAkBN,EAAgBM,MAE9BC,EAA4B9B,EAAgB5qE,SAChD,SAAC2sE,GAAD,OAAoBP,EAAkBO,MAGxC,OAAuC,IAAnCH,EAAwBp7L,OACnBs7L,EAGgC,IAArCA,EAA0Bt7L,OACrBo7L,EAGF,IAAeE,EAA2BF,GAxQ1CI,CACLnC,EAAc36L,KAAI,SAACosC,GAAD,OAAOA,EAAE5mC,SAC3Bs1L,EAAgB96L,KAAI,SAACosC,GAAD,OAAOA,EAAE5mC,UAE/BkmE,OAAQmvH,EACR9gL,OAAQihL,EACR3iL,OAAQ6iL,MAAAA,GAAAA,EAAW55L,OAAS45L,OAAYxnL,EACxCuF,SAAUmiL,EACV2B,aAAa,EACbz5E,YAAY,EACZwN,kBAAkB,EAClBorE,cAAeA,GAAcl8L,KAAI,SAACiqE,GAAD,OAAOA,EAAEzkE,UAGtCw3L,GAAYhH,KAElB,IACEh7K,EAAAA,GAAAA,IAAmB,IAEfC,KAAAA,EACAC,UAAAA,EACAhD,KAAMojL,EACNljL,MAAOy7C,EAAmB,OAAS,OAChCuoI,IAELxhL,GAAAA,IATI3J,GAAR,GAAQA,UAAWoK,GAAnB,GAAmBA,aAAc/C,GAAjC,GAAiCA,WAAYG,GAA7C,GAA6CA,eAYvCwkL,ICnJCh1L,EAAAA,GAAAA,UAAS,CAAC,eAAgB,kBAAkB,kBAAMyQ,EAAAA,GAAAA,UDqJzDtN,EAAAA,EAAAA,YAAU,WACRmuL,EAAQ,KACP,CAAChwJ,IAEJ,IAAM2zJ,GAAe,GAAK/zE,GAAY7iH,MAAQ,IACxC62L,GAAc,GACf,IAAIC,IAAIF,GAAal9L,KAAI,SAACk2C,GAAD,MAAU,CAACA,EAAK9nC,GAAI8nC,OAAQhtC,UACxDlJ,KAAI,kBAAiC,CACrCwF,MADI,EAAG4I,GAEP3F,MAFI,EAAciG,SAKd2uL,GAAa,GAAKL,GAAU3zF,MAAQ,IACpCi0F,GAAY,GACb,IAAIF,IAAIC,GAAWr9L,KAAI,SAACk2C,GAAD,MAAU,CAACA,EAAK7J,GAAI6J,OAAQhtC,UACtDlJ,KAAI,kBAAiC,CACrCwF,MADI,EAAG6mC,GAEP5jC,MAFI,EAAciG,SAKd6uL,GAsSR,SAAkC5C,GAAuC,MACjE6C,GAA0B,QAC7BjiL,EAAAA,GAAAA,OAAsB,CACrBg/K,GAAegC,IACfhC,GAAen+I,MACfm+I,GAAeiC,UACfjC,GAAekC,aALa,KAO7BlhL,EAAAA,GAAAA,MAAqB,CAACg/K,GAAegC,MAPR,KAQ7BhhL,EAAAA,GAAAA,WAA0B,CACzBg/K,GAAen+I,MACfm+I,GAAeiC,UACfjC,GAAekC,aAXa,KAa7BlhL,EAAAA,GAAAA,MAAqB,CAACg/K,GAAeiC,UAAWjC,GAAekC,aAblC,GAgB1BgB,EAAgC,CACpC,CAAEj4L,MAAO+0L,GAAegC,IAAK9zL,MAAO,OACpC,CAAEjD,MAAO+0L,GAAen+I,MAAO3zC,MAAO,SACtC,CAAEjD,MAAO+0L,GAAeiC,UAAW/zL,MAAO,eAG5C,OAA6B,IAAzBkyL,EAAcr5L,OACTm8L,EAGF,IACL,oBACK9C,EAAc36L,KAAI,SAACosC,GAAD,OAAOoxJ,EAA2BpxJ,EAAE5mC,YACzDxF,KAAI,SAAC2tB,GAAD,OAAO8vK,EAA8BnyL,MAAK,SAAChL,GAAD,OAAOA,EAAEkF,QAAUmoB,SApUvC+vK,CAAyB/C,GACjDgD,GAuUR,SAAgC7C,GAA2C,MACnE8C,EAAyB,CAC7B,CAAEp4L,MAAO+V,EAAAA,GAAAA,OAAqB9S,MAAO,UACrC,CAAEjD,MAAO+V,EAAAA,GAAAA,MAAoB9S,MAAO,SACpC,CAAEjD,MAAO+V,EAAAA,GAAAA,WAAyB9S,MAAO,cACzC,CAAEjD,MAAO+V,EAAAA,GAAAA,MAAoB9S,MAAO,UAGtC,GAA+B,IAA3BqyL,EAAgBx5L,OAClB,OAAOs8L,EAGT,IAAMC,GAA0B,QAC7BtD,GAAegC,IAAM,CAAChhL,EAAAA,GAAAA,OAAqBA,EAAAA,GAAAA,QADd,KAE7Bg/K,GAAen+I,MAAQ,CAAC7gC,EAAAA,GAAAA,OAAqBA,EAAAA,GAAAA,aAFhB,KAG7Bg/K,GAAeiC,UAAY,CAC1BjhL,EAAAA,GAAAA,WACAA,EAAAA,GAAAA,MACAA,EAAAA,GAAAA,SAN4B,KAQ7Bg/K,GAAekC,WAAa,CAC3BlhL,EAAAA,GAAAA,MACAA,EAAAA,GAAAA,OACAA,EAAAA,GAAAA,aAX4B,GAehC,OAAO,IACL,oBACKu/K,EAAgB96L,KAAI,SAACosC,GAAD,OAAOyxJ,EAA2BzxJ,EAAE5mC,YAC3DxF,KAAI,SAAC2tB,GAAD,OAAOiwK,EAAuBtyL,MAAK,SAAChL,GAAD,OAAOA,EAAEkF,QAAUmoB,SArWlCmwK,CAAuBhD,GAEnD,OACE,gCACsB,IAAnBriL,KAAwB,SAAC6hL,GAAD,CAAyBxuL,QAASA,KAC3D,gBAAKhJ,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAAC,MAAD,YACE,SAAC,MAAD,CAAYqQ,KAAK,aAAaC,aAAW,EAAC3K,MAAM,kBAEhD,UAAC,MAAD,CAAc3F,UDxLE,uECwLhB,WACE,gBAAKA,UDzL8F,yECyLnG,gDAGA,iBAAKA,UD5L2uB,2EC4LhvB,WACE,gBAAKA,UD7Ls6B,4EC6L36B,SACGgJ,IACC,UAAC,MAAD,CACEiF,QAASmiL,EACT,UAAQ,8BACRriL,KAAK,SACLC,MAAM,YACNhO,WAAW6L,EAAAA,EAAAA,GACT,wBDrM8L,0FC+LlM,WAUE,SAAC,IAAD,CACE7L,UAAU,6BACV,cAAY,SAZhB,gBAkBJ,gBAAKA,UDjNu0B,+ECiN50B,UACE,SAACo3L,GAAD,CACE7+K,aAAcA,GACdg+K,eAAc,SACT+C,IADS,IAEZlkL,KAAMojL,EACNljL,MAAOy7C,EAAmB,OAAS,aAIzC,gBAAK/wD,WAAW6L,EAAAA,EAAAA,GD3Ny/B,6EC2N59B,QAA7C,UACE,SAACunL,GAAD,CACE1wL,MAAO+jC,EACPtgC,SAAUugC,EACV11B,YAAY,6CACZ,UAAQ,uCAKhB,iBAAKhR,UDrOgT,8ECqOrT,WACE,gBAAKA,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,cAAemqI,GACf10L,SAAU2xL,EACVhF,YAAY,WACZpwL,MAAOm1L,OAGX,gBAAK73L,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,cAAe+pI,GACft0L,SAAU8xL,EACVnF,YAAY,kBACZpwL,MAAOs1L,OAGX,gBAAKh4L,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,cAAez5C,GACf9Q,SA6IhB,SAAwBuqD,GAEtB,GADAmoI,EAAenoI,GACc,IAAzBA,EAAclyD,OAChB25L,EAAgB,QACX,CACL,IAAM8C,EAAiB,GAClB,IAAIlxJ,IACL2mB,EAAcxzD,KACZ,SAACwzD,GAAD,OAAsCA,EAAchuD,WAI1Dy1L,EAAgB8C,KAxJJnI,YAAY,SACZpwL,MAAOk2L,OAGX,gBAAK54L,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,cAAe8pI,GACfr0L,SAqKhB,SAAqBuqD,GAEnB,GADAqoI,EAAYroI,GACiB,IAAzBA,EAAclyD,OAChB65L,EAAa,QACR,CACL,IAAM6C,EAAe,GAChB,IAAInxJ,IACL2mB,EAAcxzD,KACZ,SAACwzD,GAAD,OAAsCA,EAAchuD,WAI1D21L,EAAa6C,KAhLDpI,YAAY,OACZpwL,MAAOo2L,OAGX,gBAAK94L,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,cAAe2pI,GACfl0L,SA6IhB,SAAuBuqD,GAErB,GADAuoI,GAAcvoI,GACe,IAAzBA,EAAclyD,OAChB+5L,EAAe,QACV,CACL,IAAM4C,EAAiB,GAClB,IAAIpxJ,IACL2mB,EAAcxzD,KACZ,SAACwzD,GAAD,OAAsCA,EAAchuD,WAI1D61L,EAAe4C,KAxJHrI,YAAY,SACZpwL,MAAOs2L,QAGX,gBAAKh5L,UAAW28B,GAAhB,UACE,SAACk2J,GAAD,CACEniI,eACE,UAAAypI,GAAmB32L,YAAnB,eAAyBtG,KAAI,SAACqjC,GAAD,MAAQ,CACnC56B,MAAO46B,EACP79B,MAAO69B,QACF,GAETp6B,SAAUkzL,GACVvG,YAAY,gBACZpwL,MAAO02L,QAGX,mBACEtwL,KAAK,SACL9I,UD7RqpB,0EC8RrpBiO,QAwJd,WACE6pL,EAAiB,IACjBe,EAAe,IACfV,EAAgB,IAChBY,EAAY,IACZV,EAAa,IACbY,GAAc,IACdV,EAAe,IACfc,GAAiB,IACjBpB,EAAmB,KApKT,wBAOA,gBAAKj4L,UDlSge,0ECkSre,UACE,SAACqzL,GAAD,CACE3iI,cAAegnI,GACfvxL,SA6JhB,SAAsBuqD,GACE,OAAlBA,GACF+nI,EAAgB/nI,EAAc/qD,OAC9BgzL,GAAgB,GAChBQ,GAAezoI,KAEf+nI,EAAgB,IAChBE,GAAgB,GAChBQ,QAAevoL,KApKHkgD,aAwKhB,WACE4nI,GAAqB3nI,IAxKP+hI,YAAY,UACZ/hI,iBAAkBA,EAClBC,aAAcA,EACdtuD,MAAOw2L,WAIb,gBAAKl5L,UAAU,YAAY,UAAQ,oBAAnC,SACGo7L,GACCjtL,GACAqH,GACA+C,GAAarb,KAAI,SAAC6a,GAAD,eACf,SAACy9K,GAAD,CAEE/7K,YAAa1B,EACb0sG,UAAS,UACP4B,GAAY7iH,YADL,iBACP,EAAkBgF,MAAK,SAAC+sE,GAAD,OAAOA,EAAEjqE,KAAOyM,EAAIy6F,kBADpC,aACP,EAAqD5mG,KAEvDqC,QAAS2pL,GALJ7/K,EAAIzM,WAWjB,SAACygC,GAAA,EAAD,WACE,SAACzJ,GAAA,EAAD,CACEjC,QAAS7qB,IAAc,IACvB4C,UAAWA,EACXD,KAAMA,EACN6oB,aAAcy1J,EACdjhL,WAAYA,GACZ+sB,kBAAmBm0J,gBAiNnC,SAAS0E,GACPjtL,EACAqH,EAEA2yG,GAEA,OAAIh6G,GAEA,gBAAKnO,UAAU,yBAAyB,UAAQ,wBAAhD,wBAMCwV,EAQE2yG,GANH,gBAAKnoH,UAAU,yBAAyB,UAAQ,mBAAhD,wCEliBC,IAAMq7L,IAAyB5mL,EAAAA,EAAAA,GAAckjL,GAAiB,CACnE,cACA,c,oCCJK,SAAS2D,KACd,OACE,iBAAKt7L,WAAW6L,EAAAA,EAAAA,GAAK,MCLF,sDDKnB,mDAEE,cAAG7L,UAAU,oC,+aEJZ,8HAEoB+E,GAAAA,GAAAA,IAAgB,SAFpC,uBAEKvB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,GAAAA,IAAgB,EAAD,GAEnB,0CAPC,0D,qpDCKA,SAASs2L,KACd,IAAMC,GAkCWr2L,EAAAA,GAAAA,UAAS,QAAQ,kBDxC7B,WAAP,gCCwC0Cs2L,MAAhCj4L,KAhCR,MAA8B8Y,EAAAA,GAAAA,KAA9B,GAAOo/K,EAAP,KAAgBC,EAAhB,KAEA,OAAKH,GAAyB,KAAjBA,EAAKhrI,SAAkBgrI,EAAKI,OAASF,EAAQG,mBAKxD,kCACKL,EAAKM,QAAS,2BAAQN,EAAKM,SAC9B,SAAClhK,GAAA,EAAD,CACEC,UAAW,kBAajB,SAAmBqwC,GACjBywH,EAAW,SACND,GADK,IAERG,kBAAmB3wH,KAhBArwC,CAAU2gK,EAAKI,OAChC3uL,MAAOuuL,EAAKj4J,MACZzI,aAAcihK,GAAcP,EAAKQ,eACjCjhK,cAAc,YAJhB,UAME,iBAAM/6B,UAAU,aAAhB,UAEE,cAAGi8L,wBAAyB,CAAEC,OAAQV,EAAKhrI,kBAd1C,KAiCX,SAASurI,KAAgD,IAAlCvsK,EAAkC,uDAAJ,GACnD,OAAO3xB,OAAOwG,YACZxG,OAAOyG,QAAQkrB,GAAKtyB,KAAI,YAAkB,cAAhBwB,EAAgB,KAAXgE,EAAW,KAExC,MAAO,CADY,KAAYhE,GACXgE,O,4BChDnB,SAASy5L,KACd,IAAMr8E,GAAiBj9F,EAAAA,GAAAA,KAEvB,OACGi9F,GACyC,IAA1CA,EAAe58F,YAAY4Z,YAC3BgjF,EAAe38F,WAAa28F,EAAe58F,YAAYE,MAEhD,MAMP,SAAC0Y,GAAA,EAAD,CACEjoB,SAJa,cAKbqP,YAAa48F,EAAe58F,YAC5BC,UAAW28F,EAAe38F,Y,oXCdzB,8HAEoBpe,GAAAA,GAAAA,IAA0BC,GAAS,KAAM,WAF7D,uBAEKxB,EAFL,EAEKA,KAFL,kBAGIA,GAHJ,uCAKGyB,EAAAA,GAAAA,IAAgB,EAAD,GAAiB,oCALnC,0D,sBASP,SAASD,GAASu/C,EAAmB9gD,GACnC,IAAI+B,EAAM,UAUV,OARI++C,IACF/+C,GAAO,IAAJ,OAAQ++C,IAGT9gD,IACF+B,GAAO,IAAJ,OAAQ/B,IAGN+B,EChBF,SAAS42L,KACd,IAmBA,EAnBA,GAmBA,GAA4Bj3L,EAAAA,GAAAA,UAC1B,CAAC,SAAU,WACX,kBD1BG,WAAP,gCC0BUk3L,KACN,CACE15K,QADF,SACU3V,IACN4V,EAAAA,EAAAA,IAAY,UAAW5V,EAAgB,iCAKtC,CAAEiK,OAVT,EAAQzT,KAUe2K,UAVvB,EAAcA,YAnBN8I,EAAR,EAAQA,OAER,OAFA,EAAgB9I,WAEE8I,GAAWA,EAAOqlL,QAKlC,SAAC1hK,GAAA,EAAD,CAAkB3tB,MAAM,cAAxB,UACE,UAACw1B,GAAA,EAAD,yDAC6CqtJ,EAAAA,GAAAA,SAAQ74K,EAAOslL,cAD5D,gEAEgE,KAC9D,SAAClyL,GAAA,EAAD,CAAMC,GAAG,qBAAT,sBAHF,4CALK,K,2aC4DJ,IAAMkyL,IAAkB90L,EAAAA,EAAAA,IAvDxB,WACL,I,IAAA,G,GACEQ,EAAAA,EAAAA,WAAS,G,EADX,E,g0BAAOu0L,EAAP,KAAiCC,EAAjC,KAGM9yK,GAASC,EAAAA,GAAAA,aACf,OACE,iCACE,SAACmW,GAAA,EAAD,CACEC,QAAM,EACNhzB,MAAM,OACN4xB,YAAa,CAAC,CAAEl5B,MAAO,oBAGkB,SAACw2L,GAAD,KAE3C,SAACZ,GAAD,KAE2C,SAACa,GAAD,IAE1CK,GACC,SAACnB,GAAD,KAEA,SAAC3D,GAAD,CACEC,YAyBR,SAAyBn+K,IACnBJ,EAAAA,GAAAA,IAAkBI,EAAY1P,OAChC2yL,GAA4B,IA1BxBtM,UAxBiB,kGA8BzB,6GACuBuM,KADvB,4FAMU5mL,EAAAA,GAAAA,MANV,OAOIi6C,EAAAA,GAAsB,UAAW,wBACjCpmC,EAAOuB,aAAa8U,SARxB,kDAUI+vB,EAAAA,GACE,UADF,KAGE,iDAbN,2DA9ByB,yBAuDkB,I,SAE9B2sI,K,oFAAf,uHACSnuL,EAAAA,EAAAA,IAAa,CAClBvB,OAAOuY,EAAAA,GAAAA,IAAW,iBAClBxZ,QACE,mHACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,WACP3F,UAAW,mBARnB,4C,sBCxEA,OAAe2U,IAAAA,OACL,qBAAsB,IAC7BC,UAAU,WAAY4nL,IACtB5nL,UAAU,kBAAmBymL,IAHhC,K,YCDauB,GAAsBjoL,IAAAA,OACzB,2BAA4B,IACnCC,UAAU,qBAAsBnE,GAAAA,GAA2B5N,K,mJCkBvD,SAASg6L,GAAT,GAAsE,IlCGrEpxK,EkCHsB/oB,EAA+C,EAA/CA,MAA+C,IAAxCo6L,YAAAA,OAAwC,SAAnB32L,EAAmB,EAAnBA,SAElD+zL,EAAYhH,IAAQ,SAAC3sF,GAAD,OACxBA,MAAAA,OADwB,EACxBA,EAAMrpG,KAAI,SAACq6F,GAAD,MAAU,CAAE5xF,MAAO4xF,EAAI3rF,KAAMlJ,MAAO60F,EAAIhuD,UAG9CwzJ,GlCHAtxK,GAAcC,EAAAA,GAAAA,mBAEb9e,EAAAA,GAAAA,aACLomL,IACA5iK,EAAAA,GAAAA,KACE1Y,EAAAA,GAAAA,IAAU,yBACV2Y,EAAAA,GAAAA,IAAe5E,EAAa,CAACwnK,GAAQ5hK,SkCDzC,IAAK6oK,EAAU3zF,KACb,OAAO,KAGT,IAAQA,EAAS2zF,EAAT3zF,KAEFy2F,EAAe,IACnBt6L,MAAAA,OADmB,EACnBA,EAAOxF,KAAI,SAACG,GAAD,OAAQkpG,EAAK/9F,MAAK,SAACkwB,GAAD,OAASA,EAAIh2B,QAAUrF,SAGhD4/L,EAAkBH,EAAc5nJ,GAAAA,EAAY/B,GAAAA,EAElD,OAAKozD,EAAK/nG,QAAWs+L,GAenB,gCACGp6L,EAAMlE,OAAS,IACd,SAACmS,EAAA,EAAD,CAAahL,MAAM,gBAAnB,SACGq3L,EAAa9/L,KAAI,SAACw7B,GAAD,OAChB,oBACE5vB,KAAK,SACLmE,MAAM,aACNjN,WAAW6L,EAAAA,EAAAA,GCjEM,sEDmEf,aACA,MACA,mBAEFoC,QAAS,kBAiCCivL,EAjCkBxkK,EAAIh2B,WAkC1CyD,EAASzD,EAAM2O,QAAO,SAAChU,GAAD,OAAQA,IAAO6/L,MADvC,IAAsBA,GA1CZ,UAYGxkK,EAAI/yB,OACL,SAAC4K,EAAA,EAAD,CAAMF,KAAK,UAAUG,SAAO,MAHvBkoB,EAAIh2B,aASjB,SAACiO,EAAA,EAAD,CAAahL,MAAM,OAAOiB,QAAQ,gBAAlC,UACE,SAACq2L,EAAD,CACEr2L,QAAQ,gBACRlE,MAAO,GACPy6L,qBAAmB,EACnBz3L,QAAS6gG,EAAKl1F,QAAO,SAACqnB,GAAD,OAAUh2B,EAAMwB,SAASw0B,EAAIh2B,UAClD4O,mBAAmB,EACnBnL,SAAUi3L,EACVC,iBAAkB,iBAAM,qBACxBC,kBAAmB,SAACC,GAAD,wBAA2BA,EAA3B,MACnBC,eAiBR,SAA4BD,GACrBT,GAGLC,EAAkBzuL,OAAOivL,EAAY,CACnCrwL,UADmC,SACzBwrB,GACR0kK,EAAU,CAAEz3L,MAAO+yB,EAAI9sB,KAAMlJ,MAAOg2B,EAAI6Q,iBArE1C,gBAAKvpC,UAAU,aAAf,UACE,iBAAKA,UAAU,6BAAf,iDAEE,SAACqK,GAAA,EAAD,CAAMC,GAAG,iBAAiBtK,UAAU,yBAApC,uBAFF,mBAmDN,SAASo9L,EAAU1kK,G,MACZA,GAGLvyB,EAAS,GAAD,O,gDAAKzD,I,kkBAAL,CAAYg2B,EAAIh2B,U,8NElGf+6L,IAAkB/1L,EAAAA,EAAAA,GAAI6qC,GAAAA,EAAiB,CAClD,WACA,QACA,QACA,WACA,SACA,Y,YCNWmrJ,IAAch2L,EAAAA,EAAAA,GAAI0tC,GAAAA,EAAa,CAC1C,UACA,UACA,QACA,OACA,aACA,aACA,SACA,WACA,WACA,YACA,gB,87BC0CF,SAAStB,GAAT,GAA8E,IAA9DV,EAA8D,EAA9DA,KAAMjtC,EAAwD,EAAxDA,SAAU6G,EAA8C,EAA9CA,MAAO2wL,EAAuC,EAAvCA,eAC/BC,EAA4B,WAAjB,GAAO5wL,GAAqBA,EAAQ,GAErD,OACE,iBAAKhN,UAAU,aAAf,WACE,4BACE,SAACgtB,EAAAoU,EAAD,CACE1+B,MAAO0wC,EAAKvwC,KACZA,KAAK,OACLsD,SAAUW,EACVkK,YAAY,sBACZghC,SAAU2rJ,KAEXC,MAAAA,OAAA,EAAAA,EAAU/6L,QAAQ,SAAC4P,GAAA,EAAD,UAAYmrL,EAAS/6L,WAE1C,4BACE,SAACmqB,EAAAoU,EAAD,CACE1+B,MAAO0wC,EAAKztC,MACZQ,SAAUW,EACVkK,YAAY,QACZnO,KAAK,WAEN+6L,MAAAA,OAAA,EAAAA,EAAUj4L,SAAS,SAAC8M,GAAA,EAAD,UAAYmrL,EAASj4L,YAE3C,4BACE,SAACqnB,EAAAoU,EAAD,CACEv+B,KAAK,cACLH,MAAO0wC,EAAKzhC,YACZxL,SAAUW,EACVkK,YAAY,iBAEb4sL,MAAAA,OAAA,EAAAA,EAAUjsL,eAAe,SAACc,GAAA,EAAD,UAAYmrL,EAASjsL,kBAEjD,4BACE,SAACqb,EAAAoU,EAAD,CACE1+B,MAAO0wC,EAAKnrC,aACZ9B,SAAUW,EACVkK,YAAY,gBACZnO,KAAK,kBAEN+6L,MAAAA,OAAA,EAAAA,EAAU31L,gBACT,SAACwK,GAAA,EAAD,UAAYmrL,EAAS31L,qBAM7B,SAASnB,EAAarJ,GACpB0I,EAAS,SAAKitC,GAAN,SAAa31C,EAAEY,OAAOwE,KAAOpF,EAAEY,OAAOqE,U,m+BClDrCm7L,GAA2C,CACtDhqL,SAAU,0LAKVC,SAAU,CACRpR,MAAO,IACP07C,YAAa,IACbj4C,SAAU,KAEZ4N,QAAS,CACPC,SAAU,SAEZC,WA3DI6pL,WAYJ,WAAY3pL,I,4FAAgB,SAC1BpV,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAE3CA,KAAKoV,OAASA,E,sEAGhB,SAAazR,GAA+B,WAC1C3D,KAAKoV,OAAOE,YAAW,WACrB,EAAKlO,SAASzD,Q,wBAIlB,YAAwC,IAA3BA,EAA2B,EAA3BA,MACPA,EAAMglH,cACR3oH,KAAKg/L,cAAcr7L,EAAMglH,gB,2BAI7B,SAAchlH,GAA+B,WAC3C3D,KAAKiV,SAASM,aACZ,oBACAzW,OAAOyG,QAAQ5B,GAAO2qB,OACpB,gB,IAAA,G,EAAA,E,4CAAA,I,kxBAAExqB,EAAF,mBAEE,EAAKu7C,YAAY1uC,MACf,SAAC4uC,GAAD,OAASA,EAAIz7C,OAASA,KAAUy7C,EAAIr2C,mBAG1ClJ,KAAKiV,e,uEAxCL8pL,ICFOE,GAAwBrpL,IAAAA,OAC3B,kDAAmD,IAC1DC,UACC,sCACAlN,EAAAA,EAAAA,ICEG,YAIG,IAHRhF,EAGQ,EAHRA,MACA07C,EAEQ,EAFRA,YACAj4C,EACQ,EADRA,SAEA,OAAKi4C,GAAgBA,EAAY5/C,QAK/B,SAACu0C,GAAA,EAAD,CAAa9lC,MAAM,qBAAnB,SACGmxC,EAAYlhD,KAAI,SAACohD,GAChB,IAAM13C,EAAU,GAAH,OAAM03C,EAAIz7C,KAAV,UACPivB,EAAWpvB,EAAM47C,EAAIz7C,OAAS,GACpC,OACE,SAAC8N,EAAA,EAAD,CACEpJ,UAAW+2C,EAAIr2C,aACftC,MAAO24C,EAAI34C,MAEXiB,QAASA,EACTb,QAASu4C,EAAI3sC,YACb5D,KAAK,QANP,UAQE,SAACif,EAAAoU,EAAD,CACEv+B,KAAI,oBAAey7C,EAAIz7C,MACvBH,MAAOovB,EACPz0B,GAAIuJ,EACJT,SAAU,SAAC1I,GAAD,OACR0I,EAAS,SACJzD,GADG,SAEL47C,EAAIz7C,KAAOpF,EAAEY,OAAOqE,aAZtB47C,EAAIz7C,WAZV,ODR4B,CAAC,QAAS,WAAY,iBAE1D+R,UAAU,gCAAiCipL,IAC3CjpL,UACC,2CACAlN,EAAAA,EAAAA,IFIG,YAKG,IAJRvB,EAIQ,EAJRA,SACAzD,EAGQ,EAHRA,MACAkL,EAEQ,EAFRA,OACAqwL,EACQ,EADRA,2BAEA,OACE,SAACxqJ,GAAA,EAAD,CACE9tC,MAAM,uBACNQ,SAAUA,EACVzD,MAAOA,EACPkxC,WAAY,SAACR,EAAMjtC,EAAU6G,GAAjB,OACV,SAAC8mC,GAAD,CACEV,KAAMA,EACNjtC,SAAUA,EACV6G,MAAOA,EACP2wL,eAAgBM,KAGpBvqJ,YAAa,iBAAO,CAClB/tC,MAAO,GACP9C,KAAM,GACNoF,aAAc,GACd0J,YAAa,KAEf/D,OAAQA,EACRsmC,QAAQ,yHACRC,kBAAmB8pJ,ME/BwB,CAC3C,WACA,QACA,SACA,gCAEFp7L,KECSquD,GAAmBv8C,IAAAA,OACtB,iCAAkC,CAACqpL,KAC1CppL,UACC,eACAlN,EAAAA,EAAAA,GAAIm1L,GAAa,CAAC,cAAe,WAAY,WAE9CjoL,UACC,oBACAH,EAAAA,GAAAA,eAAc1I,GAAAA,EAAS,CAAC,UAAW,WAAY,eAEhD6I,UAAU,kBAAmB6oL,IAC7B7oL,UAAU,iBAAkB8oL,IAC5B9oL,UAAU,0BAA0BlN,EAAAA,EAAAA,GAAI02B,GAAAA,EAAiC,KACzExpB,UACC,qBACAlN,EAAAA,EAAAA,IC9BG,YAGG,MAFRw2L,EAEQ,EAFRA,cACAC,EACQ,EADRA,oBAGMC,EAAiB,WADDj7L,EAAAA,GAAAA,MACkBK,YAAjB,aAAG,EAAoB66L,uBAE9C,OACE,0BACE,eAAGr+L,UAAU,6BAAb,WACE,SAACuQ,EAAA,EAAD,CAAMF,KAAK,iBAAiBrQ,UAAU,eAAewQ,SAAO,IAC3D2tL,GACC,4DAHJ,iCAIiCC,EAJjC,oBAKGF,IACC,cAAGl+L,UAAU,oCAAoC,cAAY,gBDe5C,CAAC,sBAAuB,mBAEhD4U,UAAU,aAAalN,EAAAA,EAAAA,GAAIs7B,GAAAA,EAAS,KACpCpuB,UACC,qBACAH,EAAAA,GAAAA,eAAcs4B,GAAAA,EAA0B,CACtC,WACA,UACA,WACA,kBAGHn4B,UAAU,eAAelN,EAAAA,EAAAA,GAAIq7B,GAAAA,EAAa,CAAC,aAC3CnuB,UACC,cACAlN,EAAAA,EAAAA,GAAIs4B,GAAAA,EAAY,CACd,KACA,QACA,cACA,UACA,WACA,YAGHprB,UACC,iBACAlN,EAAAA,EAAAA,IE/CG,YASG,I,UARR6lL,EAQQ,EARRA,IACA+Q,EAOQ,EAPRA,aACA7K,EAMQ,EANRA,IACA1lL,EAKQ,EALRA,KACA/N,EAIQ,EAJRA,UACAu+L,EAGQ,EAHRA,aACAC,EAEQ,EAFRA,kBACAhuL,EACQ,EADRA,QAEA,G,GAA0BtI,EAAAA,EAAAA,WAAS,G,EAAnC,E,g0BAAO8E,EAAP,KAAcyxL,EAAd,KAEMxkK,GAAUpuB,EAAAA,EAAAA,GAAK7L,G,EAAD,G,EAAgC+N,G,EAAhC,eAAuBA,M,4FAM3C,OAJAzF,EAAAA,EAAAA,YAAU,WACRm2L,GAAS,KACR,CAAClR,IAECvgL,GAaH,SAACuD,EAAA,EAAD,CACEF,KAAMiuL,EACN9tL,QAASA,EACTxQ,UAAWw+L,EACXzwL,KAAMA,EACNisB,KAAMukK,KAhBN,gBACEv+L,UAAWi6B,EACXszJ,IAAKA,EACLkG,IAAKA,EACL9wK,QAAS,kBAAM87K,GAAS,QFuBT,CACjB,MACA,eACA,MACA,OACA,YACA,eACA,oBACA,aAGH7pL,UACC,UACAH,EAAAA,GAAAA,eAAclE,EAAAA,EAAM,CAAC,YAAa,UAAW,OAAQ,OAAQ,UAE9DqE,UAAU,sBAAsBlN,EAAAA,EAAAA,IG9E5B,WACL,IAAMg3L,EACuC,SAA3CxkL,kBAAYykL,2BAEd,OAAO,8BAAGD,IAA0B,SAAC,GAAAE,mBAAD,QH0E4B,KAC/DhqL,UACC,iBACAlN,EAAAA,EAAAA,GAAI4tB,GAAAA,EAAe,CAAC,cAAe,OAAQ,OAAQ,QAAS,cAE7D1gB,UACC,sBACAlN,EAAAA,EAAAA,GAAI8iC,GAAAA,EAAW,CAAC,UAAW,WAAY,QAAS,iBAEjD51B,UACC,wBACAH,EAAAA,GAAAA,eAAc7C,GAAAA,EAAW,CAAC,cAAe,UACzC/O,K,q1CItEG,SAAS+uD,GAAT,GAOG,I,MANRvhD,EAMQ,EANRA,KACA2tB,EAKQ,EALRA,OACArsB,EAIQ,EAJRA,YACA1E,EAGQ,EAHRA,MAGQ,IAFRgB,QAAAA,OAEQ,MAFE,aAEF,EADRuM,EACQ,EADRA,UAEMjK,EAAuB,iBAATF,EAAoBA,EAAO,KACzCwuL,GAAYpkL,EAAAA,EAAAA,IAAcD,GAChC,OACE,oBACExa,WAAW6L,EAAAA,EAAAA,GCjCM,gFDmCfgzL,ECnCqM,kFAA5F,mFDoCzG,Y,EAHa,G,ECjCmR,kF,EDsC7Q7gK,E,iGAGrBl1B,KAAK,SACL/B,SAAU83L,EACV5wL,QAASA,EAXX,WAaE,gBAAKjO,UAAU,mBAAf,SACGuQ,GACC,SAACA,EAAD,CAAMwtB,SAAUC,EAAQh+B,UC/C+b,6FDiDvd,cAAGA,WAAW6L,EAAAA,EAAAA,GAAKwE,EAAM,QCjD8V,sFDqD3X,iBAAKrQ,UAAU,iCAAf,WACE,wBAAKiN,KACL,wBAAK0E,IACJktL,IACC,SAACxrK,GAAA,EAAD,CACEC,UAAU,EACV9Y,UAAWA,EACXxa,UAAU,6B,6gCEtCf,SAAe8+L,GAAtB,mC,oDAAO,sCAoBIC,EApBJ,uFAoBIA,EApBJ,SAoBer+I,GAClB,MAAa,KAATA,EACKA,EAILA,EAAK/lB,WAAW,aAClB,kBAAkB+lB,GAGpB,iBAAiBA,IA7BnB79C,EADK,EACLA,KADK,IAELm8L,WAAAA,OAFK,MAEQ,GAFR,MAGLnoJ,UAAAA,OAHK,MAGO,GAHP,MAIL9pC,KAAAA,OAJK,MAIE,CAAEwI,OAAQ,IAJZ,MAKLw4C,KAAAA,OALK,MAKE,GALF,EAOCvoD,EAAMu5L,EAAWC,GAPlB,kBASEC,GACLp8L,EACA2V,EAAAA,GAAAA,uBACA,CACEhT,IAAAA,EACAqxC,UAAAA,EACA9pC,KAAAA,EACAghD,KAAAA,KAhBC,4C,sBAuCA,SAAemxI,GAAtB,mC,oDAAO,+GACLr8L,EADK,EACLA,KADK,IAELkK,KAAAA,OAFK,MAEE,CAAEwI,OAAQ,IAFZ,oBAIE0pL,GACLp8L,EACA2V,EAAAA,GAAAA,2BACA,CAAEzL,KAAAA,EAAMoyL,IAAK,CAAEC,kBAAkB,EAAMC,YAAY,MAPhD,4C,sBA6BA,SAAeC,GAAtB,mC,oDAAO,iHACLz8L,EADK,EACLA,KACA0sB,EAFK,EAELA,MAFK,IAGLxiB,KAAAA,OAHK,MAGE,CAAEwI,OAAQ,IAHZ,oBAKE0pL,GAAkBp8L,EAAM2V,EAAAA,GAAAA,iBAA2C,CACxEzL,KAAAA,EACAwiB,MAAAA,KAPG,2C,yBAWA,SAAegwK,GAAtB,mC,oDAAO,iHACL18L,EADK,EACLA,KACA28L,EAFK,EAELA,WAFK,IAGLzyL,KAAAA,OAHK,MAGE,CAAEwI,OAAQ,IAHZ,oBAKE0pL,GACLp8L,EACA2V,EAAAA,GAAAA,sBACA,CACEzL,KAAAA,EACAyyL,WAAAA,KAVC,4C,sBA+CA,SAAeC,GAAtB,mC,oDAAO,mHACLC,EADK,EACLA,aACA78L,EAFK,EAELA,KACA2C,EAHK,EAGLA,IAHK,IAILE,QAAAA,OAJK,MAIK,GAJL,oBAMEu5L,GAAkBp8L,EAAM68L,EAAP,GAAC,MACpBh6L,GADmB,IAEtBF,IAAK,SAAF,OAAWA,OARX,2C,yBAmBA,SAASm6L,GAAT,GAI0B,IAH/B98L,EAG+B,EAH/BA,KACA+8L,EAE+B,EAF/BA,eAE+B,IAD/B7yL,KAAAA,OAC+B,MADxB,CAAEwI,OAAQ,IACc,EAC/B,OAAOkqL,GAAwB,CAC7B58L,KAAAA,EACA2C,IAAKo6L,EACLF,aAAclnL,EAAAA,GAAAA,iBACd9S,QAAS,CACPqH,KAAAA,EACAoyL,IAAK,CACHE,YAAY,EACZD,kBAAkB,MAiBnB,SAASS,GAAT,GASwB,IAR7Bh9L,EAQ6B,EAR7BA,KACAi9L,EAO6B,EAP7BA,aAO6B,IAN7B/yL,KAAAA,OAM6B,MANtB,CAAEwI,OAAQ,IAMY,MAL7Bw4C,KAAAA,OAK6B,MALtB,GAKsB,EAJ7BgyI,EAI6B,EAJ7BA,aACAC,EAG6B,EAH7BA,cACAC,EAE6B,EAF7BA,KACAC,EAC6B,EAD7BA,UAEA,OAAOjB,GACLp8L,EACA2V,EAAAA,GAAAA,qBAFsB,IAIpBhT,IAAKs6L,EACL/xI,KAAAA,EACAgyI,aAAAA,EACAC,cAAAA,EACAC,KAAAA,EACAC,UAAAA,GACGnzL,I,SAKMkyL,GAAkB,EAAlBA,EAAAA,G,oFAAf,WACEp8L,EACA68L,EACAh6L,GAHF,uHAKMma,EAAmC,CACrCjU,KAAM/I,EACNs9L,qBAAsBT,GAGpBh6L,IAAS,EACsBA,EAAQqH,MAAQ,GAAzCmJ,EADG,EACHA,QADG,IACMX,OAAAA,OADN,MACe,GADf,EAGXsK,EAAU,SACLA,GADE,IAELumD,IAAK1gE,EAAQF,IACbsxC,UAAWpxC,EAAQmxC,UACnBupJ,QAASlqL,EACT+wF,QAAQ3wF,EAAAA,GAAAA,IAAYf,GACpByG,gBAAiBtW,EAAQs6L,cACzBK,aAAc36L,EAAQq6L,aACtB7lJ,MAAM5jC,EAAAA,GAAAA,IAAY5Q,EAAQqoD,MAC1BuyI,WAAY56L,EAAQ85L,aAGdL,EAA0Bz5L,EAA1By5L,IAAK5vK,EAAqB7pB,EAArB6pB,MAAO2wK,EAAcx6L,EAAdw6L,UAEhBf,IACFt/K,EAAU,SACLA,GADE,IAEL0gL,KAAK,EACLC,cAAerB,EAAIE,WACnBoB,oBAAqBtB,EAAIC,iBACzBsB,cAAevB,EAAIwB,WACnBC,YAAazB,EAAI0B,SACjBC,WAAY3B,EAAI4B,WAIhBxxK,IACF1P,EAAU,SACLA,GADE,IAELmhL,mBAAoBzxK,EAAM0xK,cAC1BC,cAAe3xK,EAAM4xK,SACrBC,uBAAwB7xK,EAAM8xK,qBAI9BnB,IACFrgL,EAAU,SACLA,GADE,IAELyhL,iBAAgB,UAAE57L,EAAQu6L,YAAV,aAAE,EAAcp5L,aAChC06L,qBAAoB,UAAE77L,EAAQu6L,YAAV,aAAE,EAAcj5L,iBACpCw6L,oBAAmB,UAAE97L,EAAQu6L,YAAV,aAAE,EAAch5L,oBAKnCw6L,GAAcjrL,EAAAA,GAAAA,IAAcqJ,GA1DpC,kBA4D2B9a,GAAAA,GAAAA,MAAwBC,EAAAA,GAAAA,MAAYy8L,GA5D/D,uBA4DYj+L,EA5DZ,EA4DYA,KA5DZ,kBA8DWA,GA9DX,yCAgEUyB,EAAAA,GAAAA,IAAgB,EAAD,IAhEzB,0D,ocCrNO,SAASy8L,KAId,IAuDA,EAAQnpL,E,IAvDR,G,GAAgDrQ,EAAAA,EAAAA,Y,EAAhD,E,g0BAAOy5L,EAAP,KAAyBC,EAAzB,KAEA,GAqDQrpL,GAAR,GAAoCL,EAAAA,GAAAA,IAClC,CACEC,KAAM,EACNC,UAAW,EACXsoG,MAAO,CAAC73G,EAAAA,GAAAA,OAAwBA,EAAAA,GAAAA,mBAElC,EACAg5L,EAAAA,IAPMtpL,aAUD,CACLpK,UAXF,EAAsBA,UAYpBsL,YAAalB,EAAa/Z,OAAS,EAAI+Z,EAAa,QAAK3H,IAjEnDzC,EAAR,EAAQA,UAAWsL,EAAnB,EAAmBA,YAEbqoL,GAAiCl1L,EAAAA,GAAAA,aAAYm1L,IAE3CzzL,EAAWwzL,EAAXxzL,OAmBR,OAjBAhG,EAAAA,EAAAA,YAAU,WACJ6F,GAAawzL,IAIbloL,EACFmoL,EAAoBnoL,GAItBnL,OAAOsC,EAAW,CAChB1D,UADgB,SACNuM,GACRmoL,EAAoBnoL,SAGvB,CAACA,EAAatL,EAAWwzL,EAAkBrzL,IAEvC,CACL2I,OAAQoM,GAAUlV,EAAW2zL,EAA+B7qL,QAC5DnO,KAAM64L,MAAAA,OAAF,EAAEA,EAAkB53L,MAI5B,SAASsZ,GACPlV,EACA6zL,GAEA,OAAI7zL,GAAgC,YAAnB6zL,EACR,UAGc,UAAnBA,EACK,QAGF,U,SAGMD,K,oFAAf,sHAEiB7C,GAAiC,CAAEr8L,KAAM,UAF1D,iGAIiBi8L,GAA6B,CAAEj8L,KAAM,UAJtD,0D,sBC3DA,OAAwH,yEC+FxH,SAASo/L,GAAan5L,GACpB,OAAQA,GACN,KAAKD,EAAAA,GAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,GAAAA,gBACH,MAAO,aACT,QACE,MAAO,ICrGN,SAASq5L,KACd,IACwBC,GACpB9kL,EAAAA,GAAAA,4BADF9S,OAAUi2G,WAKZ,QAFyB2hF,GAAsC,SAApBA,E,ICPzClkM,G,YAEJ,SAASC,KAAiS,OAApRA,GAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,GAASY,MAAMC,KAAMR,WAItU,ICFa6jM,GAAmB,CAC9B,CACE/kM,GAAI,SACJ4P,MAAO,SACPo1L,UAAW,qCACXhyL,KAAM,gBACNsB,YACE,kEAEJ,CACEtU,GAAI,aACJ4P,MAAO,aACPo1L,UAAW,yCACXhyL,KAAM,sBACNsB,YAAa,kDAEf,CACEtU,GAAI,MACJ4P,MAAO,MACPo1L,UAAW,kCACX1wL,YAAa,qCACbtB,KAAM,oBAER,CACEhT,GAAI,QACJ4P,MAAO,QACPo1L,UAAW,oCACX1wL,YAAa,iDACbtB,KAAM,aACNmK,UAAWR,EAAAA,GAAAA,OAEb,CACE3c,GAAI,OACJ4P,MAAO,OACPo1L,UAAW,+BACX1wL,YAAa,2DACbtB,KDlCc,SAAqBrR,GACrC,OAAoB,gBAAoB,MAAOd,GAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,KAAUA,GAAqB,gBAAoB,OAAQ,CACpEuB,SAAU,UACVC,SAAU,UACVH,EAAG,whCACHF,KAAM,oBCwBNob,UAAWR,EAAAA,GAAAA,oB,2GC3Bf,IAAMsoL,GAAsC,CAAC,SAAU,aAAc,SAE9D,SAASC,GAAT,GAIG,IAHR7/L,EAGQ,EAHRA,MACAyD,EAEQ,EAFRA,SACAq8L,EACQ,EADRA,iBAEA,OACE,gBAAKxiM,UAAU,MAAf,UACE,UAAC,KAAD,CAAaiN,MAAM,6BAAnB,WACE,cAAGjN,UAAU,mBAAb,sFAIA,gBAAKA,UAAU,uBAAf,SACGyiM,GAAwBL,GAAkBI,GAAkBtlM,KAC3D,SAACwlM,GAAD,OACE,SAAC,GAAD,CAEEz1L,MAAOy1L,EAAMz1L,MACb0E,YAAa+wL,EAAM/wL,YACnBtB,KAAMqyL,EAAMryL,KACZ2tB,OAAQt7B,EAAMwB,SAASw+L,EAAMrlM,IAC7B4Q,QAAS,kBASvB,SAAqBy0L,G,MACfhgM,EAAMwB,SAASw+L,GACjBv8L,EAASzD,EAAM2O,QAAO,SAACkvB,GAAD,OAAOA,IAAMmiK,MAIrCv8L,EAAS,GAAD,O,gDAAKzD,I,kkBAAL,CAAYggM,KAfOC,CAAYD,EAAMrlM,MAL5BqlM,EAAMrlM,cAwB3B,SAASolM,GACP/hF,EACA8hF,GAEA,OAAKA,EAIE9hF,EAAMrvG,QAAO,SAACqxL,GAAD,OAAWJ,GAAQp+L,SAASw+L,EAAMrlM,OAH7CqjH,E,qkBChDJ,SAASkiF,GAAT,GAAgD,IAA7BC,EAA6B,EAA7BA,YAAaC,EAAgB,EAAhBA,MACrC,OACE,gBAAK9iM,UCdwB,+DDc7B,SACG8iM,EAAM5lM,KAAI,SAACmkC,EAAMnC,GAAP,aACT,gBAEEl/B,WAAW6L,EAAAA,EAAAA,GClByF,6DDkBrF,UClByR,sDDmBrRqzB,EAAQ,IAAM2jK,GADlB,KClBqa,yDDoB9Z3jK,EAAQ,EAAI2jK,GAFnB,IAFjB,UAOE,iBAAK7iM,UCvBkK,oDDuBvK,WACE,gBAAKA,UCxBqW,4DDwB1W,SAAqCk/B,EAAQ,KAC7C,gBAAKl/B,UCzB+N,yDDyBpO,SAAkCqhC,EAAKp0B,YARpCo0B,EAAKp0B,Y,4YE+BpB,SAAS81L,GACPhxK,GAEA,IAAMtG,GAAcC,EAAAA,GAAAA,kBAEpB,OAAO9e,EAAAA,GAAAA,aAAYmlB,EAAU,CAC3B7kB,UAD2B,WAEzB,OAAOue,EAAYI,kBAAkB,CAAC,kBAExC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,mC,mJCrDV,SAASg3L,KACd,I,IAAA,G,GACEC,EAAAA,EAAAA,IAA6B,gB,EAD/B,E,g0BAAOC,EAAP,KAAmBC,EAAnB,KAA8BC,EAA9B,KAGM/8E,GAActxG,EAAAA,GAAAA,KACpB,IAAKsxG,EAAY7iH,KACf,OAAO,KAGT,IAAMkC,EAAU2gH,EAAY7iH,KAAKtG,KAAI,SAACq1G,GAAD,MAAY,CAC/C7vG,MAAO6vG,EAAMjnG,GACb3F,MAAO4sG,EAAM3mG,SAGf,OACE,SAAC+E,EAAA,EAAD,CAAahL,MAAM,QAAQiI,OAAQu1L,EAAUn2L,MAA7C,UACE,SAAC,IAAD,CACEnK,KAAK,eACL6C,QAASA,EACThD,MAAOwgM,EAAWxgM,MAClByD,SAAU,SAAC1I,GAAD,OAKMiF,EALcjF,EAAEY,OAAOqE,WAM3C0gM,EAAQzlL,SAASjb,EAAQqB,SAASrB,EAAO,IAAM,GADjD,IAAsBA,O,2GCvBjB,SAAS2gM,GAAT,GAAoE,I,IAAxCh3L,EAAwC,EAAxCA,SACjC,G,GAAiC42L,EAAAA,EAAAA,IAAS,e,EAA1C,E,g0BAAOK,EAAP,KAAmBC,EAAnB,KAEQv6L,GAAY0D,EAAAA,EAAAA,MAAZ1D,QAER,OACE,UAAC,KAAD,CAAaiE,MAAM,WAAnB,UACGZ,GAED,SAAC22L,GAAD,KAEA,SAACnG,GAAD,CACEn6L,MAAO4gM,EAAS5gM,MAChBo6L,YAAa9zL,EACb7C,SAAU,SAACzD,GAAD,OAAW6gM,EAAW5lL,SAASjb,SClB1C,SAAS8gM,GAAT,GAAuE,IAAxCn3L,EAAwC,EAAxCA,SACpC,OACE,SAAC,KAAD,CAAaY,MAAM,gBAAgB+lC,YAAU,EAA7C,UACE,iBAAKhzC,UAAU,OAAf,UACGqM,GAED,SAACg3L,GAAD,S,2HCHD,SAASI,KACd,I,IAAA,G,GAA2BR,EAAAA,EAAAA,IAAS,Q,EAApC,E,g0BAAOt6F,EAAP,KAAgBy6F,EAAhB,KAMA,OACE,SAAC,KAAD,CAAan2L,MAAM,wBAAnB,UACE,SAACwxC,GAAA,GAAD,CAAU/7C,MAAOimG,EAAMjmG,MAAOyD,SANlC,SAAkBzD,GAChB0gM,EAAQzlL,SAASjb,Q,2aCCd,SAASghM,GAAT,GAIG,I,IAHRp9L,EAGQ,EAHRA,SACAP,EAEQ,EAFRA,QAEQ,IADRiL,YAAAA,OACQ,MADM,4CACN,EACCjE,G,GAAQk2L,EAAAA,EAAAA,IAAS,Q,EAA1B,E,g0BAAA,GAEM5lM,EAAK,aAEX,OACE,SAACsT,EAAA,EAAD,CACEhL,MAAM,OACN4B,UAAQ,EACRqG,OAAQb,EAAKC,MACbpG,QAASvJ,EACT0I,QAASA,EALX,UAOE,SAAC,KAAD,CACE1I,GAAIA,EACJwF,KAAK,OACLkqB,GAAIC,EAAAA,EACJ,UAAQ,2BACRhc,YAAaA,EACbghC,SAAU1rC,MAMX,SAAeq9L,GAAtB,mC,oDAAO,WAA4B9gM,GAA5B,mFACAA,EADA,0CAEI,GAFJ,iCAMkBmS,EAAAA,GAAAA,IAAgB,CAAEG,MAAO,EAAGF,MAAO,CAAEpS,KAAAA,KANvD,mBAOQ2S,WAAa,GAPrB,0CAQM,GARN,2FAaE,GAbF,2D,sBAgBA,SAASouL,KACd,OAAOz6L,EAAAA,EAAAA,MACJ5B,SAAS,oBACTiC,KACC,cACA,wBAJG,6CAKH,WAAO3G,GAAP,gGAAuB8gM,GAAa9gM,GAApC,iDAA8C,EAA9C,iFALG,uD,2GC7BF,SAASghM,GAAT,GAA2D,I,IAA9B97L,EAA8B,EAA9BA,UAAWzB,EAAmB,EAAnBA,SACpC68L,G,GAAaF,EAAAA,EAAAA,IAASl7L,G,EAA/B,E,g0BAAA,GACM1K,EAAK,GAAH,OAAM0K,EAAN,UAER,OACE,SAAC4I,EAAA,EAAD,CACEhL,MAAM,uBACNI,QAAQ,wFACRwB,UAAQ,EACRqG,OAAQu1L,EAAUn2L,MAClBpG,QAASvJ,EALX,UAOE,SAAC,KAAD,CACEA,GAAIA,EACJwF,KAAMkF,EACNglB,GAAIC,EAAAA,EACJhc,YAAY,gDACZzJ,UAAQ,EACR,UAAQ,yCACRyqC,SAAU1rC,MC1CX,SAASw9L,GAAT,GAA6D,IAAhCx9L,EAAgC,EAAhCA,SAClC,OACE,iCACE,SAACo9L,GAAD,CAAWp9L,SAAUA,KACrB,SAACu9L,GAAD,CAAmB97L,UAAU,eAAezB,SAAUA,OCRrD,SAASy9L,KACd,OAAO18L,EAAAA,EAAAA,IAAO,CACZ6O,SAAS5O,EAAAA,EAAAA,MACTiO,QAAQjM,EAAAA,EAAAA,MAAQs1C,IAAGt3C,EAAAA,EAAAA,OAAUg1C,QAAQ,MCIlC,SAASvzC,KACd,OAAO1B,EAAAA,EAAAA,MAAS4B,MAAM,CACpBpG,KAAM+gM,KACN9D,cHFK32L,EAAAA,EAAAA,MACJK,KACC,MACA,0DACA,SAAC9G,GACC,IAAKA,EACH,OAAO,EAET,IAEE,MAAwB,cADZ,IAAI0jE,IAAI1jE,GACT81E,SACX,SACA,OAAO,MAIZjxE,SAAS,mBGbVy4L,eAAe14L,EAAAA,EAAAA,MAASC,WACxBwF,KAAMg3L,KACNh2I,MAAMrP,EAAAA,GAAAA,MACNuhJ,MAAM74L,EAAAA,GAAAA,Q,+sBCaV,IA0GU48L,GA1GJ72L,GAyFG,CACLtK,KAAM,GACNi9L,cAeMkE,IAAW5xG,EAAAA,GAAAA,YACVtvF,OAAOovF,SAASC,QAAuB,MAAb6xG,GAAmBA,GAAW,KAf/DhE,cAAe,EACfjzL,KAAM,CACJmJ,QAAS,EACTX,OAAQ,IAEV0qL,KAAM,CACJh5L,gBAAiBxB,GAAAA,GACjBoB,aAAcpB,GAAAA,GACduB,iBAAkBvB,GAAAA,IAEpBsoD,KAAM,IApGH,SAASk2I,GAAT,GAKG,IAJRC,EAIQ,EAJRA,SACA59L,EAGQ,EAHRA,SACA00C,EAEQ,EAFRA,cAEQ,IADRmpJ,SAAAA,OACQ,SACFC,GAAoB/7L,EAAAA,GAAAA,KAAY,SAAChF,GAAD,OAAcA,EAASkU,QACvDirL,EAAmBN,KAEnBmC,EVICtB,GAA2BlD,IUFlC,IAAKuE,EAAkB5gM,KACrB,OAAO,KAGT,IAAM8gM,EAAeF,EAAkB5gM,KAEvC,OACE,SAAC,KAAD,CACE2J,cAAeA,GACfG,SAkDJ,SAAsBlH,GACpBi+L,EAAe/1L,OAAf,SAEOlI,GAFP,IAGI25L,aAAcyC,EACdtC,UAAWoE,EAAa9sL,YAE1B,CACEtK,UADF,SACYuM,GACRyqL,EAASzqL,OA1DblM,iBAAe,EACfxE,iBAAkBA,GAJpB,SAMG,gBAAG4E,EAAH,EAAGA,QAASF,EAAZ,EAAYA,cAAerH,EAA3B,EAA2BA,OAA3B,OACC,UAAC,KAAD,YACE,SAAC09L,GAAD,CAAmBx9L,SAAUA,KAE7B,UAACk9L,GAAD,YACE,SAAC,KAAD,CAAav2L,MAAM,qBAAnB,UACI+tC,GAAiBspJ,EAAa9sL,WAAagrL,GAC3C,SAACt8L,GAAA,EAAD,CACEE,OAAQA,EAAO65L,KACf35L,SAAUA,EACVH,SAAU,SAACC,GAAD,OAAYqH,EAAc,OAAQrH,OAG9C,SAAC,MAAD,CACEE,SAAUA,EACVH,SAAU,SAACzD,GAAD,OAAW+K,EAAc,gBAAiB/K,IACpDA,MAAO0D,EAAO45L,kBAInBmE,IAAY,SAACV,GAAD,QAGbn9L,IACA,gBAAKtG,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,kBACVmO,UAAWk2L,EAAel2L,UAC1BC,YAAY,0BACZrH,UAAW4G,EAJb,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCARd,sB,k8BC/DT,SAASukM,GAAT,GAKG,IAJRL,EAIQ,EAJRA,SACAnpJ,EAGQ,EAHRA,SACAU,EAEQ,EAFRA,oBAEQ,IADR0oJ,SAAAA,OACQ,SACR,MAAgCj8L,EAAAA,EAAAA,YAAhC,GAAO+zC,EAAP,KAAiBuoJ,EAAjB,KAEA,MAA6B31L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,GAA9D,GAAO21L,EAAP,KAAgBC,EAAhB,KAEMlC,EAAmBN,KAEzB,OACE,iCACE,SAAC+B,GAAD,CACEC,SA8BN,SAAsBzqL,GACpB+qL,EAAY,CAAE9lM,IAAK+a,EAAYkrL,QAAStnM,GAAIoc,EAAYF,SAAUqrL,EAAAA,GAAAA,QAClEV,EAASzqL,IA/BLnT,WAAY21C,EAEZkoJ,SAAUA,EACVnpJ,eAAe,GAFVypJ,GAKNxoJ,IACC,iCACE,SAACD,GAAA,EAAD,CACEC,SAAUA,EACVlB,SAAUA,EACVU,oBAAqBA,EACrBT,eAAgBwnJ,KAGlB,mBAEA,gBAAKxiM,UAAU,MAAf,UACE,gBAAKA,UAAU,mBAAf,UACE,SAAC,MAAD,CAAQgO,MAAM,UAAUlF,KAAK,QAAQmF,QAejD,WACEu2L,OAAY5zL,GACZ8zL,KAjBU,+CCjDP,SAASG,GACdn/L,EACAo/L,GAIA,OAFyB5C,KAMlBx8L,EAAQ2L,QAAO,SAAClK,GAAD,OAAYA,EAAOzE,QAAUoiM,KAH1Cp/L,E,2GCRJ,SAASq/L,KACd,I,IAASh4L,G,GAAQk2L,EAAAA,EAAAA,IAAS,kB,EAA1B,E,g0BAAA,GAEA,OACE,SAACtyL,EAAA,EAAD,CACEhL,MAAM,sBACNiI,OAAQb,EAAKC,MACbzF,UAAQ,EACRX,QAAQ,wBACRb,QAAQ,+BALV,UAOE,SAAC,KAAD,CACE1I,GAAG,wBACHwF,KAAK,iBACLkqB,GAAIC,EAAAA,EACJhc,YAAY,oDACZ,UAAQ,2C,2GCbT,SAASg0L,KACd,OAAO39L,EAAAA,EAAAA,IAAO,CACZxE,KAAM+gM,KACNhE,gBAOKz2L,EAAAA,EAAAA,MACJ5B,SAAS,0BACTiC,KACC,UACA,yEACA,SAACo2L,GAAD,OAIC,SAAyBjrC,GAC9B,QAAuB,IAAZA,EACT,OAAO,EAGT,GAAIA,EAAQ/vJ,QAAQ,QAAU,EAC5B,OAAO,EAGT,I,IAAA,G,EAAqB+vJ,EAAQr6H,MAAM,K,EAAnC,E,g0BAAOyb,EAAP,KAAagB,EAAb,KAEA,QACkB,IAAhBhB,EAAKv3C,QACLwF,OAAOC,MAAMF,SAASgzC,EAAM,MACF,MAA1BA,EAAKxV,MAAM,aACXx9B,SAASgzC,EAAM,IAAM,GACrBhzC,SAASgzC,EAAM,IAAM,OApBCkuJ,CAAgBrF,MAXtC7yL,KAAMg3L,KACNh2I,MAAMrP,EAAAA,GAAAA,Q,6HCUV,IAAMvxC,GAA8C,CAClDyyL,eAAgB,GAChB/8L,KAAM,GACNkK,KAAM,CACJmJ,QAAS,EACTX,OAAQ,IAEVw4C,KAAM,IAGD,SAASm3I,GAAT,GAA0D,I,IAArChB,EAAqC,EAArCA,SAAqC,IAA3BC,SAAAA,OAA2B,SAC/D,G,GAA6Bt1L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,G,EAA9D,E,g0BAAO21L,EAAP,KAAgBC,EAAhB,KAEM3yK,EfMCgxK,GAA2BpD,IeJlC,OACE,SAAC,KAAD,CACExyL,cAAeA,GACfG,SAiCJ,SAAsBlH,GACpB2rB,EAASzjB,OAAOlI,EAAQ,CACtB8G,UADsB,SACZuM,IACRlL,EAAAA,EAAAA,IAAc,sBAAuBkL,EAAY7N,MACjD84L,IACAR,EAASzqL,OArCX1Q,iBAAkBi8L,GAClBz3L,iBAAe,EAJjB,SAOG,gBAAGI,EAAH,EAAGA,QAASkf,EAAZ,EAAYA,MAAZ,OACC,UAAC,KAAD,YACE,SAAC62K,GAAD,KACA,SAACqB,GAAD,KAEA,SAACvB,GAAD,UAAsBW,IAAY,SAACV,GAAD,OAElC,gBAAKzjM,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,wCACVoO,YAAY,4BACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW8lB,IAAUlf,EAJvB,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCACT,IATL,sBAXHykM,G,uICpCX,IAAMjmC,GAAc,CAClB,CACEnhK,GAAI,QACJsI,MAAO,QACPM,QAyDJ,SAAsBkR,EAAsBC,GAC1C,IAAMyiD,EACY,KAAhBziD,EAAqB,GAArB,gCAAmDA,EAAnD,KAEF,8MAOmByiD,EAPnB,gQAYkB1iD,EAZlB,QA3DA,CACE9Z,GAAI,MACJsI,MAAO,UACPM,QAwEJ,SAAoBkR,EAAsBC,GACxC,IAAMyiD,EACY,KAAhBziD,EAAqB,GAArB,gCAAmDA,EAAnD,KAEF,kNAMmByiD,EANnB,+RAWkB1iD,EAXlB,SAxEK,SAASguL,KACd,I,IAAA,G,GAAoCj9L,EAAAA,EAAAA,UAASs2J,GAAY,GAAGnhK,I,EAA5D,E,g0BAAO+nM,EAAP,KAAmBC,EAAnB,KAEMC,GAAoBxuL,EAAAA,GAAAA,KAE1B,IAAKwuL,EACH,OAAO,KAGT,IAAQnuL,EAA8BmuL,EAA9BnuL,aAAcC,EAAgBkuL,EAAhBluL,YAEhB1R,EAAU84J,GAAYthK,KAAI,SAAC2tB,GAC/B,IAAMltB,EAAOktB,EAAE5kB,QAAQkR,EAAcC,GAErC,MAAO,CACL/Z,GAAIwtB,EAAExtB,GACNsI,MAAOklB,EAAEllB,MACT0G,UAAU,SAACk5L,GAAD,CAAY5nM,KAAMA,QAIhC,OACE,SAACigC,GAAA,EAAD,CACEl4B,QAASA,EACTo4B,SAAU,SAACzgC,GAAD,OAAgBgoM,EAAchoM,IACxCwgC,WAAYunK,IASlB,SAASG,GAAT,GAA+C,IAAzB5nM,EAAyB,EAAzBA,KACpB,OACE,iCACE,iBAAMqC,UAAU,mBAAhB,qFAGA,gBAAKA,UAAU,cAAf,UACE,SAACg1B,GAAA,EAAD,UAAOr3B,OAET,SAACmmC,GAAA,EAAD,CAAYC,SAAUpmC,EAAtB,6BCtDC,SAAS6nM,GAAT,GAAuC,IAAnBtB,EAAmB,EAAnBA,SACzB,OACE,iCACE,SAACiB,GAAD,KAEA,gBAAKnlM,UAAU,OAAf,UACE,SAACklM,GAAD,CAAWhB,SAAUA,SCNtB,SAASuB,KACd,OAA0CpqJ,EAAAA,EAAAA,MAAlCj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAAeG,EAA/B,EAA+BA,OAE/B,OACE,iCACE,gBAAK5N,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,GAAA,EAAD,CACEzvC,MAAM,MACN8uB,QAASruB,EAAO+4L,IAChBh5L,SAAU,SAACsuB,GAAD,OAAahnB,EAAc,MAAOgnB,UAKjDruB,EAAO+4L,MACN,iCACE,gBAAKn/L,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,GAAA,EAAD,CACEzvC,MAAM,kCACN8uB,UAAWruB,EAAOi5L,WAClBl5L,SAAU,SAACsuB,GAAD,OAAahnB,EAAc,aAAcgnB,WAKvDruB,EAAOi5L,aACP,iCACE,SAAC1uL,EAAA,EAAD,CACEhL,MAAM,qBACNiB,QAAQ,gBACRgH,OAAQA,EAAO+yL,WAHjB,UAKE,SAACpyK,GAAA,EAAD,CACE3nB,QAAQ,gBACRT,SAAU,SAAC0nB,GAAD,OAAUpgB,EAAc,aAAcogB,IAChDnrB,MAAO0D,EAAOu6L,gBAGlB,SAAChwL,EAAA,EAAD,CACEhL,MAAM,kBACNiB,QAAQ,aACRgH,OAAQA,EAAOizL,SAHjB,UAKE,SAACtyK,GAAA,EAAD,CACE3nB,QAAQ,aACRT,SAAU,SAAC0nB,GAAD,OAAUpgB,EAAc,WAAYogB,IAC9CnrB,MAAO0D,EAAOy6L,cAGlB,SAAClwL,EAAA,EAAD,CACEhL,MAAM,UACNiB,QAAQ,gBACRgH,OAAQA,EAAOmzL,QAHjB,UAKE,SAACxyK,GAAA,EAAD,CACE3nB,QAAQ,gBACRT,SAAU,SAAC0nB,GAAD,OAAUpgB,EAAc,UAAWogB,IAC7CnrB,MAAO0D,EAAO26L,qBAahC,SAAS2E,KACP,OC1E2BC,GAHpBC,EAAAA,EAAAA,MD0Ea,QCtEbD,EAAen8L,KACpB,WACA,6BAIF,SAA0BqkB,GACxB,OAAKA,GAIEA,EAAK9f,MD2DM,YAGuBquC,KAAK,CAAC,MAAO,cAAe,CACrEC,GAAI,SAAC8iJ,EAAcE,GAAf,OAAuCF,IAAQE,GACnDtkL,KAAM,SAAC8qL,GAAD,OAAYA,EAAOt+L,SAAS,uBC5E/B,IAAsBo+L,E,6rBCCtB,SAASX,KACd,OAAO39L,EAAAA,EAAAA,IAAO,OACZxE,KAAM+gM,KACNp+L,KAAK2D,EAAAA,EAAAA,MAAS5B,SAAS,2BACvB43L,KAAKhjJ,EAAAA,EAAAA,MAAUG,SAAQ,GACvB+iJ,YAAYljJ,EAAAA,EAAAA,MACZpvC,KAAMg3L,MF0ED,CACLpD,WAAY+E,KACZ7E,SAAU6E,KACV3E,QAAS2E,OElFE,IAOX33I,MAAMrP,EAAAA,GAAAA,S,mcCSH,SAASonJ,GAAT,GAAsC,IrBE3CpG,E,IqBFwBwE,EAAmB,EAAnBA,SACxB,G,GAA6Br1L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,G,EAA9D,E,g0BAAO21L,EAAP,KAAgBC,EAAhB,KAYM3yK,GrBXN2tK,EqBYElnL,EAAAA,GAAAA,uBrBVKuqL,IACL,SACEx4L,GADF,OAKKk1L,G,kWAAwB,EAAEC,aAAAA,GAAiBn1L,QqBOlD,OACE,SAAC,KAAD,CACE4C,cAjB8B,CAChC3H,IAAK,GACL3C,KAAM,GACNs8L,KAAK,EACLpyL,KAAM,CACJmJ,QAAS,EACTX,OAAQ,IAEVw4C,KAAM,IAUJzgD,SAkDJ,SAAsBlH,GACpB,IAAM+4L,EAoBN,WACE,GAAK/4L,EAAO+4L,IAIZ,O,kWAAA,EACEE,WAAYj5L,EAAOi5L,YAKfj5L,EAAOi5L,WACF,GAGF,CACLsB,WAAYv6L,EAAOu6L,WACnBE,SAAUz6L,EAAOy6L,SACjBE,QAAS36L,EAAO26L,UAtCVgF,GAEZh0K,EAASzjB,OACP,CACEzL,KAAMuD,EAAOvD,KACb2C,IAAKY,EAAOZ,IACZE,QAAS,CACPy5L,IAAAA,EACApyL,KAAM3G,EAAO2G,KACbghD,KAAM3nD,EAAO2nD,OAGjB,CACE7gD,UADF,SACYuM,IACRlL,EAAAA,EAAAA,IAAc,sBAAuBkL,EAAY7N,MACjD84L,IACAR,EAASzqL,OAlEb1Q,iBAAkBi8L,GAClBz3L,iBAAe,EAJjB,SAOG,gBAAGI,EAAH,EAAGA,QAASkf,EAAZ,EAAYA,MAAZ,OACC,UAAC,KAAD,YACE,SAAC62K,GAAD,KAEA,SAAC/yL,EAAA,EAAD,CACE/J,QAAQ,YACRjB,MAAM,iBACN4B,UAAQ,EACRxB,QAAQ,gJAJV,UAME,SAAC,KAAD,CACEgnB,GAAIC,EAAAA,EACJ3vB,GAAG,YACHwF,KAAK,MACLmO,YAAY,yDAIhB,SAACy0L,GAAD,KAEA,SAACjC,GAAD,WACE,SAACC,GAAD,OAGF,gBAAKzjM,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,wCACVoO,YAAY,4BACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW8lB,IAAUlf,EAJvB,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCACT,IATL,sBA5BHykM,G,2GC1CX,IAAMjmC,GAAc,CAClB,CACEnhK,GAAI,QACJsI,MAAO,QACPM,QAAS,kDAEX,CACE5I,GAAI,MACJsI,MAAO,UACPM,QAAS,yDAIN,SAASk/L,KACd,I,IAAA,G,GAAoCj9L,EAAAA,EAAAA,UAASs2J,GAAY,GAAGnhK,I,EAA5D,E,g0BAAO+nM,EAAP,KAAmBC,EAAnB,KAIA,KAF0BvuL,EAAAA,GAAAA,KAGxB,OAAO,KAGT,IAAMpR,EAAU84J,GAAYthK,KAAI,SAAC2tB,GAAD,MAAQ,CACtCxtB,GAAIwtB,EAAExtB,GACNsI,MAAOklB,EAAEllB,MACT0G,UAAU,SAAC,GAAD,CAAY1O,KAAMktB,EAAE5kB,cAGhC,OACE,SAAC23B,GAAA,EAAD,CACEl4B,QAASA,EACTo4B,SAAU,SAACzgC,GAAD,OAAgBgoM,EAAchoM,IACxCwgC,WAAYunK,IASlB,SAASG,GAAT,GAA+C,IAAzB5nM,EAAyB,EAAzBA,KACpB,OACE,iCACE,iBAAMqC,UAAU,mBAAhB,0HAKA,SAACg1B,GAAA,EAAD,UAAOr3B,KACP,SAACmmC,GAAA,EAAD,CAAYC,SAAUpmC,EAAtB,6BCjDC,SAASqoM,GAAT,GAAqC,IAAnB9B,EAAmB,EAAnBA,SACvB,OACE,iCACE,SAAC,GAAD,KAEA,gBAAKlkM,UAAU,OAAf,UACE,SAAC8lM,GAAD,CAAS5B,SAAUA,SCNpB,SAASc,KACd,OAAO39L,EAAAA,EAAAA,IAAO,CACZxE,KAAM+gM,KACN72L,KAAMg3L,KACNkC,cAAc9pJ,EAAAA,EAAAA,MAAUG,SAAQ,GAChC0iJ,YAAY71L,EAAAA,EAAAA,MACTmzC,QAAQ,IACRF,KAAK,gBAAgB,SAAC6pJ,EAAcJ,GAAf,OACpBI,EACIJ,EAAOt+L,SACL,yDAEFs+L,KAER93I,MAAMrP,EAAAA,GAAAA,Q,2GCCH,SAASwnJ,GAAT,GAAyC,I,IAAnBhC,EAAmB,EAAnBA,SAC3B,G,GAA6Br1L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,G,EAA9D,E,g0BAAO21L,EAAP,KAAgBC,EAAhB,KASM3yK,EzBjBCgxK,GAA2BjE,IyBmBlC,OACE,SAAC,KAAD,CACE3xL,cAZ8B,CAChCtK,KAAM,GACNm8L,WAAY,GACZiH,cAAc,EACdl5L,KAAM,CAAEmJ,QAAS,EAAGX,OAAQ,IAC5Bw4C,KAAM,IAQJzgD,SAoCJ,SAAsBlH,GACpB2rB,EAASzjB,OACP,CACEzL,KAAMuD,EAAOvD,KACbm8L,WAAY54L,EAAO6/L,aAAe7/L,EAAO44L,WAAa,GACtDjxI,KAAM3nD,EAAO2nD,MAEf,CACE7gD,UADF,SACYuM,IACRlL,EAAAA,EAAAA,IAAc,sBAAuBkL,EAAY7N,MACjD84L,IACAR,EAASzqL,OA9Cb1Q,iBAAkBi8L,GAClBz3L,iBAAe,EAJjB,SAOG,gBAAGI,EAAH,EAAGA,QAASkf,EAAZ,EAAYA,MAAZ,OACC,UAAC,KAAD,YACE,SAAC62K,GAAD,KAEA,SAACyC,GAAD,KAEA,SAAC3C,GAAD,WACE,SAACC,GAAD,OAGF,gBAAKzjM,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,wCACVoO,YAAY,4BACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW8lB,IAAUlf,EAJvB,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCACT,IATL,sBAdHykM,GAmDX,SAAS0B,KACP,OAA0C9qJ,EAAAA,EAAAA,MAAlCj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAAeG,EAA/B,EAA+BA,OAE/B,OACE,iCACE,gBAAK5N,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACo1C,GAAA,EAAD,CACE3gB,QAASruB,EAAO6/L,aAChB9/L,SAAU,SAACsuB,GAAD,OAAahnB,EAAc,eAAgBgnB,IACrD9uB,MAAM,qCAIXS,EAAO6/L,eACN,SAACt1L,EAAA,EAAD,CACEhL,MAAM,cACNI,QAAQ,qHACR6H,OAAQA,EAAOoxL,WAHjB,UAKE,SAAC,KAAD,CACEn8L,KAAK,aACLkqB,GAAIC,EAAAA,EACJhc,YAAY,qFC1GjB,SAASo1L,GAAT,GAAwC,IAAnBlC,EAAmB,EAAnBA,SAC1B,OACE,iCACE,SAAC,GAAD,KAEA,gBAAKlkM,UAAU,OAAf,UACE,SAACkmM,GAAD,CAAYhC,SAAUA,S,2GCG9B,IAAMxyK,GAEA,CACJ,CACEr0B,GAAI,QACJgT,KAAM,YACN1K,MAAO,QACPgM,YAAa,GACbjP,MAAO,SAET,CACErF,GAAI,MACJgT,KAAM,UACN1K,MAAO,MACPgM,YAAa,GACbjP,MAAO,OAET,CACErF,GAAI,SACJgT,KAAM,aACN1K,MAAO,SACPgM,YAAa,GACbjP,MAAO,UAET,CACErF,GAAI,YACJgT,KAAM,gBACN1K,MAAO,aACPgM,YAAa,GACbjP,MAAO,cAIJ,SAAS2jM,GAAT,GAA2C,I,IAAnBnC,EAAmB,EAAnBA,SACvBx+L,EAAUm/L,GAA6BnzK,GAAgB,aAE7D,G,GAAwCxpB,EAAAA,EAAAA,UAASxC,EAAQ,GAAGhD,O,EAA5D,E,g0BAAOg9L,EAAP,KAAqB4G,EAArB,KAEMp/E,EAeN,SAAgBw4E,GACd,OAAQA,GACN,IAAK,QACH,OACE,SAAC8F,GAAD,CACEtB,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,oBAGvD,IAAK,MACH,OACE,SAACusL,GAAD,CACE9B,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,kBAGvD,IAAK,SACH,OACE,SAAC2sL,GAAD,CACElC,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,sBAGvD,IAAK,YACH,OACE,SAAC8qL,GAAD,CACEL,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,sBACjDshC,SAAU,CACRwrJ,MAAO,CAAChqJ,GAAAA,GAAAA,WAAyBA,GAAAA,GAAAA,iBACjCiqJ,IAAK,CAACjqJ,GAAAA,GAAAA,aAA2BA,GAAAA,GAAAA,qBAIzC,QACE,OAAO,MA9CDkqJ,CAAO/G,GAEnB,OACE,iBAAK1/L,UAAU,kBAAf,WACE,SAACqS,GAAA,EAAD,CACElM,SAAU,SAACo6B,GAAD,OAAO+lK,EAAgB/lK,IACjC76B,QAASA,EACThD,MAAOg9L,EACPptL,UAAU,kBAGX40G,K,k9BCvCP,IAAM/5G,GAA4B,CAChCtK,KAAM,GACNo+L,cAAe,GACfE,SAAU,GACVE,kBAAmB,GACnBt0L,KAAM,CACJmJ,QAAS,EACTX,OAAQ,KAIN7P,GAAU,EAACoM,EAAAA,GAAAA,GAAY,MAAO,UAAW,MAAO,GAAI,QAMnD,SAAS40L,GAAT,GAA0C,IAAnBxC,EAAmB,EAAnBA,SAC5B,MAA6Br1L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,GAA9D,GAAO21L,EAAP,KAAgBC,EAAhB,KAEA,MAAwCx8L,EAAAA,EAAAA,UAASxC,GAAQ,GAAGrI,IAA5D,GAAOqiM,EAAP,KAAqB4G,EAArB,KACMv0K,E5BrCCgxK,GAA2BzD,I4BuClC,OACE,iBAAKt/L,UAAU,kBAAf,WACE,SAACqS,GAAA,EAAD,CACE3M,QAASA,GACT4M,UAAU,gBACVnM,SAAU,SAACzD,GAAD,OAAW4jM,EAAgB5jM,IACrCA,MAAOg9L,KAGT,SAAC,KAAD,CACEvyL,cAAeA,GACfG,SA2EN,YAMyB,IALvB2zL,EAKuB,EALvBA,cACAI,EAIuB,EAJvBA,kBACAt0L,EAGuB,EAHvBA,KACAlK,EAEuB,EAFvBA,KACAs+L,EACuB,EADvBA,SAEApvK,EAASzjB,OACP,CACEzL,KAAAA,EACA0sB,MAAO,CACL0xK,cAAAA,EACAI,kBAAAA,EACAF,SAAAA,GAEFp0L,KAAAA,GAEF,CACEG,UADF,SACYuM,IACRlL,EAAAA,EAAAA,IAAc,sBAAuBkL,EAAY7N,MACjD84L,IACAR,EAASzqL,EAAa,cA9FxBlM,iBAAe,EACfxE,iBAAkBA,GALpB,SAOG,gBAAG6E,EAAH,EAAGA,OAAQif,EAAX,EAAWA,MAAOlf,EAAlB,EAAkBA,QAAlB,OACC,UAAC,KAAD,YACE,SAAC+1L,GAAD,KAEA,SAAC/yL,EAAA,EAAD,CACEhL,MAAM,iBACNiI,OAAQA,EAAOqzL,cACfr6L,QAAQ,sBACRW,UAAQ,EAJV,UAME,SAAC,KAAD,CACE1E,KAAK,gBACLxF,GAAG,sBACH0vB,GAAIC,EAAAA,EACJhc,YAAY,4CAIhB,SAACL,EAAA,EAAD,CACEhL,MAAM,YACNiI,OAAQA,EAAOuzL,SACfv6L,QAAQ,iBACRW,UAAQ,EAJV,UAME,SAAC,KAAD,CACE1E,KAAK,WACLxF,GAAG,iBACH0vB,GAAIC,EAAAA,EACJhc,YAAY,4CAIhB,SAACL,EAAA,EAAD,CACEhL,MAAM,qBACNiI,OAAQA,EAAOyzL,kBACfz6L,QAAQ,0BACRW,UAAQ,EAJV,UAME,SAAC,KAAD,CACE1E,KAAK,oBACLxF,GAAG,0BACH0vB,GAAIC,EAAAA,EACJhc,YAAY,oDAIhB,SAACwyL,GAAD,KAEA,gBAAKxjM,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,kBACVoO,YAAY,4BACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW8lB,IAAUlf,EAJvB,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCACT,IATL,sBAtDHykM,MAsGb,SAAS17L,KACP,OAAO1B,EAAAA,EAAAA,IAAO,CACZxE,KAAM+gM,KACN3C,eAAe93L,EAAAA,EAAAA,MAAS5B,SAAS,8BACjC45L,UAAUh4L,EAAAA,EAAAA,MAAS5B,SAAS,yBAC5B85L,mBAAmBl4L,EAAAA,EAAAA,MAAS5B,SAAS,kCACrCwF,KAAMg3L,O,2HClKV,IAAMvlC,GAAc,CAClB,CACEnhK,GAAI,kBACJsI,MAAO,+BACPM,QA4DJ,SAAiCkR,GAC/B,IAAMulC,GAAoBC,EAAAA,GAAAA,sBAAqBxlC,GAE/C,kEAA4DulC,EAA5D,iCA9DEiqJ,wBAAwB,GAE1B,CACEtpM,GAAI,cACJsI,MAAO,2BACPM,QAgDJ,SAA6BkR,GAC3B,IAAMulC,GAAoBC,EAAAA,GAAAA,sBAAqBxlC,GAE/C,kEAA4DulC,EAA5D,uCAlDEiqJ,wBAAwB,IAIrB,SAASxB,KACd,I,IAAA,G,GAAoCj9L,EAAAA,EAAAA,UAASs2J,GAAY,GAAGnhK,I,EAA5D,E,g0BAAO+nM,EAAP,KAAmBC,EAAnB,KAEMC,GAAoBxuL,EAAAA,GAAAA,KAE1B,IAAKwuL,EACH,OAAO,KAGT,IAAQnuL,EAA8BmuL,EAA9BnuL,aAAcC,EAAgBkuL,EAAhBluL,YAEhB1R,EAAU84J,GAAYthK,KAAI,SAAC2tB,GAC/B,IAAMltB,EAAOktB,EAAE5kB,QAAQkR,GAEvB,MAAO,CACL9Z,GAAIwtB,EAAExtB,GACNsI,MAAOklB,EAAEllB,MACT0G,UACE,SAAC,GAAD,CACE+K,YAAaA,EACbuvL,uBAAwB97K,EAAE87K,uBAC1BhpM,KAAMA,QAMd,OACE,iCACE,SAAC8kC,GAAA,EAAD,CAASz0B,MAAM,OAAf,iJAKA,SAAC4vB,GAAA,EAAD,CACEl4B,QAASA,EACTo4B,SAAU,SAACzgC,GAAD,OAAgBgoM,EAAchoM,IACxCwgC,WAAYunK,OAwBpB,SAASG,GAAT,GAIsB,IAHpBnuL,EAGoB,EAHpBA,YACAuvL,EAEoB,EAFpBA,uBACAhpM,EACoB,EADpBA,KAEA,OACE,gCACGgpM,GAA0BvvL,IACzB,eAAGpX,UAAU,wBAAb,WACE,cACEA,UAAU,0CACV,cAAY,SAHhB,0EAME,0BAAOoX,IANT,sFAUF,SAAC4d,GAAA,EAAD,UAAOr3B,KACP,SAACmmC,GAAA,EAAD,CAAYC,SAAUpmC,EAAtB,6BC/FC,SAASipM,GAAT,GAAyC,IAAnB1C,EAAmB,EAAnBA,SAC3B,OACE,iCACE,SAAC,GAAD,KAEA,gBAAKlkM,UAAU,OAAf,UACE,SAACklM,GAAD,CAAWhB,SAAUA,S,gBCTtB,SAASc,KACd,OAAO39L,EAAAA,EAAAA,IAAO,CACZxE,KAAM+gM,KACNpE,YAAYr2L,EAAAA,EAAAA,MAAS5B,SAAS,gCAC9BwF,KAAMg3L,O,kwCCYV,IAAM52L,GAA6C,CACjDqyL,WAAY,GACZ38L,KAAM,GACNkK,KAAM,CACJmJ,QAAS,EACTX,OAAQ,K,SAIGsxL,GAAgB,G,oFAA/B,WAA+Bh5K,GAA/B,yGACS,IAAI7S,SAAQ,SAACld,EAASgwB,GAC3B,IAAMg5K,EAAa,IAAI94K,WACvB84K,EAAW54K,OAAS,SAACzwB,GACnB,GAAgB,MAAZA,EAAEY,QAAqC,MAAnBZ,EAAEY,OAAO+oB,OAAjC,CAIA,IAAM2/K,EAAStpM,EAAEY,OAAO+oB,OAAOxkB,WACzBs8B,EAAQ6nK,EAAOniM,QAAQ,WAEvBoiM,EAAOD,EAAOliM,UAAUq6B,EAAQ,EAAG6nK,EAAOvoM,QAChDV,EAAQkpM,QAPNlpM,EAAQ,KASZgpM,EAAW34K,QAAU,WACnBL,EAAO,IAAIpwB,MAAM,iDAEnBopM,EAAWG,cAAcp5K,OAjB7B,4C,sBAqBO,SAASq5K,GAAT,GAA6C,IAAnBhD,EAAmB,EAAnBA,SAC/B,MAA6Br1L,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,GAA9D,GAAO21L,EAAP,KAAgBC,EAAhB,KACA,MAA4Cx8L,EAAAA,EAAAA,YAA5C,GAAOi/L,EAAP,KAAuBC,EAAvB,KAEMr1K,EhChCCgxK,GAA2BxD,IgC4BgB,kDAMlD,WACE1xK,EACApgB,GAFF,0FAQMogB,EARN,uBASIu5K,EAAkBv5K,GATtB,SAU8Bg5K,GAAgBh5K,GAV9C,OAUUitC,EAVV,OAWIrtD,EAAc,aAAcqtD,GAXhC,4CANkD,sBAqBlD,OACE,SAAC,KAAD,CACE3tD,cAAeA,GACfG,SAmFJ,SAAsBlH,GACpB2rB,EAASzjB,OAAOlI,EAAQ,CACtB8G,UADsB,SACZuM,IACRlL,EAAAA,EAAAA,IAAc,4BAA6BkL,EAAY7N,MACvD84L,IACA0C,OAAkBx2L,GAClBszL,EAASzqL,OAxFX1Q,iBAAkBi8L,GAClBz3L,iBAAe,EAJjB,SAOG,gBAAGI,EAAH,EAAGA,QAASkf,EAAZ,EAAYA,MAAOpf,EAAnB,EAAmBA,cAAeG,EAAlC,EAAkCA,OAAlC,OACC,UAAC,KAAD,YACE,iBAAK5N,UAAU,aAAf,WACE,gBAAKA,UAAU,YAAf,UACE,SAACyiC,GAAA,EAAD,CAASz0B,MAAM,OAAf,UACE,kBAAMhO,UAAU,aAAhB,WACE,cACE8qB,KAAK,kEACLzsB,OAAO,SACP0sB,IAAI,aACJ/qB,UAAU,OAJZ,wCADF,sMAgBJ,iBAAKA,UAAU,6BAAf,WACE,gBAAIH,MAAO,CAAEwnM,QAAS,GAAIC,YAAa,IAAvC,WACE,8EACA,4EACA,uGAKF,+KAQJ,SAAC5D,GAAD,KAEA,SAAC/yL,EAAA,EAAD,CACEhL,MAAM,kBACN4B,UAAQ,EACRqG,OAAQA,EAAO4xL,WACf54L,QAAQ,kBAJV,UAME,SAAC2rC,GAAA,EAAD,CACE3rC,QAAQ,kBACRqG,MAAM,gBACNuhB,OAAO,aACP9rB,MAAOykM,EACPhhM,SAAU,SAAC0nB,GAAD,OAhF4B,6CAgFlBY,CAAiBZ,EAAMpgB,SAI/C,SAAC+1L,GAAD,KAEA,gBAAKxjM,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACkO,EAAA,EAAD,CACElO,UAAU,wCACVoO,YAAY,4BACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW8lB,IAAUlf,EAJvB,WAME,SAAC4C,EAAA,EAAD,CACEF,KAAK,WACLrQ,UAAU,iCACT,IATL,sBA7DHykM,G,wyBC1DX,IAAM/yK,GAAgE,CACpE,CACEr0B,GAAI,iBACJgT,KAAM,YACN1K,MAAO,QACPjD,MAAO8V,EAAAA,GAAAA,iBACP7G,YAAa,IAEf,CACEtU,GAAI,YACJgT,KAAM,gBACN1K,MAAO,aACPgM,YAAa,GACbjP,MAAO8V,EAAAA,GAAAA,sBAET,CACEnb,GAAI,sBACJgT,KAAM,kBACN1K,MAAO,SACPjD,MAAO8V,EAAAA,GAAAA,sBACP7G,YAAa,yCAIV,SAAS41L,GAAT,GAA+C,I,IAAnBrD,EAAmB,EAAnBA,SAC3Bx+L,EAAUm/L,GACdnzK,GACAlZ,EAAAA,GAAAA,sBAGF,G,GAAwCtQ,EAAAA,EAAAA,UAASxC,EAAQ,GAAGhD,O,EAA5D,E,g0BAAOg9L,EAAP,KAAqB4G,EAArB,KAEMp/E,EAeN,SAAgBp+G,GACd,OAAQA,GACN,KAAK0P,EAAAA,GAAAA,iBACH,OACE,SAACouL,GAAD,CACE1C,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,wBAGvD,KAAKjB,EAAAA,GAAAA,qBACH,OACE,SAAC+rL,GAAD,CACEL,SAAQ,+GAAE,SAACzqL,GAAD,OACRyqL,EAASzqL,EAAa,0BAExBshC,SAAU,CAAC,SAAKwB,GAAAA,GAAAA,UAAN,IAA6B52C,MAAO,aAGpD,KAAK6S,EAAAA,GAAAA,sBACH,OACE,SAAC0uL,GAAD,CACEhD,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,wBAGvD,QACE,MAAM,IAAI/b,MAAM,gCAvCV+oM,CAAO/G,GAEnB,OACE,iBAAK1/L,UAAU,kBAAf,WACE,SAACqS,GAAA,EAAD,CACElM,SAAU,SAACo6B,GAAD,OAAO+lK,EAAgB/lK,IACjC76B,QAASA,EACThD,MAAOg9L,EACPptL,UAAU,kBAGX40G,K,2GC5CP,IAAMnsE,GAAyB,CAC7B,CACE19C,GAAI,QACJsI,MAAO,QACPM,QAASo3C,GAAAA,KAIP3rB,GAAiB,CACrB,CACE/f,YAAa,uBACbtB,KAAM,gBACNhT,GAAI,KACJsI,MAAO,aACPjD,MAAO8V,EAAAA,GAAAA,uBAIJ,SAASgvL,GAAT,GAA0C,I,IAAnBtD,EAAmB,EAAnBA,SACtBx+L,EAAUm/L,GACdnzK,GACAlZ,EAAAA,GAAAA,sBAGF,G,GAAgCtQ,EAAAA,EAAAA,UAASxC,EAAQ,GAAGhD,O,EAApD,E,g0BAAOq7B,EAAP,KAAiB6R,EAAjB,KAEA,OACE,iBAAK5vC,UAAU,kBAAf,WACE,SAACqS,GAAA,EAAD,CACElM,SAAU,SAACzD,GAAD,OAAWktC,EAAYltC,IACjCgD,QAASA,EACThD,MAAOq7B,EACPzrB,UAAU,mBAGZ,SAACiyL,GAAD,CACExpJ,SAAUA,GACVmpJ,SAAQ,+GAAE,SAACzqL,GAAD,OAAiByqL,EAASzqL,EAAa,qBACjDgiC,qBAAmB,OCjCpB,SAASgsJ,GAAT,GAAwD,IAAzB1R,EAAyB,EAAzBA,eACpC,GAAyB79K,EAAAA,GAAAA,IACvB,CAAEy5G,YAAaokE,IACf,SAACx9K,GACC,QAAKA,KAIAA,EAAa7V,MAAMgN,KAAK4J,GAAAA,KAItBzB,GAAAA,KAET,EACAk+K,EAAev3L,OAAS,GAdlB+Z,EAAR,EAAQA,aAiBR,OACE,UAAC6qB,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,WAAWpD,MAAM,sBACnC,SAACm2B,EAAA,GAAD,UACG7qB,EAAarb,KAAI,SAACuc,GAAD,OAChB,iBAAKzZ,UChDqB,uIDgD1B,WACE,gBAAKA,UCjD8U,qIDiDnV,UACE,cACE,cAAY,OACZA,WAAW6L,EAAAA,EAAAA,GACT,eACAgoL,EAAAA,GAAAA,qBAAoBp6K,EAAY1P,YAItC,gBAAK/J,UC1Dqe,qID0D1e,SAAyCyZ,EAAY7N,QACrD,iBAAK5L,UC3D+nB,wID2DpoB,mBACQ61L,EAAAA,GAAAA,eAAcp8K,EAAY2sD,SAElC,iBAAKpmE,UC9DwxB,oID8D7xB,oBACS0nM,EAAAA,GAAAA,kBAAiBjuL,EAAY1P,UAErCsP,EAAAA,GAAAA,IAAkBI,EAAY1P,QAC7B,gBAAK/J,UClE+K,2IDkEpL,UACE,SAACsb,GAAA,EAAD,CAAe7B,YAAaA,QAnBaA,EAAYnO,Y,IE7CzDq8L,G,0GCWNC,GAA0D,CAC9D,CACEvqM,GAAI2sB,GAAAA,GAAAA,KACJ3Z,KAAMw3L,GAAAA,EACNliM,MAAO,OACPgM,YAAa,kBACbjP,MAAOsnB,GAAAA,GAAAA,MAET,CACE3sB,GAAI2sB,GAAAA,GAAAA,OACJ3Z,KAAMy3L,GAAAA,EACNniM,MAAO,SACPgM,YAAa,iCACbjP,MAAOsnB,GAAAA,GAAAA,QAET,CACE3sB,GAAI2sB,GAAAA,GAAAA,cACJ3Z,KAAM03L,GAAAA,EACNpiM,MAAO,eACPgM,YAAa,iCACbjP,MAAOsnB,GAAAA,GAAAA,eAET,CACE3sB,GAAI2sB,GAAAA,GAAAA,aACJ3Z,KAAM23L,GAAAA,EACNriM,MAAO,eACPgM,YAAa,iCACbjP,MAAOsnB,GAAAA,GAAAA,cAET,CACE3sB,GAAI2sB,GAAAA,GAAAA,IACJ3Z,KAAM43L,GAAAA,EACNtiM,MAAO,4BACPgM,YAAa,mCACbjP,MAAOsnB,GAAAA,GAAAA,KAET,CACE3sB,GAAI2sB,GAAAA,GAAAA,MACJ3Z,KAAM63L,GAAAA,EACNviM,MAAO,kBACPgM,YAAa,iCACbjP,MAAOsnB,GAAAA,GAAAA,QAIJ,SAASm+K,GAAT,GAA8D,IAA7BhiM,EAA6B,EAA7BA,SAAU4jB,EAAmB,EAAnBA,SAChD,OACE,SAAC1X,GAAA,EAAD,CACEC,UAAU,YACV,UAAQ,gCACR5M,QAASkiM,GACTzhM,SAAQ,+GAAE,SAAC4jB,GAAD,OAA4B5jB,EAAS4jB,MAC/CrnB,MAAOqnB,IDgLN,SAASq+K,GAAcC,GAC5B,MAAO,cAAeA,EAGjB,SAASC,GAAgBD,GAC9B,MAAO,mBAAoBA,EAGtB,SAASE,GAAcF,GAC5B,MAAO,QAASA,EAGX,SAASG,GAAcH,GAC5B,MAAO,aAAcA,EEzKhB,SAASI,GAAiB1+K,GAC/B,OAAQA,GACN,KAAKC,GAAAA,GAAAA,aACH,OAAO29K,GAAae,IACtB,KAAK1+K,GAAAA,GAAAA,IACH,OAAO29K,GAAagB,IACtB,KAAK3+K,GAAAA,GAAAA,MACH,OAAO29K,GAAaiB,MACtB,KAAK5+K,GAAAA,GAAAA,cACL,KAAKA,GAAAA,GAAAA,OACL,KAAKA,GAAAA,GAAAA,KACL,QACE,OAAO29K,GAAalO,M,SF/FdkO,GAAAA,EAAAA,IAAAA,MAAAA,EAAAA,IAAAA,MAAAA,EAAAA,IAAAA,MAAAA,EAAAA,MAAAA,Q,CAAAA,KAAAA,GAAAA,K,2tCGcZ,SAAS71L,GAAYpP,EAAeiD,GAClC,MAAO,CAAEjD,MAAAA,EAAOiD,MAAOA,MAAAA,EAAAA,EAASjD,GAG3B,SAASmmM,GAAsBpzL,GAAsC,MAMnC,EALjCqzL,EAAqBrzL,EAASqzL,mBAAmB5rM,KAAI,SAACqjC,GAAD,OACzDzuB,GAAYyuB,EAAE79B,MAAO69B,EAAE19B,SAEnBkmM,EAAUtzL,EAASszL,QAAQ7rM,KAAI,SAACqjC,GAAD,OAAOzuB,GAAYyuB,EAAE79B,MAAO69B,EAAE19B,SAEnE,GHsKO,mBGtKqB4S,EAC1B,gBACKA,GADL,IAEEqzL,mBAAAA,EACA5yE,gBACE,UAAAzgH,EAASygH,sBAAT,eAAyBh5H,KAAI,SAAC8rM,GAAD,OAAQl3L,GAAYk3L,EAAIA,QAAQ,GAC/DD,QAAAA,EACAE,UAAWxzL,EAASwzL,YAIxB,GHuKO,aGvKmBxzL,EACxB,MAAO,CACLqzL,mBAAAA,EACAI,cAAezzL,EAASyzL,cACxBH,QAAAA,EACAI,SAAU1zL,EAAS0zL,SAASjsM,KAAI,SAACqjC,GAAD,OAAOzuB,GAAYyuB,EAAE79B,MAAO69B,EAAE19B,UAIlE,IAAMomM,EAAYxzL,EAASwzL,UAAU/rM,KAAI,SAACqjC,GAAD,OAAOzuB,GAAYyuB,EAAE79B,MAAO69B,EAAE19B,SACjE62D,GACJ,UAAAjkD,EAASikD,gBAAT,eAAmB9+C,QAAO,SAAC2W,EAAK3V,GAC9B,IAAMwtL,EAAgB,MACnBxtL,EAAEytL,OAASztL,EAAE89C,SAASx8D,KAAI,SAAC0e,GAAD,OAAO9J,GAAY8J,EAAEve,GAAIue,EAAE/Y,UAExD,gBAAY0uB,GAAQ63K,KACnB,MAAsB,GAE3B,OH4IK,SACLE,GAEA,MAAO,QAASA,EG/IZC,CAAsB9zL,GACxB,SACKA,GADL,IAEEqzL,mBAAAA,EACAG,UAAAA,EACAvvI,SAAAA,EACAqvI,QAAAA,IAKG,CACLrvI,SAAAA,EACAuvI,UAAAA,EACAF,QAAAA,EACAD,mBAAAA,G,gUCjEJ,SAAS9jM,GAAS+kB,EAAwBtmB,GACxC,uBAAiBsmB,EAAjB,YAA6BtmB,G,oDAGxB,WACLoc,EACAkK,GAFK,iHAKoBhlB,GAAAA,GAAAA,KACrBC,GAAS+kB,EAAU,WACnBlK,GAPC,uBAKKrc,EALL,EAKKA,KALL,kBASIA,GATJ,uCAWGyB,EAAAA,GAAAA,IAAgB,EAAD,IAXlB,0D,sBAeA,SAAeukM,GAAtB,qC,oDAAO,aAELtwJ,GAFK,mGACHnvB,EADG,EACHA,SAAU1sB,EADP,EACOA,GADP,kBAKoB0H,GAAAA,GAAAA,IACrBC,GAAS+kB,EAAU,QACnB,CAAExf,OAAQ,CAAE2hB,aAAc7uB,EAAI67C,MAAAA,KAP7B,uBAKK11C,EALL,EAKKA,KALL,kBASIqlM,GAAsBrlM,IAT1B,uCAWGyB,EAAAA,GAAAA,IAAgB,EAAD,IAXlB,0D,sVCdA,SAASwkM,GACd1/K,EACA2/K,EACAp+K,GAEA,IADA4tB,EACA,wDACA,OAAO/zC,EAAAA,GAAAA,UACL,CAAC,QAASmmB,MAAAA,OAAV,EAAUA,EAAYvB,SAAU,OAAQuB,MAAAA,OAAxC,EAAwCA,EAAYjuB,GAAI,CAAE67C,MAAAA,KAC1D,kBAAMywJ,GAAgBD,EAAWp+K,EAAY4tB,KAC7C,CACEnsC,KAAM,CACJC,MAAO,CACLC,MACEqe,GAAU,wBACOhB,GAAAA,GAAegB,EAAWvB,UADjC,SAEZ/d,QAAS,KAGb4L,UAAW0T,GAAcA,EAAWvB,WAAaA,EACjD6/K,MAAO,I,SAKED,GAAAA,EAAAA,G,oFAAf,WACED,EACAp+K,GAFF,uGAGE4tB,EAHF,gCAKO5tB,EALP,yCAMW,MANX,uBASqBk+K,GAAYl+K,EAAY4tB,GAT7C,cASQj3B,EATR,yBAWSynL,EAAUznL,GAAQA,EAAO,MAXlC,2C,yBC/BO,SAAS4nL,GAAUhtF,GACxB,OAAOhhG,KAAKslB,IAAU,GAAN07E,EAAW,GAItB,SAASitF,GAAUjtF,GACxB,OAAIA,GAAO,EACF,IAEFhhG,KAAKC,IAAU,EAAN+gG,EAAS,KAGpB,SAAS9zG,GACds/L,GAEA,IAAI0B,GAAYziM,EAAAA,EAAAA,MACZ0iM,GAAY1iM,EAAAA,EAAAA,MACZ2iM,GAAY3iM,EAAAA,EAAAA,MAkChB,OAhCI+gM,GAAYE,GAAcF,KAC5B0B,EAAYA,EACTjuL,IACCusL,EAASxrF,IAAI/gG,IAFL,sDAGuCusL,EAASxrF,IAAI/gG,IAHpD,MAKTqlB,IACCknK,EAASxrF,IAAI17E,IANL,mDAOoCknK,EAASxrF,IAAI17E,IAPjD,MASZ6oK,EAAYA,EAAU5tJ,KAAK,OAAO,SAACygE,EAAKgpF,GAAN,OAChCA,EACG/pL,IACC+tL,GAAUhtF,GAFd,oDAGiDgtF,GAAUhtF,GAH3D,SAKG17E,IACC2oK,GAAUjtF,GANd,iDAO8CitF,GAAUjtF,GAPxD,YAUFotF,EAAYA,EACTnuL,IACCusL,EAAS6B,IAAIpuL,IAFL,2DAG4CusL,EAAS6B,IAAIpuL,IAHzD,SAKTqlB,IACCknK,EAAS6B,IAAI/oK,IANL,wDAOyCknK,EAAS6B,IAAI/oK,IAPtD,WAWP95B,EAAAA,EAAAA,MAAS4B,MAAM,CACpBkhM,UAAUhhM,EAAAA,EAAAA,MAAS5B,SAAS,0BAC5Bs1G,IAAKktF,EACFK,QAAQ,4BACR5gM,KAAK,eAAgB,yCAAyC,SAAClC,GAAD,QAC7DA,GAASA,EAAS,GAAM,KAEzBC,SAAS,sBACZ8iM,IAAKL,EACFziM,SAAS,oBACTiC,KAAK,kBAAmB,qCAAqC,SAAClC,GAAD,QAC5DA,GAASA,EAAS,KAAS,KAE/B4iM,IAAKD,EACFG,QAAQ,2BACR7iM,SAAS,oBACZwqD,WAAW5oD,EAAAA,EAAAA,MAAS5B,SAAS,6BCjE1B,SAAS+iM,GACd5kM,EACAhD,EACAqF,EACAE,GAEA,IAAQwF,GAAkB4tC,EAAAA,EAAAA,MAAlB5tC,eAERnF,EAAAA,EAAAA,YAAU,WACJ5C,EACEA,EAAQlH,OAAS,IAY3B,SACEkH,EACAhD,GAEA,OAAOgD,EAAQ8C,MAAK,SAACrB,GAAD,OAAYA,EAAOzE,QAAUA,KAhBlB6nM,CAAW7kM,EAAShD,IAC7C+K,EAAc1F,EAAWrC,EAAQ,GAAGhD,OAAS,IAG/C+K,EAAc1F,EADLE,GAGgB,MAG1B,CAACvC,EAAS+H,I,2HCZR,SAAS+8L,GAAT,GAAkD,I,IACjDC,EADiD,EAAtBx/K,YACuB/tB,KAAI,SAAC2tB,GAAD,MAAQ,CAClEnoB,MAAOmoB,EAAExtB,GACTsI,MAAOklB,EAAEhoB,SAGX,G,GAAoCogM,EAAAA,EAAAA,IAAiB,gB,EAArD,E,g0BAAOC,EAAP,KAAmBn2L,EAAnB,KAAyBq2L,EAAzB,KAGA,OAFAkH,GAAsBG,EAAmBvH,EAAWxgM,MAAO,iBAGzD,SAACiO,EAAA,EAAD,CACEhL,MAAM,cACNI,QAAQ,qCACRa,QAAQ,kBACRgH,OAAQb,EAAKC,MAJf,UAME,SAACmmC,GAAA,EAAD,CACEtwC,KAAMqgM,EAAWrgM,KACjBxF,GAAG,kBACH,UAAQ,kCACR0J,SAAU0jM,EAAkBjsM,QAAU,EACtCkH,QAAS+kM,EACT/nM,MAAOwgM,EAAWxgM,MAClByD,SAKN,SAAsB1I,GACpB,IAAMiF,EAAQqB,SAAStG,EAAEY,OAAOqE,MAAO,IAClCsB,OAAOC,MAAMvB,IAChB0gM,EAAQzlL,SAASjb,QChChB,SAASgoM,GAAT,GAIG,IAHRh9L,EAGQ,EAHRA,aACAi9L,EAEQ,EAFRA,cACAC,EACQ,EADRA,YAEQj9L,GAAY0tC,EAAAA,EAAAA,MAAZ1tC,QAER,OACE,SAAC,KAAD,CAAaV,MAAM,UAAnB,UACE,gBAAKjN,UAAU,aAAf,UACE,iBAAKA,UAAU,YAAf,WACE,UAACkO,EAAA,EAAD,CACEnH,UAAW4G,EACXQ,UAAWT,EACXU,YAAY,2BAHd,WAKE,cAAGpO,UAAU,yBAAyB,cAAY,SALpD,4BASA,UAACkO,EAAA,EAAD,CACEpF,KAAK,SACLkF,MAAM,UACNC,QAAS08L,EACTx8L,UAAWy8L,EACXx8L,YAAY,uBALd,WAOE,cAAGpO,UAAU,yBAAyB,cAAY,SAPpD,mCC/BH,SAAS6qM,KACd,OACE,SAACpoK,GAAA,EAAD,CAASz0B,MAAM,OAAf,gM,2GC4BG,SAAS88L,GAAT,GAIG,c,IAHR7/K,EAGQ,EAHRA,YACAlB,EAEQ,EAFRA,SACArc,EACQ,EADRA,aAEA,GAA0C2tC,EAAAA,EAAAA,MAAlCj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAAeG,EAA/B,EAA+BA,OAE7By7L,EAIEjjM,EAJFijM,OACAn9K,EAGE9lB,EAHF8lB,aACA6+K,EAEE3kM,EAFF2kM,kBAHF,EAKI3kM,EADFizB,OAAU04B,EAJZ,EAIYA,UAAW8qD,EAJvB,EAIuBA,IAAKwtF,EAJ5B,EAI4BA,IAAKF,EAJjC,EAIiCA,SAEjC,G,GAA4CjiM,EAAAA,EAAAA,WAAS,G,EAArD,E,g0BAAO8iM,EAAP,KAAuBC,EAAvB,KAKMC,EAAoBzB,GACxB1/K,EACAw+K,GAJAt9K,EAAYziB,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAO6uB,MAAiBjB,EAAY,GAM9D+/K,GAGIG,EAAeD,EAAkB1nM,KAEjC4nM,GAAyBvtL,EAAAA,EAAAA,UAAQ,WAAM,MA0OZ2J,EAC3B6jL,EA1OEC,GA0OFD,GAD2B7jL,EAzOmB6hL,GA0OvBjnJ,YAAY,MACnB,EACb56B,EAAK3iB,UAAU,EAAGwmM,GAEpB7jL,EA7OL,OAAO2jL,MAAAA,GAAA,UAAAA,EAAczxI,gBAAd,eAAyB4xI,KAAoB,KACnD,CAACjC,EAAQ8B,MAAAA,OAAT,EAASA,EAAczxI,WAEpBovI,GAAqBjrL,EAAAA,EAAAA,UACzB,kBAAMstL,MAAAA,OAAA,EAAAA,EAAcrC,qBAAsB,KAC1C,CAACqC,MAAAA,OAAD,EAACA,EAAcrC,qBAEXC,GAAUlrL,EAAAA,EAAAA,UACd,kBAAMstL,MAAAA,OAAA,EAAAA,EAAcpC,UAAW,KAC/B,CAACoC,MAAAA,OAAD,EAACA,EAAcpC,UAEXE,GAAYprL,EAAAA,EAAAA,UAChB,kBAAMstL,MAAAA,OAAA,EAAAA,EAAclC,YAAa,KACjC,CAACkC,MAAAA,OAAD,EAACA,EAAclC,YAiCjB,OA7BA3gM,EAAAA,EAAAA,YAAU,WAEJ+hM,EAAMR,GAAUhtF,IAClBpvG,EAAc,aAAco8L,GAAUhtF,IAEpCwtF,EAAMP,GAAUjtF,IAClBpvG,EAAc,aAAcq8L,GAAUjtF,MAGvC,CAACA,EAAKpvG,KAGTnF,EAAAA,EAAAA,YAAU,WACR,GAAI2iB,EAAYzsB,OAAS,EAAG,CAC1B,IAAM8sB,EAAaL,EAAY,GAE/Bxd,EAAc,eAAgB6d,EAAWjuB,OAE1C,CAAC4tB,EAAaxd,IAEjB68L,GAAsBvB,EAASM,EAAQ,UACvCiB,GAAsBrB,EAAWkB,EAAU,mBAC3CG,GACExB,EACAiC,EACA,qBAEFT,GAAsBc,EAAwBr5I,EAAW,qBAGvD,iCACE,SAAC84I,GAAD,KACA,SAACnH,GAAD,CACE39L,QAAQ,sCACRiL,YAAY,0BAEd,SAACw5L,GAAD,CAAkBv/K,YAAaA,IAE9BigL,EAAkB5nF,UACjB,UAAC7gF,GAAA,EAAD,CAASz0B,MAAM,SAAf,2BACiBsc,GAAAA,GAAeP,GADhC,gBAEE,SAAC1f,GAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAI6uB,GACdjf,MAAM,iBACNjN,UAAU,OAJZ,4BAFF,qCAaDkrM,EAAkB/8L,YAAa,SAAC60B,GAAA,EAAD,IAE/BmoK,GAAgB5C,GAAc4C,KAC7B,iCACE,SAACx6L,EAAA,EAAD,CACEhL,MAAM,SACNI,QAAQ,2CACRa,QAAQ,cACRgH,OAAQA,EAAOy7L,OAJjB,UAME,SAAC,KAAD,CACExmM,KAAK,SACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,aACH,UAAQ,8BACRqI,QAASqjM,EACThiM,SAAUgiM,EAAQvqM,QAAU,OAGhC,SAACmS,EAAA,EAAD,CACEhL,MAAM,YACNI,QAAQ,4CACRa,QAAQ,gBACRgH,OAAM,UAAEA,EAAOyrB,cAAT,aAAE,EAAe8wK,SAJzB,UAME,SAAC,KAAD,CACEtnM,KAAK,kBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,gBACH,UAAQ,gCACRqI,QAASujM,EACTliM,SAAUkiM,EAAUzqM,QAAU,MAGpB,WAAb2rM,IACC,iCACE,SAACx5L,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,oCACRa,QAAQ,eACRgH,OAAM,UAAEA,EAAOyrB,cAAT,aAAE,EAAewjF,IAJzB,UAME,SAAC,KAAD,CACEh6G,KAAK,aACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,0BACRu4B,KAAM,EACNvlB,IAAKqvL,EAAatuF,IAAI/gG,IACtBqlB,IAAKgqK,EAAatuF,IAAI17E,IACtB9jC,GAAG,WACH2T,YAAam6L,EAAatuF,IAAIvgE,aAGlC,SAAC3rC,EAAA,EAAD,CACEhL,MAAM,gBACNI,QAAQ,kCACRa,QAAQ,eACRgH,OAAM,UAAEA,EAAOyrB,cAAT,aAAE,EAAegxK,IAJzB,UAME,SAAC,KAAD,CACExnM,KAAK,aACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,0BACRu4B,KAAM,EACNvlB,IAAK+tL,GAAUhtF,GACf17E,IAAK2oK,GAAUjtF,GACfx/G,GAAG,WACH2T,YAAam6L,EAAatuF,IAAIvgE,gBAKtC,SAAC3rC,EAAA,EAAD,CACEhL,MAAM,uBACNI,QAAQ,yCACRa,QAAQ,eACRgH,OAAM,UAAEA,EAAOyrB,cAAT,aAAE,EAAe6wK,IAJzB,UAME,SAAC,KAAD,CACErnM,KAAK,aACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,0BACRgT,IAAKqvL,EAAajB,IAAIpuL,IACtBqlB,IAAKgqK,EAAajB,IAAI/oK,IACtB9jC,GAAG,WACH2T,YAAam6L,EAAajB,IAAI5tJ,aAGlC,SAAC3rC,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,8CACRa,QAAQ,iBACRgH,OAAQA,EAAO29L,UAJjB,UAME,SAAC,KAAD,CACE1oM,KAAK,YACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,gCACRgT,IAAK,EACLqlB,IAAK,IACL9jC,GAAG,iBACH2T,YAAY,SAGhB,SAACL,EAAA,EAAD,CACEhL,MAAM,SACNI,QAAQ,6CACRa,QAAQ,iBACRgH,OAAM,UAAEA,EAAOyrB,cAAT,aAAE,EAAe04B,UAJzB,UAME,SAAC,KAAD,CACElvD,KAAK,mBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,iBACH,UAAQ,iCACRqI,QAAS0lM,EACTrkM,SAAUqkM,EAAuB5sM,QAAU,OAG/C,SAACmS,EAAA,EAAD,CACEhL,MAAM,qBACNI,QAAQ,4CACRa,QAAQ,yBACRgH,OAAQA,EAAOm9L,kBAJjB,UAME,SAAC,KAAD,CACEloM,KAAK,oBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,yBACH,UAAQ,yCACRqI,QAASojM,EACT/hM,SAAU+hM,EAAmBtqM,QAAU,UAM/C,SAACglM,GAAD,WACE,SAAC/gK,GAAA,EAAD,CAASz0B,MAAM,OAAf,8JAOF,SAAC08L,GAAD,CACEC,cAAe,WACbM,GAAkB,GAClBC,EAAkBja,WAEpB2Z,YACEM,EAAkB/8L,WAAa+8L,EAAkBtZ,WAEnDlkL,aAAcA,O,2GC/Pf,SAAS89L,GAAT,GAIG,Q,IAHRvgL,EAGQ,EAHRA,YACAlB,EAEQ,EAFRA,SACArc,EACQ,EADRA,aAEA,G,GAA4CxF,EAAAA,EAAAA,WAAS,G,EAArD,E,g0BAAO8iM,EAAP,KAAuBC,EAAvB,KACA,GAA0C5vJ,EAAAA,EAAAA,MAAlCj1C,EAAR,EAAQA,OAAQqH,EAAhB,EAAgBA,cAAeG,EAA/B,EAA+BA,OAE7By7L,EAIEjjM,EAJFijM,OACAn9K,EAGE9lB,EAHF8lB,aACA6+K,EAEE3kM,EAFF2kM,kBAHF,EAKI3kM,EADF6vB,IAAO87B,EAJT,EAISA,UAAWo4I,EAJpB,EAIoBA,SAMde,EAAoBzB,GACxB1/K,EACAq+K,GAJAn9K,EAAYziB,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAO6uB,MAAiBjB,EAAY,GAM9D+/K,GAGIG,EAAeD,EAAkB1nM,KAEjC4nM,GAAyBvtL,EAAAA,EAAAA,UAC7B,wBAAMstL,MAAAA,GAAA,UAAAA,EAAczxI,gBAAd,eAAyB2vI,KAAW,KAC1C,CAAC8B,MAAAA,OAAD,EAACA,EAAczxI,SAAU2vI,IA0B3B,OAtBA/gM,EAAAA,EAAAA,YAAU,WACR,IAAMgjB,EAAaL,EAAY,GAC/Bxd,EAAc,eAAgB6d,EAAWjuB,MACxC,CAAC4tB,EAAaxd,IAGjB68L,GAAsBc,EAAwBr5I,EAAW,iBACzDu4I,GAAsBa,MAAAA,OAAD,EAACA,EAAcpC,QAASM,EAAQ,UACrDiB,GAAsBa,MAAAA,OAAD,EAACA,EAAclC,UAAWkB,EAAU,gBACzDG,GACEa,MAAAA,OADmB,EACnBA,EAAcrC,mBACdiC,EACA,sBAIFziM,EAAAA,EAAAA,YAAU,WACJ8iM,EAAuB5sM,OAAS,GAAK6qM,GACvC57L,EAAc,gBAAiB29L,EAAuB,GAAG1oM,SAE1D,CAAC2mM,EAAQ+B,EAAwB39L,KAGlC,iCACE,SAACo9L,GAAD,KACA,SAACnH,GAAD,CACE39L,QAAQ,sCACRiL,YAAY,0BAEd,SAACw5L,GAAD,CAAkBv/K,YAAaA,IAC9BigL,EAAkB5nF,UACjB,UAAC7gF,GAAA,EAAD,CAASz0B,MAAM,SAAf,2BACiBsc,GAAAA,GAAeP,GADhC,iBAEE,SAAC1f,GAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAI6uB,GACdjf,MAAM,iBAHR,4BAFF,uCAYAi+L,EAAkB/8L,WAAa+8L,EAAkBtZ,cACjD,SAAC5uJ,GAAA,EAAD,IAGDmoK,IACC,iCACE,SAACx6L,EAAA,EAAD,CACEhL,MAAM,SACNI,QAAQ,2CACRa,QAAQ,cACRgH,OAAQA,EAAOy7L,OAJjB,UAME,SAAC,KAAD,CACExmM,KAAK,SACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,aACH,UAAQ,8BACRqI,QAASylM,EAAapC,aAG1B,SAACp4L,EAAA,EAAD,CACEhL,MAAM,YACNI,QAAQ,4CACRa,QAAQ,gBACRgH,OAAM,UAAEA,EAAOqoB,WAAT,aAAE,EAAYk0K,SAJtB,UAME,SAAC,KAAD,CACEtnM,KAAK,eACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,gBACH,UAAQ,gCACRqI,QAASylM,EAAalC,eAG1B,SAACt4L,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,8CACRa,QAAQ,iBACRgH,OAAQA,EAAO29L,UAJjB,UAME,SAAC,KAAD,CACE1oM,KAAK,YACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,gCACRgT,IAAK,EACLqlB,IAAK,IACL9jC,GAAG,iBACH2T,YAAY,QAGfq4L,GAAU+B,EAAuB5sM,OAAS,IACzC,SAACmS,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,wCACRa,QAAQ,iBACRgH,OAAM,UAAEA,EAAOqoB,WAAT,aAAE,EAAY87B,UAJtB,UAME,SAAC,KAAD,CACElvD,KAAK,gBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,iBACH,UAAQ,iCACR0J,SAA4C,IAAlCqkM,EAAuB5sM,OACjCkH,QAAS0lM,OAIf,SAACz6L,EAAA,EAAD,CACEhL,MAAM,qBACNI,QAAQ,4CACRa,QAAQ,yBACRgH,OAAQA,EAAOm9L,kBAJjB,UAME,SAAC,KAAD,CACEloM,KAAK,oBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,yBACH,UAAQ,yCACRqI,QAASylM,EAAarC,2BAM9B,SAACtF,GAAD,WACE,SAAC/gK,GAAA,EAAD,CAASz0B,MAAM,OAAf,8JAOF,SAAC08L,GAAD,CACEC,cAAe,WACbM,GAAkB,GAClBC,EAAkBja,WAEpB2Z,YACEM,EAAkB/8L,WAAa+8L,EAAkBtZ,WAEnDlkL,aAAcA,O,2GC9Kf,SAAS+9L,GAAT,GAIG,sB,IAHRxgL,EAGQ,EAHRA,YACAlB,EAEQ,EAFRA,SACArc,EACQ,EADRA,aAEA,GAA0C2tC,EAAAA,EAAAA,MAAlCj1C,EAAR,EAAQA,OAAQwH,EAAhB,EAAgBA,OAAQH,EAAxB,EAAwBA,cAEtB47L,EAUEjjM,EAVFijM,OACAn9K,EASE9lB,EATF8lB,aACA6+K,EAQE3kM,EARF2kM,kBAHF,EAWI3kM,EAPFmpB,MACE4mG,EALJ,EAKIA,cACAu1E,EANJ,EAMIA,KACAC,EAPJ,EAOIA,kBACAC,EARJ,EAQIA,mBACAzB,EATJ,EASIA,SAGJ,G,GAA4CjiM,EAAAA,EAAAA,WAAS,G,EAArD,E,g0BAAO8iM,EAAP,KAAuBC,EAAvB,KAKMC,EAAoBzB,GACxB1/K,EACAu+K,GAJAr9K,EAAYziB,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAO6uB,MAAiBjB,EAAY,GAM9D+/K,GAIIa,GAAoBhuL,EAAAA,EAAAA,UAAQ,WAAM,MACS,EAA/C,iBAAIqtL,EAAkB1nM,YAAtB,OAAI,EAAwBylM,UAAUI,KAElC,UAAA6B,EAAkB1nM,YAAlB,eAAwBylM,UAAUI,GAAQnsM,KAAI,SAAC06J,GAAD,MAAS,CACrDjyJ,MAAOiyJ,EAAG/0J,KACVH,MAAOk1J,EAAGl1J,YAIT,KACN,CAAC2mM,EAAD,UAAS6B,EAAkB1nM,YAA3B,aAAS,EAAwBylM,YAE9B6C,GAA0BjuL,EAAAA,EAAAA,UAAQ,WACxB,YAAd,OAAIssL,IAEA,UAAAe,EAAkB1nM,YAAlB,mBAAwBylM,UAAUI,UAAlC,mBACI7gM,MAAK,SAACovJ,GAAD,OAAQA,EAAGl1J,QAAUynM,YAD9B,mBAEI4B,aAFJ,eAEW7uM,KAAI,SAACM,GAAD,MAAQ,CAAEkF,MAAOlF,EAAGmI,MAAO,QAAF,OAAUnI,SAG/C,KACN,CAAC2sM,EAAUd,EAAX,UAAmB6B,EAAkB1nM,YAArC,aAAmB,EAAwBylM,YAExC+C,GAAQnuL,EAAAA,EAAAA,UAAQ,WAAM,MACpBouL,EACJN,GAAqBA,EAAkBntM,OAAS,SAAW,QAC7D,OACE,UAAA0sM,EAAkB1nM,YAAlB,eAAwBwoM,MAAM9uM,KAAI,SAACwuM,GACjC,MAAa,SAATA,EACK,CACL/lM,MAAO,GAAF,OAAKsmM,EAAL,oBACLvpM,MAAOgpM,GAGJ,CACL/lM,MAAO,eACPjD,MAAOgpM,QAEL,KAEP,WAACR,EAAkB1nM,YAAnB,aAAC,EAAwBwoM,MAAOL,IACnC,EACET,EAAkB1nM,MAAQ,CACxBulM,QAAS,GACTD,mBAAoB,GACpB5yE,eAAgB,IAJZ6yE,EAAR,EAAQA,QAASD,EAAjB,EAAiBA,mBAAoB5yE,EAArC,EAAqCA,eAuBrC,OAfAo0E,GACEp0E,EACAC,EACA,sBACA,kBAEFm0E,GAAsB0B,EAAON,EAAM,cACnCpB,GAAsBvB,EAASM,EAAQ,UACvCiB,GACExB,EACAiC,EACA,qBAEFT,GAAsBuB,EAAmB1B,EAAU,mBAGjD,iCACE,SAACU,GAAD,KACA,SAACnH,GAAD,CACE39L,QAAQ,sCACRiL,YAAY,0BAEd,SAACw5L,GAAD,CAAkBv/K,YAAaA,IAE9BigL,EAAkB5nF,UACjB,UAAC7gF,GAAA,EAAD,CAASz0B,MAAM,SAAf,2BACiBsc,GAAAA,GAAeP,GADhC,iBAEE,SAAC1f,GAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAI6uB,GACdjf,MAAM,iBAHR,4BAFF,sCAYDi+L,EAAkB/8L,YAAa,SAAC60B,GAAA,EAAD,IAE/BkoK,EAAkB1nM,OAChB0nM,EAAkB5nF,SACnBglF,GAAgB4C,EAAkB1nM,QAChC,iCACE,SAACmN,EAAA,EAAD,CACEhL,MAAM,SACNI,QAAQ,2CACRa,QAAQ,cACRgH,OAAQA,EAAOy7L,OAJjB,UAME,SAAC,KAAD,CACExmM,KAAK,SACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,cACH,UAAQ,8BACR0J,SAAUgiM,EAAQvqM,QAAU,EAC5BkH,QAASqjM,OAGb,SAACp4L,EAAA,EAAD,CACEhL,MAAM,iBACNI,QAAQ,kCACRa,QAAQ,qBACRqzB,QAAQ,QAJV,UAME,iBAAKj6B,UAAU,YAAf,WACE,mBACEA,UAAU,gCACV00B,QAAQ,cAFV,WAIE,SAAC,KAAD,CACE5rB,KAAK,QACLjG,KAAK,2BACLxF,GAAG,cACH2C,UAAU,mBACV0C,MAAM,YAER,iBAAM1C,UAAU,2BAAhB,gDAIF,mBACEA,UAAU,sCACV00B,QAAQ,aAFV,WAIE,SAAC,KAAD,CACE5rB,KAAK,QACLjG,KAAK,2BACLxF,GAAG,aACH2C,UAAU,mBACV0C,MAAM,WAER,iBAAM1C,UAAU,2BAAhB,8CAOkB,WAAvB4rM,IACC,SAACj7L,EAAA,EAAD,CACEhL,MAAM,GACNiB,QAAQ,qBACRqzB,QAAQ,QACRrsB,OACGuoH,EAEG,GADA,6DANR,UAUE,SAAC,KAAD,CACEtzH,KAAK,sBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,qBACH,UAAQ,+BACR0J,SAAUmvH,EAAe13H,QAAU,EACnCkH,QAASwwH,MAKS,UAAvB01E,IACC,SAACj7L,EAAA,EAAD,CACEhL,MAAM,GACNiB,QAAQ,yBACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAc6mG,kBACtBn8F,QAAQ,QAJV,UAME,SAAC,KAAD,CACEp3B,KAAK,0BACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,yBACH2T,YAAY,wBACZ,UAAQ,wCAId,SAACL,EAAA,EAAD,CACEhL,MAAM,iBACNI,QAAQ,8CACRa,QAAQ,YACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAc28K,SAJxB,UAME,SAAC,KAAD,CACErpM,KAAK,iBACLkqB,GAAIC,EAAAA,EACJ3vB,GAAG,gBACH,UAAQ,+BACR2T,YAAY,kBAGhB,SAACL,EAAA,EAAD,CACEhL,MAAM,YACNI,QAAQ,wIACRa,QAAQ,gBACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAc46K,SAJxB,UAME,SAAC,KAAD,CACEtnM,KAAK,iBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,gBACH,UAAQ,gCACRqI,QAASmmM,OAGb,UAACppK,GAAA,EAAD,CAASz0B,MAAM,OAAf,wBAEE,cACE8c,KAAK,mFACLzsB,OAAO,SACP0sB,IAAI,sBACJ/qB,UAAU,OAJZ,iCAFF,iEAYA,SAAC2Q,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,0IACRa,QAAQ,iBACRgH,OAAQA,EAAO29L,UAJjB,UAME,SAAC,KAAD,CACE1oM,KAAK,YACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,gCACRgT,IAAK,EACLqlB,IAAK,IACL9jC,GAAG,iBACH2T,YAAY,SAIhB,UAACL,EAAA,EAAD,CACEhL,MAAM,qBACNI,QAAQ,+KACRa,QAAQ,+BACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAco8K,kBAJxB,UAMsC,IAAnCG,EAAwBttM,SACvB,SAAC,KAAD,CACEqE,KAAK,iCACLkqB,GAAIo/K,GAAAA,EACJ9uM,GAAG,sCACH,UAAQ,gDACR64D,YAAU,EACVllD,YAAY,iBACZtL,QAAS,CAAC,CAAEC,MAAO,iBAAkBjD,MAAO,OAG/CopM,EAAwBttM,OAAS,IAChC,SAAC,KAAD,CACEqE,KAAK,oBACLkqB,GAAIo/K,GAAAA,EACJl7L,SAAO,EACPK,mBAAmB,EACnB5O,MACEipM,EACIA,EAAkBnjM,MAAK,SAAChL,GAAD,OACrBsuM,MAAAA,OADqB,EACrBA,EAAyB5nM,SAAS,CAChCxB,MAAOlF,EACPmI,MAAOnI,OAGX,GAEN2I,SAAU,SAACT,GAAD,OACR+H,EACE,0BACA/H,EAAQxI,KAAI,SAACM,GAAD,OAAOA,EAAEkF,WAGzBgD,QAASomM,EACTzuM,GAAG,+BACH,UAAQ,+CAKd,SAACsT,EAAA,EAAD,CACEhL,MAAM,0BACNI,QAAQ,gLACRa,QAAQ,YACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAcm8K,KAJxB,UAME,SAAC,KAAD,CACE7oM,KAAK,aACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,YACH,UAAQ,4BACR0J,SAAUilM,EAAMxtM,QAAU,EAC1BkH,QAASsmM,OAIb,SAACr7L,EAAA,EAAD,CACEhL,MAAM,kBACNI,QAAQ,6KACRa,QAAQ,iBACRgH,OAAM,UAAEA,EAAO2hB,aAAT,aAAE,EAAc68K,UAJxB,UAME,SAAC,KAAD,CACEvpM,KAAK,kBACLkqB,GAAIC,EAAAA,EACJ,UAAQ,2BACR3vB,GAAG,iBACH2T,YAAY,qBAGhB,SAACL,EAAA,EAAD,CACEhL,MAAM,qBACNI,QAAQ,4CACRa,QAAQ,yBACRgH,OAAQA,EAAOm9L,kBAJjB,UAME,SAAC,KAAD,CACEloM,KAAK,oBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,yBACH,UAAQ,yCACR0J,SAAU+hM,EAAmBtqM,QAAU,EACvCkH,QAASojM,UAMnB,SAACtF,GAAD,WACE,SAAC/gK,GAAA,EAAD,CAASz0B,MAAM,OAAf,8JAOF,SAAC08L,GAAD,CACEC,cAAe,WACbM,GAAkB,GAClBC,EAAkBja,WAEpB2Z,YACEM,EAAkB/8L,WAAa+8L,EAAkBtZ,WAEnDlkL,aAAcA,O,2GClYf,SAAS2+L,GAAT,GAIG,U,IAHRphL,EAGQ,EAHRA,YACAlB,EAEQ,EAFRA,SACArc,EACQ,EADRA,aAEA,GAA2B2tC,EAAAA,EAAAA,MAAnBj1C,EAAR,EAAQA,OAAQwH,EAAhB,EAAgBA,OAChB,G,GAA4C1F,EAAAA,EAAAA,WAAS,G,EAArD,E,g0BAAO8iM,EAAP,KAAuBC,EAAvB,KAGE/+K,EAIE9lB,EAJF8lB,aACAm9K,EAGEjjM,EAHFijM,OACA0B,EAEE3kM,EAFF2kM,kBAHF,EAKI3kM,EADFkpB,OAAUg9K,EAJZ,EAIYA,QAASC,EAJrB,EAIqBA,aAMfrB,EAAoBzB,GACxB1/K,EACAy+K,GAJAv9K,EAAYziB,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAO6uB,MAAiBjB,EAAY,GAM9D+/K,GAGIG,EAAeD,EAAkB1nM,KAEjCgpM,GAAwB3uL,EAAAA,EAAAA,UAAQ,WACpC,OAAIstL,EA4LR,SACEjC,EACAoD,EACAjD,GAEA,OAAIiD,GAAWjD,GAAUH,EAAcG,IAEnCH,EAAcG,GACXh4L,QAAO,SAAC/S,GAAD,OAAOA,EAAEmuM,mBAAmBvoM,SAASooM,MAC5CpvM,KAAI,SAACoB,GAAD,MAAQ,CACXqH,MAAOrH,EAAEuE,KACTH,MAAOpE,EAAEoE,WAIV,GA1MIgqM,CAAqBvB,EAAajC,cAAeoD,EAASjD,GAE5D,KACN,CAACA,EAAQiD,EAASnB,IAEfrC,GAAqBjrL,EAAAA,EAAAA,UACzB,kBAAMstL,MAAAA,OAAA,EAAAA,EAAcrC,qBAAsB,KAC1C,CAACqC,MAAAA,OAAD,EAACA,EAAcrC,qBAEXC,GAAUlrL,EAAAA,EAAAA,UACd,kBAAMstL,MAAAA,OAAA,EAAAA,EAAcpC,UAAW,KAC/B,CAACoC,MAAAA,OAAD,EAACA,EAAcpC,UAEXI,GAAWtrL,EAAAA,EAAAA,UAAQ,WACvB,OAAIstL,GAAgB3C,GAAc2C,KACzBA,MAAAA,OAAA,EAAAA,EAAchC,WAEhB,KACN,CAACgC,IA0BJ,OAdAb,IAV0BzsL,EAAAA,EAAAA,UACxB,kBACEoN,EAAY/tB,KAAI,SAAC2tB,GAAD,MAAQ,CACtBnoB,MAAOmoB,EAAExtB,GACTsI,MAAOklB,EAAEhoB,WAEb,CAACooB,IAIsCiB,EAAc,gBACvDo+K,GAAsBvB,EAASM,EAAQ,UACvCiB,GAAsBnB,EAAUmD,EAAS,kBACzChC,GACEkC,EACAD,EACA,uBAEFjC,GACExB,EACAiC,EACA,sBAIA,iCACE,SAACF,GAAD,KACA,SAACnH,GAAD,CACE39L,QAAQ,sCACRiL,YAAY,0BAEd,SAACw5L,GAAD,CAAkBv/K,YAAaA,IAE9BigL,EAAkB5nF,UACjB,UAAC7gF,GAAA,EAAD,CAASz0B,MAAM,SAAf,2BACiBsc,GAAAA,GAAeP,GADhC,iBAEE,SAAC1f,GAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAI6uB,GACdjf,MAAM,iBAHR,4BAFF,sCAYDi+L,EAAkB/8L,YAAa,SAAC60B,GAAA,EAAD,IAE/BmoK,IACC,iCACE,SAACx6L,EAAA,EAAD,CACEhL,MAAM,SACNI,QAAQ,2CACRa,QAAQ,cACRgH,OAAQA,EAAOy7L,OAJjB,UAME,SAAC,KAAD,CACExmM,KAAK,SACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,aACH,UAAQ,8BACRqI,QAASqjM,OAGb,SAACp4L,EAAA,EAAD,CACEhL,MAAM,WACNI,QAAQ,kCACRa,QAAQ,eACRgH,OAAM,UAAEA,EAAO0hB,cAAT,aAAE,EAAeg9K,QAJzB,UAME,SAAC,KAAD,CACEzpM,KAAK,iBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,eACH,UAAQ,yBACRqI,QAASylM,EAAahC,UAAY,OAGrCE,IACC,SAAC14L,EAAA,EAAD,CACEhL,MAAM,gBACNI,QAAQ,qDACRa,QAAQ,oBACRgH,OAAM,UAAEA,EAAO0hB,cAAT,aAAE,EAAei9K,aAJzB,UAME,SAAC,KAAD,CACE1pM,KAAK,sBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,oBACH,UAAQ,oCACRqI,QAAS8mM,OAKf,SAAC77L,EAAA,EAAD,CACEhL,MAAM,uBACNI,QAAQ,mEACRa,QAAQ,2BACRgH,OAAM,UAAEA,EAAO0hB,cAAT,aAAE,EAAeq9K,eAJzB,UAME,SAAC,KAAD,CACE9pM,KAAK,wBACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,qCACRu4B,KAAK,IACLvlB,IAAK,EACLqlB,IAAK,KACL9jC,GAAG,2BAGP,SAACsT,EAAA,EAAD,CACEhL,MAAM,aACNI,QAAQ,+CACRa,QAAQ,iBACRgH,OAAQA,EAAO29L,UAJjB,UAME,SAAC,KAAD,CACE1oM,KAAK,YACLkqB,GAAIC,EAAAA,EACJlkB,KAAK,SACL,UAAQ,gCACRgT,IAAI,IACJze,GAAG,iBACH2T,YAAY,SAGhB,SAACL,EAAA,EAAD,CACEhL,MAAM,qBACNI,QAAQ,4CACRa,QAAQ,yBACRgH,OAAQA,EAAOm9L,kBAJjB,UAME,SAAC,KAAD,CACEloM,KAAK,oBACLkqB,GAAIomB,EAAAA,EACJ91C,GAAG,yBACH,UAAQ,yCACRqI,QAASojM,UAMjB,SAACtF,GAAD,WACE,SAAC/gK,GAAA,EAAD,CAASz0B,MAAM,OAAf,8JAOF,SAAC08L,GAAD,CACEC,cAAe,WACbM,GAAkB,GAClBC,EAAkBja,WAEpB2Z,YACEM,EAAkB/8L,WAAa+8L,EAAkBtZ,WAEnDlkL,aAAcA,OC/Nf,SAASk/L,GAAT,GAMG,IALR7iL,EAKQ,EALRA,SACA8iL,EAIQ,EAJRA,2BACA5hL,EAGQ,EAHRA,YAEAvd,EACQ,EADRA,cAqCF,SACEud,EACA9kB,GAEA,IAAQC,GAAWi1C,EAAAA,EAAAA,MAAXj1C,OAEF0mM,EAAqB7hL,EAAYzsB,OACnCysB,EAAYziB,MAAK,SAACqiB,GAAD,OAAOA,EAAExtB,KAAO+I,EAAO8lB,iBAAiBjB,EAAY,GACrE,MAEJ3iB,EAAAA,EAAAA,YAAU,WACRnC,EAAS2mM,KACR,CAAC3mM,EAAU2mM,IA/CdC,CAAuB9hL,EAAa4hL,GAEpC,IAAM/iL,EAgBR,SAAiBC,GACf,OAAQA,GACN,KAAKC,GAAAA,GAAAA,aACH,OAAO8gL,GACT,KAAK9gL,GAAAA,GAAAA,KACL,KAAKA,GAAAA,GAAAA,cACL,KAAKA,GAAAA,GAAAA,OACH,OAAOwhL,GACT,KAAKxhL,GAAAA,GAAAA,MACH,OAAOyhL,GACT,KAAKzhL,GAAAA,GAAAA,IACH,OAAOqiL,GACT,QACE,MAAM,IAAI3uM,MAAJ,mBAAsBqsB,EAAtB,oBA7BGM,CAAQN,GAErB,OAA2B,IAAvBkB,EAAYzsB,OACP,MAIP,SAACsrB,EAAD,CACEC,SAAUA,EACVkB,YAAaA,EACbvd,aAAcA,I,k8BCLpB,IAAMP,GAA4B,CAChCtK,KAAM,GACN0oM,UAAW,EACXR,kBAAmB,GACnB1B,OAAQ,GACRn9K,aAAc,EAEdnf,KAAM,CACJmJ,QAAS,EACTX,OAAQ,IAGV8jB,OAAQ,CACNwjF,IAAK,EACLwtF,IAAK,EACLH,IAAK,IACLn4I,UAAW,GACXo4I,SAAU,IAEZl0K,IAAK,CACH87B,UAAW,GACXo4I,SAAU,IAEZ56K,MAAO,CACL4mG,cAAe,GACfC,kBAAmB,GACnBs1E,KAAM,OACNQ,SAAU,GACVE,UAAW,GACXT,kBAAmB,GACnBC,mBAAoB,SACpBzB,SAAU,IAEZ76K,OAAQ,CACNg9K,QAAS,GACTC,aAAc,GACdI,eAAgB,KAIb,SAASK,GAAT,GAAyC,IXrBxCz6K,EWqBqB2xK,EAAmB,EAAnBA,SACrB97L,GAAgBC,EAAAA,GAAAA,MAChB4kM,GXvBA16K,GAAS7G,EAAAA,GAAAA,mBACR9e,EAAAA,GAAAA,cACL,mBD1CG,SAAP,qCCgDUsgM,CANN,EACErtL,QADF,EAEEkK,YAKF,CACE7c,UAAW,SAAC0e,EAAD,GAAqB,IAAf7B,EAAe,EAAfA,SAGf,OAFAxb,EAAAA,EAAAA,IAAc,UAAW,qCACzBgkB,EAAO46K,cAAc,CAAC,QAASpjL,EAAU,SAClCwI,EAAO1G,kBAAkB,CAAC,kBAEnC9e,KAAM,CACJC,MAAO,CACLC,MAAO,UACPjB,QAAS,yCWOjB,MAAgC9D,EAAAA,EAAAA,UAAuB8hB,GAAAA,GAAAA,MAAvD,GAAOD,EAAP,KAAiBqjL,EAAjB,KACA,MAAoCllM,EAAAA,EAAAA,UAA4B,MAAhE,GAAOojB,EAAP,KAAmB+hL,EAAnB,KAEMC,GAAmB1iL,EAAAA,GAAAA,MAEnBsgL,EAAoBzB,GACxB1/K,EACAwjL,GACAjiL,GAGIL,EAAcqiL,EAAiB9pM,KAE/BgqM,GAAsB3vL,EAAAA,EAAAA,UAC1B,kBAAMoN,MAAAA,OAAA,EAAAA,EAAa5Z,QAAO,SAACwZ,GAAD,OAAOA,EAAEd,WAAaA,OAAa,KAC7D,CAACkB,EAAalB,IAGV0jL,EAAmBD,EAAoBhvM,OAAS,EAEtD,OACE,iCACE,SAAC,KAAD,CACE2O,cAAeA,GACfG,SA0CN,SACElH,EADF,GAWE,MAREqH,EAQF,EAREA,cASF,UAAIrF,EAAc5E,YAAlB,OAAI,EAAoBF,iBdrJrB,SACL8C,EACA2jB,GAOA,QALAxmB,EAAAA,GAAAA,IAAW,8BAA+B,CACxCM,SAAU,YACVF,SAAU,CAAEmF,KAAM,QAAS4Q,SAAU,gBAG/BqQ,GACN,KAAKC,GAAAA,GAAAA,cAiCT,SAAmC5jB,IACjC7C,EAAAA,GAAAA,IAAW,yBAA0B,CACnCM,SAAU,aACVF,SAAU,CACRomB,SAAUC,GAAAA,GAAAA,aACVq/K,OAAQjjM,EAAOijM,OACfxsF,IAAKz2G,EAAOizB,OAAOwjF,IACnBwtF,IAAKjkM,EAAOizB,OAAOgxK,IACnBH,IAAK9jM,EAAOizB,OAAO6wK,IACnB,YAAa9jM,EAAOizB,OAAO8wK,SAC3B,aAAc/jM,EAAOmlM,aA1CrBmC,CAA0BtnM,GAC1B,MACF,KAAK4jB,GAAAA,GAAAA,KACL,KAAKA,GAAAA,GAAAA,OACL,KAAKA,GAAAA,GAAAA,eA2CT,SAA2BD,EAAwB3jB,IACjD7C,EAAAA,GAAAA,IAAW,yBAA0B,CACnCM,SAAU,aACVF,SAAU,CACRomB,SAAAA,EACAs/K,OAAQjjM,EAAOijM,OACf,YAAajjM,EAAO6vB,IAAIk0K,SACxB,aAAc/jM,EAAOmlM,aAjDrBoC,CAAkB5jL,EAAU3jB,GAC5B,MACF,KAAK4jB,GAAAA,GAAAA,OAWT,SAA6B5jB,IAC3B7C,EAAAA,GAAAA,IAAW,yBAA0B,CACnCM,SAAU,aACVF,SAAU,CACRomB,SAAUC,GAAAA,GAAAA,MACVq/K,OAAQjjM,EAAOijM,OACf,qBAAsBjjM,EAAOmpB,MAAMo8K,kBACnCiC,KAAMxnM,EAAOmpB,MAAMm8K,KACnB,aAActlM,EAAOmlM,UACrB,YAAanlM,EAAOmpB,MAAM46K,YAnB1B0D,CAAoBznM,GACpB,MACF,KAAK4jB,GAAAA,GAAAA,KAiDT,SAA8B5jB,IAC5B7C,EAAAA,GAAAA,IAAW,yBAA0B,CACnCM,SAAU,aACVF,SAAU,CACRomB,SAAUC,GAAAA,GAAAA,IACVq/K,OAAQjjM,EAAOijM,OACf,YAAajjM,EAAOkpB,OAAOi9K,aAC3B,aAAcnmM,EAAOmlM,aAvDrBuC,CAAqB1nM,IcgIrB2nM,CAA2B3nM,EAAQ2jB,GAGrC,IAEMlK,EbpFH,SAAyBkK,GAC9B,OAAQA,GACN,KAAKC,GAAAA,GAAAA,aACH,OAaJ,YAMwC,EALtCuF,MAKsC,EAJtC0G,IAIsC,EAHtC3G,OAGsC,QAFtC+J,OAAUwjF,EAE4B,EAF5BA,IAAKwtF,EAEuB,EAFvBA,IAAQhxK,EAEe,SADnCjzB,EACmC,SACtC,MAAwB,WAApBizB,EAAO8wK,SACT,OAASttF,IAAAA,EAAKwtF,IAAAA,GAAQhxK,GAAWjzB,GAGnC,SAAYizB,GAAWjzB,IAvBvB,KAAK4jB,GAAAA,GAAAA,KACL,KAAKA,GAAAA,GAAAA,OACL,KAAKA,GAAAA,GAAAA,cACH,OAuBJ,YAMwC,EALtCsF,OAKsC,EAJtCC,MAIsC,EAHtC8J,OAGsC,IAFtCpD,EAEsC,EAFtCA,IACG7vB,EACmC,SACtC,gBAAY6vB,GAAQ7vB,IA7BpB,KAAK4jB,GAAAA,GAAAA,MACH,OA+BJ,YAM0C,EALxCsF,OAKwC,IAJxCC,EAIwC,EAJxCA,MAGGnpB,GACqC,EAHxCizB,OAGwC,EAFxCpD,IAEwC,UACpCkgG,EAAgB,GACdC,EAAsB7mG,EAAtB6mG,kBAMN,MALiC,WAA7B7mG,EAAMq8K,qBACRz1E,EAAgB5mG,EAAM4mG,cACtBC,EAAoB,IAGtB,YACK7mG,GACAnpB,GAFL,IAGE+vH,cAAAA,EACAC,kBAAAA,KAhDF,KAAKpsG,GAAAA,GAAAA,IACH,OAmDJ,YAMwC,IALtCsF,EAKsC,EALtCA,OAIGlpB,GACmC,EAJtCmpB,MAIsC,EAHtC8J,OAGsC,EAFtCpD,IAEsC,UACtC,gBACK3G,GACAlpB,IA3DL,QACE,MAAM,IAAI1I,MAAM,yBaqEHswM,CAAgBjkL,EAEfkkL,CAAO7nM,GAEvB6mM,EAA0B3+L,OACxB,CAAEuR,QAAAA,EAASkK,SAAAA,GACX,CACE7c,UAAW,SAACuM,GACVyqL,EAASzqL,EAAa,aACtBhM,EAAc,OAAQ,QAlExB1E,iBAAkB,kBCxFnB,SACLghB,EACAs+K,GAEA,OAAOhhM,EAAAA,EAAAA,IAAO,CACZxE,KAAM+gM,KACH7rH,QACC,eACA,yEAED52C,IAAI,GAAI,uCACR42C,QACC,iCACA,yEAEJhrE,KAAMg3L,KACN9tK,IACEwyK,GAAiB1+K,KAAc49K,GAAalO,KCvBzCpyL,EAAAA,EAAAA,MAAS4B,MAAM,CACpB8oD,WAAW5oD,EAAAA,EAAAA,MACRizC,KAAK,OAAQ,CACZC,GAAIryB,GAAAA,GAAAA,KACJjP,MAAM5R,EAAAA,EAAAA,MAAS5B,SAAS,6BAEzB+0C,QAAQ,IACX6tJ,UAAUhhM,EAAAA,EAAAA,MAAS5B,SAAS,6BDkBtBq+L,EAAAA,EAAAA,MACNr2K,MACEk5K,GAAiB1+K,KAAc49K,GAAaiB,OE7BzCvhM,EAAAA,EAAAA,MAAS4B,MAAM,CACpBktH,eAAehtH,EAAAA,EAAAA,MACZmzC,QAAQ,IACRF,KAAK,qBAAsB,CAC1BC,GAAI,SACJthC,MAAM5R,EAAAA,EAAAA,MAAS5B,SACb,wGAGN6uH,mBAAmBjtH,EAAAA,EAAAA,MAChBmzC,QAAQ,IACRF,KAAK,qBAAsB,CAC1BC,GAAI,QACJthC,MAAM5R,EAAAA,EAAAA,MACH5B,SAAS,oCACTwwE,QACC,gBACA,wFAED52C,IAAI,GAAI,wDAEf+qK,UAAU/iM,EAAAA,EAAAA,MACP5B,SAAS,0BACTwwE,QACC,cACA,kEAED52C,IAAI,GAAI,4CACXgpK,UAAUhhM,EAAAA,EAAAA,MAAS5B,SAAS,0BAC5BokM,mBAAmBriM,EAAAA,EAAAA,MAAQs1C,IAAGz1C,EAAAA,EAAAA,OAAUmzC,QAAQ,IAChDovJ,MAAMviM,EAAAA,EAAAA,MAAS5B,SAAS,qBACxB6kM,WAAWjjM,EAAAA,EAAAA,MACR5B,SAAS,2BACT45B,IAAI,GAAI,6CACR42C,QACC,kBACA,0EAEDA,QACC,oCACA,sEAEJ6zH,oBAAoBziM,EAAAA,EAAAA,MAAS3B,MAAM,CAAC,SAAU,UAAU80C,QAAQ,aFX1DspJ,EAAAA,EAAAA,MACNvsK,OACEovK,GAAiB1+K,KAAc49K,GAAae,IACxCwF,GAAc7F,IACdzC,EAAAA,EAAAA,MACNmF,mBAAmB5hM,EAAAA,EAAAA,MAChBmzC,QAAQ,IACRF,KAAK,CACJC,GAAItyB,IAAaC,GAAAA,GAAAA,IACjBjP,MAAM5R,EAAAA,EAAAA,MAAS5B,SAAS,qCAE5B2kB,cAAc5kB,EAAAA,EAAAA,MAASC,SAAS,6BAChC8hM,QAAQlgM,EAAAA,EAAAA,MAASmzC,QAAQ,IACzBivJ,WAAWjkM,EAAAA,EAAAA,MACR8iM,QAAQ,sCACRtuL,IAAI,EAAG,kDACPqlB,IAAI,IAAM,kDACV55B,SAAS,2BACZ+nB,OACEm5K,GAAiB1+K,KAAc49K,GAAagB,KGlDzCthM,EAAAA,EAAAA,MAAS4B,MAAM,CACpBqjM,SAASnjM,EAAAA,EAAAA,MAAS5B,SAAS,yBAC3BglM,cAAcpjM,EAAAA,EAAAA,MAAS5B,SAAS,8BAChColM,gBAAgBrlM,EAAAA,EAAAA,MACb8iM,QAAQ,4CACRtuL,IAAI,EAAG,4DACPqlB,IAAI,MAAO,6DACX55B,cH6CGq+L,EAAAA,EAAAA,QD6CA78L,CAAiBghB,EAAUmhL,EAAkB1nM,OAE/C+J,iBAAe,EACfof,oBAAkB,EAPpB,UASE,UAAC,KAAD,CAAM3sB,UAAU,kBAAhB,WACE,SAACmoM,GAAD,CAAuBp+K,SAAUA,EAAU5jB,SAAUinM,IAEpDE,EAAiBn/L,WAChB,SAAC60B,GAAA,EAAD,KAEA,SAAC4pK,GAAD,CACE7iL,SAAUA,EACV8iL,2BAA4BQ,EAC5BpiL,YAAauiL,EACb9/L,aAAcu/L,EAA0B9+L,kBAM9Cs/L,IACA,iCACE,UAAChrK,GAAA,EAAD,CAASz0B,MAAM,SAAf,kCACwBsc,GAAAA,GAAeP,GADvC,cAC6D,IAC1DO,GAAAA,GAAeP,GAFlB,iCAGE,SAAC1f,GAAA,EAAD,CACEC,GAAG,2BACH2C,MAAM,iBACNjN,UAAU,YAHZ,iCAQF,SAACypB,GAAA,EAAD,CAAiBC,iBAAkBK,UAuC7C,SAASwjL,GAAW7qM,GAClB,OAAO,GAF2B+R,EAAAA,EAAAA,GAAcu4L,GAAY,CAAC,a,0qDKpKxD,IAAMmB,GAAex5L,IAAAA,OAClB,mCAAoC,IAC3CC,UAAU,iCAAiClN,EAAAA,EAAAA,ICgBvC,WACL,IAC6B0mM,GACzB/wL,EAAAA,GAAAA,4BADF9S,OAAU8jM,gBAGZ,MAA4CnmM,EAAAA,EAAAA,WAA0B,WACpE,IAAMmmM,EAAkBtqM,SAASqqM,EAAsB,IAEvD,OAAKC,GAAmBrqM,OAAOC,MAAMoqM,GAC5B,GAGF,CAACA,MAPV,GAAOtY,EAAP,KAAuBuY,EAAvB,KAUMC,EAuFR,WACE,IACYx1L,GACRsE,EAAAA,GAAAA,4BADF9S,OAAUwO,QAEN6Q,GAASC,EAAAA,GAAAA,aAEf,OAAK9Q,EAMEgmB,MAAMC,QAAQjmB,GAAWA,EAAU,CAACA,KALzC6J,EAAAA,EAAAA,IAAY,gCACZgH,EAAOuB,aAAaC,GAAG,8BAChB,IAhGQojL,GACTjrM,GAAeN,EAAAA,GAAAA,MAAfM,WACFqmB,GAASC,EAAAA,GAAAA,aACTi5K,EAAQ,IACZyL,EAASrxM,KAAI,SAACG,GAAD,OAAQ+kM,GAAiB55L,MAAK,SAACk6L,GAAD,OAAWA,EAAMrlM,KAAOA,SAErE,EAkJF,WACE,UAAuC6K,EAAAA,EAAAA,UAAyB,CAC9DumM,YAAa,EACbC,UAAW,EACXC,gBAAiB,EACjBC,oBAAqB,EACrBC,UAAW,EACXC,OAAQ,EACRC,cAAe,EACfC,eAAgB,EAChBC,gBAAiB,IATnB,GAAOC,EAAP,KAAkBC,EAAlB,KAYA,MAAO,CAAED,UAAAA,EAAWE,aAEpB,SAAsB1wM,GACpBywM,GAAkB,SAACE,GAAD,UAAC,MACdA,GADa,SAEf3wM,EAAM2wM,EAAU3wM,GAAO,SApKQ4wM,GAA5BJ,EAAR,EAAQA,UAAWE,EAAnB,EAAmBA,aAEnB,EA8FF,SACEtM,EACAyM,GAEA,UAAgDrnM,EAAAA,EAAAA,UAAS,GAAzD,GAAOsnM,EAAP,KAAyBC,EAAzB,KACMC,EAAmC,IAArBF,EACdG,EAAaH,IAAqB1M,EAAMtkM,OAAS,EACjDqkM,EAAcC,EAAM0M,GAE1B,MAAO,CACL3M,YAAAA,EACA+M,YAQF,WACOD,EAtDP,WAUE,GATApsM,EAAW,yCAA0C,CACnDM,SAAU,YACVF,SAAU9F,OAAOwG,YACfxG,OAAOyG,QAAQ4qM,GAAWhyM,KAAI,0BAAEwB,EAAF,KAAOgE,EAAP,WAAkB,CAC9C,IAAYhE,GACZgE,SAIyC,iBAA3C+a,aAAaK,QAAQ,kBAGvB,OAFAL,aAAaypK,WAAW,uBACxBt9J,EAAOuB,aAAaC,GAAG,uBAGzBxB,EAAOuB,aAAaC,GAAG,kBA4CvBmkL,GAJEE,EAAoBD,EAAmB,IATzCK,gBAgBF,WACEJ,EAAoBD,EAAmB,IAhBvCE,YAAAA,EACAC,WAAAA,EACAH,iBAAAA,EACAh9K,UAgBF,SAAsBn1B,GACpB,OAAQA,GACN,IAAK,SACH,OAAOgpM,GACT,IAAK,MACH,OAAOK,GACT,IAAK,aACH,OAAOa,GACT,IAAK,OACH,OAAOyF,GACT,IAAK,QACH,OAAOxF,GACT,QACE,MAAM,IAAI9pM,MAAJ,mCAAsCL,KA7BrCyyM,CAAajN,EAAYxlM,KAtGlC0yM,CAAWjN,GAPbD,EADF,EACEA,YACA+M,EAFF,EAEEA,YACAC,EAHF,EAGEA,gBACAL,EAJF,EAIEA,iBACAh9K,EALF,EAKEA,UACAk9K,EANF,EAMEA,YACAC,EAPF,EAOEA,WAGF,OACE,iCACE,SAAC3vK,GAAA,EAAD,CACE/yB,MAAM,cACN4xB,YAAa,CAAC,CAAEl5B,MAAO,0BAGzB,iBAAK3F,UCnE+J,mHDmEpK,WACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,YAAYpD,MAAM,wBACpC,UAACm2B,EAAA,GAAD,YACE,SAACw/J,GAAD,CAASE,MAAOA,EAAOD,YAAa2M,EAAmB,KAEvD,gBAAKxvM,UAAU,QAAf,UACE,UAAC,KAAD,CAAaiN,MAAO41L,EAAYR,UAAhC,WACE,SAAC7vK,EAAD,CAAW0xK,SA2BzB,SACEzqL,EACAy1L,GAEAZ,GAAkB,SAACzoF,GAAD,gB,gDAAcA,I,sSAAd,CAAoBpsG,EAAYnO,K,SAClD8jM,EAAaF,OA9BD,iBACElvM,WAAW6L,EAAAA,EAAAA,GC9EM,uHDgFf,wBAHJ,WAME,UAAC,MAAD,CAAQ9E,SAAU2oM,EAAazhM,QAAS4hM,EAAxC,WACE,SAACt/L,EAAA,EAAD,CAAMF,KAAK,aAAaG,SAAO,IADjC,gBAGA,UAAC,MAAD,CAAQvC,QAAS2hM,EAAjB,UACGD,EAAa,QAAU,QACxB,SAACp/L,EAAA,EAAD,CAAMF,KAAK,cAAcG,SAAO,sBAO5C,0BACE,SAACi3L,GAAD,CAAqB1R,eAAgBA,cDrF4B,KACxEnhL,UACC,mCACAlN,EAAAA,EAAAA,IGGG,WACL,I,IAAM86L,EAAmBN,KAEzB,G,GAA0Bh6L,EAAAA,EAAAA,UAAqC,I,EAA/D,E,g0BAAOw4G,EAAP,KAAcsvF,EAAd,KACQzsM,GAAeN,EAAAA,GAAAA,MAAfM,WACFqmB,GAASC,EAAAA,GAAAA,aAEf,OACE,iCACE,SAACmW,GAAA,EAAD,CACE/yB,MAAM,cACN4xB,YAAa,CAAC,CAAEl5B,MAAO,0BAGzB,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,YAAYpD,MAAM,wBACpC,UAACm2B,EAAA,GAAD,YACE,SAACm/J,GAAD,CACE7/L,MAAOg+G,EACPv6G,SAAU6pM,EACVxN,iBAAkBA,KAEpB,SAAC,MAAD,CACEz7L,SAA2B,IAAjB25G,EAAMliH,OAChByP,QAAS,kBAWvB,WACE,GAAqB,IAAjByyG,EAAMliH,OAAV,CAIA,IAAMskM,EAAQ,IACZpiF,EAAMxjH,KAAI,SAACG,GAAD,OAAQ+kM,GAAiB55L,MAAK,SAACk6L,GAAD,OAAWA,EAAMrlM,KAAOA,SAGlEkG,EAAW,kCAAmC,CAC5CM,SAAU,YACVF,SAAU,CACR8V,YAAaqpL,EAAM5lM,KAAI,SAACmkC,GAAD,OAAUA,EAAKp0B,SAAOf,KAAK,QAItD0d,EAAOuB,aAAaC,GAAG,oC,kWAAvB,EACErS,QAAS2nG,GACL8hF,EAAmB,CAAEhiF,WAAYgiF,GAAqB,MA7BjCyN,IAFjB,yCH3BqB,KAEhCr7L,UAAU,kBAAkBlN,EAAAA,EAAAA,IjELxB,WACL,IAAMwoM,EAAwBxO,KACtBn+L,GAAeN,EAAAA,GAAAA,MAAfM,WACR,OACE,iCACE,SAACy8B,GAAA,EAAD,CACE/yB,MAAM,cACN4xB,YAAa,CAAC,CAAEl5B,MAAO,0BAGzB,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAan2B,MAAM,qBAAqBoD,KAAK,eAC7C,SAAC+yB,EAAA,GAAD,WACE,iBAAKpjC,UAAU,MAAf,WACE,gBAAKA,UAAU,+BAAf,mCAGA,iBAAKA,UAAU,mBAAf,UACoC,YAAjCkwM,EAAsBj5L,SACrB,uEAC8C,IAC3CgrL,GAAaiO,EAAsBpnM,MAFtC,oBAMgC,UAAjConM,EAAsBj5L,SACrB,sFAEE,kBAFF,yFAKE,cAAG6T,KAAK,iDAAR,+DAMJ,mHAMF,iBAAK9qB,UAAU,uBAAf,UACoC,YAAjCkwM,EAAsBj5L,SACrB,SAAC5M,GAAA,EAAD,CAAMC,GAAG,iBAAiBtK,UAAW28B,GAArC,UACE,SAAC,GAAD,CACEtsB,KACE6/L,EAAsBpnM,OAASD,EAAAA,GAAAA,OAC3B,gBACA,sBAENoE,MAAM,cACN0E,YAAY,oEACZ1D,QAAS,WAqB7B1K,EAAW,kCAAmC,CAC5CM,SAAU,YACVF,SAAU,CAAE8V,YAAa,yCAnBb,SAACpP,GAAA,EAAD,CAAMC,GAAG,6BAA6BtK,UAAW28B,GAAjD,UACE,SAAC,GAAD,CACE1vB,MAAM,mBACNoD,KAAK,aACLsB,YAAY,wDiE3DW,KAC1CgS,OAAOA,IAAQ9gB,KAElB,SAAS8gB,GAAOoxC,GACdA,EAAuBC,SAAS,CAC9BnyD,KAAM,mBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAKjBmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,6BACN2C,IAAK,wBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,oCAGfrK,OAAQ,CACN8jM,gBAAiB,KAIrBt5I,EAAuBC,SAAS,CAC9BnyD,KAAM,oCACN2C,IAAK,kBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,kCAGfrK,OAAQ,CACNwO,QAAS,MIzCR,IAAMm8C,GAAcvgD,IAAAA,OACjB,4BAA6B,CAACw5L,KACrCv5L,UAAU,uBAAuBlN,EAAAA,EAAAA,ICX7B,WACL,IAAMU,GAAgBjF,EAAAA,GAAAA,IAAkB,CACtCC,OAAQ,SAACC,GAAD,OAAcA,EAASmkE,gBAAgBC,QAGjD,OACE,iBACEznE,WAAW6L,EAAAA,EAAAA,GAAK,CACd,mBAAoBzD,EAAcyH,WAAazH,EAAc5E,OAFjE,sCDKyD,KAC1DoR,UAAU,yBAAyBlN,EAAAA,EAAAA,IEH/B,WACL,IAAMU,GAAgBjF,EAAAA,GAAAA,IAAkB,CACtCC,OAAQ,SAACC,GAAD,OAAcA,EAASmkE,gBAAgBC,QAE3C0oI,GAA0B7/K,EAAAA,GAAAA,MAEhC,IAAKloB,EAAcyH,UACjB,OAAO,KAET,IAAMugM,EAAsBhoM,EAAc5E,KAEpCq7L,GAAYpkL,EAAAA,EAAAA,IAAcT,EAAAA,GAAAA,2BAEhC,OACE,8BACIo2L,GAkBA,iBAAKpwM,UAAU,kBAAf,WACE,UAAC,MAAD,CACEA,UAAU,yCACViO,QAAS,kBAAMoiM,GAAiB,IAFlC,WAIE,SAAC9/L,EAAA,EAAD,CAAMF,KAAK,MAAMG,SAAO,IAJ1B,yBAOA,SAACzE,GAAA,EAAD,CACEC,QAAQ,qMA1BZ,iBAAKhM,UAAU,kBAAf,WACE,UAAC,MAAD,CACEA,UAAU,wCACViO,QAAS,kBAAMoiM,GAAiB,IAChCtpM,SAAU83L,EAHZ,WAKE,SAACtuL,EAAA,EAAD,CAAMF,KAAK,UAAUG,SAAO,IAL9B,wBAQCquL,EAAY,MACX,SAAC9yL,GAAA,EAAD,CACEC,QAAQ,wRAuBpB,SAASqkM,EAAiBD,GACxBD,EAAwB7hM,OACtB,CACEm5D,KAAM2oI,GAER,CACEljM,UADF,YAEIqB,EAAAA,EAAAA,IACE,UACA,wDFxDqD,KAC9DqG,UAAU,yBAAyBlN,EAAAA,EAAAA,IGb/B,WACL,IAAMU,GAAgBjF,EAAAA,GAAAA,IAAkB,CACtCC,OAAQ,SAACC,GAAD,OAAcA,EAASmkE,gBAAgBC,QAGjD,OACE,iBACEznE,WAAW6L,EAAAA,EAAAA,GAAK,CACd,mBAAoBzD,EAAcyH,WAAazH,EAAc5E,OAFjE,yBHO6D,KAC9DoR,UACC,qBACAlN,EAAAA,EAAAA,IIMG,YAGsB,IAF3B4F,EAE2B,EAF3BA,SACAqV,EAC2B,EAD3BA,QAEM2tL,EAAgB,8BACd9xJ,GAAM+xJ,EAAAA,GAAAA,GAAeD,GAArB9xJ,EAEF50B,GAASC,EAAAA,GAAAA,aACf,MAAsC3hB,EAAAA,EAAAA,UAAS,IAA/C,GAAOyJ,EAAP,KAAoB6+L,EAApB,KACA,MAAkCtoM,EAAAA,EAAAA,UAAS,IAA3C,GAAOuoM,EAAP,KAAkBC,EAAlB,KACA,MAAkCxoM,EAAAA,EAAAA,WAAS,GAA3C,GAAOiG,EAAP,KAAkBwiM,EAAlB,KACA,MAAsCzoM,EAAAA,EAAAA,UAAS,IAA/C,GAAO0oM,EAAP,KAAoBC,EAApB,KAR2B,kDAgB3B,uGACM1iM,EADN,wDAKEwiM,GAAa,GALf,kBAO2BrjM,EAASqE,GAPpC,OAOU8D,EAPV,OAQIo7L,EAAep7L,EAASq7L,WAR5B,kDAUInuL,EAAQ,UAAD,KAAiB,mCAV5B,yBAYIguL,GAAa,GAZjB,8EAhB2B,sBAgC3B,OAtBAroM,EAAAA,EAAAA,YAAU,WACmB,IAAvBqJ,EAAYnT,OACdkyM,EAAalyJ,EAAE,2BACVkyJ,EAAa,MACnB,CAAC/+L,EAAa6sC,KAmBf,SAACpb,EAAA,GAAD,WACE,UAACA,EAAA,GAAD,YACE,iBAAKpjC,UAAU,kBAAf,WACE,SAAC2Q,EAAA,EAAD,CACE/J,QAAQ,QACRjB,MAAO64C,EAAE,eACT5wC,OAAQ6iM,EAHV,UAKE,SAACzjL,EAAAoU,EAAD,CACE/jC,GAAG,QACH8I,SAAU,SAAC1I,GAAD,OAAO+yM,EAAe/yM,EAAEY,OAAOqE,QACzCA,MAAOiP,OAGX,gBAAK3R,UAAU,WAAf,UACE,SAAC,MAAD,CACE+G,WAAY0pM,KAAeG,EAC3B3iM,QAAS,kBAlDM,0CAkDA8iM,IAFjB,SAIGvyJ,EAAE,2BAIRoyJ,IACC,iBAAK5wM,UAAU,OAAf,WACE,SAACkzC,GAAA,EAAD,WACE,SAAC89J,GAAA,EAAD,CAAOp5C,GAAI04C,EAAX,iCAEF,SAAC7tK,GAAA,EAAD,WACE,SAACuuK,GAAA,EAAD,CAAOp5C,GAAI04C,EAAX,6FAKF,SAACt7K,GAAA,EAAD,UAAO47K,KACP,SAAC9sK,GAAA,EAAD,CAAYC,SAAU6sK,EAAtB,UACE,SAACI,GAAA,EAAD,CAAOp5C,GAAI04C,EAAX,kCAEF,mBACA,SAAC,MAAD,CACExnM,KAAK,SACLmF,QAAS,kBAAM2b,EAAOuB,aAAaC,GAAG,sBAFxC,UAIE,SAAC4lL,GAAA,EAAD,CAAOp5C,GAAI04C,EAAX,8BJrFa,CAAC,WAAY,aACpCztM,KKfSm0D,GAAcriD,IAAAA,OAAe,sBAAuB,CAC/DugD,GACAhE,KACCruD,K,m/BCSH,IAQauZ,IAAUC,EAAAA,EAAAA,eAA4B,MAE5C,SAAS40L,KACd,IAAM10L,GAAUC,EAAAA,EAAAA,YAAWJ,IAE3B,IAAKG,EACH,MAAM,IAAI7e,MAAM,2DAGlB,OAAO6e,EAGF,SAAS20L,GAAT,GAAsE,IAqC3E,EAAOC,EAAeC,EAItB,EAAO/Z,EAAQC,EAAW+Z,EAIpBC,EA7C0BjlM,EAA2C,EAA3CA,SAC1ByC,GAoCN,KAA4C0O,EAAAA,EAxD3B,kBA0Df,GAFF,GAAO2zL,EAAP,KAAsBC,EAAtB,KAIA,KAgDF,SACEpqK,GAEA,UAA0B9+B,EAAAA,EAAAA,UAAS8+B,GAAnC,GAAOl4B,EAAP,KAAcyiM,EAAd,KACMlC,GAAYh9J,EAAAA,EAAAA,UAEZm/J,GAAOr/L,EAAAA,EAAAA,cAAY,WAClBk9L,EAAUn0K,UAIfq2K,EAASlC,EAAUn0K,SACnBm0K,EAAUn0K,aAAUtqB,KACnB,CAACy+L,IAEEoC,GAAiBt/L,EAAAA,EAAAA,cACrB,SAACm1B,GACC+nK,EAAUn0K,QAAUpsB,EACpByiM,EAASjqK,KAEX,CAACx4B,IAGH,MAAO,CAACA,EAAO2iM,EAAgBD,GAvEeE,EAwCxCC,OAAc7uM,OAAOi9B,aAIlBoxK,GA5CT,GAAO9Z,EAAP,KAAeC,EAAf,KAA0B+Z,EAA1B,KAIMC,GAAWzzL,EAAAA,EAAAA,UACf,kBACE,MAAW,WACL8zL,KACEta,GACFC,GAAU,GAGZ+Z,MAED,MACL,CAAC/Z,EAAW+Z,EAAkBha,IA2DlC,SAAiCA,IAC/B/uL,EAAAA,EAAAA,YAAU,WAEUqM,IAAAA,QAAgB4vB,UAAUqtK,WAClCC,OAAV,kBACkB,SACd1hH,GAEAA,EAAemnG,UAAUD,QAG5B,CAACA,IAnEJya,CAAwBza,IAExB/uL,EAAAA,EAAAA,YAAU,WACR,IAAIxF,OAAOi9B,YAKX,OADAj9B,OAAOw1I,iBAAiB,SAAUg5D,GAC3B,kBAAMxuM,OAAOy1I,oBAAoB,SAAU+4D,MACjD,CAACA,IAEG,CACLja,OAAAA,EACA9qF,OAGF,WAAiC,IAAjB7pG,EAAiB,wDAAR20L,EACvB+Z,EAAmB1uM,GACnB40L,EAAU50L,MA1EZ,OAAO,UAAC0Z,GAAQQ,SAAT,CAAkBla,MAAOoM,EAAzB,cAAkCzC,EAAlC,OAeF,SAAS0lM,GAAsBvqJ,GACpC,IAAM14C,EAAQ,CACZuoL,QAAQ,GAaV,MAAO,CAAE5lG,cAVT,WACE,OAAO3iF,EAAMuoL,QASSC,UANxB,SAAmBD,GACjB7vI,EAAWnzC,YAAW,WACpBvF,EAAMuoL,OAASA,OAoGrB,SAASsa,KAGP,OAFc7uM,OAAOkvM,WAtJH,I,4yBCTb,SAASC,GAAT,GAKuC,IAJ5CjyM,EAI4C,EAJ5CA,UACAqM,EAG4C,EAH5CA,SACA1G,EAE4C,EAF5CA,MACG+9B,E,kXACyC,OAC5C,OACE,qBACE1jC,WAAW6L,EAAAA,EAAAA,GACT,OACA7L,EACA,4FAEF,aAAY2F,GAER+9B,GARN,aAUGr3B,K,gXCVA,SAAS6lM,GAASppJ,EAAoB4/F,GAC3C,OAdF,SAAwB5/F,GACtB,QACIA,GACiB,WAAnB,GAAOA,IACP,SAAUA,GACV,UAAWA,EASRqpJ,CAAerpJ,QAIY,IAArBA,EAAQ9pD,MAAMsL,GAChB0hC,EAAAA,SAAAA,IAAa8c,EAAQ9pD,MAAMqN,UAAU,SAAC+lM,GAAD,OAC1CF,GAASE,EAAO1pD,MAIpB,CAAQ5/F,EAAQ9pD,MAAMsL,IAAtB,O,gDAA6Bo+I,I,mkBATpBA,E,2zCCEJ,SAAS2pD,GAAT,GAIsB,IAH3BhmM,EAG2B,EAH3BA,SACA68C,EAE2B,EAF3BA,KAE2B,IAD3BopJ,YAAAA,OAC2B,MADb,GACa,EACX7gH,EAAkBw/G,KAA1B5Z,OAOR,EA+BF,SACE5lG,GAGA,IADAi3D,EACA,uDADkB,GAGZ6pD,GADYl1L,EAAAA,GAAAA,4BAAVvO,MACuBjM,MAAQ,GACjC2vM,EAAgB9pD,EAAMh5I,MAAK,SAACgxC,GAAD,OAAU6xJ,EAAiB53K,WAAW+lB,MAEvE,GAAqC7xC,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAYA,KAAO,GAAnE,UAAO2jM,EAAP,KAAkBC,EAAlB,KAIA,MAAO,CAAErb,OAFMsb,IAEEC,WAAAA,GAEjB,SAASA,IACFJ,GACHE,IAIJ,SAASC,IACP,QAAKlhH,MAIDghH,GAIGD,IA7DsBK,CAAUphH,GAL3B5zE,EAAAA,EAAAA,UACZ,8BAAUq0L,GAAShpJ,EAAM,KAAzB,GAAiCopJ,MACjC,CAACA,EAAappJ,KAGRmuI,EAAR,EAAQA,OAAQub,EAAhB,EAAgBA,WAEVE,EAAqBzb,EAAS0b,GAAAA,EAAYC,GAAAA,EAEhD,OACE,iBAAKhzM,UAAU,SAAf,WACE,iBAAKA,UAAU,qDAAf,UACGkpD,EACAuoC,GAAiBzlD,EAAAA,SAAAA,MAAe3/B,GAAY,IAC3C,mBACErM,UAAU,gGACViO,QAaV,SAA0BxQ,GACxBA,EAAE+jC,iBACF/jC,EAAEw1M,kBACFL,KAfQ9pM,KAAK,SACL,aAAW,kBAJb,UAME,SAACgqM,EAAD,CAAoB9yM,UAAU,iBAKnCq3L,IAAU,eAAIr3L,UAAU,QAAd,SAAuBqM,O,8tBC3BjC,SAAS6mM,GAAT,GAQG,IAPR5oM,EAOQ,EAPRA,GACA5E,EAMQ,EANRA,QAMQ,IALR6E,OAAAA,OAKQ,MALC,GAKD,EAJR5E,EAIQ,EAJRA,MACA0K,EAGQ,EAHRA,KAGQ,IAFR8iM,YAAAA,OAEQ,MAFM,GAEN,EADGpiM,EACH,EADR,WAEQsmL,EAAW4Z,KAAX5Z,OACF13J,EA0CR,SACEr1B,EACA8oM,GAIA,IAHA7oM,EAGA,uDAH0C,GAC1C7E,EAEA,uDAF6B,GAC7BytM,EACA,uDADwB,GAExB,GAAiD91L,EAAAA,GAAAA,4BAAzCvO,MAAR,gBAA0C,GAA1C,GAAiBjM,KAAMwwM,OAAvB,MAAmC,GAAnC,EACM1zK,GAAc2zK,EAAAA,GAAAA,eAClBhpM,EACAC,GAAU,GACV6oM,EACA1tM,GAGI1F,EAAYmzM,EAAYzjM,MAAK,SAACgxC,GAAD,OAAU2yJ,EAAUnvM,SAASw8C,MAC5D,GACA/gB,EAAY3/B,UAEhB,gBACK2/B,GADL,IAEE3/B,UAAAA,IA/DkBuzM,CAClBjpM,EACA,gDACAC,EACA7E,EACAytM,GAGF,OACE,eACEroL,KAAM6U,EAAY7U,KAClB7c,QAAS0xB,EAAY1xB,QACrBjO,WAAW6L,EAAAA,EAAAA,GACT8zB,EAAY3/B,UACZ,wGACA,mEACA,iGACA,CACE,4BAA6Bq3L,EAC7B,sBAAuBA,IAG3B,WAAU1xL,EACV,UAASoL,EAdX,YAgBKV,IACD,SAACE,EAAA,EAAD,CAAMF,KAAMA,EAAMG,SAAO,EAACxQ,WAAW6L,EAAAA,EAAAA,GAAK,sBAE3CwrL,IAAU,0BAAO1xL,KAElB,SAAC,KAAD,CACEmD,KAAK,OACLurB,MAAM,QACNuO,OAAO,QACP5iC,UAAU,8DACV6iC,WAAW,cACX2wK,QAASnc,O,qvBC7DV,IAAMoc,GCUN,YAQG,IAPRpnM,EAOQ,EAPRA,SACAgE,EAMQ,EANRA,KACA/F,EAKQ,EALRA,GACAC,EAIQ,EAJRA,OACA5E,EAGQ,EAHRA,MAGQ,IAFR2sM,YAAAA,OAEQ,MAFM,GAEN,EADGvhM,EACH,EADR,WAEM2iM,EJjBD,SAA6BrnM,GAA+B,MACjE,OAAO,UAAA2/B,EAAAA,SAAAA,IAAa3/B,GAAU,SAAC+lM,GAAD,OAAWF,GAASE,EAAO,cAAlD,eAAwDuB,SAAU,GIgBpDC,CAAoBvnM,GACnC68C,GACJ,SAACgqJ,GAAD,CACE7iM,KAAMA,EACN/F,GAAIA,EACJC,OAAQA,EACR5E,MAAOA,EACPwtM,YAAaO,EACb,UAAS3iM,IAIb,OACE,SAACkhM,GAAD,CAAStsM,MAAOA,EAAhB,SACG0G,GACC,SAACgmM,GAAD,CAAMnpJ,KAAMA,EAAMopJ,YAAW,aAAMA,GAAN,GAAsBoB,IAAnD,SACGrnM,IAGH68C,KCrCD,SAAS2qJ,GAAT,GAKsB,IAJ3B5mM,EAI2B,EAJ3BA,MACAZ,EAG2B,EAH3BA,SACAynM,EAE2B,EAF3BA,kBACcC,EACa,EAD3B,cAEA,OACE,4BACE,SAACC,GAAD,CAAqBC,aAAcH,EAAnC,SACG7mM,KAGH,gBACE,aAA6B,iBAAVA,EAAqBA,EAAQ8mM,EAChD/zM,UAAU,OAFZ,UAIE,wBAAKqM,SAUN,SAAS2nM,GAAT,GAG2B,IAFhCC,EAEgC,EAFhCA,aACA5nM,EACgC,EADhCA,SAIA,OAFmB4kM,KAAX5Z,QAEQ4c,GAKd,eAAIj0M,UAAU,kFAAd,SACGqM,IALI,KCtCJ,SAAS6nM,KACd,OACE,UAACL,GAAD,CAAgB5mM,MAAM,eAAtB,WACE,SAAC,GAAD,CACE3C,GAAG,eACH3E,MAAM,eACN0K,KAAMkpH,GAAAA,EACN,UAAQ,kCAEV,SAAC,GAAD,CACEjvH,GAAG,cACH3E,MAAM,cACN0K,KAAM8jM,GAAAA,EACN,UAAQ,iCAEV,SAAC,GAAD,CACE7pM,GAAG,cACH3E,MAAM,cACN0K,KAAM+jM,GAAAA,EACN,UAAQ,iCAEV,SAAC,GAAD,CACE9pM,GAAG,YACH3E,MAAM,YACN0K,KAAMgkM,GAAAA,EACN,UAAQ,iCHlBhBZ,GAAYpB,KAAOA,GACnBoB,GAAYxB,QAAUA,G,IIblB,GAAO1yM,G,wBAEX,SAAS,KAAiS,OAApR,GAAW1B,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAAQ0B,GAAQC,GAAQC,GAEnC,SAAS,KAAiS,OAApR,GAAWtC,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAAO,GAAQ,GAEnB,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,ICNI,GAEJ,SAAS,KAAiS,OAApR,GAAWV,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,I,4HCEA,IAAM+1M,IAEL,SACE77L,EAAAA,GAAAA,QJLa,SAAmBzZ,GACjC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,aACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,smBACHF,KAAM,aACHG,KAAWA,GAAsB,gBAAoB,OAAQ,CAChED,EAAG,0pCACHF,KAAM,iBIRT,MAEEqZ,EAAAA,GAAAA,YFNiB,SAAuBzZ,GACzC,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,aACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,0wEACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEE,EAAG,88GACHF,KAAM,aACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEE,EAAG,ywDACHF,KAAM,iBEXT,MAGEqZ,EAAAA,GAAAA,OHPY,SAAkBzZ,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,aACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,gTACHF,KAAM,wBACH,KAAW,GAAsB,gBAAoB,OAAQ,CAChEE,EAAG,+LACHF,KAAM,aACHa,KAAWA,GAAsB,gBAAoB,OAAQ,CAChEX,EAAG,gVACHF,KAAM,wBACHc,KAAWA,GAAsB,gBAAoB,OAAQ,CAChEZ,EAAG,kZACHF,KAAM,wBACHe,KAAUA,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,iBAAkB,CACvH9C,GAAI,eACJ+C,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CC,UAAW,YACI,gBAAoB,OAAQ,CAC3CC,OAAQ,EACRD,UAAW,aACK,gBAAoB,iBAAkB,CACtDpD,GAAI,eACJ+C,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CG,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,KACE,gBAAoB,OAAQ,CAC3CD,OAAQ,IACRC,YAAa,MACE,gBAAoB,OAAQ,CAC3CD,OAAQ,EACRC,YAAa,KACG,gBAAoB,iBAAkB,CACtDtD,GAAI,eACJ+C,GAAI,MACJC,GAAI,OACJC,GAAI,OACJC,GAAI,OACJC,cAAe,kBACD,gBAAoB,OAAQ,CAC1CC,UAAW,YACI,gBAAoB,OAAQ,CAC3CC,OAAQ,EACRD,UAAW,mBG3Dd,MAIEgY,EAAAA,GAAAA,ODRY,SAAkBzZ,GAC/B,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,aACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ,KAAU,GAAqB,gBAAoB,OAAQ,CACpEM,EAAG,kMACHF,KAAM,iBCLT,I,YCEM,SAASm1M,GAAT,GAIG,IAHRzvM,EAGQ,EAHRA,cACA0vM,EAEQ,EAFRA,aACWzjM,EACH,EADR,WAEA,OACE,SAAC,GAAD,CACEzG,GAAE,UAAKkqM,EAAL,cACFjqM,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMokM,GAAAA,EACN9uM,MAAM,YACN,UAASoL,ICZR,SAAS2jM,GAAT,GAAgD,IAAxB5vM,EAAwB,EAAxBA,cAC7B,OACE,iCACE,SAACyvM,GAAD,CACEzvM,cAAeA,EACf0vM,aAAa,QACb,UAAQ,4BAEV,SAAC,GAAD,CACElqM,GAAG,2BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMkpH,GAAAA,EACN5zH,MAAM,sBACN,UAAQ,uC,gHCZT,SAASgvM,GAAT,GAIG,IAHR7vM,EAGQ,EAHRA,cACA0vM,EAEQ,EAFRA,aACWzjM,EACH,EADR,WAEA,OACE,SAAC,GAAD,CACEzG,GAAE,UAAKkqM,EAAL,YACFjqM,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMukM,GAAAA,EACNjvM,MAAM,UACN,UAASoL,ICWR,SAAS8jM,GAAT,GAA8D,IAArC/vM,EAAqC,EAArCA,cAAe2U,EAAsB,EAAtBA,YACrCrO,GAASsB,EAAAA,EAAAA,MAATtB,KACFpC,GAAUsV,EAAAA,EAAAA,IAAmBlT,EAAMtG,GAEnCgwM,EACJ9rM,GAAWyQ,EAAY4hF,iBAAiBgL,oCAEpC0uG,GAAe7vM,EAAAA,GAAAA,IACnBJ,GACA,SAACmd,GAAD,gBAAW,UAACA,EAAK4yC,aAAN,QAAC,EAAYC,QAAW,UAAC7yC,EAAK4yC,aAAN,QAAC,EAAY8d,qBAG5CqiI,GAAkB3vM,EAAAA,GAAAA,IAAWP,GAAe,SAACjD,GAAD,OAChDuhG,WAAWvhG,EAAQ0nG,eAGf30C,EAAiBmgJ,EAAavxM,KAC9B2mE,EAAa6qI,EAAgBxxM,MAAQ,EAErCgqD,EAAc/zC,EAAYzB,SAAWC,EAAAA,GAAAA,KAErCg9L,EAAoBrgJ,EACtB,CACEjvD,MAAO,QACP0K,KAAM6kM,GAAAA,EACN5qM,GAAI,eACJyG,OAAQ,0BAEV,CACEpL,MAAO,OACP0K,KAAM6kM,GAAAA,EACN5qM,GAAI,cACJyG,OAAQ,yBAGd,OACE,iCACE,SAACwjM,GAAD,CACEzvM,cAAeA,EACf0vM,aAAa,SACb,UAAQ,6BAGV,SAAC,GAAD,CACE7uM,MAAM,gBACN0K,KAAMojB,GAAAA,EACNnpB,GAAG,mBACHC,OAAQ,CAAE+S,WAAYxY,GACtB,UAAQ,gCALV,UAOE,SAAC,GAAD,CACEa,MAAM,mBACN2E,GAAG,0BACHC,OAAQ,CAAE+S,WAAYxY,GACtB,UAAQ,oCAIXgwM,IACC,SAAC,GAAD,CACExqM,GAAG,gBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAM+jM,GAAAA,EACNzuM,MAAM,SACN,UAAQ,yBAIXivD,IACC,SAAC,GAAD,CACEtqD,GAAG,kBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAM8kM,GAAAA,EACNxvM,MAAM,WACN,UAAQ,4BAIZ,SAAC,GAAD,CACE2E,GAAG,oBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMkpH,GAAAA,EACN5zH,MAAM,aACN,UAAQ,8BAGV,SAAC,GAAD,CACE2E,GAAG,gBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAM+kM,GAAAA,EACNzvM,MAAM,SACN,UAAQ,0BAGV,SAAC,GAAD,CACE2E,GAAG,kBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMglM,GAAAA,EACN1vM,MAAM,WACN,UAAQ,4BAGV,SAACgvM,GAAD,CACE7vM,cAAeA,EACf0vM,aAAa,SACb,UAAQ,0BAGTrqI,GAAc,KAAOvV,IACpB,SAAC,GAAD,CACEtqD,GAAG,iBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMilM,GAAAA,EACN3vM,MAAM,UACN,UAAQ,0BAIXwkE,GAAc,MAAQvV,IACrB,SAAC,GAAD,CACEtqD,GAAG,iBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMklM,GAAAA,EACN5vM,MAAM,UACN,UAAQ,2BAIVivD,GAAkB5rD,IAAYwkD,IAC9B,SAAC,GAAD,CACEljD,GAAG,gBACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMgkM,GAAAA,EACN1uM,MAAM,SACN,UAAQ,0BAIZ,UAAC,GAAD,CACEA,MAAOsvM,EAAkBtvM,MACzB0K,KAAM4kM,EAAkB5kM,KACxB/F,GAAI2qM,EAAkB3qM,GACtBC,OAAQ,CAAE+S,WAAYxY,GACtB,UAASmwM,EAAkBlkM,OAL7B,WAOE,SAAC,KAAD,CACEoN,eAAe,kCACfS,aAAW,EACX9Z,cAAeA,EAHjB,UAKE,SAAC,GAAD,CACEwF,GAAG,+BACHC,OAAQ,CAAE+S,WAAYxY,GACtBa,MAAM,aAIV,SAAC,GAAD,CACE2E,GAAG,oBACHC,OAAQ,CAAE+S,WAAYxY,GACtBa,MAAM,qB,gEChMT,SAAS6vM,KACd70I,GAAO,OAAQ,WAGV,SAAS80I,KACd,IAAMC,EAAuB5yM,OAAO6yM,YAEpCh1I,GAAO,GAAD,OAD0B+0I,EARX,IASf,MAAiC,QAGzC,SAAS/0I,GAAOzhE,EAAgB02M,GAC9B,IAAMC,EAActxK,SAAS8sD,eAAe,uBAExCwkH,IACFA,EAAYh2M,MAAMX,OAASA,EAC3B22M,EAAYh2M,MAAM+1M,UAAYA,G,+nDCY3B,SAASE,GAAT,GAAyD,IAAjChxM,EAAiC,EAAjCA,cAAe0xL,EAAkB,EAAlBA,QACrCuf,EAAP,IAAmB7tM,EAAAA,EAAAA,UAAS,IAAI8hD,GAAAA,GAAhC,MAEA,MAA0B9hD,EAAAA,EAAAA,UAAqB,CAC7CkuB,OAAQ,KACR4/K,WAAW,IAFb,GAAOC,EAAP,KAAcC,EAAd,KAKQ9/K,EAAW6/K,EAAX7/K,OAEF+/K,GAAe9jK,EAAAA,EAAAA,QAAO,MAErBvzB,EAAP,IAAcnC,EAAAA,EAAAA,GAAgB,MAAO,IAArC,MAEMy5L,GAAcjkM,EAAAA,EAAAA,cAAY,WAC9BqjM,KACAp/K,MAAAA,GAAAA,EAAQ48D,QACR+iH,EAAS9iH,UACTujG,MACC,CAACA,EAASuf,EAAU3/K,IAEjBigL,GAAelkM,EAAAA,EAAAA,cAAY,WAC1BgkM,EAAaj7K,UAIlB66K,EAASp4I,KAAKw4I,EAAaj7K,SAC3B66K,EAASzkH,UAAU,eAAe,GAClCykH,EAAS3rJ,SACTH,EAAAA,GAAAA,KAAI8rJ,GACJA,EAASO,QAAQ,qCACjBP,EAASO,QAAQ,yBACjBP,EAASO,QAAQ,OAChB,CAACP,IA+DJ,OA5DAztM,EAAAA,EAAAA,YAAU,WACR,IAAK8tB,EACH,OAAO,aAET,SAASmgL,IACPF,IAEF,SAASG,EAAU/4M,GACjBs4M,EAASpkH,MAAMl0F,EAAE+F,MAEnB,SAASgzL,IACP4f,IAEF,SAASzzL,EAAQllB,GACf24M,KACIhgL,MAAAA,OAAA,EAAAA,EAAQqgL,cAAezlH,UAAU0lH,SACnC9zL,EAAAA,EAAAA,IACE,UACAnlB,EACA,8BAUN,OALA24B,EAAOkiH,iBAAiB,OAAQi+D,GAChCngL,EAAOkiH,iBAAiB,UAAWk+D,GACnCpgL,EAAOkiH,iBAAiB,QAASk+C,GACjCpgK,EAAOkiH,iBAAiB,QAAS31H,GAE1B,WACLyT,EAAOmiH,oBAAoB,OAAQg+D,GACnCngL,EAAOmiH,oBAAoB,UAAWi+D,GACtCpgL,EAAOmiH,oBAAoB,QAASi+C,GACpCpgK,EAAOmiH,oBAAoB,QAAS51H,MAErC,CAACyzL,EAAaC,EAAcjgL,EAAQ2/K,KAGvCztM,EAAAA,EAAAA,YAAU,WACR,IAAM8tB,EAAS,IAAI46D,UAgFrB,SAAkBlyE,EAAaha,GAC7B,IAAMyF,EAAS,CACbkrE,MAAO32D,EACPxB,WAAYxY,GAGR6xM,EACyB,WAA7B7zM,OAAOovF,SAASthB,SAAwB,SAAW,QAC/ClwB,EAAO,GAAH,QAAM0xC,EAAAA,GAAAA,YAAN,kCACJ23C,EAAOrpF,EAAK/lB,WAAW,QACzB+lB,EAAKtmB,QAAQ,gBAAiB,IAC9Bt3B,OAAOovF,SAASn8C,KAAO2K,EAErBk2J,EAAc/4M,OAAOyG,QAAQiG,GAChCrN,KAAI,0BAAEm1F,EAAF,KAAK9xD,EAAL,qBAAe8xD,EAAf,YAAoB9xD,MACxBr0B,KAAK,KACR,gBAAUyqM,GAAV,OAAuB5sE,EAAvB,YAA+B6sE,GAhGF5xM,CAAS8Z,EAAKha,IAY3C,SAASkuF,IACP58D,EAAO48D,QACP+iH,EAAS9iH,UACTnwF,OAAOy1I,oBAAoB,SAAUk9D,IAGvC,OAjBAS,GAAS,SAACD,GAAD,UAAC,MAAgBA,GAAjB,IAAwB7/K,OAAAA,OAEjC2/K,EAASc,QAAO,SAACrzM,GAAD,OAAU4yB,EAAO+6D,KAAK3tF,MACtCuyM,EAASe,OAAM,YAAkB,IAAfC,EAAe,EAAfA,SACZA,EAASC,SAA6B,SAAlBD,EAASp5M,MAC/Bq1F,OAIJlwF,OAAOw1I,iBAAiB,UAAU,kBAAMm9D,QAQjCziH,IACN,CAACluF,EAAega,EAAKi3L,KAGtB,iBAAK/1M,WAAW6L,EAAAA,EAAAA,GC7HG,6ED6HC,MC7HgL,kFD6H5IoqM,EAAMD,YAA9D,WACE,iBAAKh2M,UC9HkG,+ED8HvG,WACE,iBAAKA,WAAW6L,EAAAA,EAAAA,GC/H0Q,8ED+HvP,mBAAnC,WACE,SAAC0E,EAAA,EAAD,CAAMF,KAAK,WAAWG,SAAO,IAD/B,oBAIA,iBAAKxQ,WAAW6L,EAAAA,EAAAA,GCnIkW,gFDmI7U,aAArC,WACE,SAAC,MAAD,CACEmC,MAAM,OACNC,QAmCV,WACE8nM,EAASkB,SAnCD,UAAQ,yBAHV,UAKE,SAAC1mM,EAAA,EAAD,CAAMF,KAAK,YAAYG,SAAO,EAACzC,KAAK,UAEtC,SAAC,MAAD,CACEC,MAAM,OACNC,QAgCV,WACMgoM,EAAMD,WACRP,KACAS,GAAS,SAACD,GAAD,UAAC,MAAgBA,GAAjB,IAAwBD,WAAW,SAE5CR,KACAU,GAAS,SAACD,GAAD,UAAC,MAAgBA,GAAjB,IAAwBD,WAAW,SArCtC,UAASC,EAAMD,UAAY,mBAAqB,oBAHlD,UAKE,SAACzlM,EAAA,EAAD,CACEF,KAAM4lM,EAAMD,UAAY,aAAe,aACvCxlM,SAAO,EACPzC,KAAK,KACL,UACEkoM,EAAMD,UAAY,mBAAqB,yBAI7C,SAAC,MAAD,CACEhoM,MAAM,OACNC,QAASmoM,EACT,UAAQ,uBAHV,UAKE,SAAC7lM,EAAA,EAAD,CAAMF,KAAK,IAAIG,SAAO,EAACzC,KAAK,gBAKlC,gBAAK/N,UCnKmd,2FDmK9amyC,IAAKgkK,EAA/C,UACE,gBAAKn2M,UCpK6jB,wFDoKlkB,sC,2GErJD,SAASk3M,GAAT,GAAsD,I,IAAxBpyM,EAAwB,EAAxBA,cACnC,G,GAAwBoD,EAAAA,EAAAA,WAAS,G,EAAjC,E,g0BAAOy1D,EAAP,KAAaw5I,EAAb,KACQ5zM,GAAeN,EAAAA,GAAAA,MAAfM,WACR,OACE,iCACE,UAAC,MAAD,CACEyK,MAAM,UACND,KAAK,QACLhH,SAAU42D,EACV,UAAQ,yBACR1vD,QAAS,kBAmBbkpM,GAAQ,QAER5zM,EAAW,2BAA4B,CAAEM,SAAU,gBApB/C7D,WAAW6L,EAAAA,EAAAA,GC1BI,mFD0Bc,SAN/B,WAQE,SAAC0E,EAAA,EAAD,CAAMF,KAAK,WAAWG,SAAO,EAACxQ,UAAU,kBAAkB+N,KAAK,OAAQ,IARzE,mBAYC4vD,IACCy5I,EAAAA,GAAAA,eACE,SAACtB,GAAD,CACEhxM,cAAeA,EACf0xL,QAAS,kBAAM2gB,GAAQ,MAEzB5yK,SAASE,SEtBZ,SAAS4yK,GAAT,GAAqD,IAAxBvyM,EAAwB,EAAxBA,cAC1BuyL,EAAW4Z,KAAX5Z,OAER,OACE,gCACGA,IACC,gBAAKr3L,UAAU,OAAf,UACE,SAACk3M,GAAD,CAAoBpyM,cAAeA,OAIvC,SAACyvM,GAAD,CACEzvM,cAAeA,EACf0vM,aAAa,aACb,UAAQ,0BAGV,SAAC,GAAD,CACElqM,GAAG,8BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMojB,GAAAA,EACN9tB,MAAM,mBACN,UAAQ,gCAGV,SAAC,GAAD,CACE2E,GAAG,2BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAM+jM,GAAAA,EACNzuM,MAAM,aACN,UAAQ,2BAGV,SAAC,KAAD,CACEwY,eAAe,mBACfrZ,cAAeA,EAFjB,UAIE,SAAC,GAAD,CACEwF,GAAG,4BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMinM,GAAAA,EACN3xM,MAAM,OACN,UAAQ,uBAIZ,SAAC,GAAD,CACE2E,GAAG,0BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMkpH,GAAAA,EACN5zH,MAAM,eACN,UAAQ,6BAGV,SAAC,GAAD,CACE2E,GAAG,4BACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMklM,GAAAA,EACN5vM,MAAM,uBACN,UAAQ,+BAGV,SAACgvM,GAAD,CACE7vM,cAAeA,EACf0vM,aAAa,aACb,UAAQ,wBAGV,UAAC,GAAD,CACE7uM,MAAM,UACN2E,GAAG,qBACH+F,KAAMknM,GAAAA,EACNhtM,OAAQ,CAAE+S,WAAYxY,GACtB,UAAQ,qBALV,WAOE,SAAC,KAAD,CACEqZ,eAAe,oBACfS,aAAW,EACX9Z,cAAeA,EAHjB,UAKE,SAAC,GAAD,CACEwF,GAAG,2BACHC,OAAQ,CAAElN,GAAIyH,GACda,MAAM,QACN,UAAQ,wBAIZ,SAAC,KAAD,CACEwY,eAAe,oBACfS,aAAW,EACX9Z,cAAeA,EAHjB,UAKE,SAAC,GAAD,CACEwF,GAAG,wCACHC,OAAQ,CAAElN,GAAIyH,GACda,MAAM,uBACN,UAAQ,sCAIZ,SAAC,GAAD,CACE2E,GAAG,wBACHC,OAAQ,CAAE+S,WAAYxY,GACtBa,MAAM,aACN,UAAQ,gCC/GX,SAAS6xM,GAAT,GAAgD,IAAxB1yM,EAAwB,EAAxBA,cAC7B,OACE,iCACE,SAACyvM,GAAD,CACEzvM,cAAeA,EACf0vM,aAAa,QACb,UAAQ,4BAGV,SAAC,GAAD,CACElqM,GAAG,aACHC,OAAQ,CAAE+S,WAAYxY,GACtBuL,KAAMgkM,GAAAA,EACN1uM,MAAM,aACN,UAAQ,yB,oOCDT,SAAS8xM,KACd,I,IAkEQltM,EACFqf,EACN,EAAO9kB,EAAe4yM,EApEtB,GAkEQntM,GAAW8S,EAAAA,GAAAA,4BAAX9S,OACFqf,GAASC,EAAAA,GAAAA,a,GAC2BlN,EAAAA,EAAAA,GAExC,qBAAiB/L,EAAWg6B,gB,EAF9B,I,+zBAAO9lC,EAAP,KAAsB4yM,EAAtB,MAIApvM,EAAAA,EAAAA,YAAU,WACR,IAAMxD,EAAgBf,SAASwG,EAAO+S,WAAY,IAC9C/S,EAAO+S,aAAetZ,OAAOC,MAAMa,IACrC4yM,EAAiB5yM,KAElB,CAACyF,EAAO+S,WAAYo6L,IAEhB,CAAEziM,OAAOwC,EAAAA,GAAAA,GAAe3S,GAAgB6yM,iBAE/C,WACMptM,EAAO+S,YACTsM,EAAOuB,aAAaC,GAAG,kBAGzBssL,OAAiB9mM,MAtFqB+mM,EAAxC,EAAwCA,iBAElCl+L,EAFN,EAAQxE,MAEoCzR,KAI5C,OAFmBytM,KAAX5Z,QAEQ59K,GAKd,gBAAKzZ,WAAW6L,EAAAA,EAAAA,GCnCG,oDDmCe,qCAAlC,SACG4N,GACC,SAACoyB,GAAD,CAASpyB,YAAaA,EAAam+L,QAASD,KAE5C,SAAC3D,GAAD,WACE,iBAAKh0M,UAAU,0BAAf,WACE,4CACA,SAAC,KAAD,CAAO+N,KAAK,MAAM/N,UAAU,yBAC5B,iBAAMA,UAAU,sBAAhB,kCAZD,KAyBX,SAAS6rC,GAAT,GAAyD,IAgBnCnyB,EAAwB,EAhB3BD,EAAsC,EAAtCA,YAAam+L,EAAyB,EAAzBA,QAExBC,GAccn+L,GAfHZ,EAAAA,GAAAA,IAAgBW,EAAY1P,OAqB1C,QACE0O,EAAAA,GAAAA,MAAqBi8L,IADvB,KAEEj8L,EAAAA,GAAAA,OAAsBo8L,IAFxB,KAGEp8L,EAAAA,GAAAA,WAA0B4+L,IAH5B,KAIE5+L,EAAAA,GAAAA,MAAqB++L,IAJvB,GAOc99L,IAzBjB,OACE,SAACm6L,GAAD,CACE5mM,OAAO,SAACs2B,GAAD,CAAO9pB,YAAaA,EAAam+L,QAASA,IACjD,aAAYn+L,EAAY7N,KACxBkoM,mBAAiB,EAHnB,UAKE,gBAAK9zM,UAAU,OAAf,UACE,SAAC63M,EAAD,CAAS/yM,cAAe2U,EAAYnO,GAAImO,YAAaA,QAoD7D,SAAS8pB,GAAT,GAAqD,IZvGrBz6B,EACxB4Q,EYsGSD,EAAoC,EAApCA,YAAam+L,EAAuB,EAAvBA,QACpBvgB,EAAW4Z,KAAX5Z,OAEF7D,GZ1GwB1qL,EY0GU2Q,EAAY1P,KZzG9C2P,GAAWZ,EAAAA,GAAAA,IAAgBhQ,GAE1BwrM,GAAM56L,IYyGb,OAAK29K,GASH,iBAAKr3L,UAAU,oBAAf,WACE,SAACwzL,EAAD,CAAiBxzL,UAAU,mBAC3B,iBAAMA,UAAU,6DAAhB,SACGyZ,EAAY7N,QAGf,mBACEqB,MAAM,oBACNnE,KAAK,SACLmF,QAAS2pM,EACT53M,WAAW6L,EAAAA,EAAAA,GC/ImE,wDDiJ5E,qLANJ,UASE,SAAC,KAAD,UAtBF,gBAAK7L,UAAU,gCAAgCiN,MAAOwM,EAAY7N,KAAlE,UACE,SAAC4nL,EAAD,CAAiBxzL,UAAU,e,4EE7G5B,SAAS83M,GAAT,GAA2D,IAAhC9uM,EAAgC,EAAhCA,QAAS4G,EAAuB,EAAvBA,aACnCmoM,GAAgB50M,EAAAA,GAAAA,IAA2B,CAC/CC,OAAQ,SAACC,GAAD,OAAcA,EAAS20M,YAG3BC,GACHn1M,OAAOi9B,cAAgB/2B,GAAY4G,IAAiBmoM,EAAcv0M,MAErE,OACE,UAACqwM,GAAD,CAAgB5mM,MAAM,WAAtB,UACGgrM,IACC,UAAC,GAAD,CACE3tM,GAAG,kBACH3E,MAAM,QACN0K,KAAM6nM,GAAAA,EACN,UAAQ,yBAJV,WAME,SAAC,GAAD,CACE5tM,GAAG,kBACH3E,MAAM,QACN,UAAQ,2BAGTqD,IACC,SAAC,GAAD,CACEsB,GAAG,kBACH3E,MAAM,QACN,UAAQ,8BAKfqD,IACC,iCACE,UAAC,GAAD,CACErD,MAAM,eACN2E,GAAG,sBACH+F,KAAM8nM,GAAAA,EACN7F,YAAa,CAAC,8BACd,UAAQ,gCALV,WAOE,SAAC,GAAD,CACEhoM,GAAG,mBACH3E,MAAM,SACN,UAAQ,wCAEV,SAAC,GAAD,CACE2E,GAAG,iBACH3E,MAAM,OACN,UAAQ,yCAIZ,SAAC,GAAD,CACEA,MAAM,aACN2E,GAAG,uBACH+F,KAAM+nM,GAAAA,EACN,UAAQ,iCAIR,SAAC,GAAD,CACE9tM,GAAG,qBACH3E,MAAM,WACN0K,KAAMgoM,GAAAA,EACN,UAAQ,+BAIZ,SAAC,GAAD,CACE1yM,MAAM,sBACN2E,GAAG,qBACH+F,KAAMwjB,GAAAA,EACN,UAAQ,4BAJV,UAME,SAAC,GAAD,CACEvpB,GAAG,yBACH3E,MAAM,gBACN,UAAQ,qCAIZ,UAAC,GAAD,CACE2E,GAAG,qBACH3E,MAAM,WACN0K,KAAMioM,GAAAA,EACN,UAAQ,4BAJV,WAMIx1M,OAAOi9B,cACP,SAAC,GAAD,CACEz1B,GAAG,oCACH3E,MAAM,iBACN,UAAQ,qCAGZ,SAAC,GAAD,CACE2E,GAAG,2BACH3E,MAAM,QACN,UAAQ,4BAGV,SAAC,GAAD,CACE2E,GAAG,iCACH3E,MAAM,eACN,UAAQ,kCAGV,SAAC,WAAD,CAAqBA,MAAM,eAA3B,UACE,cACEmlB,KAGM,wDAENzsB,OAAO,SACP0sB,IAAI,aACJ/qB,UAAU,qCARZ,qC,eCzHP,SAASu4M,KACd,IAAMtjM,GAwBC9P,EAAAA,GAAAA,UAAS,CAAC,SAAU,YAAY,kBAAMme,EAAAA,GAAAA,SAtB7C,IAAKrO,EAAMzR,OAASyR,EAAMzR,KAAKg1M,gBAC7B,OAAO,KAGT,IAAQC,EAAkBxjM,EAAMzR,KAAxBi1M,cAER,OACE,gBAAKz4M,UCf4B,2EDejC,UACE,eACE3B,OAAO,SACPysB,KAAI,8DAAyD2tL,GAC7D54M,MAAO,CAAEmO,MAAO,WAChB+c,IAAI,aAJN,WAME,cAAG/qB,UAAU,gDANf,kC,IEjBFY,GAAI,G,uBCCR,GAAuB,+C,2GCYhB,SAAS83M,KACd,I,IAAA,G,GAAoDxwM,EAAAA,EAAAA,WAAS,G,EAA7D,E,g0BAAOywM,EAAP,KAA2BC,EAA3B,KACMC,GAAc7hM,EAAAA,GAAAA,MAEpB,IAAK6hM,EAAYr1M,KACf,OAAO,KAGT,IAAQ0T,EAAY2hM,EAAYr1M,KAAxB0T,QAER,OACE,iCACE,mBACEpO,KAAK,SACL,UAAQ,iCACR9I,UAAU,WACViO,QAAS,kBAAM2qM,GAAsB,IAJvC,SAMG1hM,IAEFyhM,IACC,SAACG,GAAD,CAAgBC,WAAY,kBAAMH,GAAsB,SAMhE,SAASE,GAAT,GAAoE,IAA1CC,EAA0C,EAA1CA,WAClBhiM,GAAewM,EAAAA,GAAAA,MACfs1L,GAAc7hM,EAAAA,GAAAA,MAEpB,IAAK6hM,EAAYr1M,OAASuT,EAAavT,KACrC,OAAO,KAGT,IAAQsW,EAAY++L,EAAYr1M,KAAxBsW,QACR,EAAkD/C,EAAavT,KAAvDw1M,EAAR,EAAQA,cAAeC,EAAvB,EAAuBA,gBAAiBvwH,EAAxC,EAAwCA,MAExC,OACE,SAAC,MAAD,CAAe1oF,UDnD4D,iDCmDlCq3L,QAAM,EAA/C,UACE,gBAAKr3L,UAAU,eAAf,UACE,iBAAKA,UAAU,gBAAf,WACE,iBAAKA,UAAU,eAAf,WACE,mBAAQ8I,KAAK,SAAS9I,UAAU,QAAQiO,QAAS8qM,EAAjD,gBAGA,gBAAI/4M,UAAU,cAAd,uBAAuC8Z,SAEzC,iBAAK9Z,UAAU,aAAf,WACE,gBAAKA,UD7D6H,sDC6DlI,UACE,4BACE,8BACE,2BACE,yBACE,kBAAMA,UAAU,2BAAhB,WACE,SAAC,KAAD,CAAQ+N,KAAK,KAAK/N,UAAU,gBAD9B,mBAEmBg5M,QAGrB,yBACE,kBAAMh5M,UAAU,2BAAhB,WACE,SAAC,KAAD,CAAU+N,KAAK,KAAK/N,UAAU,gBADhC,qBAEqBi5M,WAIzB,2BACE,yBACE,kBAAMj5M,UAAU,2BAAhB,WACE,SAAC,KAAD,CAAM+N,KAAK,KAAK/N,UAAU,gBAD5B,oBAEoB0oF,EAAMwwH,kBAG5B,yBACE,6BACE,SAAC,KAAD,CAAKnrM,KAAK,KAAK/N,UAAU,gBAD3B,cAEc0oF,EAAMywH,yBAO9B,iBAAKn5M,UD/F+L,oDC+FpM,WACE,kBAAMA,UAAU,2BAAhB,WACE,SAAC,KAAD,CAAM+N,KAAK,KAAK/N,UAAU,gBAD5B,yBAKA,iBAAKA,UDrGyP,gDCqG9P,WACE,kBAAMA,UAAU,mBAAhB,qBACW0oF,EAAM0wH,kBAEjB,kBAAMp5M,UAAU,mBAAhB,mBACS0oF,EAAM2wH,gBAEf,kBAAMr5M,UAAU,mBAAhB,sBACY0oF,EAAM4wH,mBAElB,kBAAMt5M,UAAU,mBAAhB,iBAAwC0oF,EAAM6wH,uBAIpD,gBAAKv5M,UAAU,eAAf,UACE,SAAC,MAAD,CAAQA,UAAU,iBAAiBiO,QAAS8qM,EAA5C,yBFnHZ,SAAS,KAAiS,OAApR,GAAWl7M,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkB,GAASS,MAAMC,KAAMR,WAItU,IA6CA,GA7CuB,SAA0BS,GAC/C,OAAoB,gBAAoB,MAAO,GAAS,CACtDC,MAAO,MACPC,OAAQ,MACRC,QAAS,aACTC,KAAM,OACNC,MAAO,8BACNL,GAAQ4B,KAAOA,GAAkB,gBAAoB,IAAK,CAC3DC,SAAU,+BACI,gBAAoB,OAAQ,CAC1CrB,SAAU,UACVC,SAAU,UACVH,EAAG,6IACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CI,SAAU,UACVC,SAAU,UACVH,EAAG,4DACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CI,SAAU,UACVC,SAAU,UACVH,EAAG,yCACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CI,SAAU,UACVC,SAAU,UACVH,EAAG,glBACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CI,SAAU,UACVC,SAAU,UACVH,EAAG,ibACHF,KAAM,YACS,gBAAoB,OAAQ,CAC3CE,EAAG,o9JACHF,KAAM,WACF,KAAU,GAAqB,gBAAoB,OAAQ,KAAmB,gBAAoB,WAAY,CAClH/B,GAAI,yBACU,gBAAoB,OAAQ,CAC1C+B,KAAM,OACNE,EAAG,wBGpCA,SAASgkC,KACd,OAAOrpB,EAAAA,IAAO,SAACu/L,GAAD,KAAe,SAACC,GAAD,IAG/B,SAASA,KACP,OACE,iBAAKz5M,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAAa,eAAlC,WACE,SAAC47K,GAAD,KAEA,UAACmB,GAAD,YACE,SAAC,GAAD,CAAMz6M,MAAM,OAAOC,OAAO,MAC1B,iDAEA,SAACw5M,GAAD,KAEA,cACE5tL,KAAK,0CACL9qB,UAAU,0BACV3B,OAAO,SACP0sB,IAAI,aAJN,2BAaR,SAASyuL,KACP,OACE,gBAAKx5M,WAAW6L,EAAAA,EAAAA,GAAK8wB,GAAa,eAAlC,UACE,UAAC+8K,GAAD,YACE,iCACA,0DAEA,SAAChB,GAAD,SAMR,SAASgB,GAAT,GAAiE,IAAxCrtM,EAAwC,EAAxCA,SACvB,OACE,gBAAKrM,UAAU,4FAAf,SACGqM,I,gECtCA,SAASk5B,GAAT,GAA6C,IAArBo0K,EAAqB,EAA3BC,KACvB,EAA2B3I,KAAnB1kG,EAAR,EAAQA,OAAQ8qF,EAAhB,EAAgBA,OAEhB,OACE,iBAAKr3L,UAAU,OAAf,WACE,4BACE,SAACqK,GAAA,EAAD,CACEC,GAAG,iBACH,UAAQ,6BACRtK,UAAU,8HAHZ,UAKE,SAAC43I,GAAD,CAAM+hE,WAAYA,EAAYtiB,OAAQA,MAEvCA,GAAUsiB,IACT,iBACE35M,WAAW6L,EAAAA,EAAAA,GACT,yDACA,cACA,4BAJJ,WAOE,iBAAM7L,UAAU,cAAhB,yBACA,iBAAMA,UAAU,gBAAhB,SACGia,EAAAA,GACC,sBAEA,cACE6Q,KAAK,0CACL9qB,WAAW6L,EAAAA,EAAAA,GACT,kBACA,gCACA,iDALJ,0CAgBV,mBACE/C,KAAK,SACLmF,QAAS,kBAAMs+F,KACfvsG,WAAW6L,EAAAA,EAAAA,GC7D0D,+CD+DnE,4DACA,8BACA,0EACA,2BACA,0BACA,WACA,CAAE,iBAAkBwrL,EAAQ,UAAWA,IAEzC,aAAW,iBACXpqL,MAAM,iBAdR,SAgBGoqL,GAAS,SAAC,KAAD,KAAmB,SAAC,KAAD,SAkBrC,SAASz/C,GAAT,GAMG,IALD+hE,EAKC,EALDA,WAMMC,EAnBR,SAAiBviB,EAAiBsiB,GAChC,OAAIA,IAICtiB,EAIEp9K,EAAAA,GAAO4/L,GAAaC,GAHlBC,IAaIC,CADZ,EAJD3iB,OAK6BsiB,GAE7B,OACE,gBACEpsB,IAAKqsB,EACL55M,WAAW6L,EAAAA,EAAAA,GAAK,iBCxGC,yCDyGjB4nL,IAAI,SEpGH,IAAMwmB,GAAgBtlM,IAAAA,OACnB,wBAAyB,IAChCC,UAAU,WAAWlN,EAAAA,EAAAA,ICQjB,WACL,OAA0BgF,EAAAA,EAAAA,MAAlB1D,EAAR,EAAQA,QAASoC,EAAjB,EAAiBA,KACXwE,GAAe+gB,EAAAA,GAAAA,IAAgBvlB,GAE/BhD,GAAgBjF,EAAAA,GAAAA,MAEtB,IAAKiF,EAAc5E,KACjB,OAAO,KAGT,MAA+C4E,EAAc5E,KAArD8iH,EAAR,EAAQA,0BAA2B4zF,EAAnC,EAAmCA,QAEnC,OAEE,SAAChJ,GAAD,WACE,iBACElxM,WAAW6L,EAAAA,EAAAA,GC/BI,yCD+Bc,gCAC7B,aAAW,OAFb,WAIE,SAAC05B,GAAD,CAAQq0K,KAAMM,KAGd,gBAAKl6M,UAAU,yCAAf,UACE,gBAAIA,UAAU,YAAd,WACE,SAAC,GAAD,CACEsK,GAAG,iBACH+F,KAAM8pM,GAAAA,EACNx0M,MAAM,OACN,UAAQ,2BAGV,SAAC8xM,GAAD,IAECzuM,GAAWs9G,IAA6B,SAAC4tF,GAAD,KAEvClrM,GAAW4G,KACX,SAACkoM,GAAD,CAAiB9uM,QAASA,EAAS4G,aAAcA,UAKvD,gBAAK5P,UAAU,eAAf,UACE,SAACsjC,GAAD,aDlD2B,KAClCwgB,QAAQ,iBAAkBiuJ,IAAuBlvM,K,4FGTpD,MAAMy8C,GAAgCvrC,EAAQ,OACxCqgD,GAAgCrgD,EAAQ,MACxCsgD,GAAgCtgD,EAAQ,OACxCugD,GAAgCvgD,EAAQ,OACxCwgD,GAAgCxgD,EAAQ,OACxCygD,GAAgCzgD,EAAQ,OACxC0gD,GAAgC1gD,EAAQ,OACxCkjD,GAAgCljD,EAAQ,OACxCmjD,GAAgCnjD,EAAQ,OACxCojD,GAAiCpjD,EAAQ,MACzCqjD,GAAiCrjD,EAAQ,OACzCsjD,GAAiCtjD,EAAQ,OACzCujD,GAAiCvjD,EAAQ,OACzCwjD,GAAiCxjD,EAAQ,OACzCyjD,GAAiCzjD,EAAQ,OACzC0jD,GAAiC1jD,EAAQ,OACzC2jD,GAAiC3jD,EAAQ,OACzC4jD,GAAiC5jD,EAAQ,OACzC6jD,GAAiC7jD,EAAQ,OACzC8jD,GAAiC9jD,EAAQ,MACzC+jD,GAAiC/jD,EAAQ,OACzCgkD,GAAiChkD,EAAQ,OACzCikD,GAAiCjkD,EAAQ,MAmC/CY,QACG5W,OAAO,gBAAiB,CACvBq8M,GACA,kBACA,iBACA,+BACAC,EAAAA,QACAnpJ,EAAAA,QACAopJ,EAAAA,QACAC,EAAAA,QACAC,EACAC,EACA,6BACAC,EACA9d,GACA5lI,GACAijJ,KAEDt2L,OAAO,CACN,yBACA,SAAUoxC,GAGR,IAAI3a,EAAO,CACTv3C,KAAM,OACN41D,UAAU,EACVxQ,QAAO,8FAAkB,SAAiBhJ,EAAQ0E,EAAcmmB,EAAgBtgD,EAAemxL,EAAanzJ,EAAYC,GACtH,OAAOxI,GAAO2F,UAEZ,GADiBjB,EAAakB,WAChB3kB,QAGd,IACE,MAAM06K,QAjDpBh2J,eAAkC+1J,EAAa7wI,EAAgBtiB,EAAYC,GAazE,OAZAkzJ,EAAYE,qBAKZrzJ,EAAWuqC,IAAI,mBAAmB,SAAUr/C,EAAOlvC,GAC5C,IAAWA,EAAKmgB,OAAOne,IAAK,SAAY,IAAWhC,EAAKmgB,OAAOne,IAAK,cAAes1M,GAAmCrzJ,EAAOmtH,cAChIntH,EAAOr8B,GAAG,mBAAoB,CAAEpe,MAAO,6BACvClK,OAAOovF,SAASjyD,mBAIP6pC,EAAezvD,OAoCO0gM,CAAmBJ,EAAa7wI,EAAgBtiB,EAAYC,GAEnF,SADM9D,EAAaoE,cACd6yJ,GAAYE,GAAmCrzJ,EAAOmtH,YAEzD,OADAntH,EAAOr8B,GAAG,oBACHpQ,QAAQ8S,OAAO,mBAExB,MAAOjU,GAEP,MADA2P,EAAcxc,MAAM,UAAW6M,EAAK,2CAC9BA,QAIZo7C,MAAO,CACL,WAAY,CACVrgD,UAAW,aAyCbomM,EAAU,CACZn4M,KAAM,oBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,GACbrrC,WAAY,uBAedgnM,EAAiB,CACnBp4M,KAAM,iBACN2C,IAAK,QACL+E,OAAQ,CACN01B,QAAQ,GAEVg1B,MAAO,CACL,WAAY,CACV1V,YAAa6U,GACbngD,WAAY,2BACZklD,aAAc,QAEhB,WAAY,KAGZ+hJ,EAAyB,CAC3Br4M,KAAM,0BACN2C,IAAK,iBACL+E,OAAQ,CACN01B,QAAQ,GAEVg1B,MAAO,CACL,WAAY,CACV1V,YAAa8U,GACbpgD,WAAY,mCACZklD,aAAc,QAEhB,WAAY,KAGhB,MAAMgiJ,EAAS,CACbt4M,KAAM,mBACN2C,IAAK,UACL+E,OAAQ,CACNyC,MAAO,GACP0yB,kBAAkB,GAEpBu1B,MAAO,CACL,WAAY,CACV1V,YAAa+U,GACbrgD,WAAY,mBACZklD,aAAc,QAEhB,WAAY,KAIhB,IAAI8uD,EAAY,CACdplH,KAAM,sBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagV,GACbtgD,WAAY,yBAKd6B,EAAW,CACbjT,KAAM,+BACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiV,GACbvgD,WAAY,wBAKdmnM,EAAe,CACjBv4M,KAAM,mCACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAakV,GACbxgD,WAAY,4BAyBdonM,EAAiB,CACnBx4M,KAAM,sCACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa0X,GACbhjD,WAAY,2BACZklD,aAAc,UAKhBmiJ,EAAc,CAChBz4M,KAAM,mCACN2C,IAAK,2BACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa2X,GACbjjD,WAAY,2BAKda,EAAS,CACXjS,KAAM,mBACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa4X,GACbljD,WAAY,sBAKds+F,EAAQ,CACV1vG,KAAM,yBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa6X,GACbnjD,WAAY,qBAKdsnM,EAAgB,CAClB14M,KAAM,uBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa8X,GACbpjD,WAAY,2BAKdunM,EAAc,CAChB34M,KAAM,gCACN2C,IAAK,UACLyvD,MAAO,CACL,WAAY,CACV1V,YAAa+X,GACbrjD,WAAY,2BAwBdwnM,EAAY,CACd54M,KAAM,uBACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAagY,GACbtjD,WAAY,yBAedynM,EAAe,CACjB74M,KAAM,0BACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaiY,GACbvjD,WAAY,yBACZklD,aAAc,UAKhB0M,EAAa,CACfhjE,KAAM,uBACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACV1V,YAAakY,GACbxjD,WAAY,0BAyBd5Q,EAAW,CACbR,KAAM,qBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACV1V,YAAamY,GACbzjD,WAAY,wBAKd0nM,EAAyB,CAC3B94M,KAAM,oCACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaoY,GACb1jD,WAAY,sCA6CdsyF,EAAO,CACT1jG,KAAM,iBACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaqY,GACb3jD,WAAY,oBAKdjJ,EAAQ,CACVnI,KAAM,kBACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAasY,GACb5jD,WAAY,qBAKd7I,EAAO,CACTvI,KAAM,uBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAauY,GACb7jD,WAAY,oBAKdzI,EAAQ,CACV3I,KAAM,kBACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACV1V,YAAawY,GACb9jD,WAAY,qBAKdtI,EAAO,CACT9I,KAAM,uBACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACV1V,YAAayY,GACb/jD,WAAY,oBAKlB8gD,EAAuBC,SAAS5a,GAChC2a,EAAuBC,SAzaJ,CACjBnyD,KAAM,WACN2C,IAAK,eACL28C,OAAQ,OACRsW,UAAU,EACV36D,QAAS,CACPgY,SAAQ,uFAAkB,SAAkBmpC,EAAQwI,EAAQ+mC,EAAc9qC,EAAkBgV,EAAiBlvC,GAC3G,OAAOy1B,GAAO2F,UACZ,IACE,MAAMtnC,GAAckxE,EAAajkF,SAAS+S,WAEpCxH,QAAiB4iD,EAAgB5iD,SAASwH,GAChD,OAAuB,IAAlBxH,EAAS/L,MAAgC,IAAlB+L,EAAS/L,MAAgB+L,EAASyD,QAK9DmqC,EAAiBk4J,mBAAmB9lM,GAE7BA,QANL2xC,EAAOr8B,GAAG,+BAAgC,CAAE/tB,GAAIyY,EAASxK,KAO3D,MAAO7N,GAGP,OAFA+rB,EAAcxc,MAAM,6BAA8BvP,QAClDgqD,EAAOr8B,GAAG,iBAAkB,GAAI,CAAE6U,QAAQ,aAoZpD80B,EAAuBC,SA5YP,CACdnyD,KAAM,YACNs/C,OAAQ,OACRsW,UAAU,IA0YZ1D,EAAuBC,SAASgmJ,GAChCjmJ,EAAuBC,SA7XD,CACpBnyD,KAAM,qCACN2C,IAAK,cACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4BAyXjBmgD,EAAuBC,SAASimJ,GAChClmJ,EAAuBC,SAASkmJ,GAChCnmJ,EAAuBC,SAASmmJ,GAChCpmJ,EAAuBC,SAASizD,GAChClzD,EAAuBC,SAASl/C,GAChCi/C,EAAuBC,SAASqmJ,GAChCtmJ,EAAuBC,SAASsmJ,GAChCvmJ,EAAuBC,SAASomJ,GAChCrmJ,EAAuBC,SA5SH,CAClBnyD,KAAM,8BACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAwSjBmgD,EAAuBC,SAnSF,CACnBnyD,KAAM,mCACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBA+RjBmgD,EAAuBC,SAASlgD,GAChCigD,EAAuBC,SAASu9C,GAChCx9C,EAAuBC,SAASwmJ,GAChCzmJ,EAAuBC,SAASumJ,GAChCxmJ,EAAuBC,SA3NZ,CACTnyD,KAAM,iBACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,eAuNjBmgD,EAAuBC,SAlNZ,CACTnyD,KAAM,iBACN41D,UAAU,EACVjzD,IAAK,QACLyvD,MAAO,CACL,WAAY,MA8MhBF,EAAuBC,SAAS0mJ,GAChC3mJ,EAAuBC,SAASymJ,GAChC1mJ,EAAuBC,SAjMH,CAClBnyD,KAAM,yBACN2C,IAAK,WACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,sBA6LjBmgD,EAAuBC,SAAS6Q,GAChC9Q,EAAuBC,SAlKR,CACbnyD,KAAM,gCACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mBA8JjBmgD,EAAuBC,SAzJE,CACvBnyD,KAAM,2BACN2C,IAAK,OACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qBAqJjBmgD,EAAuBC,SAAS3xD,GAChC0xD,EAAuBC,SAAS2mJ,GAChC5mJ,EAAuBC,SA5HD,CACpBnyD,KAAM,2BACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,wBAwHjBmgD,EAAuBC,SAnHI,CACzBnyD,KAAM,yCACN2C,IAAK,mBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,6BA+GjBmgD,EAAuBC,SA1GK,CAC1BnyD,KAAM,sCACN2C,IAAK,mBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BAsGjBmgD,EAAuBC,SAjGG,CACxBnyD,KAAM,iCACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,8BA6FjBmgD,EAAuBC,SAASuxC,GAChCxxC,EAAuBC,SAAShqD,GAChC+pD,EAAuBC,SAAS5pD,GAChC2pD,EAAuBC,SAASxpD,GAChCupD,EAAuBC,SAASrpD,MAGnC8vH,IAAIA,IAEP,MAAMogF,GAAyB,CAAC,mBAAoB,0BAA2B,iBAAkB,wBACjG,SAASf,GAAmClmC,GAC1C,IAAKA,EACH,OAAO,EAET,MAAMknC,EAAiBlnC,GAAcA,EAAWtqK,KAC1CyxM,EAAqBD,EAAiBA,EAAej5M,KAAO,GAClE,OAAQg5M,GAAuBnsM,MAAM6oB,GAAUwjL,EAAmBphL,WAAWpC,KAI/E,SAASkjG,GAAI3zE,EAAcqqI,EAAaroH,EAAgBznD,EAAgBmH,GACtEs+B,EAAaM,SAAS,CAAE99C,GAAI,qBAAsBs6C,eAAgBgwH,GAChE,MAAMtqK,EAAKsqK,EAAWtqK,KAChB6gB,EAAeypJ,EAAWhrJ,OAAOuB,aAEvC,IAEE,UAD0BgnK,EAAY6pB,sBAEpC,MAAmB,yBAAZ1xM,EAAGzH,MAAkCsoB,EAAa9sB,OAAO,wBAElE,MAAOwb,GAEP,MADA2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAC9BA,EAGR,IAAKiwD,EAAe1E,kBAClB,OAAOj6C,EAAa9sB,OAAO,kBAG7B,IAEE,WAD0BgkB,EAAeJ,QACxB63J,MACf,MAAmB,2BAAZxvK,EAAGzH,MAAoCsoB,EAAa9sB,OAAO,0BAEpE,MAAOwb,GAEP,MADA2P,EAAcxc,MAAM,UAAW6M,EAAK,mCAC9BA,EAGR,IAEE,OAA+B,WADP7E,EAAAA,GAAAA,IAAgB,CAAEE,MAAO,EAAGC,MAAO,KAC7CzS,MAAMlE,OACC,4BAAZ8L,EAAGzH,MAAqCsoB,EAAa9sB,OAAO,2BAG9D8sB,EAAa9sB,OAAO,kBAC3B,MAAOwb,GAEP,MADA2P,EAAcxc,MAAM,UAAW6M,EAAK,uCAC9BA,MAIViuC,EAAaM,SAAS,CAAE99C,GAAKwE,IAAWA,EAAMjM,KAAK83B,WAAW,oBAAsBkhL,GAAuB33M,SAAS4K,EAAMjM,QAAS,SAAU+xK,GAC3I,MAAMzpJ,EAAeypJ,EAAWhrJ,OAAOuB,cAEvCy5B,iBACE,WAC4BviC,EAAeJ,QACxB63J,OACR3uJ,EAAa9sB,OAAO,0BAE7B,MAAOwb,GAEP,MADA2P,EAAcxc,MAAM,UAAW6M,EAAK,mCAC9BA,GAIVoiM,Q,gGCnoBJ,MAEaC,EAA0B,CACrC38J,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACR0rC,UAAW,IACX28J,cAAe,MAEjBp9I,YAAY,I,sBCRd,MAAMzf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACTqsE,MAAO,IACPvyD,SAAU,IACVC,QAAS,IACTmc,aAAc,IACdoF,aAAc,IACdthB,aAAc,IACdw8J,YAAa,IACbC,gBAAiB,IACjBC,UAAW,IACXC,YAAa,Q,iBClBjB5nM,QAAQ5W,OAAO,iBAAiBkW,WAAW,4BAA6B,CACtE,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKsgE,cAAgB,SAAUjsB,GAC7B,OAAOA,EAAKopK,WAAaz9M,KAAKw9M,aAGhCx9M,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAQr0C,KAAKsgE,cAAcjsB,IAG7Br0C,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBC7CX,MAAMpf,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,cAAe,CACvD2qC,YAAaD,EACbrrC,WAAY,WACVlV,KAAK+P,MAAQ,CACX6wC,QAAS,OACTC,cAAc,EACdkoE,mBAAoB,KACpBxqD,WAAY,IAGdv+D,KAAK09M,cAAgB,SAAUC,GAC7B39M,KAAK+P,MAAM8wC,aAAe7gD,KAAK+P,MAAM6wC,UAAY+8J,IAAc39M,KAAK+P,MAAM8wC,aAC1E7gD,KAAK+P,MAAM6wC,QAAU+8J,IAGzB5oM,SAAU,CACR8xB,QAAS,IACT+2K,WAAY,IACZC,oBAAqB,Q,qBCpBzB,MAAMt9J,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,uBAAwB,CAChE2qC,YAAaD,EACbrrC,WAAY,iCACZH,SAAU,CAGR4C,SAAU,IAGV9M,gBAAiB,IACjB+rH,UAAW,Q,iGCTfhhH,QAAQ5W,OAAO,iBAAiBkW,WAAW,iCAAkC,CAC3E,KACA,SACA,cACA,cACA,gBACA,iBACA,yBACA,SAAU4e,EAAI1e,EAAQg+K,EAAa0qB,EAAarzL,EAAesgD,EAAgBsjB,GAC7E,IAAI7xB,EAAOx8D,KAEXw8D,EAAK4D,IAAMA,EAAAA,EAEX5D,EAAKuhJ,eAAiB,GACtBvhJ,EAAKwhJ,eAAiB,GAEtBxhJ,EAAKyhJ,6BAEL,SAAsCplM,GACpCzD,EAAOE,YAAW,KAChBknD,EAAK7kD,SAASslF,qBAAuBpkF,MAJwBxZ,KAAKm9D,GAoCtEx8D,KAAKmjD,QACL,WACE,IAAIl5C,EAAU8gE,EAAe9gE,UAC7BuyD,EAAKvyD,QAAUA,EAEXA,IACFuyD,EAAK7kD,SAAS/L,UAAY4wD,EAAK4D,IAAI89I,gBAGrCpqL,EAAGxB,IAAI,CACLyrL,eAAgBD,EAAYrxM,QAC5BuxM,eAAgB/zM,EAAUmpL,EAAYnnL,OAAM,GAAS,KAEpD+P,MAAK,SAAiBvX,GACrB+3D,EAAKwhJ,eAAiB,IAAUv5M,EAAKu5M,eAAgB,WAAY,OAEjE,IAAID,EAAiB,IAAUt5M,EAAKs5M,eAAgB,OAAQ,OAM5D,OALAvhJ,EAAKuhJ,eAAiBA,EACjB9zM,GAAqC,IAA1B8zM,EAAet+M,SAC7B+8D,EAAK7kD,SAASwmM,gBAAkBJ,GAG3BjqL,EAAGupB,KAAKmf,EAAK3xD,iBAAmBwjF,EAAuB+vH,yBAAyB5hJ,EAAK3xD,qBAE7FmR,MAAK,SAAiBvX,GACrB,GAAIA,EAAM,CACR,IAAI6F,EAAkB7F,EAAK6F,gBACvBE,EAAkB/F,EAAK+F,iBAvDnC,SAAsBK,EAAiBZ,GACjCA,GAAWY,EAAgBe,YAAcw0D,EAAAA,EAAAA,QAC3C5D,EAAK7kD,SAAS/L,UAAYw0D,EAAAA,EAAAA,WAE1B5D,EAAK7kD,SAAS/L,UAAYf,EAAgBe,UAGxC4wD,EAAK7kD,SAAS/L,YAAcw0D,EAAAA,EAAAA,SAC9B5D,EAAK7kD,SAASslF,sBAAuB,GAgDjCohH,CAAa7hJ,EAAK3xD,gBAAiBZ,GA5C3C,SAAoCK,EAAiBE,GACnDoL,QAAQiC,QAAQ2kD,EAAKwhJ,gBAAgB,SAAU3xM,GACjC,IAAO/B,EAAiB,CAAEiC,GAAIF,EAAKE,OAE7CF,EAAK2yB,UAAW,MAIpBppB,QAAQiC,QAAQ2kD,EAAKuhJ,gBAAgB,SAAUnxM,GACjC,IAAOpC,EAAiB,CAAE+B,GAAIK,EAAKL,OAE7CK,EAAKoyB,UAAW,MAkCds/K,CAA2Bh0M,EAAiBE,OAG/CsyD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oDAGxC9a,KAAKu+M,mBAAqB,SAAUhuG,GAClCn7F,EAAOE,YAAW,KAChBknD,EAAK7kD,SAASslF,qBAAuBsT,W,6GCxFxC,SAAS3gB,IACd5vF,KAAKi9F,sBAAuB,EAC5Bj9F,KAAK4L,UAAYw0D,EAAAA,EAAAA,QACjBpgE,KAAKw+M,gBAAkB,GACvBx+M,KAAKm+M,gBAAkB,K,wFCJzB,UAAevoM,IAAAA,OACL,4CAA6C,IACpDC,UAAU,sBAAuB4oM,EAAAA,qBACjC5oM,UAAU,mCAAoC6oM,EAAAA,kCAHjD,M,yGCLA,MAEaA,EAAmC,CAC9Cl+J,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACRpO,QAAS,IACThD,MAAO,O,4FCNX,MAEa86M,EAAsB,CACjCj+J,YAHoCxrC,EAAQ,OAI5CE,WAAY,gCACZklD,aAAc,OACdrlD,SAAU,CACR4pM,uBAAwB,IACxBnB,YAAa,IACboB,WAAY,IACZhxM,aAAc,IACdunF,iBAAkB,IAClB6c,YAAa,IACb3J,eAAgB,O,oJCPpB,MAAMw2G,EAEJ5+J,YAAYx1B,EAAey1J,EAAenuE,GACxCjzG,OAAOM,OAAOY,KAAM,CAAEyqB,cAAAA,EAAey1J,cAAAA,EAAenuE,YAAAA,IAEpD/xG,KAAKqV,aAAc,EAEnBrV,KAAKqgL,kBAAoBrgL,KAAKqgL,kBAAkBhhL,KAAKW,MACrDA,KAAKmiE,aAAeniE,KAAKmiE,aAAa9iE,KAAKW,MAG7CmiE,eACE,MAAMhwC,EAASnyB,KAAK2+M,uBACdG,EAAwB3sL,EAAOigF,mBAC/B2sG,EAAwB5sL,EAAOmgF,mBAC/B0sG,EAAsB,IAASh/M,KAAK0gL,wBAAyB,CAAEz5F,SAAS,EAAMj8E,KAAM,OAAQyyM,WAAW,IACvGwB,EAAsB,IAASj/M,KAAK0gL,wBAAyB,CAAEz5F,SAAS,EAAMj8E,KAAM,OAAQyyM,WAAW,IAEvGyB,EAAiBl/M,KAAKkgL,cAAci/B,uBAAuBL,EAAuBC,EAAuBC,EAAqBC,GACpIj/M,KAAK2+M,uBAAuBvsG,mBAAqB8sG,EAAeE,mBAChEp/M,KAAK2+M,uBAAuBrsG,mBAAqB4sG,EAAeG,mBAChEr/M,KAAK4N,eAGPuzK,kBACE,MAAMhvJ,EAASnyB,KAAK2+M,uBACdG,EAAwB3sL,EAAOigF,mBAC/B2sG,EAAwB5sL,EAAOmgF,mBAC/BgtG,EAAiBt/M,KAAK2T,WAAW4rM,aAAahzM,GAC9CizM,EAAuB,IAASx/M,KAAK2T,WAAW4sK,mBAAoBzD,GAA2B,SAAhBA,EAAO9xK,OACtFy0M,EAAuB,IAASz/M,KAAK2T,WAAW4sK,mBAAoBzD,GAA2B,SAAhBA,EAAO9xK,OAEtFk0M,EAAiBl/M,KAAKkgL,cAAci/B,uBAAuBL,EAAuBC,EAAuBS,EAAsBC,EAAsBH,GAC3Jt/M,KAAK2+M,uBAAuBvsG,mBAAqB8sG,EAAeE,mBAChEp/M,KAAK2+M,uBAAuBrsG,mBAAqB4sG,EAAeG,mBAChEr/M,KAAK4N,eAGPyyK,kBAAkBq/B,GAChB,MAAMvtL,EAASnyB,KAAK2+M,uBACdS,EAAqBjtL,EAAOigF,mBAC5BitG,EAAqBltL,EAAOmgF,mBAC5BktG,EAAuB,IAASE,GAAmB5iC,GAA2B,SAAhBA,EAAO9xK,OACrEy0M,EAAuB,IAASC,GAAmB5iC,GAA2B,SAAhBA,EAAO9xK,OAE3E,IAAUw0M,GAAuB1iC,UAAkBsiC,EAAmBtiC,EAAOvwK,MAC7E,IAAUkzM,GAAuB3iC,UAAkBuiC,EAAmBviC,EAAOvwK,MAC7EvM,KAAK4N,eAGP+xM,kBAAkBx8M,GAChB,QAAKnD,KAAKqV,aAIHlS,EAAKqnC,KAAOs2I,EAAAA,UAAAA,SAGrB8+B,UAAUz8M,GACR,OAAKnD,KAAKqV,YAINrV,KAAK2/M,kBAAkBx8M,GACjB,GAAEA,EAAK0J,kCAGT,GAAE1J,EAAK0J,iBAPN1J,EAAK0J,KAUH,gBACX,IACM7M,KAAKqoG,iBACProG,KAAKqV,aAAcqG,EAAAA,EAAAA,IAAc1b,KAAKqoG,iBAGxC,MAAMl2E,EAASnyB,KAAK2+M,uBACdv7J,EAASpjD,KAAKw9M,YAEdtqG,QAAclzG,KAAK+xG,YAAYmB,QACrClzG,KAAKkzG,MAAQ,IAAUA,EAAO,WAAY,OAC1ClzG,KAAK2T,WAAa,CAChB4rM,aAAcv/M,KAAKkzG,MAAMzpG,MAAMtG,IAAUnD,KAAK2/M,kBAAkBx8M,MAGlE,MAAMsB,QAAazE,KAAKkgL,cAAc58B,SAASnxH,EAAQixB,EAAQpjD,KAAKkzG,OAEhElzG,KAAKgyG,cACPvtG,EAAKo8K,uBAAyB7gL,KAAKgyG,YAAYvtG,EAAKo8K,yBAGtD7gL,KAAK6gL,uBAAyB,IAAUp8K,EAAKo8K,uBAAwB,OAAQ,OAC7E7gL,KAAK0gL,wBAA0Bj8K,EAAKi8K,wBACpC,MAAO5lK,GACP9a,KAAK6gL,uBAAyB,GAC9B7gL,KAAK0gL,wBAA0B,GAC/B1gL,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iC,0DAK/C,YACAlF,IAAAA,OAAe,iBAAiBV,WAAW,gCAAiC2pM,I,2EC5G5E,MAAMt+J,EAAgCvrC,EAAQ,MAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,8BAA+B,CACvE2qC,YAAaD,EACbrrC,WAAY2qM,EAAAA,QACZ9qM,SAAU,CACR69G,YAAa,IACbprB,KAAM,IACNzxF,OAAQ,IACR+pM,qBAAsB,IAEtBC,YAAa,IACbC,aAAc,Q,gICTlB,MAAMC,EAEJhgK,YAAYC,GACVlgD,KAAKkgD,OAASA,EAEdlgD,KAAK+P,MAAQ,CACXwhK,UAAW,CACTn7J,MAAO,KACP9D,OAAQ,GACR8wB,WAAY,EACZ3sB,WAAY,GAEdgG,WAAY,CACVrG,MAAO,KACP9D,OAAQ,GACR8wB,WAAY,EACZ3sB,WAAY,IAIhBzW,KAAKkpH,UAAY,CACfzsG,WAAY,GACZ80J,UAAW,MAGbvxK,KAAKkgN,sBAAwBlgN,KAAKkgN,sBAAsB7gN,KAAKW,MAC7DA,KAAKmgN,uBAAyBngN,KAAKmgN,uBAAuB9gN,KAAKW,MAC/DA,KAAK6pH,kBAAoB7pH,KAAK6pH,kBAAkBxqH,KAAKW,MACrDA,KAAK8pH,mBAAqB9pH,KAAK8pH,mBAAmBzqH,KAAKW,MACvDA,KAAKogN,SAAWpgN,KAAKogN,SAAS/gN,KAAKW,MAGrCmjD,UACEnjD,KAAKogN,WAGPpsL,YAAW,YAAE4+F,IACPA,GAAeA,EAAYjK,cAC7B3oH,KAAKogN,WAITA,WACEpgN,KAAKkgN,wBACLlgN,KAAKmgN,yBAIPD,wBACE,OAAOlgN,KAAKkgD,QAAO2F,UACjB,MAAM,MAAE1vC,EAAF,OAAS0zD,EAAT,MAAiBzzD,GAAUpW,KAAKqgN,kBAAkB,aAClDnqM,EAAQ,CAAE2zD,OAAAA,EAAQ83C,MAAOhoG,EAAAA,IAEzBjD,QAAiBT,EAAAA,EAAAA,IAAgB,CAAEE,MAAAA,EAAOC,MAAAA,EAAOF,MAAAA,IAEjDgzG,EAAY,IAASxyG,EAAS/S,OAAQoT,IAAc,IAAW/W,KAAK4yH,YAAa77G,EAASxK,MAChGvM,KAAKsgN,aAAa,YAAap3F,EAAWxyG,EAASD,YACnDzW,KAAKugN,YAAkD,IAApCvgN,KAAK+P,MAAMwhK,UAAU96J,cAI5C0pM,yBACE,OAAOngN,KAAKkgD,QAAO2F,UACjB,IAAInvC,EAAW,CAAE/S,MAAO,GAAI8S,WAAY,GACxC,GAAIzW,KAAK4yH,YAAYnzH,OAAS,EAAG,CAE/B,MAAM,MAAE0W,EAAF,OAAS0zD,EAAT,MAAiBzzD,GAAUpW,KAAKqgN,kBAAkB,cAClDnqM,EAAQ,CAAE2zD,OAAAA,EAAQ83C,MAAOhoG,EAAAA,GAAWi5G,YAAa5yH,KAAK4yH,aAE5Dl8G,QAAiBT,EAAAA,EAAAA,IAAgB,CAAEE,MAAAA,EAAOC,MAAAA,EAAOF,MAAAA,IAGnDlW,KAAKsgN,aAAa,aAAc5pM,EAAS/S,MAAO+S,EAASD,eAM7DozG,kBAAkB9yG,GAChB/W,KAAK+/M,YAAYhpM,GAGnB+yG,mBAAmB/yG,GACjB/W,KAAKggN,aAAajpM,GAKpBspM,kBAAkBG,GAChB,MAAM,WAAEp9K,EAAF,MAAchtB,EAAd,OAAqByzD,GAAW7pE,KAAK+P,MAAMywM,GAGjD,MAAO,CAAErqM,OAFMitB,EAAa,GAAKhtB,EAAQ,EAEzByzD,OAAAA,EAAQzzD,MAAAA,GAG1BkqM,aAAaE,EAAWt3F,EAAWzyG,GACjCzW,KAAKkpH,UAAUs3F,GAAat3F,EAC5BlpH,KAAK+P,MAAMywM,GAAW/pM,WAAazR,SAASyR,EAAY,K,qBAK5Db,IAAAA,OAAe,iBAAiBV,WAAW,wCAAyC+qM,GACpF,a,iBC7GArqM,QAAQ5W,OAAO,iBAAiB8gE,UAAU,YAAa,CACrD,WACA,SAAsBuqB,GAUpB,MATgB,CACdtqB,SAAU,IACVz/B,KAAM,SAAUknB,EAAOuC,GACrBsgC,GAAS,WACPtgC,EAAQ,GAAGsB,iB,sBCPrB,MAAM9K,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,YAAa,CACrD2qC,YAAaD,K,iBCHf3qC,QAAQ5W,OAAO,iBAAiB8gE,UAAU,iBAAiB,WAUzD,MATgB,CACdC,SAAU,IACVvY,MAAO,CACLi5J,SAAU,kBAEZzgJ,YAAY,EACZlrD,SAAU,iJ,sBCPd,MAAMyrC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,aAAc,CACtD2qC,YAAaD,EACbrrC,WAAY,uBACZH,SAAU,CACR2rM,WAAY,IACZzuM,YAAa,IACb0uM,IAAK,IACL1tK,SAAU,IACV7rC,SAAU,IACVzD,MAAO,Q,iBCXXiS,QAAQ5W,OAAO,iBAAiBkW,WAAW,uBAA3C,0CAAmE,SAA8BouF,EAAWs9G,EAAmBxrM,GAC7H,IAAIonD,EAAOx8D,KAEXA,KAAKg0B,WAAa,UAAoB,MAAErwB,IAClCA,GAASA,EAAMglH,cAAgBnsD,EAAK/nC,QAAU+nC,EAAK/nC,OAAOw4E,aAAetpG,EAAMglH,cACjFnsD,EAAK/nC,OAAO7V,SAASjb,EAAMglH,eAI/B3oH,KAAKmjD,QAAU,WACbmgD,EAAUiC,OAAM,WACd,IAAIs7G,EAAgBv9G,EAAU,GAAGhR,eAAe91B,EAAKkkJ,YACrDlkJ,EAAK/nC,OAASmsL,EAAkBE,yBAAyBD,EAAerkJ,EAAKmkJ,IAAKnkJ,EAAKvpB,UACnFupB,EAAKp1D,UACPo1D,EAAK/nC,OAAO09D,GAAG,UAAU,IAAInuF,IAASoR,EAAOE,YAAW,IAAMknD,EAAKp1D,YAAYpD,OAE7Ew4D,EAAK74D,OACP64D,EAAK/nC,OAAO7V,SAAS49C,EAAK74D,e,gFCjBnB,MAAMo9M,EAEnB9gK,YAAY5a,GACVrlC,KAAKqlC,UAAYA,EACjBrlC,KAAK+P,MAAQ,CAAEixM,UAAU,GAG3BC,gBACEjhN,KAAKqlC,UAAUL,SAAShlC,KAAK2D,OAC7B3D,KAAK+P,MAAMixM,UAAW,EACtB7iM,YAAW,IAAOne,KAAK+P,MAAMixM,UAAW,GAAQ,M,sGCVpD,MAAMzgK,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,aAAc,CACtD2qC,YAAaD,EACbrrC,WAFsD,UAGtDH,SAAU,CACRpR,MAAO,Q,yDCRXiS,QAAQ5W,OAAO,iBAAiB8gE,UAAU,YAAY,WACpD,MAAO,CACLC,SAAU,IACV/qD,QAAS,UACTsrB,KAAM,SAAUlrB,EAAQye,EAAUqtL,EAAQC,GACxCA,EAAQC,YAAYC,YAAc,SAAUC,GAC1C,IAEE,OADAC,EAAAA,EAAAA,IAAoBD,IACb,EACP,MAAOrzM,GACP,OAAO,U,0CCZjB,MAAMuzM,EAEJvhK,cACEjgD,KAAK84L,cAAgB,CACnB,CAAElyL,MAAO,QAASjD,MAAO,GACzB,CAAEiD,MAAO,UAAWjD,MAAO,IAG7B3D,KAAKyhN,cAAgB,CACnB,CAAE76M,MAAO,QAASjD,MAAO,GACzB,CAAEiD,MAAO,aAAcjD,MAAO,K,aAKpC,a,yDCfA,MAAM48C,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,6BAA8B,CACtE2qC,YAAaD,EACbrrC,WAAYssM,EAAAA,QACZzsM,SAAU,CACRpB,WAAY,IACZ+tM,kBAAmB,IACnBC,cAAe,IACfC,UAAW,Q,0CCXf,MAAMC,EAEJ5hK,YAAYC,EAAQw4F,EAAuBjuH,GACzC3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQw4F,sBAAAA,EAAuBjuH,cAAAA,IAErDzqB,KAAK+zH,iBAAmB,KACxB/zH,KAAK07D,UAAY,KAGO,2BAACshE,GACzBh9H,KAAK+zH,iBAAmB/zH,KAAK07D,UAAUjyD,MAAMg2C,GAAMA,EAAElzC,KAAOywH,IAC5Dh9H,KAAKoH,SAAS41H,EAAYh9H,KAAK+zH,kBAGjC//F,YAAW,MAAErwB,IACPA,GAASA,EAAMglH,cAAgB3oH,KAAK07D,WACtC17D,KAAK8hN,qBAAqBn+M,EAAMglH,cAIpCxlE,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,IACE,MAAM6V,QAAkB17D,KAAK04I,sBAAsBY,gBAAgBt5I,KAAK+hN,WACxE/hN,KAAK07D,UAAYA,EAAUv9D,KAAK2W,IAAD,IAAoBA,EAAUlO,MAAQ,GAAEkO,EAAS0vB,WAAW1vB,EAASwtE,kBAChGtiF,KAAK2D,OACP3D,KAAK8hN,qBAAqB9hN,KAAK2D,OAEjC,MAAOmX,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4C,6DAMjD,a,kICnCA,MAKaknM,EAAyB,CACpCxhK,YANoCxrC,EAAQ,OAO5CE,WAFoC,UAGpCH,SAAU,CACRktM,gBAAiB,IACjBF,UAAW,IAEXp+M,MAAO,IACPyD,SAAU,MAIdwO,IAAAA,OAAe,iBAAiBC,UAAU,yBAA0BmsM,I,iBCXpEpsM,QAAQ5W,OAAO,oBAAoBkW,WAAW,gCAA9C,2CAA+E,SAAUE,EAAQkoD,EAAaC,GAC5G3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKkiN,UAGL,SAAmBn4M,GACjB,OAAQA,GACN,KAbG,EAcD,MAAO,QACT,KAbQ,EAcN,MAAO,WAET,QACE,MAAO,eAVb/J,KAAKmjD,QAcL,WACEnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,iECtDT,MAAMpf,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,iBAAiBC,UAAU,sBAAuB,CAC/D2qC,YAAaD,EACbrrC,WAAY,gCACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXgb,UAAW,IACX/a,SAAU,IACVwhK,cAAe,IACfC,gBAAiB,IACjBC,cAAe,IACfxoE,cAAe,IACfyoE,WAAY,IACZC,SAAU,Q,gFCjBC,MAAMC,EAEnBviK,YAAY7qC,EAAQszC,EAAQ4U,EAAaC,GACvC3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKyiN,WAAa,KACZziN,KAAKktG,aACPxkD,EAAOr8B,GAAG,uCAIdrsB,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B5+D,KAAK2/D,6B,6ICpCX,MAAMpf,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,wBAAyB,CACjE2qC,YAAaD,EACbrrC,WAFiE,UAGjEH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTmc,aAAc,IACdmwC,UAAW,Q,gFCfA,MAAMw1G,EACnBziK,cACEjgD,KAAK+P,MAAQ,CACXuoL,QAAQ,M,6ECHd,MAAM/3I,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,6BAA8B,CACtE2qC,YAAaD,EACbrrC,WAFsE,UAGtEH,SAAU,CACRoxB,QAAS,IACT/+B,SAAU,Q,0CCXd,MAAMm5C,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,qBAAsB,CAC9D2qC,YAAaD,EACbrrC,WAAY,+BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXC,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdksD,aAAc,Q,oFCZlBrzG,QAAQ5W,OAAO,iBAAiBkW,WAAW,+BAAgC,CACzE,SACA,cACA,YACA,mBACA,oBACA,gBACA,SAAUE,EAAQkoD,EAAa3U,EAAW4U,EAAkB8qD,GAC1DzyG,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAK+P,MAAQjR,OAAOM,OAAOY,KAAK+P,MAAO,CACrCwwD,eAAgBvgE,KAAKugE,eACrB3f,QAAS5gD,KAAK4gD,QACdzf,SAAS,EACTs/B,gBAAiB,GACjB8nD,qBAAsB,EACtBnlF,WAAY,EACZu/K,cAAU9wM,IAGZ7R,KAAKwoH,kBAAoB,WACvBxoH,KAAK+P,MAAMoxB,SAAU,EACrBnhC,KAAK+P,MAAM0wD,gBAAkB,GAC7B,MAAMtqD,GAASnW,KAAK+P,MAAMqzB,WAAa,GAAKpjC,KAAK+P,MAAMg5G,mBAAqB,EAC5E/oH,KAAKipH,aAAa9yG,EAAOnW,KAAK+P,MAAMg5G,mBAAoB/oH,KAAK+P,MAAMwuD,YAChEviD,MAAMvX,IACLzE,KAAK+P,MAAM0wD,gBAAkBh8D,EAAKykH,UAClClpH,KAAK+P,MAAMo5G,qBAAuB1kH,EAAKgS,WACvCzW,KAAK4iN,0BAEN1gJ,SAAQ,KACPliE,KAAK+P,MAAMoxB,SAAU,MAI3BnhC,KAAKiiC,aAAe,SAAU4mF,GAC5B7oH,KAAK+P,MAAMqzB,WAAaylF,EACxB7oH,KAAKwoH,qBAGPxoH,KAAK6iN,YAAc,WACjB9+M,OAAO2a,aAAaO,QAAQ,iBAAkB,iBAMhDjf,KAAKy+D,mBAAqB,WACxB,IAAIj2B,EAAcxoC,KAAK+P,MAAMwuD,WAC7BhB,EAAiByrD,wBAAwBhpH,KAAK2gD,SAAUnY,GACxDxoC,KAAKwoH,qBAMPxoH,KAAKyoH,sBAAwB,WAC3BJ,EAAkBS,mBAAmB9oH,KAAK2gD,SAAU3gD,KAAK+P,MAAMg5G,oBAC/D/oH,KAAKwoH,qBAGPxoH,KAAK8iN,aAAe,SAAUH,GAC5B3iN,KAAK+P,MAAM4yM,SAAWh6J,EAAU3oD,KAAKwoH,kBAAkBnpH,KAAKW,MAAO2iN,IAGrE3iN,KAAKq0B,WAAa,WAChBs0B,EAAU7gC,OAAO9nB,KAAK+P,MAAM4yM,UAC5B3iN,KAAK+P,MAAM4yM,cAAW9wM,GAMxB7R,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAoB,IAAhBA,EAAKp7B,QAMXjZ,KAAK4iN,qBAAuB,WAC1B,IAAI5jL,EAAW,GACf,IAAUh/B,KAAK+P,MAAM0wD,iBAAkBpsB,IACjC,IAASr0C,KAAK+P,MAAM+5B,eAAgBvqC,GAAMA,EAAEgN,IAAM8nC,EAAK9nC,KAAI9M,OAAS,IACtE40C,EAAK2mC,SAAU,EACfh8C,EAASp7B,KAAKywC,OAGlBr0C,KAAK+P,MAAM+5B,cAAgB9K,GAM7Bh/B,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAEL,IAAIC,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B5+D,KAAKwoH,oBACLxoH,KAAK8iN,aAAa,U,gFCzHT,MAAMC,EACnBj0K,YACE,OAAO,EAAI9uC,KAAK+P,MAAMtQ,QAAUO,KAAK+P,MAAMtQ,OAASO,KAAK26C,OAAOl7C,OAGlEujN,aAAax6K,GACX,OAAIxoC,KAAKijN,UAAUz6K,GACVxoC,KAAKoH,SACVpH,KAAKorC,UACLprC,KAAK+P,MAAMuC,QAAQkvB,GAAMA,IAAMgH,KAG5BxoC,KAAKoH,SAASpH,KAAKorC,UAAW,IAAIprC,KAAK+P,MAAOy4B,IAGvDy6K,UAAUz6K,GACR,OAAOxoC,KAAK+P,MAAM5K,SAASqjC,M,uGChB/B,MAAM+X,EAAgCvrC,EAAQ,OAIjCkuM,EAAkB,CAC7BnuM,SAAU,CACR4lC,OAAQ,IACR5qC,MAAO,IACPq7B,UAAW,IACXhkC,SAAU,KAEZ8N,WAP6B,UAQ7BsrC,YAAaD,EACbyf,YAAY,I,wKCJdpqD,QAAQ5W,OAAO,iBAAiBkW,WAAW,6BAA8B,CACvE,YACA,oBACA,mBACA,uBACA,SAAUyzC,EAAW0/D,EAAmB9qD,EAAkBrQ,GACxDltD,KAAKogE,IAAMA,EAAAA,EAEXpgE,KAAK+P,MAAQ,CACXihC,WAAW,EACX4P,QAAS5gD,KAAK4gD,QACdmoE,mBAAoB77D,EACpBi2J,mBAAmB,EACf3zJ,wBACF,OAAOxvD,KAAK8pC,cAAcrqC,QAAU,GAEtCqqC,cAAe,IAGjB9pC,KAAKsE,SAAW,CACds6D,MAAM,EACNmkC,SAAU,CACRioB,aAAa,EACb9nB,YAAa,OAIjBljG,KAAKojN,oBAAsB,WACzBpjN,KAAK+P,MAAMihC,WAAY,EACvBhxC,KAAK+P,MAAM+5B,cAAgB,GAC3B,IAAM9pC,KAAK+P,MAAM0wD,iBAAkBpsB,GAAUA,EAAK2mC,SAAU,KAG9Dh7E,KAAKqjN,0BAML,WACE9lJ,EAAiByrD,wBAAwBhpH,KAAK2gD,SAAU3gD,KAAK+P,MAAMwuD,aALrEv+D,KAAKy+D,mBAAqB,WACxB,OAAOz+D,KAAKqjN,6BAOdrjN,KAAK09M,cAAgB,SAAuBC,GAC1C39M,KAAK+P,MAAM8wC,aAAe7gD,KAAK+P,MAAM6wC,UAAY+8J,IAAc39M,KAAK+P,MAAM8wC,aAC1E7gD,KAAK+P,MAAM6wC,QAAU+8J,EACrBpgJ,EAAiB+lJ,kBAAkBtjN,KAAK2gD,SAAUg9J,EAAY39M,KAAK+P,MAAM8wC,eAG3E7gD,KAAKujN,WAAa,SAAUlvK,EAAMV,GAEhC,GAAIA,GAASA,EAAM6vK,cAAcC,UAAYzjN,KAAK+P,MAAM2zM,iBAAkB,CACxE,MAAMC,EAAiB3jN,KAAK+P,MAAM0wD,gBAAgB56D,QAAQ7F,KAAK+P,MAAM2zM,kBAC/DE,EAAgB5jN,KAAK+P,MAAM0wD,gBAAgB56D,QAAQwuC,GACnDwvK,EAAe,IAAS7jN,KAAK+P,MAAM0wD,iBAAiB,CAACpsB,EAAMlU,IA3DzE,SAAmBx8B,EAAOykE,EAAGC,GAC3B,OAAQ1kE,GAASykE,GAAKzkE,GAAS0kE,GAAO1kE,GAAS0kE,GAAK1kE,GAASykE,EA2D9C07I,CAAU3jL,EAAOwjL,EAAgBC,KAEpCjgN,EAAQ3D,KAAK+P,MAAM2zM,iBAAiB1oI,QAE1C,IAAU6oI,GAAetkN,IAClBS,KAAKugE,eAAehhE,KAGzBA,EAAEy7E,QAAUr3E,MAEd3D,KAAK+P,MAAM2zM,iBAAmBrvK,OACrBV,IACTU,EAAK2mC,SAAW3mC,EAAK2mC,QACrBh7E,KAAK+P,MAAM2zM,iBAAmBrvK,GAEhCr0C,KAAK+P,MAAM+5B,cAAgB,IAAO,IAAS9pC,KAAK+P,MAAM+5B,cAAe9pC,KAAK+P,MAAM0wD,kBAAkBnuD,QAAQ/S,GAAMA,EAAEy7E,UAC9GrnC,GAAS3zC,KAAK+P,MAAMihC,WAAahxC,KAAK+P,MAAM+5B,cAAcrqC,SAAWO,KAAK+P,MAAM0wD,gBAAgBhhE,SAClGO,KAAK+P,MAAMihC,WAAY,GAEzBhxC,KAAK+jN,sBAGP/jN,KAAKgxC,UAAY,WACfhxC,KAAK+P,MAAM2zM,iBAAmB,KAC9B,IAAK,IAAInkN,EAAI,EAAGA,EAAIS,KAAK+P,MAAM0wD,gBAAgBhhE,OAAQF,IAAK,CAC1D,IAAI80C,EAAOr0C,KAAK+P,MAAM0wD,gBAAgBlhE,GAClCS,KAAKugE,eAAelsB,IAASA,EAAK2mC,UAAYh7E,KAAK+P,MAAMihC,YAC3DqD,EAAK2mC,QAAUh7E,KAAK+P,MAAMihC,UAC1BhxC,KAAKujN,WAAWlvK,IAGpBr0C,KAAK+jN,sBAMP/jN,KAAKugE,eAAiB,WACpB,OAAO,GAMTvgE,KAAKm+D,wBAA0B,aAO/Bn+D,KAAK+jN,mBAAqB,aAI1B/jN,KAAKyoH,sBAAwB,WAC3BJ,EAAkBS,mBAAmB9oH,KAAK2gD,SAAU3gD,KAAK+P,MAAMg5G,qBAGjE/oH,KAAKk+D,YAAc,WACjBl+D,KAAKgkN,iBAAiBhkN,KAAKgkN,gBAAiBhkN,KAAKgkN,eACjDhkN,KAAK+P,MAAM8wC,eAAe7gD,KAAK6gD,cAAe7gD,KAAK6gD,aACnD7gD,KAAK+P,MAAMg5G,mBAAqBV,EAAkB47F,mBAAmBjkN,KAAK2gD,WAU5E3gD,KAAKmjD,QAAU,WACbnjD,KAAKkkN,kBAGPlkN,KAAKkkN,eAAiB,WACpBlkN,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,2BAEL,IAAI4D,EAAyBhG,EAAiBiG,4BAA4BxjE,KAAK2gD,UAChD,OAA3B4iB,IACFvjE,KAAK6iE,iBAAmBU,IAO5BvjE,KAAK+iG,cAAWlxF,EAEhB7R,KAAKq0B,WAAa,WAChBr0B,KAAK8iG,gBAGP9iG,KAAK8iG,aAAe,WACdltF,QAAQotF,UAAUhjG,KAAK+iG,YACzBp6C,EAAU7gC,OAAO9nB,KAAK+iG,UACtB/iG,KAAK+iG,cAAWlxF,IAIpB7R,KAAKwxL,cAAgB,WACnBxxL,KAAK+iG,SAAWp6C,GAAU9C,gBAClB7lD,KAAKg9D,kBACXh9D,KAAKqjE,kBACiC,IAArCrjE,KAAKsE,SAASy+F,SAASG,cAG5BljG,KAAK2/D,yBAA2B,WAC9B3/D,KAAK8iG,eACDltF,QAAQotF,UAAUhjG,KAAKg9D,kBAAoBh9D,KAAKsE,SAASy+F,SAASioB,cACpEhrH,KAAKwxL,gBACLjoI,EAAE,sBAAsB+gB,OACxB/gB,EAAE,sBAAsBghB,QAAQ,OAElChN,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAM5DtE,KAAKqjE,cAAgB,iB,sBCtNzB,MAAM9iB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,Q,yHCJlB,UAAennD,IAAAA,OACL,6BAA8B,CAAC,0CACtCC,UAAU,oBAAqBsuM,EAAAA,mBAC/BtuM,UAAU,oBAAqBuuM,EAAAA,mBAC/BvuM,UAAU,sBAAuBwuM,EAAAA,qBACjCxuM,UAAU,kBAAmBqtM,EAAAA,iBALhC,M,4FCRA,MAEamB,EAAsB,CACjCtvM,SAAU,CACRuvM,cAAe,IACfluM,MAAO,IACPmuM,cAAe,IACfC,aAAc,KAEhBhkK,YAToCxrC,EAAQ,Q,sBCA9C,MAAMurC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,sBAAuB,CAC/D2qC,YAAaD,EACbrrC,WAAY,gCACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACTtoB,WAAY,IACZoiC,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACd0nJ,UAAW,IACX59C,aAAc,IACdxmC,gBAAiB,Q,yDCXrB,SAASqkF,EAA8BtvM,EAAQkoD,EAAa5U,EAAQqiB,EAAgBxN,GAClF3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAOA,EAAK9nC,IAGdvM,KAAK2kN,eAAkBtwK,GACdr0C,KAAKiK,SAAWoqC,EAAK9nC,KAAOvM,KAAK6mK,aAG1C7mK,KAAK4kN,aAAe,SAAUvwK,GAE1Br0C,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,4BACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,8BACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,iCAEtBZ,EAAOr8B,GAAG,iCAAkC,CAAE/tB,GAAI+1C,EAAK9nC,KAEvDvM,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,mBACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,0BACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,6BAEtBZ,EAAOr8B,GAAG,6BAA8B,CAAE/tB,GAAI+1C,EAAK9nC,KAEnDm8C,EAAOr8B,GAAG,gCAAiC,CAAE/tB,GAAI+1C,EAAK9nC,MAI1DvM,KAAK6kN,uBAAyB,SAAUxwK,GAEpCr0C,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,4BACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,8BACtBtpD,KAAK6mK,eAAiBv9G,EAAAA,uBAAAA,iCAEtBZ,EAAOr8B,GAAG,+BAAgC,CAAE/tB,GAAI+1C,EAAK9nC,KAErDm8C,EAAOr8B,GAAG,2BAA4B,CAAE/tB,GAAI+1C,EAAK9nC,MAIrDvM,KAAKmjD,QAAU,WACbnjD,KAAKiK,QAAU8gE,EAAe9gE,UAC9BjK,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,2BAEL,IAAI4D,EAAyBhG,EAAiBiG,4BAA4BxjE,KAAK2gD,UAChD,OAA3B4iB,IACFvjE,KAAK6iE,iBAAmBU,I,gFA/E9B3tD,QAAQ5W,OAAO,oBAAoBkW,WAAW,gCAAiCwvM,I,gFCFhE,MAAMI,EACnBC,qBACE,OAAO/kN,KAAKglN,kBAAoBhlN,KAAKL,O,yGCFzC,MAAM4gD,EAAgCvrC,EAAQ,OAIjCovM,EAAoB,CAC/BrvM,SAAU,CACRpV,IAAK,IACLqlN,gBAAiB,IACjBnkK,aAAc,KAEhB3rC,WAN+B,UAO/BsrC,YAAaD,I,sBCXf,MAAMA,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbrrC,WAAY,4BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdtO,YAAa,IACbuO,gBAAiB,IACjBioJ,cAAe,Q,iBCfnBrvM,QAAQ5W,OAAO,iBAAiBkW,WAAW,4BAA6B,CACtE,SACA,cACA,mBACA,iBACA,SAAUE,EAAQkoD,EAAaC,EAAkBwN,GAC/Cn1D,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAK+uD,QAAU,CACbh/C,MAAO,CACL6uD,MAAM,EACN/lD,SAAS,EACTqsM,kBAAkB,EAClBC,oBAAoB,IAIxBnlN,KAAK6iE,iBAAmB,CACtB9yD,MAAO,CACL6uD,MAAM,GAERz4B,QAAS,CACP28B,QAAS,CACPl8D,MAAO,UACPk6D,SAAS,KAKf9gE,KAAK+iE,yBACL,SAAkC58B,GAChCnmC,KAAK6iE,iBAAiB18B,QAAUA,EAChCo3B,EAAiByF,4BAA4BhjE,KAAK2gD,SAAU3gD,KAAK6iE,mBAHVxjE,KAAKW,MAS9DA,KAAKugE,eAAiB,SAAUlsB,GAC9B,QAAIA,EAAK+wK,UAA0B,IAAd/wK,EAAKrpC,MAItBqpC,EAAKgxK,WAAarlN,KAAKiK,SAIlBoqC,EAAK+wK,WAAaplN,KAAKiK,UAAYjK,KAAKy+K,kBAGnDz+K,KAAKs/D,aACL,SAAsB/W,GACpB,MAAM,iBAAE28J,EAAF,mBAAoBC,GAAuBnlN,KAAK+uD,QAAQh/C,MAC9D,OAAIw4C,EAAM88J,SACD98J,EAAM+8J,iBAAmBtlN,KAAKsE,SAASihN,kBAErB,IAAjBh9J,EAAMtvC,QAAgBisM,GAAuC,IAAjB38J,EAAMtvC,QAAgBksM,GAAuB58J,EAAM68J,WAAa78J,EAAMtvC,QAN7F5Z,KAAKW,MAUtCA,KAAKwlN,eACL,WACE,MAAM,iBAAEN,EAAF,mBAAoBC,GAAuBnlN,KAAK+uD,QAAQh/C,MAC9D/P,KAAK+uD,QAAQh/C,MAAM8I,SAAWqsM,IAAqBC,EACnD5nJ,EAAiBmC,oBAAoB1/D,KAAK2gD,SAAU3gD,KAAK+uD,UAJtB1vD,KAAKW,MAO1CA,KAAKylN,kCAAoC,WACvCloJ,EAAiB2gE,qBAAqBl+H,KAAK2gD,SAAU3gD,KAAKsE,WAG5DtE,KAAKmjD,QAAU,WACbnjD,KAAKiK,QAAU8gE,EAAe9gE,UAC9BjK,KAAK0lN,yBAA2B36I,EAAezrD,kBAAkB,CAAC,4BAClEtf,KAAKy+K,gBAAkB1zG,EAAezrD,kBAAkB,CAAC,uBAAwB,0BAA4Btf,KAAK0lN,yBAClH1lN,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,EACrB5+D,KAAKsE,SAASihN,kBAAoBvlN,KAAKsE,SAASihN,mBAAqBvlN,KAAKiK,SAE5EjK,KAAK2/D,2BAEL,IAAI4D,EAAyBhG,EAAiBiG,4BAA4BxjE,KAAK2gD,UAChD,OAA3B4iB,IACFvjE,KAAK6iE,iBAAmBU,Q,iHC7GhC,MAKaoiJ,EAAmB,CAC9BnlK,YANoCxrC,EAAQ,OAO5CE,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACTg3K,oBAAqB,IAErB+H,aAAc,IACdjlK,SAAU,IAEVklK,SAAU,MAIdjwM,IAAAA,OAAe,iBAAiBC,UAAU,mBAAoB8vM,I,sBCrB9D,MAAMplK,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,gBAAiB,CACzD2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,Q,sBCZlB,MAAMxc,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,iBAAkB,CAC1D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACd9yD,QAAS,Q,0FCbb,MAEak6M,EAAoB,CAC/BpvM,SAAU,CACRzD,KAAM,IACNpD,MAAO,IACPsH,QAAS,IACTjE,YAAa,KAEfivC,YAToCxrC,EAAQ,S,6ECA9C,MAAMurC,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,iBAAkB,CAC1D2qC,YAAaD,EACbrrC,WAAY4wM,EAAAA,QACZ/wM,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdgpJ,qBAAsB,IACtB97M,QAAS,Q,gFCjBE,MAAM67M,EAEnB7lK,YAAYqd,EAAaloD,GACvB,MAAMmrD,EAAiBvgE,KAAKugE,eAC5B3qD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KACjEpV,KAAKugE,eAAiBA,EAAelhE,KAAKW,MAM5CugE,eAAelsB,GACb,OAAmB,IAAZA,EAAK9nC,I,iKCVhB,MAAMy5M,EAAa,wBACbC,EAAc,yBACdC,EAAY,uBAEX,MAAMC,EACXlmK,YAAY8J,EAAS30C,EAAQzO,GAC3B3G,KAAK+zB,GAAKg2B,EACV/pD,KAAKoV,OAASA,EACdpV,KAAK2G,QAAUA,EAEf3G,KAAKomN,UAAY,KACjBpmN,KAAKqmN,QAAU,KACfrmN,KAAKsmN,QAAU,KACftmN,KAAKumN,QAAU,KAGjBC,QACE,MAAM,GAAEzyL,EAAF,OAAM3e,GAAWpV,KAEvB,MAAO,CACLymN,WAAa7lN,IACX,GAAiB,iBAANA,EACT,OAGF,MAAM8lN,EAAa3yL,EAAGtvB,KAAK,mBAE3BiiN,EAAWH,QAAU3lN,EACrB8lN,EAAWC,aACXD,EAAWE,kBACX5mN,KAAKumN,QAAUnpL,IAAAA,KAAYx8B,GAEvBZ,KAAKomN,WAAapmN,KAAKomN,UAAUS,SAAS7mN,KAAKumN,WACjDvmN,KAAKomN,UAAYpmN,KAAKumN,QACtBnxM,EAAOgxM,UAAYxlN,GAGjBZ,KAAKqmN,SAAWrmN,KAAKqmN,QAAQQ,SAAS7mN,KAAKumN,WAC7CvmN,KAAKqmN,QAAUrmN,KAAKumN,QACpBnxM,EAAOixM,QAAUzlN,IAIrBkmN,WAAalmN,IACX,GAAiB,iBAANA,EACT,OAGF,MAAM8lN,EAAa3yL,EAAGtvB,KAAK,mBAE3BiiN,EAAWJ,QAAU1lN,EACrB8lN,EAAWC,aACXD,EAAWE,kBACX5mN,KAAKsmN,QAAUlpL,IAAAA,KAAYx8B,GAEvBZ,KAAKomN,WAAapmN,KAAKomN,UAAUW,QAAQ/mN,KAAKsmN,WAChDlxM,EAAOgxM,UAAY,EACnBpmN,KAAKomN,UAAY,MAGfpmN,KAAKqmN,SAAWrmN,KAAKqmN,QAAQU,QAAQ/mN,KAAKsmN,WAC5ClxM,EAAOixM,QAAU,EACjBrmN,KAAKqmN,QAAU,MAGjBrmN,KAAKgnN,cAGPC,aAAermN,IACI,iBAANA,IAIXmzB,EAAGtvB,KAAK,mBAAmBwiN,aAAarmN,GACxCZ,KAAKomN,UAAYhpL,IAAAA,KAAYx8B,KAG/BsmN,WAAatmN,IACM,iBAANA,IAIXmzB,EAAGtvB,KAAK,mBAAmByiN,WAAWtmN,GACtCZ,KAAKqmN,QAAUjpL,IAAAA,KAAYx8B,KAG7BumN,SAAU,KACRpzL,EAAGtvB,KAAK,mBAAmB2iN,kBAG7B98I,KAAM,KACJv2C,EAAGtvB,KAAK,mBAAmB6lE,QAG7Bt0C,KAAM,KACJjC,EAAGtvB,KAAK,mBAAmBuxB,SAKjCqxL,QAAQ1zK,EAAOzc,GACbl3B,KAAKomN,UAAYlvL,EAAIkvL,UACrBpmN,KAAKqmN,QAAUrmN,KAAKmnN,WAAajwL,EAAIkvL,UAAYlvL,EAAImvL,QAEjDrmN,KAAKoV,OAAOH,UAAYjV,KAAKoV,OAAOkyM,aAClCtnN,KAAKoV,OAAOgxM,WAAapmN,KAAKoV,OAAOixM,QACvCrmN,KAAKoV,OAAOH,SAASM,aAAavV,KAAKoV,OAAOmyM,mBAAmB,GAEjEvnN,KAAKoV,OAAOH,SAASM,aAAavV,KAAKoV,OAAOmyM,mBAAmB,IAIjEvnN,KAAKoV,OAAOhO,UACdpH,KAAKoV,OAAOq9E,QAAO,KACjBzyF,KAAKoV,OAAOhO,SAAS,CAAEg/M,UAAWlvL,EAAIkvL,UAAUjjH,OAAQkjH,QAASnvL,EAAImvL,QAAQljH,YAKnFqkH,WACMxnN,KAAKoV,OAAOqyM,eAIhBznN,KAAKoV,OAAOq9E,QAAO,KACbzyF,KAAKoV,OAAOH,UAAYjV,KAAKoV,OAAOkyM,YACtCtnN,KAAKoV,OAAOH,SAASM,aAAavV,KAAKoV,OAAOmyM,mBAAmB,GAGnEvnN,KAAKgnN,aACDhnN,KAAKoV,OAAOhO,UACdpH,KAAKoV,OAAOhO,SAAS,CAAEg/M,UAAW,EAAGC,QAAS,OAKpDqB,SACE/1B,aAAY,MACL3xL,KAAKmnN,aAAennN,KAAKoV,OAAOgxM,YAAgBpmN,KAAKoV,OAAOgxM,YAAcpmN,KAAKoV,OAAOixM,UACzFrmN,KAAKgnN,gBAKXA,aACEz9J,EAAEvpD,KAAK+zB,IAAI5X,IAAI,IAGjBgrM,WACE,OAAOnnN,KAAK2G,QAAQygN,iBAGtB9rM,OACEtb,KAAK+zB,GAAGo+D,GAAG6zH,GAAY,CAACryK,EAAOzc,KAC7Bl3B,KAAKqnN,QAAQ1zK,EAAOzc,MAGtBl3B,KAAK+zB,GAAGo+D,GAAG8zH,GAAa,CAACtyK,EAAOzc,KAC9Bl3B,KAAKwnN,SAAS7zK,EAAOzc,MAGvBl3B,KAAK+zB,GAAGo+D,GAAG+zH,GAAW,CAACvyK,EAAOzc,KAC5Bl3B,KAAK0nN,OAAO/zK,EAAOzc,MAIvBywL,UACE3nN,KAAK+zB,GAAG6zL,IAAI5B,GACZhmN,KAAK+zB,GAAG6zL,IAAI3B,GACZjmN,KAAK+zB,GAAG6zL,IAAI1B,M,sIC3KhB,MAAM3lK,EAAgCvrC,EAAQ,OAMxC6yM,EAAoB,CACxB,UACA,UACA,YACA,gBACA,kBACA,qBACA,aACA,sBACA,mBACA,oBACA,SACA,uBACA,sBACA,QACA,QACA,gBACA,aACA,cACA,SACA,mBACA,YACA,kBACA,gBACA,eACA,kBACA,YAIK,SAASC,IACd,MAAO,CACL/nJ,SAAU,IACVvY,MAAO,CACLugK,uBAAwB,IACxB3B,UAAW,IACXC,QAAS,KACTiB,WAAY,IACZf,QAAS,KACTD,QAAS,KACTmB,cAAe,IACfxmN,UAAW,IACX3C,GAAI,IACJ8I,SAAU,KAEZo5C,YAAaD,EACbvrC,QAAS,UACTgzM,QAAS,WACP,OAAO,SAAU5yM,EAAQye,EAAUqtL,EAAQ1kJ,GACzC,MAAMyrJ,EAAc,CAClBC,OAAQ,CACN3qL,OAAQ,eAGN4qL,EAAet0L,EAASpqB,KAAK,SAG7B2+M,EAAeH,EAAYb,kBAAoBhyM,EAAOgxM,WAAehxM,EAAOgxM,WAAahxM,EAAOixM,QAEtG,IAAIgC,EACAC,EACAC,EACAC,EAUJ,GARApzM,EAAOH,SAAWunD,EAClBpnD,EAAOmyM,kBAAqB,oBAAmB,QAE3CnyM,EAAOH,UAAYG,EAAOkyM,aAAelyM,EAAOgxM,YAAchxM,EAAOixM,SAEvEjxM,EAAOH,SAASM,aAAaH,EAAOmyM,mBAAmB,GAGrDnyM,EAAO2yM,uBACT,IAAK,MAAMpoN,KAAOyV,EAAO2yM,uBACnBF,EAAkBhiN,QAAQlG,IAAQ,IACpCsoN,EAAYtoN,GAAOyV,EAAO2yM,uBAAuBpoN,IAKvDyV,EAAO49E,IAAI,YAAY,WACrBu1H,EAAkB9kM,SAClB6kM,EAAWX,UACPa,GACFA,OAoCJ,WACE,MAAMC,EAAc7yM,QAAQu0D,KAAK89I,GACjCQ,EAAYrC,UAAYhxM,EAAOgxM,UAC/BqC,EAAYpC,QAAUjxM,EAAOixM,QAC7BkC,EAAoBh/J,EAAE4+J,GAAcO,gBAAgBD,GAE/CL,GACH7+J,EAAEg/J,GAAmBpsM,IAAI,IAtC3BspB,GA2CA6iL,EAAa,IAAInC,EAAAA,mBAAmBoC,EAAmBnzM,EAAQ6yM,GAC/DK,EAAWhtM,OACX+sM,EAAQC,EAAW9B,QA3CnBgC,EAIOpzM,EAAOuzM,YAvCE,CAAC,YAAa,UAAW,UAAW,YAuCf,SAAU9rM,GAC7C,IAAKA,IAAMA,EAAEpd,OACX,OAGF,MAAO2mN,EAAWC,EAASE,EAASD,GAAWzpM,EAE3C0pM,GACF8B,EAAM5B,WAAWF,GAGfD,GACF+B,EAAMvB,WAAWR,GAGfF,GACFiC,EAAMpB,aAAab,GAGjBC,GACFgC,EAAMnB,WAAWb,W,kEClH/B,UAAezwM,QAAQ5W,OAAO,uCAAwC,IAAI8gE,UAAU,kBAAmBgoJ,EAAAA,iBAAvG,M,0CCPA,MAAMc,EAEJ3oK,YAAY2E,GACV9lD,OAAOM,OAAOY,KAAM,CAAE4kD,aAAAA,IAEtB5kD,KAAK6oN,QAAS,EAGhB1lK,UACE,MAAMpzC,EAAQ/P,KAAK4kD,aAAakB,WAEhC9lD,KAAK6oN,OAAS94M,EAAMqsI,YAAY0sE,gBAAgBjwM,S,2BAIpD,a,gICfA,MAKakwM,EAAuB,CAClCvoK,YANoCxrC,EAAQ,OAO5CE,WAFkC,UAGlCH,SAAU,CACRk1E,QAAS,MAIbr0E,IAAAA,OAAe,iBAAiBC,UAAU,uBAAwBkzM,I,sBCblE,MAAMxoK,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,mBAAoB,CAC5D2qC,YAAaD,EACbrrC,WAAY,6BACZH,SAAU,CACR0uC,MAAO,IACPylE,UAAW,IACXnzG,OAAQ,Q,kECNZH,QAAQ5W,OAAO,iBAAiBkW,WAAW,8BAA8B,WACvE,IAAIsnD,EAAOx8D,KAEXA,KAAKgpN,WAAa,SAAUjzM,GAC1B,OAAO,IAASA,EAAQ,CAAC,UAG3B/V,KAAKipN,eAAiB,SAAUlyM,GAC9B,IAAK,IAAIxX,EAAI,EAAGA,EAAIi9D,EAAK0sJ,gBAAgBzpN,OAAQF,IAAK,CACpD,IAAIi0G,EAAQh3C,EAAK0sJ,gBAAgB3pN,GAEjC,GAAIwX,EAAS08F,UAAYD,EAAMjnG,GAC7B,OAAOinG,EAAM3mG,OAKnB7M,KAAKmjD,QAAU,WAIf,IAA2BptC,EAAQmzG,EAHjClpH,KAAKkpN,iBAGoBnzM,EAHgB/V,KAAK+V,OAGbmzG,EAHqBlpH,KAAKkpH,UAIpDnzG,EAAOzD,QAAO,SAAWkhG,GAC9B,IAAK,IAAIj0G,EAAI,EAAGA,EAAI2pH,EAAUzpH,OAAQF,IAEpC,GADe2pH,EAAU3pH,GACZk0G,UAAYD,EAAMjnG,GAC7B,OAAO,EAGX,OAAO,W,sBC/Bb,MAAMg0C,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,sBAAuB,CAC/D2qC,YAAaD,EACbrrC,WAAY,gCACZH,SAAU,CAGR4C,SAAU,IAGVZ,SAAU,Q,iBCXdnB,QAAQ5W,OAAO,iBAAiBkW,WAAW,gCAAiC,CAC1E,SACA,SAAUE,GACR,IAAIonD,EAAOx8D,KAEXw8D,EAAK2sJ,YAAc,SAAU1yJ,GAC3BrhD,EAAOE,YAAW,KAChBknD,EAAK7kD,SAAS6pL,IAAM/qI,MAIxBz2D,KAAKmjD,QACL,WACE,GAAIqZ,EAAKzlD,SAAU,CACjB,IAAIA,EAAWylD,EAAKzlD,SAChByqL,EAAMzqL,EAASqyM,UAAU5nB,IAC7BhlI,EAAK7kD,SAAS6pL,IAAMA,EACpB,IAAI6nB,EAAStyM,EAASqyM,UAAUE,UAChC9sJ,EAAK7kD,SAAS2xM,UAAYD,EAC1B,IAAIphB,EAAOlxL,EAASqyM,UAAUG,QAC9B/sJ,EAAK7kD,SAAS4xM,QAAUthB,EACxB,IAAItoM,EAAMoX,EAASqyM,UAAUI,OAC7BhtJ,EAAK7kD,SAAS6xM,OAAS7pN,EAEnB6hM,IAEAhlI,EAAK7kD,SAAS8xM,QADZJ,GAAUphB,GAAQtoM,EACI,gBACfsoM,GAAQtoM,EACO,kBACf0pN,EACe,SAEA,kB,mCChC7B,SAASK,IACd1pN,KAAKwhM,KAAM,EACXxhM,KAAKypN,QAAU,gBACfzpN,KAAKspN,UAAY,KACjBtpN,KAAKupN,QAAU,KACfvpN,KAAKwpN,OAAS,K,8JCHD,MAAMG,EAEnB1pK,cACEjgD,KAAKi7B,KAAO,SACZj7B,KAAK4pN,WAAa,GAElB5pN,KAAK6pN,cAAgB7pN,KAAK6pN,cAAcxqN,KAAKW,MAC7CA,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAK8pN,mBAAqB9pN,KAAK8pN,mBAAmBzqN,KAAKW,MAGzD6pN,gBACE,GAAkB,WAAd7pN,KAAKi7B,KAAmB,CAC1B,MAAM2uL,GAAaG,EAAAA,EAAAA,yBAAwB/pN,KAAKmhN,SAASh0M,KAAK,MAE9DnN,KAAK4pN,WAAaA,EAElB5pN,KAAKi7B,KAAO,gBAEZj7B,KAAKi7B,KAAO,SAIhB6uL,mBAAmBnmN,GACjB3D,KAAKoH,SAASzD,GAGhBqsF,aAAagd,GACXhtG,KAAK4pN,WAAa58G,EAAGC,WACrBjtG,KAAKoH,UAAS4iN,EAAAA,EAAAA,iBAAgBhqN,KAAK4pN,c,wDCCvC,UAhCA,MACEpgD,aAAa1lK,QAC4B,IAATA,GAK9B9D,KAAKoH,SAASpH,KAAKmgC,MAAO,IAAKngC,KAAK+yB,SAAUjvB,KAAAA,IAGhDmmN,cAActmN,QAC4B,IAAVA,GAK9B3D,KAAKoH,SAASpH,KAAKmgC,MAAO,IAAKngC,KAAK+yB,SAAUpvB,MAAAA,IAGhDumN,WACE,YAAsC,IAAxBlqN,KAAK+yB,SAASpvB,MAG9BwmN,cACEnqN,KAAKoH,SAASpH,KAAKmgC,MAAO,CAAEr8B,KAAM9D,KAAK+yB,SAASjvB,OAGlDq/C,UACEnjD,KAAKoqN,SAAY,eAAcpqN,KAAKmgC,W,8IC5BxC,MAKakqL,EAAqC,CAChD7pK,YANoCxrC,EAAQ,OAO5CE,WAFgD,UAIhDH,SAAU,CACRge,SAAU,IACVoN,MAAO,IAEP/4B,SAAU,IACVy+M,SAAU,MAIdjwM,IAAAA,OAAe,iBAAiBC,UAAU,qCAAsCw0M,I,+FChBjE,MAAMC,EAEnBrqK,YAAYC,GACVlgD,KAAKkgD,OAASA,EAEdlgD,KAAKuqN,iBAAmBvqN,KAAKuqN,iBAAiBlrN,KAAKW,MACnDA,KAAKyjB,OAASzjB,KAAKyjB,OAAOpkB,KAAKW,MAGjCirC,MACEjrC,KAAKoH,SAAS,IAAIpH,KAAKmhN,QAAS,CAAEr9M,KAAM,GAAIH,MAAO,MAGrD8f,OAAO0c,GACLngC,KAAKoH,SAASpH,KAAKmhN,QAAQ7uM,QAAO,CAACua,EAAGttB,IAAMA,IAAM4gC,KAGpDqqL,YAAY17L,GACV,OAAO9uB,KAAKkgD,QAAO2F,UACjB,IAAK/2B,EACH,OAEF,MAAMrG,QAAazoB,KAAKyqN,gBAAgB37L,GAClC/pB,GAASilN,EAAAA,EAAAA,iBAAgBvhM,GAC/BzoB,KAAKoH,SAASpH,KAAKmhN,QAAQziK,OAAO35C,OAItC0lN,gBAAgB37L,GACd,OAAO,IAAI7S,SAAQ,CAACld,EAASgwB,KAC3B,MAAMq5G,EAAsB,IAAIn5G,WAChCm5G,EAAoBsiF,WAAW57L,GAC/Bs5G,EAAoBj5G,OAAUwkB,GAAU50C,EAAQ40C,EAAMr0C,OAAO+oB,QAC7D+/G,EAAoBh5G,QAAWnhB,GAAU8gB,EAAO9gB,MAIpDs8M,iBAAiBpqL,EAAOpN,GACtB/yB,KAAKoH,SAASpH,KAAKmhN,QAAQhjN,KAAI,CAACqjC,EAAGjiC,IAAOA,IAAM4gC,EAAQqB,EAAIzO,M,mGCxChE,MAAMwtB,EAAgCvrC,EAAQ,MAQ9CY,IAAAA,OAAe,iBAAiBC,UAAU,iCAAkC,CAC1E2qC,YAAaD,EACbrrC,WAF0E,UAG1EH,SAAU,CACRosM,QAAS,IACTwJ,kBAAmB,IACnBvjN,SAAU,IACVwjN,gBAAiB,Q,4ECfrB,MAAMrqK,EAAgCvrC,EAAQ,OAQ9CY,IAAAA,OAAe,iBAAiBC,UAAU,4BAA6B,CACrE2qC,YAAaD,EACbrrC,WAFqE,UAGrEH,SAAU,CACRosM,QAAS,IACT0J,YAAa,IACbzjN,SAAU,IACVwjN,gBAAiB,Q,+DCbrBh1M,GAAAA,OAAe,iBAAiBkqD,UAAU,UAA1C,YAAqD,SAAUuqB,GAC7D,MAAO,CACLtqB,SAAU,IACVz/B,KAAM,SAAUlrB,EAAQye,EAAUqtL,GAChC,IAAI4J,EAAMj3L,EAAS,GAMnB,SAASw3B,EAAM0/J,GACTA,GACF1gI,GAAS,WACPygI,EAAIz/J,UACHj2C,EAAO41M,MAAM9J,EAAO+J,aAAe,GATtC/J,EAAOgK,QACT91M,EAAO4xD,OAAOk6I,EAAOgK,QAAS7/J,GAE9BA,GAAM,S,uFCVd,MAEa8/J,EAAiB,CAC5B3qK,YAHoCxrC,EAAQ,OAK5CD,SAAU,CACR+Z,KAAM,IACNw4L,WAAY,IACZlgN,SAAU,KAGZ44D,WAAY,CACVptD,YAAa,4B,wFCPjB,UAAegD,IAAAA,OAAe,gCAAiC,IAAIC,UAAU,gBAAiBu1M,EAAAA,eAAev1M,UAAU,iBAAkBs1M,EAAAA,gBAAzI,M,qGCLA,MAIaC,EAAgB,CAC3B5qK,YALoCxrC,EAAQ,OAM5CE,WAF2B,UAI3BH,SAAU,CACR2rM,WAAY,IACZzuM,YAAa,IACb0uM,IAAK,IACLh9M,MAAO,IACPsvC,SAAU,IACV7rC,SAAU,IACVwvH,UAAW,KAGb52D,WAAY,CACVptD,YAAa,wB,0CCnBjB,MAAMy4M,EAEJprK,YAAYwN,GACVztD,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAKytD,oBAAsBA,EAG7BuiC,aAAagd,GACXhtG,KAAKoH,SAAS4lG,EAAGC,a,kCAIrB,a,0CCMA,UAlBA,MACEq+G,aAAa3nN,QAC6B,IAAVA,GAI9B3D,KAAKoH,SAASpH,KAAKmgC,MAAO,CAAEx8B,MAAAA,IAG9BwmN,cACEnqN,KAAKoH,SAASpH,KAAKmgC,OAGrBgjB,UACEnjD,KAAKoqN,SAAY,eAAcpqN,KAAKmgC,W,iHCdxC,MAIaorL,EAA4B,CACvC/qK,YALoCxrC,EAAQ,OAM5CE,WAFuC,UAIvCH,SAAU,CACRge,SAAU,IACVoN,MAAO,IAEP/4B,SAAU,IACVy+M,SAAU,O,0CCbd,MAAM2F,EAEJvrK,cACEjgD,KAAKirC,IAAMjrC,KAAKirC,IAAI5rC,KAAKW,MACzBA,KAAKuqN,iBAAmBvqN,KAAKuqN,iBAAiBlrN,KAAKW,MAGrDirC,MACEjrC,KAAKyjD,MAAM45H,gBAAgBz5K,KAAK,IAGlC2mN,iBAAiBpqL,EAAOpN,GACjBA,EAGH/yB,KAAKyjD,MAAM45H,gBAAgBl9I,GAASpN,EAASpvB,MAF7C3D,KAAKyjD,MAAM45H,gBAAgBp6G,OAAO9iC,EAAO,GAK3CngC,KAAKoH,SAAS,IACTpH,KAAKyjD,MACR45H,gBAAiBr9K,KAAKyjD,MAAM45H,mB,aAKlC,a,kHCzBA,MAIaouC,EAA8B,CACzCjrK,YALoCxrC,EAAQ,OAM5CE,WAFyC,UAGzCH,SAAU,CACR0uC,MAAO,IACPr8C,SAAU,O,0CCTd,MAAMskN,EAEJzrK,YAAY7qC,GACVtW,OAAOM,OAAOY,KAAM,CAAEoV,OAAAA,IAEtBpV,KAAK2rN,WAAa,CAChBxjK,SAAU,GACV0jB,SAAU,IAGZ7rE,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAC3CA,KAAKipG,cAAgBjpG,KAAKipG,cAAc5pG,KAAKW,MAC7CA,KAAK4rN,aAAe5rN,KAAK4rN,aAAavsN,KAAKW,MAC3CA,KAAK6rN,iBAAmB7rN,KAAKipG,cAAc,sBAC3CjpG,KAAK8rN,iBAAmB9rN,KAAKipG,cAAc,sBAG7ClhG,gBAAgB/D,GACdhE,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKoH,YAAYpD,MAIrBilG,cAAcW,GACZ,OAAQjmG,IACN3D,KAAK+H,aAAa,IACb/H,KAAKyjD,MACR,CAACmmD,GAAQjmG,KAKfioN,aAAapiI,GACNA,IACHxpF,KAAK2rN,WAAWxjK,SAAWnoD,KAAKyjD,MAAM+sE,mBACtCxwH,KAAK2rN,WAAW9/I,SAAW7rE,KAAKyjD,MAAMgtE,oBAGxCzwH,KAAK+H,aAAa,IACb/H,KAAKyjD,MACR8sE,yBAA0B/mC,EAC1BgnC,mBAAoBhnC,EAAOxpF,KAAK2rN,WAAWxjK,SAAW,GACtDsoE,mBAAoBjnC,EAAOxpF,KAAK2rN,WAAW9/I,SAAW,KAI1D1oB,UACMnjD,KAAKyjD,MAAM8sE,2BACbvwH,KAAK2rN,WAAWxjK,SAAWnoD,KAAKyjD,MAAM+sE,mBACtCxwH,KAAK2rN,WAAW9/I,SAAW7rE,KAAKyjD,MAAMgtE,qB,qBAK5C,a,2GCtDA,MAKas7F,EAAsB,CACjCvrK,YANoCxrC,EAAQ,OAO5CE,WAFiC,UAGjCH,SAAU,CACR0uC,MAAO,IACPr8C,SAAU,IACV4kN,oBAAqB,IACrBpmF,OAAQ,O,oECVZ,MAAM4lF,EAEJvrK,YAAY7qC,EAAQiwB,GAClBvmC,OAAOM,OAAOY,KAAM,CAAEoV,OAAAA,EAAQiwB,UAAAA,IAE9BrlC,KAAKisN,mBAAqBjsN,KAAKipG,cAAc,8BAC7CjpG,KAAKksN,wBAA0BlsN,KAAKipG,cAAc,mCAClDjpG,KAAKmsN,kBAAoBnsN,KAAKipG,cAAc,uBAC5CjpG,KAAKosN,iBAAmBpsN,KAAKipG,cAAc,2BAC3CjpG,KAAKqsN,uBAAyBrsN,KAAKipG,cAAc,kBAEjDjpG,KAAKqoG,eAAiBptF,EAAAA,GAAAA,mBACtBjb,KAAKssN,wBAA0BrxM,EAAAA,GAAAA,iBAGjColF,cACErgG,KAAKqlC,UAAUL,SAAShlC,KAAKyjD,MAAMi6H,sBACnCn0H,EAAE,qBAAqB+gB,OACvB/gB,EAAE,qBAAqBghB,QAAQ,KAGjC0+B,cAAcW,GACZ,OAAQjmG,IACN3D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKoH,SAAS,IACTpH,KAAKyjD,MACR,CAACmmD,GAAQjmG,S,iCAOnB,a,iHCnCA,MAIa4oN,EAA4B,CACvC/rK,YALoCxrC,EAAQ,OAM5CE,WAFuC,UAGvCH,SAAU,CACR0uC,MAAO,IACPr8C,SAAU,IACVolN,mBAAoB,O,gGCVxB,MAEaC,EAA0B,CACrCjsK,YAHoCxrC,EAAQ,MAI5CD,SAAU,CACR23M,aAAc,IACd/oN,MAAO,IACPyD,SAAU,O,yFCPd,MAEaulN,EAAmB,CAC9BnsK,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACRtO,IAAK,IACLmmN,eAAgB,IAChBC,gBAAiB,IACjB5rN,UAAW,IACX8I,KAAM,O,wFCTV,MAEa+iN,EAAkB,CAC7BtsK,YAHoCxrC,EAAQ,MAI5CD,SAAU,CACRpR,MAAO,IACPyD,SAAU,O,uFCNd,MAEa2lN,EAAkB,CAC7BvsK,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACRpR,MAAO,IACPyD,SAAU,O,gFCNC,MAAM4lN,EAEnB/sK,cACEjgD,KAAKipG,cAAgBjpG,KAAKipG,cAAc5pG,KAAKW,MAC7CA,KAAKitN,YAAcjtN,KAAKipG,cAAc,iBACtCjpG,KAAKktN,gBAAkBltN,KAAKipG,cAAc,2BAC1CjpG,KAAKmtN,oBAAsBntN,KAAKipG,cAAc,+BAGhDA,cAAcW,GACZ,OAAQjmG,IACN3D,KAAKoH,SAAS,IACTpH,KAAKyjD,MACR,CAACmmD,GAAQjmG,KAKfw/C,UACEnjD,KAAK0sN,aAAe1sN,KAAK0sN,cAAgB,W,6GCnB7C,MAIaU,EAAU,CACrB5sK,YALoCxrC,EAAQ,OAM5CE,WAFqB,UAGrBH,SAAU,CACR23M,aAAc,IACdjpK,MAAO,IACPr8C,SAAU,IACVimN,eAAgB,IAChBC,WAAY,IACZtB,oBAAqB,IACrBQ,mBAAoB,O,kKCFxB,UAAe52M,IAAAA,OACL,qCAAsC,IAC7CC,UAAU,0BAA2B42M,EAAAA,yBACrC52M,UAAU,kBAAmBi3M,EAAAA,iBAC7Bj3M,UAAU,UAAWu3M,EAAAA,SACrBv3M,UAAU,kBAAmBk3M,EAAAA,iBAC7Bl3M,UAAU,mBAAoB82M,EAAAA,kBAC9B92M,UAAU,8BAA+B41M,EAAAA,6BACzC51M,UAAU,4BAA6B01M,EAAAA,2BACvC11M,UAAU,4BAA6B02M,EAAAA,2BACvC12M,UAAU,sBAAuBk2M,EAAAA,qBAVpC,M,6ECZA,MAAMxrK,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,YAAa,CACrD2qC,YAAaD,EACbrrC,WAAYq4M,EAAAA,QACZx4M,SAAU,CACR+9E,OAAQ,IACRq8B,SAAU,IACV1rE,MAAO,IACP+pK,mBAAoB,IACpBC,oBAAqB,IACrB7iG,eAAgB,IAChBC,kBAAmB,IACnBJ,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,Q,gICbtB,MAAMo4H,EAEJttK,YAAYC,EAAQ9qC,EAAQ08F,EAAcrnF,EAAesgD,GACvD/qE,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EACdpV,KAAK8xG,aAAeA,EACpB9xG,KAAKyqB,cAAgBA,EACrBzqB,KAAK+qE,eAAiBA,EAEtB/qE,KAAK6pH,kBAAoB7pH,KAAK6pH,kBAAkBxqH,KAAKW,MACrDA,KAAK8pH,mBAAqB9pH,KAAK8pH,mBAAmBzqH,KAAKW,MACvDA,KAAK0tN,6BAA+B1tN,KAAK0tN,6BAA6BruN,KAAKW,MAC3EA,KAAK+uH,aAAe/uH,KAAK+uH,aAAa1vH,KAAKW,MAG7C+uH,aAAaprH,GACX,OAAO3D,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAKyjD,MAAMykD,OAASvkG,KAIxBw/C,UACEnjD,KAAK+P,MAAQ,CACXwhK,UAAW,CACTn7J,MAAO,KACP9D,OAAQ,GACR8wB,WAAY,EACZ3sB,WAAY,GAEdgG,WAAY,CACVrG,MAAO,KACP9D,OAAQ,GACR8wB,WAAY,EACZ3sB,WAAY,GAEdk3M,eAAgB3tN,KAAK+qE,eAAe9gE,WAGxC4/G,kBAAkB9yG,GACM,WAAlB/W,KAAKmvH,UAA0B,IAAWnvH,KAAKytN,oBAAqB12M,GAE3C,SAAlB/W,KAAKmvH,UACdnvH,KAAK8xG,aAAa87G,YAAY5tN,KAAKyjD,MAAMl3C,GAAIwK,GAC1CiF,MAAK,KACJhc,KAAKyqB,cAAcF,QAAQ,UAAW,2CACtCvqB,KAAK6tN,yBAEN/wJ,OAAOhiD,GAAQ9a,KAAKyqB,cAAcxc,MAAM,QAAS6M,EAAK,wCAPzD9a,KAAKytN,oBAAoB7pN,KAAKmT,GAWlC+yG,mBAAmB/yG,GACK,WAAlB/W,KAAKmvH,SACP,IAASnvH,KAAKytN,qBAAsBp5K,GAASA,EAAK9nC,KAAOwK,EAASxK,KACvC,SAAlBvM,KAAKmvH,UACdnvH,KAAK8xG,aAAag8G,eAAe9tN,KAAKyjD,MAAMl3C,GAAIwK,EAASxK,IACtDyP,MAAK,KACJhc,KAAKyqB,cAAcF,QAAQ,UAAW,+CACtCvqB,KAAK6tN,yBAEN/wJ,OAAOhiD,GAAQ9a,KAAKyqB,cAAcxc,MAAM,QAAS6M,EAAK,6CAI7D+yM,sBACE7tN,KAAK0tN,6BAA6B1tN,KAAKmvH,SAAU,aACjDnvH,KAAK0tN,6BAA6B1tN,KAAKmvH,SAAU,cACjDnvH,KAAK8xG,aAAa0B,MAAMxzG,KAAKyjD,MAAMl3C,IAAIyP,MAAMvX,IAC3CzE,KAAKyjD,MAAQh/C,KAIjBipN,6BAA6Bv+F,EAAUqxF,GACrCxgN,KAAKkgD,QAAO2F,UACV,IACE,GAAkB,cAAd26J,EAA2B,CAC7B,MAAMhjM,EAAUxd,KAAK+P,MAAMwhK,UACrBp7J,GAASqH,EAAQ4lB,WAAa,GAAK5lB,EAAQpH,MAAQ,EACnD3R,QAAayS,EAAAA,EAAAA,IAAiB,EAAGf,EAAOqH,EAAQpH,MAAO,CAAEyzD,OAAQrsD,EAAQlL,SAC/EtS,KAAKwtN,mBAAqB/oN,EAAKd,MAC/B3D,KAAK+P,MAAMwhK,UAAU96J,WAAahS,EAAKgS,gBAClC,GAAkB,eAAd+pM,GAA2C,SAAbrxF,EAAqB,CAC5D,MAAMh4G,EAAUnX,KAAKyjD,MAAMl3C,GAAKvM,KAAKyjD,MAAMl3C,GAAK,EAC1CiR,EAAUxd,KAAK+P,MAAM0M,WACrBtG,GAASqH,EAAQ4lB,WAAa,GAAK5lB,EAAQpH,MAAQ,EACnD3R,QAAayS,EAAAA,EAAAA,IAAiBC,EAAShB,EAAOqH,EAAQpH,MAAO,CAAEyzD,OAAQrsD,EAAQlL,SACrFtS,KAAKytN,oBAAsBhpN,EAAKd,MAChC3D,KAAK+P,MAAM0M,WAAWhG,WAAahS,EAAKgS,YAG1C,MAAOqE,IACP+I,EAAAA,EAAAA,IAAY,UAAW/I,EAAK,2C,8EAMpClF,IAAAA,OAAe,iBAAiBV,WAAW,sBAAuBq4M,GAClE,a,0CCvGA,MAAMQ,EAEJ9tK,YAAYC,EAAQwI,EAAQ+9C,EAAc/kD,EAAcj3B,GACtDzqB,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKymG,aAAeA,EACpBzmG,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EAErBzqB,KAAK+P,MAAQ,CACXi+M,2BAA2B,EAC3BC,oBAAoB,EACpBC,YAAY,EACZtoF,QAAQ,GAGV5lI,KAAK2T,WAAa,CAChBw6M,QAAS,GACT59F,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,IAGtBzwH,KAAKoH,SAAWpH,KAAKoH,SAAS/H,KAAKW,MACnCA,KAAKouN,YAAcpuN,KAAKouN,YAAY/uN,KAAKW,MAG3CouN,YAAYzqN,GACV3D,KAAKoH,SAAS,CAAE+mN,QAASxqN,IAG3ByD,SAASC,GACPrH,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,GAIyB,mCAC9B,OAAOrH,KAAKkgD,QAAO2F,UACjB,IAWE,UAVwB7lD,KAAK0hD,aAAajyC,aAAa,CACrDvB,MAAO,gBACPjB,QAAS,6IACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,kBAKf,OAEFjB,KAAK+P,MAAMk+M,oBAAqB,QAC1BjuN,KAAKymG,aAAa4nH,cAAcruN,KAAKuoD,MAAMh8C,GAAIvM,KAAKuoD,MAAMmqE,WAAY1yH,KAAKmoE,UAAWnoE,KAAK2T,YACjG3T,KAAKyqB,cAAcF,QAAQ,UAAW,kDAChCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SACrC,MAAOrhB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAnB3C,QAqBE9a,KAAK+P,MAAMk+M,oBAAqB,MAKjB,wBACnB,OAAOjuN,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMi+M,2BAA4B,QACjChuN,KAAKymG,aAAa6iE,gBAAgB,CAAE52C,WAAY1yH,KAAKuoD,MAAMmqE,WAAYnmH,GAAIvM,KAAKuoD,MAAMh8C,IAAM,KAAMvM,KAAK2T,YAC7G3T,KAAKyqB,cAAcF,QAAQ,UAAW,oCACtC,MAAOzP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAL3C,QAOE9a,KAAK+P,MAAMi+M,2BAA4B,MAK7CM,yBACE,OAAOtuN,KAAK+P,MAAMi+M,2BAA6BhuN,KAAK+P,MAAMk+M,mBAG5D9qK,UACEnjD,KAAK2T,WAAWw6M,QAAUnuN,KAAKuoD,MAAMgmK,UAAUC,cAC3CxuN,KAAKuoD,MAAMgmK,WAAavuN,KAAKuoD,MAAMgmK,UAAUxjJ,iBAC/C/qE,KAAK2T,WAAW68G,mBAAqBxwH,KAAKuoD,MAAMgmK,UAAUxjJ,eAAev+D,SACzExM,KAAK2T,WAAW48G,0BAA2B,EAC3CvwH,KAAK+P,MAAM61H,QAAS,I,4EAK1B,a,6EC9FA,MAKM6oF,EAAuB,CAC3BjuK,YANoCxrC,EAAQ,MAO5CE,WAF2B,UAG3BH,SAAU,CACRwzC,MAAO,IACP4f,UAAW,MAIfvyD,IAAAA,OAAe,iBAAiBC,UAAU,uBAAwB44M,I,4ECZlE,MAAMC,EAEJzuK,YAAYC,EAAQwI,EAAQ0/C,EAAY3B,EAAc/kD,EAAcj3B,EAAe40E,GACjFr/F,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKooG,WAAaA,EAClBpoG,KAAKymG,aAAeA,EACpBzmG,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAKq/F,cAAgBA,EAErBr/F,KAAK+P,MAAQ,CACXi+M,2BAA2B,EAC3BC,oBAAoB,EACpBC,YAAY,EACZtoF,QAAQ,EACR+oF,mBAAmB,GAGrB3uN,KAAK2T,WAAa,CAChBw6M,QAAS,GACT59F,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GAEpBkvD,WAAY,CACVrC,4BAA4B,EAC5BC,iCAAiC,EACjCC,oBAAqB9rB,EAAAA,yBAAAA,SACrB+rB,wBAAyB,KACzBC,qBAAsB,KAI1B19K,KAAKoH,SAAWpH,KAAKoH,SAAS/H,KAAKW,MACnCA,KAAKouN,YAAcpuN,KAAKouN,YAAY/uN,KAAKW,MACzCA,KAAKisN,mBAAqBjsN,KAAKisN,mBAAmB5sN,KAAKW,MAGzDouN,YAAYzqN,GACV3D,KAAKoH,SAAS,CAAE+mN,QAASxqN,IAG3ByD,SAASC,GACPrH,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,GAGLrH,KAAK+P,MAAM4+M,kBAAoB/4M,QAAQg5M,OAAO5uN,KAAKyuK,mBAAqB74J,QAAQg5M,OAAO5uN,KAAK2T,YAG9Fs4M,mBAAmB5kN,GACjBrH,KAAKoH,SAAS,CACZu4K,WAAY,IACP3/K,KAAK2T,WAAWgsK,cAChBt4K,KAKTusH,2BAKE,MAAO,CAAEhvH,SAJQ,CACf,oBAKF,SAA+B85K,EAA4BC,GACzD,OAAQD,GAA8BC,GACpC,KAAKjtB,EAAAA,yBAAAA,SACH,MAAO,UACT,KAAKA,EAAAA,yBAAAA,QACH,MAAO,UACT,QACE,MAAO,OAZUktB,CAAsB5+K,KAAK2T,WAAWgsK,WAAWrC,2BAA4Bt9K,KAAK2T,WAAWgsK,WAAWnC,uBAiBjG,mCAC9B,OAAOx9K,KAAKkgD,QAAO2F,UACjB,IAWE,UAVwB7lD,KAAK0hD,aAAajyC,aAAa,CACrDvB,MAAO,gBACPjB,QAAS,6IACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,kBAKf,OAEFjB,KAAK+P,MAAMk+M,oBAAqB,QAC1BjuN,KAAKymG,aAAa4nH,cAAcruN,KAAKuoD,MAAMh8C,GAAIvM,KAAKuoD,MAAMmqE,WAAY1yH,KAAKmoE,UAAWnoE,KAAK2T,YACjG3T,KAAKyqB,cAAcF,QAAQ,UAAW,kDAChCvqB,KAAK0oD,OAAOxnB,SAClB,MAAOpmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kCAnB3C,QAqBE9a,KAAK+P,MAAMk+M,oBAAqB,MAKjB,wBACnB,OAAOjuN,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMi+M,2BAA4B,QAEjChuN,KAAKymG,aAAa6iE,gBAAgB,CAAE52C,WAAY1yH,KAAKuoD,MAAMmqE,WAAYnmH,GAAIvM,KAAKuoD,MAAMh8C,IAAM,KAAMvM,KAAK2T,YAC7G3T,KAAKyuK,gBAAkB74J,QAAQu0D,KAAKnqE,KAAK2T,YACzC3T,KAAK+P,MAAM4+M,mBAAoB,EAC/B3uN,KAAKyqB,cAAcF,QAAQ,UAAW,oCACtC,MAAOzP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAR3C,QAUE9a,KAAK+P,MAAMi+M,2BAA4B,MAK7CM,yBACE,OAAOtuN,KAAK+P,MAAMi+M,2BAA6BhuN,KAAK+P,MAAMk+M,mBAG5D9qK,UACEnjD,KAAK2T,WAAWw6M,QAAUnuN,KAAKuoD,MAAMgmK,UAAUC,cAE3CxuN,KAAKuoD,MAAMo3H,aAAe3/K,KAAKuoD,MAAMo3H,WAAWE,UAAY7/K,KAAKuoD,MAAMo3H,WAAW9qE,WACpF70G,KAAK2T,WAAWgsK,WAAWrC,4BAA6B,EAExDt9K,KAAK2T,WAAWgsK,WAAWpC,gCAAkCv9K,KAAKuoD,MAAMo3H,WAAWC,YAE/E5/K,KAAKuoD,MAAMo3H,WAAWE,UACxB7/K,KAAK2T,WAAWgsK,WAAWnC,oBAAsB9rB,EAAAA,yBAAAA,SACjD1xJ,KAAK2T,WAAWgsK,WAAWlC,wBAA0Bz9K,KAAKuoD,MAAMo3H,WAAWE,UAClE7/K,KAAKuoD,MAAMo3H,WAAW9qE,UAC/B70G,KAAK2T,WAAWgsK,WAAWnC,oBAAsB9rB,EAAAA,yBAAAA,QACjD1xJ,KAAK2T,WAAWgsK,WAAWjC,qBAAuB19K,KAAKq/F,cAAcs+E,sBAAsB39K,KAAKuoD,MAAMo3H,WAAW9qE,WAIhH70G,KAAK2T,WAAWgsK,WAAWjC,uBAC9B19K,KAAK2T,WAAWgsK,WAAWjC,qBAAuB19K,KAAKq/F,cAAcs+E,sBAAsBr2B,GAAAA,KAGzFtnJ,KAAKuoD,MAAMgmK,WAAavuN,KAAKuoD,MAAMgmK,UAAUxjJ,iBAC/C/qE,KAAK2T,WAAW68G,mBAAqBxwH,KAAKuoD,MAAMgmK,UAAUxjJ,eAAev+D,SACzExM,KAAK2T,WAAW48G,0BAA2B,EAC3CvwH,KAAK+P,MAAM61H,QAAS,GAGtB5lI,KAAKyuK,gBAAkB74J,QAAQu0D,KAAKnqE,KAAK2T,a,yGAI7C,a,4EClKA,MAKMk7M,EAA+B,CACnCruK,YANoCxrC,EAAQ,OAO5CE,WAFmC,UAGnCH,SAAU,CACRwzC,MAAO,IACP4f,UAAW,MAIfvyD,IAAAA,OAAe,iBAAiBC,UAAU,+BAAgCg5M,I,sBCd1E,MAAMtuK,EAAgCvrC,EAAQ,MAE9C,MAAME,EACJ+qC,YAAY7qC,GACVpV,KAAKoV,OAASA,EACdpV,KAAK8uN,qBAAuB9uN,KAAK8uN,qBAAqBzvN,KAAKW,MAG7D+uN,YACE/uN,KAAKgvN,gBAAgBC,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,GAGzFwN,qBAAqBr4J,GACnBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMsnB,eAAiBtU,M,qBAKlC7gD,QAAQ5W,OAAO,iBAAiB6W,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAAAA,K,sBC5BF,MAAMqrC,EAAgCvrC,EAAQ,OAQ9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,oBAAqB,CAC7D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAfF,MACE65M,YACE/uN,KAAKmvN,kBAAkBF,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,Q,qBCJ7F,MAAM/gK,EAAgCvrC,EAAQ,OAE9C,MAAME,EACJ+qC,YAAY7qC,GACVpV,KAAKoV,OAASA,EACdpV,KAAK8uN,qBAAuB9uN,KAAK8uN,qBAAqBzvN,KAAKW,MAG7D+uN,YACE/uN,KAAKovN,mBAAmBH,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,GAG5FwN,qBAAqBr4J,GACnBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMsnB,eAAiBtU,M,qBAKlC7gD,QAAQ5W,OAAO,iBAAiB6W,UAAU,qBAAsB,CAC9D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAAAA,K,qBC5BF,MAAMqrC,EAAgCvrC,EAAQ,OAQ9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,wBAAyB,CACjE2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAfF,MACE65M,YACE/uN,KAAKqvN,sBAAsBJ,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,Q,sBCJjG,MAAM/gK,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,0BAA2B,CACnE2qC,YAAaD,EACbrrC,WAAY,oCACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACd9wC,MAAO,Q,iBCZX6F,QAAQ5W,OAAO,iBAAiBkW,WAAW,oCAAqC,CAC9E,SACA,cACA,mBACA,SAAUE,EAAQkoD,EAAaC,GAC7B3nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KAEzEpV,KAAKsvN,iBAAmB,SAAUj7K,GAChC,OAAQr0C,KAAKugE,eAAelsB,IAI9Br0C,KAAKugE,eAAiB,SAAUlsB,GAC9B,OAAOA,EAAKk7K,iBAGdvvN,KAAKmjD,QAAU,WACbnjD,KAAKk+D,cACLl+D,KAAKm+D,0BAELn+D,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAC1B,IAAIwd,EAAcb,EAAiBc,kBAAkBr+D,KAAK2gD,UACtC,OAAhByd,IACFp+D,KAAK+P,MAAM8wC,aAAeud,EAAYE,QACtCt+D,KAAK+P,MAAM6wC,QAAUwd,EAAYxd,SAGnC,IAAI2d,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,EACxBv+D,KAAKy+D,sBAGP,IAAIC,EAAgBnB,EAAiBoB,oBAAoB3+D,KAAK2gD,UACxC,OAAlB+d,IACF1+D,KAAK+uD,QAAU2P,GAEb1+D,KAAK+uD,SAAW/uD,KAAK+uD,QAAQh/C,QAC/B/P,KAAK+uD,QAAQh/C,MAAM6uD,MAAO,GAG5B,IAAIC,EAAiBtB,EAAiBuB,qBAAqB9+D,KAAK2gD,UACzC,OAAnBke,IACF7+D,KAAKsE,SAAWu6D,EAChB7+D,KAAKsE,SAASs6D,MAAO,GAEvB5+D,KAAK2/D,gC,sBC9CX,MAAMpf,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,qBAAsB,CAC9D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACP+rK,mBAAoB,IACpBC,iBAAkB,IAClBt6H,iBAAkB,IAClBu6H,SAAU,IACV3/M,MAAO,IACP4/M,cAAe,Q,sBCXnB,MAAMpvK,EAAgCvrC,EAAQ,OAQ9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,qBAAsB,CAC9D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAfF,MACE65M,YACE/uN,KAAK4vN,mBAAmBX,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,Q,sBCJ9F,MAAM/gK,EAAgCvrC,EAAQ,OAE9C,MAAME,EACJ+qC,YAAY7qC,GACVpV,KAAKoV,OAASA,EACdpV,KAAK6vN,mBAAqB7vN,KAAK6vN,mBAAmBxwN,KAAKW,MAGzD+uN,YACE/uN,KAAK8vN,iBAAiBb,cAAc7N,YAAY1sE,KAAQ4sE,IAAgBthN,KAAKkvN,WAAW5N,GAG1FuO,mBAAmBp5J,GACjBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMsvB,KAAKg9I,gBAAkBt5J,M,qBAKxC7gD,QAAQ5W,OAAO,iBAAiB6W,UAAU,mBAAoB,CAC5D2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPgnE,WAAY,IACZK,gBAAiB,IACjB31B,iBAAkB,IAClB+5H,WAAY,KAEdh6M,WAAAA,K,kEC5BF,MAAMqrC,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,iBAAiBC,UAAU,wBAAyB,CACjE2qC,YAAaD,EACbxrC,SAAU,CACRD,SAAU,IACVnB,WAAY,IACZ5D,MAAO,IACPigN,eAAgB,IAChBC,iBAAkB,IAClBrO,UAAW,KAEb5hJ,WAAY,CACVkwJ,SAAU,oB,+HCfd,MAKaC,EAAuB,CAClC3vK,YANoCxrC,EAAQ,MAO5CE,WAFkC,UAGlCH,SAAU,CACR0uC,MAAO,IACP8E,MAAO,IACPxxC,SAAU,MAIdnB,IAAAA,OAAe,iBAAiBC,UAAU,uBAAwBs6M,I,4ECblE,MAAMC,EAEJnwK,YAAYC,EAAQwI,EAAQ+9C,EAAc/kD,EAAcj3B,EAAe40E,EAAegxH,GACpFrwN,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKymG,aAAeA,EACpBzmG,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAKq/F,cAAgBA,EACrBr/F,KAAKqwN,WAAaA,EAElBrwN,KAAK+P,MAAQ,CACX+/J,YAAY,EACZm+C,oBAAoB,EACpBC,YAAY,EACZtoF,QAAQ,EACR+oF,mBAAmB,GAGrB3uN,KAAK2T,WAAa,CAChBw6M,QAAS,GACT59F,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GACpB9uC,IAAK,GACL9uB,OAAQ,CACNy9J,OAAO,GAETC,WAAW,EAEX5wC,WAAY,CACVrC,4BAA4B,EAC5BC,iCAAiC,EACjCC,oBAAqB9rB,EAAAA,yBAAAA,SACrB+rB,wBAAyB,KACzBC,qBAAsB,GACtB8yC,gBAAgB,IAIpBxwN,KAAKoH,SAAWpH,KAAKoH,SAAS/H,KAAKW,MACnCA,KAAKouN,YAAcpuN,KAAKouN,YAAY/uN,KAAKW,MACzCA,KAAKisN,mBAAqBjsN,KAAKisN,mBAAmB5sN,KAAKW,MACvDA,KAAKywN,eAAiBzwN,KAAKywN,eAAepxN,KAAKW,MAC/CA,KAAK0wN,eAAiB1wN,KAAK0wN,eAAerxN,KAAKW,MAGjD4zH,2BACE,MAAMhvH,EAAW,GAKjB,OAHI5E,KAAK2T,WAAW2pK,6BAClB14K,EAAS+rN,iBAIX,SAAuB5mN,GACrB,OAAQA,GACN,KAAK2nJ,EAAAA,yBAAAA,SACH,MAAO,UACT,KAAKA,EAAAA,yBAAAA,QACH,MAAO,UAEX,MAAO,MAXqBk/D,CAAc5wN,KAAK2T,WAAW6pK,sBAErD,CAAE54K,SAAAA,GAaXwC,SAASC,GACPrH,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,GAGLrH,KAAK+P,MAAM4+M,kBAAoB/4M,QAAQg5M,OAAO5uN,KAAKyuK,mBAAqB74J,QAAQg5M,OAAO5uN,KAAK2T,YAG9Fy6M,YAAYzqN,GACV3D,KAAKoH,SAAS,CAAE+mN,QAASxqN,IAG3BsoN,mBAAmB5kN,GACjBrH,KAAKoH,SAAS,CACZu4K,WAAY,IACP3/K,KAAK2T,WAAWgsK,cAChBt4K,KAKTopN,eAAe9sN,GACb3D,KAAKoH,SAAS,CAAEu6E,IAAKh+E,IAGvB+sN,eAAerpN,GACbrH,KAAKoH,SAAS,CACZyrD,OAAQ,IACH7yD,KAAK2T,WAAWk/C,UAChBxrD,KAKG,eACV,MAAMwpN,EAAmC,IAApB7wN,KAAKuoD,MAAMv9C,KAC1B8lN,EAAO9wN,KACbA,KAAK0hD,aAAat4B,mBAChB,uJACAynM,EACA,eACAhrK,eAAgBx9B,GACd,GAAKA,EAGL,IACEyoM,EAAK/gN,MAAMk+M,oBAAqB,QAC1B6C,EAAKrqH,aAAasqH,UACtBD,EAAKvoK,MAAMh8C,GACXukN,EAAKvoK,MAAMmqE,WACXo+F,EAAKT,WAAWW,qBAAqBF,EAAKn9M,WAAWguE,KACrDmvI,EAAKn9M,WAAWk/C,OAAOy9J,MACvBQ,EAAKn9M,aACH0U,EAAO,IAEXyoM,EAAKrmM,cAAcF,QAAQ,UAAW,4CACtCumM,EAAKpoK,OAAOxnB,SACZ,MAAOpmB,GACPg2M,EAAKrmM,cAAcxc,MAAM,UAAW6M,EAAK,4BAb3C,QAeEg2M,EAAK/gN,MAAMk+M,oBAAqB,MAMnB,wBACnB,OAAOjuN,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAM+/J,YAAa,EACxB,MAAMvnH,QAAcvoD,KAAKymG,aAAawqH,uBACpCjxN,KAAKuoD,MAAMh8C,GACXvM,KAAKuoD,MAAMmqE,WACX1yH,KAAKqwN,WAAWW,qBAAqBhxN,KAAK2T,WAAWguE,KACrD3hF,KAAK2T,YAEP3T,KAAKyuK,gBAAkB74J,QAAQu0D,KAAKnqE,KAAK2T,YACzC3T,KAAK+P,MAAM4+M,mBAAoB,EAC/B3uN,KAAKyqB,cAAcF,QAAQ,UAAW,oCAEtCvqB,KAAKuoD,MAAQA,EACb,MAAOztC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAd3C,QAgBE9a,KAAK+P,MAAM+/J,YAAa,MAK9Bw+C,yBACE,OAAOtuN,KAAK+P,MAAM+/J,YAAc9vK,KAAK+P,MAAMk+M,mBAG7CiD,sBACE,MAAMC,KAAgBnxN,KAAKuoD,MAAMo3H,aAAe3/K,KAAKuoD,MAAMo3H,WAAWE,WAAY7/K,KAAKuoD,MAAMo3H,WAAW9qE,SAExG,OADkB70G,KAAK2T,WAAWgsK,WAAWrC,6BACxB6zC,EAGvBhuK,UACEnjD,KAAK2T,WAAWw6M,QAAUnuN,KAAKyjD,MAAM+qK,cACrCxuN,KAAK2T,WAAWguE,IAAM3hF,KAAKuoD,MAAMo5B,IAE7B3hF,KAAKuoD,MAAMsK,SACb7yD,KAAK2T,WAAWk/C,OAAS7yD,KAAKuoD,MAAMsK,QAIlC7yD,KAAKuoD,MAAMo3H,aAAe3/K,KAAKuoD,MAAMo3H,WAAWE,UAAY7/K,KAAKuoD,MAAMo3H,WAAW9qE,WACpF70G,KAAK2T,WAAWgsK,WAAWrC,4BAA6B,EACxDt9K,KAAK2T,WAAWgsK,WAAWpC,gCAAkCv9K,KAAKuoD,MAAMo3H,WAAWC,YACnF5/K,KAAK2T,WAAWgsK,WAAW6wC,eAAiBxwN,KAAKuoD,MAAMo3H,WAAW6wC,eAE9DxwN,KAAKuoD,MAAMo3H,WAAWE,UACxB7/K,KAAK2T,WAAWgsK,WAAWnC,oBAAsB9rB,EAAAA,yBAAAA,SACjD1xJ,KAAK2T,WAAWgsK,WAAWlC,wBAA0Bz9K,KAAKuoD,MAAMo3H,WAAWE,UAClE7/K,KAAKuoD,MAAMo3H,WAAW9qE,UAC/B70G,KAAK2T,WAAWgsK,WAAWnC,oBAAsB9rB,EAAAA,yBAAAA,QACjD1xJ,KAAK2T,WAAWgsK,WAAWjC,qBAAuB19K,KAAKq/F,cAAcs+E,sBAAsB39K,KAAKuoD,MAAMo3H,WAAW9qE,WAIhH70G,KAAK2T,WAAWgsK,WAAWjC,uBAC9B19K,KAAK2T,WAAWgsK,WAAWjC,qBAAuB19K,KAAKq/F,cAAcs+E,sBAAsBr2B,GAAAA,KAGzFtnJ,KAAKuoD,MAAMgmK,WAAavuN,KAAKuoD,MAAMgmK,UAAUxjJ,iBAC/C/qE,KAAK2T,WAAW68G,mBAAqBxwH,KAAKuoD,MAAMgmK,UAAUxjJ,eAAev+D,SACzExM,KAAK2T,WAAW48G,0BAA2B,EAC3CvwH,KAAK+P,MAAM61H,QAAS,GAEtB5lI,KAAKyuK,gBAAkB74J,QAAQu0D,KAAKnqE,KAAK2T,a,yGAI7C,a,6EC5MA,MAAM4sC,EAAgCvrC,EAAQ,OAK9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,wBAAyB,CACjE2qC,YAAaD,EACbrrC,WAAY,WACVlV,KAAK+P,MAAQ,CACX6wC,QAAS,OACTC,cAAc,EACdkoE,mBAAoB,KACpBxqD,WAAY,GACZp9B,SAAS,EACTiC,WAAY,GAGdpjC,KAAK09M,cAAgB,SAAUC,GAC7B39M,KAAK+P,MAAM8wC,aAAe7gD,KAAK+P,MAAM6wC,UAAY+8J,IAAc39M,KAAK+P,MAAM8wC,aAC1E7gD,KAAK+P,MAAM6wC,QAAU+8J,GAGvB39M,KAAKy+D,mBAAqB,WACxBz+D,KAAKoxN,2BAGPpxN,KAAKqxN,cAAgB,SAAUxoG,GAC7B7oH,KAAKsxN,gBAAgBluL,WAAaylF,EAClC7oH,KAAKoxN,2BAGPpxN,KAAKuxN,yBAA2B,WAC9BvxN,KAAKoxN,2BAGPpxN,KAAKoxN,wBAA0B,WAC7BpxN,KAAKipH,aAAajpH,KAAKmvH,SAAUnvH,KAAKwgN,YAGxCxgN,KAAKg0B,WAAa,SAAUw6I,GACtBA,EAAQ17E,QAAU07E,EAAQ17E,OAAO61B,cACnC3oH,KAAKoxN,2BAITpxN,KAAKwxN,iBAAmB,SAA0Bh7M,GAChD,OAAOi7M,EAAAA,EAAAA,eAAczxN,KAAKwnG,KAAMhxF,GAAQrJ,KAAK,OAAS,KAGxDnN,KAAK0xN,mBAAqB,SAA4Bv6M,GACpD,MAAMq8F,EAAQ,IAAOxzG,KAAK+V,OAAQ,CAAExJ,GAAI4K,IACxC,OAAOq8F,EAAQA,EAAM3mG,KAAO,KAGhCkI,SAAU,CACRu8M,gBAAiB,IACjBx+H,OAAQ,IACRq8B,SAAU,IACVqxF,UAAW,IACXv3F,aAAc,IACdpiF,QAAS,IACT+2K,WAAY,IACZC,oBAAqB,IACrBr2G,KAAM,IACNmqH,SAAU,IACV57M,OAAQ,IACR67M,WAAY,IACZ9R,qBAAsB,IACtB+R,QAAS,IACT3jN,MAAO,Q,wIC5DX,G,SAAe0H,IAAAA,OACL,kCAAmC,IAC1CC,UAAU,WCXW,CACtBmqD,YAAY,EACZlrD,SAAU,6CDUTe,UAAU,eEZe,CAC1Bi8M,SAAU,YACV/8M,SAAU,CACRosB,QAAS,KACTjG,QAAS,MAEX8kC,YAAY,EACZlrD,SAAU,sNFMTe,UAAU,uBGbuB,CAClCi8M,SAAU,YACV/8M,SAAU,CACR0rC,UAAW,IACXnvC,KAAM,KAER0uD,YAAY,EACZlrD,SAAU,oeHOTe,UAAU,iBIdiB,CAC5Bi8M,SAAU,YACV9xJ,YAAY,EACZlrD,SAAU,8DJYTe,UAAU,iBKfgB,CAC3Bi8M,SAAU,YACV/8M,SAAU,CACR0rC,UAAW,IACXnvC,KAAM,IACNC,YAAa,IACb2pB,QAAS,KACT62L,cAAe,MAEjB/xJ,WAAY,CACV9xD,MAAO,gBAET4G,SAAU,6fLITe,UAAU,kBMhBkB,CAC7Bi8M,SAAU,YACV/8M,SAAU,CACRmmB,QAAS,MAEX8kC,YAAY,EACZlrD,SAAU,yJNGZ,M,2MOLqBk9M,EAAAA,WAQnB,c,4FAAc,SACZhyN,KAAKqV,aAAc,EACnBrV,KAAKyG,IAAM,G,4CAGb,WACE,OAA6B+tB,EAAAA,EAAAA,GAAkBx0B,KAAKwV,SAA5C/O,EAAR,EAAQA,IAAK4O,EAAb,EAAaA,YAEbrV,KAAKqV,YAAcA,EACnBrV,KAAKyG,IAAMA,O,sEAjBMurN,GCARC,EAAqB,CAChCzxK,YALoCxrC,EAAQ,MAM5CE,WAAAA,EACAH,SAAU,CACRS,QAAS,KAEXwqD,YAAY,G,WCEd,EAAepqD,IAAAA,OACL,2BAA4B,CAACD,EAAAA,EAAmBu8M,EAAcC,EAAAA,QAAuBC,EAAAA,QAAeC,EAAAA,QAA2BC,EAAAA,UACtIz8M,UAAU,mBAAoBsnM,EAAAA,yBAC9BtnM,UAAU,qBAAsBo8M,GAHnC,M,sBCZA,MAAM1xK,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,0BAA2B,CACnE2qC,YAAaD,EACbrrC,WAAY,uC,gBCJdU,QAAQ5W,OAAO,iBAAiBkW,WAAW,oCAAqC,CAC9E,SACA,mBACA,kBACA,iBACA,gBACA,SAAwCwzC,EAAQ/D,EAAkBgV,EAAiBoR,EAAgBtgD,GACjG,IAAI+xC,EAAOx8D,KAEXA,KAAKmjD,QAeL,WACE,IAAI5kC,EAAaomC,EAAiBE,aAClC2X,EAAK+1J,kBAAoBxnJ,EAAe9gE,UAExC0vD,EAAgB5iD,SAASwH,GACtBvC,MAAK,SAAmBvX,GACvB+3D,EAAKm6H,aAAelyL,EAAKs1E,UAAU,GAAG6F,QAEvC9iB,OAAM,SAAiBhiD,GACtB2P,EAAcxc,MAAM,UAAW6M,EAAK,kDAvB1C9a,KAAKwyN,gBAEL,WACE,IAAIj0M,EAAaomC,EAAiBE,aAElC8U,EAAgB1iD,iBAAiBsH,GAC9BvC,MAAK,WACJ0sC,EAAOxnB,YAER47B,OAAM,SAAiBhiD,GACtB2P,EAAcxc,MAAM,UAAW6M,EAAK,wD,6ECjB9ClF,IAAAA,OAAe,iBAAiBkqD,UAAU,kBAAkB,WAC1D,MAAO,CACLC,SAAU,IACV/qD,QAAS,UACTsrB,KAAM,SAAUlrB,EAAQye,EAAUqtL,EAAQC,GACxCA,EAAQC,YAAYqR,sBAAwB,SAAUnR,GACpD,IACE,OAAOA,GAAkI,OAApHA,EAAW7lL,cAAc+G,MAAM,iFACpD,MAAOv0B,GACP,OAAO,IAIXkzM,EAAQC,YAAYsR,gBAAkB,SAAUpR,GAC9C,IACE,OAAOA,IAActiM,EAAAA,EAAAA,GAAMsiM,EAAY,WAAa,EACpD,MAAOrzM,GACP,OAAO,U,iBCpBjB2H,QAAQ5W,OAAO,iBAAiB8gE,UAAU,aAAc,CACtD,WAeE,MAdgB,CACdC,SAAU,IACVz/B,KAAM,SAAUknB,EAAOuC,EAASgpI,GAC9BhpI,EAAQ1qD,KAAK,oBAAoB,SAAUX,GACzB,KAAZA,EAAEi0N,QACJj0N,EAAE+jC,iBACF+kB,EAAMirC,QAAO,WACXjrC,EAAMwjK,MAAMj4B,EAAM6/B,yB,6ECThC,MAAMryK,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,cAAe,CACvD2qC,YAAaD,EACbrrC,WAFuD,UAGvDH,SAAU,CACRosM,QAAS,IACT0J,YAAa,IACbzjN,SAAU,Q,gFCZC,MAAMyrN,EAEnB5yK,cACEjgD,KAAK8yN,mBAAqB9yN,KAAK8yN,mBAAmBzzN,KAAKW,MAGzD8yN,qBACE9yN,KAAKoH,SAASpH,KAAKmhN,U,oCCPvB,MAAM5gK,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,cAAe,CACvD2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPsvK,KAAM,Q,sBCNV,MAAMxyK,EAAgCvrC,EAAQ,MAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,cAAe,CACvD2qC,YAAaD,EACbxrC,SAAU,CACR0rC,UAAW,IACXuyK,SAAU,IACVD,KAAM,Q,gHCPV,MAIaE,EAAkB,CAC7BzyK,YALoCxrC,EAAQ,OAM5CD,SAAU,CACRqyD,SAAU,MAIdxxD,IAAAA,OAAe,iBAAiBC,UAAU,kBAAmBo9M,I,kECX7D,MAAM1yK,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,mBAAoB,CAC5D2qC,YAAaD,EACbxrC,SAAU,CACRpV,IAAK,IACLgE,MAAO,Q,kECTX,MAAM48C,EAAgCvrC,EAAQ,OAI9CY,IAAAA,OAAe,iBAAiBC,UAAU,WAAY,CACpD2qC,YAAaD,EACbxrC,SAAU,CACRpR,MAAO,IACPuvN,YAAa,Q,sBCRjB,MAAM3yK,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,SAAU,CAClD2qC,YAAaD,EACbrrC,WAAY,mBACZH,SAAU,CACR0uC,MAAO,IACPr8C,SAAU,IACVk1B,MAAO,IACPyF,KAAM,IACNO,KAAM,IACN6wL,UAAW,Q,kECNf,MAAMC,EAEJnzK,YAAY7qC,GACVpV,KAAKoV,OAASA,EAEdpV,KAAKqzN,aAAerzN,KAAKqzN,aAAah0N,KAAKW,MAC3CA,KAAKszN,UAAYtzN,KAAKszN,UAAUj0N,KAAKW,MAGvCg0B,aACEh0B,KAAKqzN,eAGPC,UAAU3vN,EAAO4vN,EAAU3sN,GACzB,MAAe,UAAVA,GAAoC,IAAf5G,KAAKs8B,OAA0B,IAAV34B,EACtC,YAEFA,EAGT0vN,eACErzN,KAAK2G,QAAU,CACb21B,MAAOt8B,KAAKs8B,MACZyF,KAAM/hC,KAAK+hC,KACXO,KAAMtiC,KAAKsiC,KACX6wL,UAAWnzN,KAAKmzN,UAChBK,kBAAkB,EAClBC,aAAa,EACbH,UAAWtzN,KAAKszN,UAChBlsN,SAAU,IAAMpH,KAAKoH,YAIzB+7C,UACEnjD,KAAKqzN,gB,qBAIT,YACAz9M,IAAAA,OAAe,iBAAiBV,WAAW,mBAAoBk+M,I,yDC1C/Dx9M,QAAQ5W,OAAO,iBAAiBkW,WAAW,iCAAkC,CAC3E,gBACA,SAAwCuV,GACtC,IAAI+xC,EAAOx8D,KAqBX,SAAS0zN,IACP,OAAOl3J,EAAK7oD,WAAWoD,UAAYylD,EAAK7oD,WAAWoD,SAASxK,GApB9DiwD,EAAKzsD,MAAQ,CACX4jN,uBAAuB,EACvBC,qBAAqB,GAGvBp3J,EAAK7oD,WAAa,CAChBoD,SAAU,KACVsX,QAAS,IAGXmuC,EAAKjP,4BAA8BA,EAAAA,4BAEnCiP,EAAKq3J,0BAWL,WACE,OAAOH,KAA6Bl3J,EAAK7oD,WAAW0a,UAAYmuC,EAAKs3J,WAXvEt3J,EAAKk3J,wBAA0BA,EAC/Bl3J,EAAKu3J,eAaL,WACOv3J,EAAK7oD,WAAW0a,SAIrBmuC,EAAKzsD,MAAM4jN,uBAAwB,EACnCn3J,EACGw3J,YAAY,CACXz1M,WAAYi+C,EAAK7oD,WAAWoD,SAASxK,GACrCzI,KAAM04D,EAAK7oD,WAAW0a,QAAUmuC,EAAK7oD,WAAW0a,aAAUxc,IAE3DqwD,SAAQ,WACP1F,EAAKzsD,MAAM4jN,uBAAwB,MAVrClpM,EAAcxc,MAAM,UAAW,KAAM,2CAdzCuuD,EAAKy3J,aA4BL,WACEz3J,EAAKzsD,MAAM6jN,qBAAsB,EACjCp3J,EACG03J,UAAU,CACT31M,WAAYi+C,EAAK7oD,WAAWoD,SAASxK,GACrCzI,KAAM04D,EAAK7oD,WAAW0a,QAAUmuC,EAAK7oD,WAAW0a,aAAUxc,IAE3DqwD,SAAQ,WACP1F,EAAKzsD,MAAM6jN,qBAAsB,MAnCvCp3J,EAAK23J,0BAuCL,WACE,OAAQ33J,EAAKk3J,2BAA6Bl3J,EAAKzsD,MAAM4jN,uBAAyBn3J,EAAKzsD,MAAM6jN,qBAIlFp3J,EAAK7oD,WAAWoD,UAAYylD,EAAK7oD,WAAWoD,SAASxK,KAAOiwD,EAAK43J,mBA3C1E53J,EAAK63J,mBA8CL,WACE,OAAO73J,EAAK7oD,WAAWoD,UAAYylD,EAAK7oD,WAAWoD,SAASxK,Q,sBCvElE,MAAMg0C,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,uBAAwB,CAChE2qC,YAAaD,EACbrrC,WAAY,iCACZH,SAAU,CACRi/M,YAAa,IACbE,UAAW,IACXhrG,UAAW,IACXnzG,OAAQ,IACRq+M,kBAAmB,IACnBN,UAAW,Q,gHCXf,MAMaQ,EAAkB,CAC7B9zK,YAPoCxrC,EAAQ,OAQ5CD,SAAU,CACRw3G,GAAI,MAIR32G,IAAAA,OAAe,iBAAiBC,UAAU,kBAAmBy+M,I,kECb7D,MAAM/zK,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,eAAgB,CACxD2qC,YAAaD,EACbxrC,SAAU,CACR0uC,MAAO,IACPy+J,UAAW,IACXnjL,SAAU,KAEZihC,WAAY,CACVpvB,QAAS,2B,8HCVb,SAAS2jL,EAAuBn/M,EAAQ8qC,EAAQwI,EAAQ6U,EAAkB9yC,EAAe+pM,GACvF,IAAIh4J,EAAOx8D,KA6HX,SAASy0N,EAAe3/M,GACtB,GAAIA,EAAS4/M,YAAc5/M,EAAS4/M,WAAWj1N,OAAS,GAAKqV,EAAS4/M,WAAW,IAAM5/M,EAAS4/M,WAAW,GAAGj1N,OAAS,EACrH,OAAOqV,EAAS4/M,WAAW,GAAGhvN,cAIlC,SAASivN,EAAU/zK,GACjB,IAAIg0K,EASJ,OANIA,EADG,eADCh0K,EAEK6zK,EAGA7zK,EAGNg0K,EA3IT50N,KAAK+P,MAAQ,CACXwuD,WAAY,GACZojE,iBAAkB,KAClBh/H,WAAY,GACZkyN,YAAa,GACbC,aAAc,KACdC,wBAAwB,EACxBC,gBAAiB,KACjBC,cAAe,GACfC,WAAW,GAGbl1N,KAAKy+D,mBAAqB,WACxBlB,EAAiByrD,wBAAwBhpH,KAAK2gD,SAAU3gD,KAAK+P,MAAMwuD,aAGrE/B,EAAK24J,qBAAuB,SAAU9gL,GACpC,OAAQA,EAAKrpC,MACX,KAAK,EACH,OAAOwxD,EAAKzsD,MAAMglN,uBACpB,KAAK,EACH,OAAOv4J,EAAK4lJ,kBAAoB5lJ,EAAKzsD,MAAMglN,uBAC7C,KAAK,EACH,OAAQv4J,EAAKzsD,MAAMglN,wBAA0B,OAASv4J,EAAKzsD,MAAM+kN,aACnE,KAAK,EACH,OAAO,EAEX,OAAO,GAGTt4J,EAAK6kE,iBAAmB,WAGtB,IAFA,IAAII,EAAsB,GAEjBliI,EAAI,EAAGA,EAAIi9D,EAAKd,UAAUj8D,OAAQF,IAAK,CAC9C,IAAIuV,EAAW0nD,EAAKd,UAAUn8D,GAC1Bi9D,EAAK24J,qBAAqBrgN,KAC5B2sH,EAAsBA,EAAoB/iF,OAAO5pC,EAAS4/M,aAI9Dl4J,EAAKzsD,MAAMpN,WAAa,IAAS,IAAO8+H,KAG1CjlE,EAAK44J,iBAAmB,SAAU/gL,GAChC,OAAKmoB,EAAKzsD,MAAM4xH,kBAIT,IAAWttF,EAAKqgL,WAAYl4J,EAAKzsD,MAAM4xH,mBAGhD3hI,KAAKq1N,kBAEL,SAA2BvgN,GACzB,OAAOorC,EAAOlgD,KAAKs1N,uBAAwBxgN,IAHFzV,KAAKW,MAChDA,KAAKs1N,uBAKLzvK,eAAsC/wC,GACpC,IACE,MAAQs1G,YAAaruD,SAAsBy4J,EAAgBe,aAAazgN,EAAS2rE,WAAWh6E,IAAKqO,EAAS2rE,WAAW+0I,WACrH,IAAIzrN,EAAO,EACW,IAAlB+K,EAAS9J,OACXjB,EAAO,GAEa,IAAlB+K,EAAS9J,OACXjB,EAAO,GAET2+C,EAAOr8B,GAAG,8BAA+B,CAAE0vC,YAAAA,EAAahyD,KAAAA,IACxD,MAAO+Q,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAjBazb,KAAKW,MAqB1Dw8D,EAAKkhJ,cAAgB,SAAUC,GAC7BvoM,EAAOE,YAAW,KACZ,OAASqoM,IACXnhJ,EAAKzsD,MAAMilN,gBAAkB,KAC7Bx4J,EAAKd,UAAYc,EAAKi5J,iBAGxBj5J,EAAKzsD,MAAMilN,gBAAkBrX,EAC7BnhJ,EAAKd,UAAY,IAAUc,EAAKd,UAAW,CAACi5J,EAAUn4J,EAAKzsD,MAAMilN,kBAAmB,CAACx4J,EAAKzsD,MAAMmlN,UAAY,OAAS,YAIzH14J,EAAKk5J,gBAAkB,SAAU3rN,GAC/BqL,EAAOE,YAAW,KAChBknD,EAAKzsD,MAAM+kN,aAAe/qN,EAC1ByyD,EAAKzsD,MAAMglN,uBAAyB,cAAgBhrN,GAAQ,OAASA,EACrEyyD,EAAK6kE,uBAIT7kE,EAAKm5J,YAAc,WACjBvgN,EAAOE,YAAW,KAChBknD,EAAKzsD,MAAMmlN,WAAa14J,EAAKzsD,MAAMmlN,UACnC14J,EAAKd,UAAY,IAAUc,EAAKd,UAAW,CAACi5J,EAAUn4J,EAAKzsD,MAAMilN,kBAAmB,CAACx4J,EAAKzsD,MAAMmlN,UAAY,OAAS,YAIzH14J,EAAKo5J,sBAAwB,SAAU9wN,GACrCsQ,EAAOE,YAAW,KAChBknD,EAAKzsD,MAAM4xH,iBAAmB78H,EAC9B03D,EAAK6kE,uBAITrhI,KAAKmjD,QAAU,WACTnjD,KAAKoiN,kBACPpiN,KAAK+P,MAAMglN,wBAAyB,GAEtC/0N,KAAKqhI,mBAEL,IAAI9iE,EAAahB,EAAiBiB,wBAAwBx+D,KAAK2gD,UAC5C,OAAf4d,IACFv+D,KAAK+P,MAAMwuD,WAAaA,GAG1Bv+D,KAAKy1N,gBAAkBz1N,KAAK07D,UAC5B17D,KAAK+P,MAAMklN,cAAgB,CAAC,QAAS,aAAc,eACnDj1N,KAAK+P,MAAM8kN,YAAc,CAAC,YAAa,U,4FA7H3Cj/M,QAAQ5W,OAAO,iBAAiBkW,WAAW,yBAA0Bq/M,I,sBCFrE,MAAMh0K,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,eAAgB,CACxD2qC,YAAaD,EACbrrC,WAAY,yBACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXgb,UAAW,IACX/a,SAAU,IACVihF,aAAc,IACdwgF,gBAAiB,Q,iBCXrBxsM,QAAQ5W,OAAO,iBAAiB8gE,UAAU,oBAAoB,WAS5D,MARgB,CACdtY,MAAO,CACL25J,QAAS,KAEXnhJ,YAAY,EACZlrD,SAAU,gFACVirD,SAAU,U,gICFDp5D,EAAU,CACrB,CACErI,GAAI,QACJgT,KAAMukN,EAAAA,EACNjvN,MAAO,cACPgM,YAAa,qBACbjP,MAAO,SAET,CACErF,GAAI,OACJgT,KAAMwkN,EAAAA,EACNlvN,MAAO,aACPgM,YAAa,kBACbjP,MAAO,QAET,CACErF,GAAI,eACJgT,KAAMykN,EAAAA,EACNnvN,MAAO,gBACPgM,YAAa,2BACbjP,MAAO,gBAET,CACErF,GAAI,OACJgT,KAAM0kN,EAAAA,EACNpvN,MAAO,OACPgM,YAAa,yBACbjP,MAAO,SC9BI,MAAMsyN,EAEnBh2K,YAAYC,EAAQ6qB,EAAgBmrJ,EAActxK,EAAcwuI,EAAa3oK,GAC3EzqB,KAAKkgD,OAASA,EACdlgD,KAAK+qE,eAAiBA,EACtB/qE,KAAKk2N,aAAeA,EACpBl2N,KAAK4kD,aAAeA,EACpB5kD,KAAKozL,YAAcA,EACnBpzL,KAAKyqB,cAAgBA,EAErBzqB,KAAKm2N,SAAWn2N,KAAKm2N,SAAS92N,KAAKW,MAGvB,eAACo2N,GACb,IACgB,SAAVA,GAAqBA,EAGvBp2N,KAAKk2N,aAAaC,SAASC,GAF3Bp2N,KAAKk2N,aAAaG,YAKpBr2N,KAAK+P,MAAMumN,UAAYF,EAClBp2N,KAAK+P,MAAM84M,cACR7oN,KAAKozL,YAAYmjC,gBAAgBv2N,KAAK+P,MAAM2hB,OAAQ1xB,KAAK+P,MAAMumN,WAGvEt2N,KAAKyqB,cAAcF,QAAQ,UAAW,mCACtC,MAAOzP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gCAI7CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,MAAM91C,EAAQ/P,KAAK4kD,aAAakB,WAEhC9lD,KAAK+P,MAAQ,CACX2hB,OAAQ,KACR4kM,UAAW,GACXE,aAAc,OACd3N,OAAQ94M,EAAMqsI,YAAY0sE,gBAAgBjwM,SAE5C7Y,KAAK+P,MAAM0mN,gBAAkB9vN,EAE7B,IACE3G,KAAK+P,MAAM2hB,aAAe1xB,KAAK+qE,eAAegmB,iBAAiBvmD,GAC/D,MAAM/lC,QAAazE,KAAKozL,YAAY/mL,KAAKrM,KAAK+P,MAAM2hB,QACpD1xB,KAAK+P,MAAMumN,UAAY7xN,EAAKiyN,WAAa12N,KAAK+P,MAAMymN,aACpD,MAAO17M,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mC,gLCnDjD,MAAMylC,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,gBAAiB,CACzD2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,6ECPZ,MAAMqrC,EAAgCvrC,EAAQ,MAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,oBAAqB,CAC7D2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,+FCLG,MAAMyhN,EAEnB12K,YAAYC,EAAQyE,EAAkBgV,GACpC35D,KAAKkgD,OAASA,EACdlgD,KAAK2kD,iBAAmBA,EACxB3kD,KAAK25D,gBAAkBA,EAGzBi9J,UAAUC,GACR,MAAMp8D,EAAYr9H,EAAAA,GAAUy5L,EAAQ3sH,UAAW,QAAS,OAAO4sH,GAAG92N,KAAK+P,MAAMgnN,UAAUx5L,OAAO,SACxFy5L,EAAU55L,EAAAA,GAAUy5L,EAAQ1sH,QAAS,QAAS,OAAO2sH,GAAG92N,KAAK+P,MAAMgnN,UAAUx5L,OAAO,UAEnF05L,EAAWC,GAAYz8D,EAAUl/H,MAAM,MACvC47L,EAASC,GAAUJ,EAAQz7L,MAAM,KAElC87L,EAAgB,IAAIr0M,KACpBs0M,EAAc,IAAIt0M,KAQxB,OANAq0M,EAAcE,SAASN,GACvBI,EAAcG,WAAWN,GAEzBI,EAAYC,SAASJ,GACrBG,EAAYE,WAAWJ,GAEhB,CACL38D,UAAW48D,EACXL,QAASM,GAIbG,qBACE,MAAMh9D,EAAYz6J,KAAK+P,MAAM2nN,WAAWxtH,UAClC8sH,EAAUh3N,KAAK+P,MAAM2nN,WAAWvtH,SAE/B8sH,EAAWC,GAAYz8D,EAAUl/H,MAAM,MACvC47L,EAASC,GAAUJ,EAAQz7L,MAAM,KAElCo8L,EAAkB,IAAI30M,KACtB40M,EAAgB,IAAI50M,KAE1B20M,EAAgBJ,SAASN,GACzBU,EAAgBH,WAAWN,GAE3BU,EAAcL,SAASJ,GACvBS,EAAcJ,WAAWJ,GAEzBp3N,KAAK+P,MAAM8nN,aAAeF,EAC1B33N,KAAK+P,MAAM+nN,WAAaF,EAG1BG,aAAalB,GACX,MAAM,UAAEp8D,EAAF,QAAau8D,GAAYh3N,KAAK42N,UAAUC,GAE9C72N,KAAK+P,MAAMsnN,cAAgB58D,EAC3Bz6J,KAAK+P,MAAMunN,YAAcN,EAG3B7zK,UACE,MAAM60K,EAAsB56L,EAAAA,GAAAA,QAE5B,OAAOp9B,KAAKkgD,QAAO2F,UACjB,MAAMtnC,EAAave,KAAK2kD,iBAAiBE,aACnC9tC,QAAiB/W,KAAK25D,gBAAgB5iD,SAASwH,GAErDve,KAAK+P,MAAQ,CACX2nN,WAAY3gN,EAASizF,aACrBqtH,cAAe,GACfC,YAAa,GACbO,aAAc,GACdC,WAAY,GACZf,SAAUiB,EACVC,IAAK76L,IAAS86L,SAGhBl4N,KAAK+3N,aAAa/3N,KAAK+P,MAAM2nN,YAC7B13N,KAAKy3N,yB,uIC7EX,MAAMl3K,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,mBAAoB,CAC5D2qC,YAAaD,EACbrrC,WAF4D,UAG5DH,SAAU,CACR2iN,WAAY,IACZ1uH,SAAU,Q,8FCTC,MAAMmvH,EAEnBl4K,YAAYC,GACVlgD,KAAKkgD,OAASA,EAGhBk4K,UAAUC,EAAcC,EAAYtvH,GAClC,MAAM7yF,EAAQinB,EAAOi7L,GAAc96L,OAAO,oBACpCg7L,EAAMn7L,EAAOk7L,GAAY/6L,OAAO,oBAKtC,MAAO,CAAEs6L,aAHYz6L,EAAAA,GAAUjnB,EAAO6yF,GAAUnI,MAAMtjE,OAAO,SAGtCu6L,WAFJ16L,EAAAA,GAAUm7L,EAAKvvH,GAAUnI,MAAMtjE,OAAO,UAK3Dq5L,UAAUC,GACR,MAAMp8D,EAAYr9H,EAAAA,GAAUy5L,EAAQ3sH,UAAW,QAAS,OAAO4sH,GAAG92N,KAAK+P,MAAMyoN,kBAAkBj7L,OAAO,SAChGy5L,EAAU55L,EAAAA,GAAUy5L,EAAQ1sH,QAAS,QAAS,OAAO2sH,GAAG92N,KAAK+P,MAAMyoN,kBAAkBj7L,OAAO,UAE3F05L,EAAWC,GAAYz8D,EAAUl/H,MAAM,MACvC47L,EAASC,GAAUJ,EAAQz7L,MAAM,KAElC87L,EAAgB,IAAIr0M,KACpBs0M,EAAc,IAAIt0M,KAQxB,OANAq0M,EAAcE,SAASN,GACvBI,EAAcG,WAAWN,GAEzBI,EAAYC,SAASJ,GACrBG,EAAYE,WAAWJ,GAEhB,CACL38D,UAAW48D,EACXL,QAASM,GAIbmB,cACE,MAAMh+D,EAAYz6J,KAAK03N,WAAWxtH,UAC5B8sH,EAAUh3N,KAAK03N,WAAWvtH,SAE1B,gBAAEwtH,EAAF,cAAmBC,GAAkB53N,KAAKy3N,mBAAmBh9D,EAAWu8D,GAE9Eh3N,KAAK+P,MAAM2oN,aAAef,EAC1B33N,KAAK+P,MAAM4oN,WAAaf,EAG1BgB,iBAEE,MAAMlB,EAAa13N,KAAK03N,YAGlB,UAAEj9D,EAAF,QAAau8D,GAAYh3N,KAAK42N,UAAUc,GAE9C13N,KAAK+P,MAAM8oN,aAAep+D,EAC1Bz6J,KAAK+P,MAAM+oN,WAAa9B,EAG1B+B,mBACE,MAAM,aAAElB,EAAF,WAAgBC,GAAe93N,KAAKo4N,UAAUp4N,KAAK+P,MAAM8oN,aAAc74N,KAAK+P,MAAM+oN,WAAY94N,KAAK+P,MAAMyoN,kBAE3Gx4N,KAAK+P,MAAM8oN,aAAaG,YAAch5N,KAAK+P,MAAM+oN,WAAWE,UAC9Dh5N,KAAK+P,MAAMkpN,WAAY,EAEvBj5N,KAAK+P,MAAMkpN,WAAY,EAGzBj5N,KAAK03N,WAAa,CAChBj0I,QAASzjF,KAAK03N,WAAWj0I,QACzBymB,UAAW2tH,EACX1tH,QAAS2tH,GAGX93N,KAAKgpG,SAAWhpG,KAAK+P,MAAMyoN,iBAE3B,MAAM,gBAAEb,EAAF,cAAmBC,GAAkB53N,KAAKy3N,mBAAmBI,EAAcC,GAEjF93N,KAAK+P,MAAM2oN,aAAef,EAC1B33N,KAAK+P,MAAM4oN,WAAaf,EAG1BH,mBAAmBh9D,EAAWu8D,GAC5B,MAAOC,EAAWC,GAAYz8D,EAAUl/H,MAAM,MACvC47L,EAASC,GAAUJ,EAAQz7L,MAAM,KAElCo8L,EAAkB,IAAI30M,KACtB40M,EAAgB,IAAI50M,KAQ1B,OANA20M,EAAgBJ,SAASN,GACzBU,EAAgBH,WAAWN,GAE3BU,EAAcL,SAASJ,GACvBS,EAAcJ,WAAWJ,GAElB,CAAEO,gBAAAA,EAAiBC,cAAAA,GAG5BsB,oBAIEl5N,KAAK+P,MAAM8oN,aAAatB,SAAS,EAAG,EAAG,EAAG,GAC1Cv3N,KAAK+P,MAAM+oN,WAAWvB,SAAS,EAAG,EAAG,EAAG,GAExCv3N,KAAK03N,WAAa,CAChBj0I,QAASzjF,KAAK03N,WAAWj0I,QACzBymB,UARuB,QASvBC,QARqB,SAYzBgvH,qBAEE,GADAn5N,KAAK+P,MAAMg6F,cAAgB/pG,KAAK+P,MAAMg6F,cACjC/pG,KAAK+P,MAAMg6F,aAAc,CAC5B,MAAM,UAAE0wD,EAAF,QAAau8D,GAAYh3N,KAAK42N,UAAU52N,KAAK+P,MAAMqpN,UACzDp5N,KAAK+P,MAAM8oN,aAAep+D,EAC1Bz6J,KAAK+P,MAAM+oN,WAAa9B,EACxBh3N,KAAK+P,MAAMkpN,WAAY,GAI3B91K,UACE,MAAM60K,EAAsB56L,EAAAA,GAAAA,QAEtBi8L,EAAYj8L,EAAAA,GAAAA,YACZ4vK,EAAQ,IAAIhiK,IAClB,IAAK,MAAMsuL,KAAWD,EACpBj8L,EAAAA,GAAAA,gBAA0Bk8L,GAASz9M,QAAO,CAACgD,EAAK06M,IAAS16M,EAAIosB,IAAIsuL,IAAOvsB,GAE1EhtM,KAAKw5N,UAAY,IAAIxsB,GAAO32L,OAC5BrW,KAAKw5N,UAAU51N,KAAK,OAEpB5D,KAAK+P,MAAQ,CACX0pN,MAAO,EACPC,MAAO,EACPC,YAAY,EACZjB,aAAc,GACdC,WAAY,GACZE,aAAc,IAAI71M,KAClB81M,WAAY,IAAI91M,KAChBo2M,SAAUp5N,KAAK03N,WACfO,IAAK76L,IAAS86L,QACdnuH,cAAc,EACd6vH,SAAS,EACTjzN,QAAS,CACPkzN,UAAW75N,KAAKw5N,WAElBP,WAAW,EACXT,iBAAkBR,GAIhBh4N,KAAK03N,WAAWxtH,WAAalqG,KAAK03N,WAAWvtH,QACb,UAA9BnqG,KAAK03N,WAAWxtH,WAAqD,UAA5BlqG,KAAK03N,WAAWvtH,SAC3DnqG,KAAKy4N,cACLz4N,KAAK44N,iBACL54N,KAAK+P,MAAM6pN,SAAU,IAErB55N,KAAKk5N,oBACLl5N,KAAK+P,MAAM6pN,SAAU,GAKvB55N,KAAKk5N,qB,kHCvKX,MAEaY,EAAsB,CACjC/kN,SAAU,CACRmtL,cAAe,IACfE,SAAU,IACVE,kBAAmB,KAErB9hJ,YARoCxrC,EAAQ,S,yoBCQvC,SAAS+kN,EAAkBtxM,EAAM2Z,EAAK43L,EAAMnwN,GAKjD,OAJAu4B,EAAMl9B,MAAMk9B,GAAO,GAAKA,EACxB43L,EAAO90N,MAAM80N,GAAQ,GAAKA,EAC1BnwN,EAAQ3E,MAAM2E,GAAS,GAAKA,EAExB4e,EAAKhpB,QAAU2iC,EACV3Z,EAEAA,EAAK3iB,UAAU,EAAGk0N,GAAQ,QAAUvxM,EAAK3iB,UAAU2iB,EAAKhpB,OAASoK,EAAO4e,EAAKhpB,QAIjF,SAASq3L,EAAcrwL,GAC5B,OAAOA,EAAI40B,QAAQ,YAAa,IAG3B,SAASylE,EAAS9wE,EAAO6kE,EAAOm2C,GAOrC,GANKn2C,IACHA,EAAQ,GAELm2C,IACHA,EAAO,IAELh7G,GAAmB,IAAVA,EACX,OAAOiqM,GAAAA,CAASjqM,EAAO,CAAEg7G,KAAMA,EAAMn2C,MAAOA,IAIzC,SAASz3E,EAAqB04J,GACnC,OAAO14I,IAAAA,KAAY04I,GAAWv4I,OAAO,uBAGhC,SAASwzJ,EAAQ1mE,GACtB,OAAOjtF,GAAAA,CAAOitF,GAAM9sF,OAAO,uBAGtB,SAAS28L,EAAWC,EAAMC,GAC/B,OAAKD,EAAKh1N,SAASi1N,GAIZD,EAAK3wN,MAAM,EAAG2wN,EAAKt0N,QAAQu0N,IAHzBD,EAMJ,SAASE,EAAaF,EAAMC,GACjC,OAAKD,EAAKh1N,SAASi1N,GAIZD,EAAK3wN,MAAM2wN,EAAKt0N,QAAQu0N,GAAa,GAHnC,GAMJ,SAASlhG,EAAU/hF,GACxB,OAAOA,EAAG3tC,MAAM,EAAG2tC,EAAGtxC,QAAQ,MAGzB,SAASy0N,EAAW9iN,EAAK4iN,GAC9B,OAAI5iN,EACK,IAAOA,EAAK4iN,GAEd,GAGF,SAASG,EAAY/iN,EAAK4iN,GAC/B,OAAI5iN,EACK,IACLA,EAAIrZ,KAAKk2C,GAASA,EAAK10C,IAAM,IAAM00C,EAAK1wC,QACxCy2N,GAGG,GAGF,SAASzxB,EAAiB5+L,GAC/B,OAAQA,GACN,KAAKD,EAAAA,GAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,kBACH,MAAO,QACT,KAAKA,EAAAA,GAAAA,MACH,MAAO,YACT,KAAKA,EAAAA,GAAAA,gBACH,MAAO,aACT,KAAKA,EAAAA,GAAAA,kBACL,KAAKA,EAAAA,GAAAA,sBACL,KAAKA,EAAAA,GAAAA,iBACH,MAAO,aACT,QACE,MAAM,IAAInL,MAAO,QAAOoL,KAAQD,EAAAA,GAAgBC,wBAI/C,SAAS+qL,EAAoB/qL,GAClC,OAAQA,GACN,KAAKD,EAAAA,GAAAA,MACH,MAAO,mBACT,KAAKA,EAAAA,GAAAA,kBACH,MAAO,cACT,KAAKA,EAAAA,GAAAA,kBACL,KAAKA,EAAAA,GAAAA,sBACL,KAAKA,EAAAA,GAAAA,gBACH,MAAO,sBACT,KAAKA,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,OACH,MAAO,gBACT,KAAKA,EAAAA,GAAAA,iBACH,MAAO,aACT,QACE,MAAM,IAAInL,MAAO,QAAOoL,KAAQD,EAAAA,GAAgBC,wBAI/C,SAASgD,EAAc5C,GAC5B,OAAQA,GACN,KAAKi2D,EAAAA,EAAAA,QAEL,KAAKA,EAAAA,EAAAA,eACH,OAAOo6J,EAAAA,EACT,KAAKp6J,EAAAA,EAAAA,WACH,OAAO+4I,EAAAA,EACT,QACE,OAAOshB,EAAAA,GAIN,SAAShvN,EAASgd,EAAMhpB,EAAQ84N,GASrC,OARIrzN,MAAMzF,KACRA,EAAS,SAGCoS,IAAR0mN,IACFA,EAAM,OAGJ9vM,EAAKhpB,QAAUA,GAAUgpB,EAAKhpB,OAAS84N,EAAI94N,QAAUA,EAChDgpB,EAEApW,OAAOoW,GAAM3iB,UAAU,EAAGrG,EAAS84N,EAAI94N,QAAU84N,I,mHC9H5D3iN,IAAAA,OACU,iBACPtD,OAAO,YAAY,IAAM7G,EAAAA,WACzB6G,OAAO,cAAc,IAAMynN,EAAAA,oBAC3BznN,OAAO,cAAc,IAAM,MAC3BA,OAAO,iBAAiB,IAAMwkL,EAAAA,gBAC9BxkL,OAAO,aAAa,IAAMwuF,EAAAA,WAC1BxuF,OAAO,2BAA2B,IAAM8K,EAAAA,uBACxC9K,OAAO,cAAc,IAAMy+K,EAAAA,UAC3Bz+K,OAAO,OAAO,IAAM4nN,EAAAA,aACpB5nN,OAAO,SAAS,IAAM+nN,EAAAA,eACtB/nN,OAAO,eAAe,IAAM,MAC5BA,OAAO,aAAa,IAAM4mH,EAAAA,YAC1B5mH,OAAO,cAAc,IAAMgoN,EAAAA,aAC3BhoN,OAAO,eAAe,IAAMioN,EAAAA,cAC5BjoN,OAAO,oBAAoB,IAAMq2L,EAAAA,mBACjCr2L,OAAO,oBAAoB,IAAMwiL,EAAAA,sBACjCxiL,OAAO,iBAAiB,IAAMvF,EAAAA,iB,0JClCjC,SAAS2tN,EAAoB3jN,EAAUhB,GACrC,OAAO,IAAOA,GAAQ,SAAUy9F,GAC9B,OAAOA,EAAMjnG,KAAOwK,EAAS08F,WAIlB,MAAMztC,EACG,uBAACjvD,GACrB,OAAOA,EAASswD,IAAIliE,SAAS,YAAc4R,EAASswD,IAAIliE,SAAS,aAAe4R,EAAS/L,OAASs+C,EAAAA,uBAAAA,2BAG7E,wBAACvyC,GACtB,MAAO,CAACuyC,EAAAA,uBAAAA,kBAA0CA,EAAAA,uBAAAA,yBAAiDA,EAAAA,uBAAAA,8BAAqDnkD,SAAS4R,EAAS/L,MAGtJ,uBAAC+L,GACrB,MAAO,CACLuyC,EAAAA,uBAAAA,yBACAA,EAAAA,uBAAAA,6BACAA,EAAAA,uBAAAA,6BACAA,EAAAA,uBAAAA,iCACAA,EAAAA,uBAAAA,6BACAnkD,SAAS4R,EAAS/L,MAGO,8BAACk+G,EAAWnzG,GACvC,IAAK,IAAIxW,EAAI,EAAGA,EAAI2pH,EAAUzpH,OAAQF,IAAK,CACzC,IAAIwX,EAAWmyG,EAAU3pH,GACrBi0G,EAAQknH,EAAoB3jN,EAAUhB,GACtCy9F,IACFz8F,EAAS4jN,UAAYnnH,EAAM3mG,QAM5B,SAAS+qC,EAAkB7gC,GAChC,OAA2B,IAApBA,EAASkC,S,sQCtCX,MAAM2hN,EAAY,QAAQl7N,OACpBm7N,EAAc,QAAQn7N,OAE7Bo7N,EAAkB,IAAIt4K,OAAQ,KAAIo4K,WAAmBC,OACrDE,EAAiB,aAOhB,SAAS/Q,EAAgBx7B,GAC9B,OAAOwsC,EACL,IAAUxsC,EAAIjzJ,MAAMw/L,IACjB58N,KAAKqjC,GAAMA,EAAEvV,SACb3Z,QAAQkvB,IAAOA,EAAE5F,WAAW,MAAc,KAAN4F,KAWpC,SAASw5L,EAAoBzwN,GAClC,OAAKA,EAIE,IACLA,EAAMpM,KAAK88N,IACT,IAAKA,EAAe91N,SAAS,KAC3B,MAAO,CAAErB,KAAMm3N,GAGjB,MAAMC,EAAkBD,EAAehvM,OAAOuW,MAAMs4L,GACpD,OAAuB,MAAnBI,GAA2BA,EAAgBz7N,OAAS,EAC/C,CAAEqE,KAAMo3N,EAAgB,GAAGjvM,OAAQtoB,MAAOu3N,EAAgB,GAAGjvM,QAAU,SADhF,MAVK,GAuBJ,SAAS89L,EAAwBx/M,GACtC,OAAKA,EAIEA,EAAM+H,QAAQygB,GAAaA,EAASjvB,OAAM3F,KAAI,EAAG2F,KAAAA,EAAMH,MAAAA,KAAaA,GAAmB,KAAVA,EAAgB,GAAEG,KAAQH,IAAUG,IAH/G,K,iBCvDX8R,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,aAAc,CACpD,WACE,aAcA,MAba,CAEbmrB,qBAA8B,SAAUl3D,GACtC,IAAK,IAAIzZ,EAAIyZ,EAAIvZ,OAAS,EAAGF,GAAK,EAAGA,IAAK,CACxC,IAAI47N,EAASniN,EAAIzZ,GACZ47N,EAAOx3N,OAAUw3N,EAAOr3N,MAC3BkV,EAAIiqD,OAAO1jE,EAAG,GAIlB,OAAOyZ,Q,kECXb,MAAMoiN,EACc,mBAAC3qM,EAAKnxB,EAAQ+pI,EAAM,IAOpC,MANmB,iBAAR54G,GACT,IAAUA,GAAK,CAAC4iL,EAAO1zM,KACjBA,IAAQL,GAAQ+pI,EAAIzlI,KAAKyvM,GACR,iBAAVA,GAAoB+nB,EAAcC,YAAYhoB,EAAO/zM,EAAQ+pI,MAGrEA,GAIX,a,sFCXA,MAAMhpE,EAEJpgB,YAAYoN,GACVrtD,KAAKqtD,oBAAsBA,EAG7B+F,gBAAgB/e,GACd,OAAO,IAAWr0C,KAAKqtD,oBAAqBhZ,EAAKxnC,O,kCAIrD,YACA+I,IAAAA,OAAe,iBAAiB+H,QAAQ,gBAAiB0iD,I,mCCTlD,SAASgzB,IACd,MAAM23C,EAAOxlG,SAAS8sD,eAAe,QACrC,OAAO04C,EAAOA,EAAKswF,aAAa,QAAU,I,kMCH5C,MAAMC,EAMJC,iCAAiC9pM,EAAQ7mB,GACvC,IAAKA,EACH,OAAO,IAAI4wN,EAAAA,oCAAmC,GAEhD,IAAIhnN,GAAY,EACZC,GAAa,EACbzI,EAAQ,GACRQ,EAAQ,GACZ,OAAQ5B,EAAgBe,WACtB,KAAKw0D,EAAAA,EAAAA,OACH1rD,GAAa,EACb,MACF,KAAK0rD,EAAAA,EAAAA,QACHn0D,EAAQ,CAACylB,GACT,MACF,KAAK0uC,EAAAA,EAAAA,WACHn0D,EAAQ,IAAMpB,EAAgBgB,cAAeQ,GAASA,EAAKF,SAC3DM,EAAQ,IAAM5B,EAAgBkB,cAAea,GAASA,EAAKF,SAC3D,MACF,QACE+H,GAAY,EAGhB,OAAO,IAAIgnN,EAAAA,mCAAmChnN,EAAWC,EAAYzI,EAAOQ,GAS9EivN,gCAAgChqM,EAAQ/d,EAAYgoN,EAAe,IAC5DhoN,EAAWspF,uBACdtpF,EAAW/H,UAAYw0D,EAAAA,EAAAA,QAGzB,IAAI3rD,GAAY,EACZC,GAAa,EACbzI,EAAQ,GACRQ,EAAQ,GACZ,OAAQkH,EAAW/H,WACjB,KAAKw0D,EAAAA,EAAAA,OACH1rD,GAAa,EACb,MACF,KAAK0rD,EAAAA,EAAAA,QACHn0D,EAAMrI,KAAK8tB,GACX,MACF,KAAK0uC,EAAAA,EAAAA,WACHn0D,EAAQ,IAAM0H,EAAW6qM,iBAAkBnyM,GAASA,EAAKE,KACzDE,EAAQ,IAAMkH,EAAWwqM,iBAAkBvxM,GAASA,EAAKL,KACzD,MACF,QACEkI,GAAY,EAGhB,OAAO,IAAIgnN,EAAAA,mCAAmChnN,EAAWC,EAAYzI,EAAOQ,EAAOkvN,GAGrFC,wBAAwB/wN,EAAiBoB,GACvC,MAAM3B,EAAkB,GAOxB,OANA,IAAUO,EAAgBgB,cAAeixK,IACvC,MAAMzwK,EAAO,IAAOJ,EAAO,CAAEM,GAAIuwK,EAAO3wK,SACpCE,GACF/B,EAAgB1G,KAAKyI,MAGlB/B,EAGTuxN,wBAAwBhxN,EAAiB4B,GACvC,MAAMjC,EAAkB,GAOxB,OANA,IAAUK,EAAgBkB,cAAe+wK,IACvC,MAAMlwK,EAAO,IAAOH,EAAO,CAAEF,GAAIuwK,EAAOpwK,SACpCE,GACFpC,EAAgB5G,KAAKgJ,MAGlBpC,GAIX,YACAoL,IAAAA,OAAe,iBAAiB+H,QAAQ,wBAAyB49M,I,uKCxFjE3lN,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,cAAe,CACrD,WAEE,IAAImrB,EAAS,GAUb,SAAS4rJ,EAA2B1yG,EAAOxiH,EAAOmD,GAChD,OAAO,IACLq/G,EAAM92G,QAAQ+hC,GAASA,EAAKuG,QAAUvG,EAAKuG,OAAOh0C,KAAQzI,KAAKk2C,GAAS,IAAI0nL,EAAAA,uBAAuB1nL,EAAKuG,OAAOh0C,GAAQmD,EAAMsqC,EAAKwmC,WAClI,QA0BJ,OArCA3K,EAAO8rJ,gCAAkC,SAAU1gL,GACjD,OAAOwgL,EAA2BxgL,EAAY,6BAA8B,IAG9E40B,EAAO+rJ,8BAAgC,SAAUjhK,GAC/C,OAAO8gK,EAA2B9gK,EAAU,6BAA8B,IAU5EkV,EAAOgsJ,aAAe,SAAUlsF,EAAMmsF,GACpC,IAAIC,EAEJ,IACEA,EAAar4E,IAAAA,MAAW/T,GACxB,MAAOl1H,GACP,MAAO,yCAA2CA,EAGpD,MAAMsT,EAAQ,IAAOgtM,EAAAA,QAAAA,YAA0BgB,EAAY,mBACrDC,EAAsB,IAAeF,EAAgB/tM,GAE3D,GAAmC,IAA/BiuM,EAAoB58N,OAExB,OACkC,IAA/B48N,EAAoB58N,OAAe,yBAA2B,6BAC/D,mEACA,IAAO48N,EAAqB,MAC5B,KAIGnsJ,M,sJC9CJ,SAASuhJ,EAAcjqH,EAAMyZ,GAClC,MAAMk7E,EAAe,IAAS30F,GAAO7tE,GAAQ,IAAWsnF,EAAKtnF,EAAIptB,MAEjE,OADiB,IAAM4vL,EAAc,U,kECFvCvmL,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,iBAAkB,CACxD,WAyHE,MAvHa,CAEbmrB,iCAA0C,WACxC,MAAO,CACLyR,IAAK,GACLgE,WAAW,EACXmO,KAAK,EACLrjB,aAAc,GACdJ,WAAY,CACVgU,cAAe,CACbx3E,KAAM,MAERyqF,aAAc,GACdrmB,MAAO,GACP0pB,YAAY,EACZ1D,WAAY,IAEd/lB,QAAS,GACTt2B,OAAQ,KAIZs1B,6BAAsC,SAAUr4B,GAC9C,IAAIykL,EAAoB,CACtBvnN,SAAU,GACVwnN,aAAc,IAkBhB,OAhBA1kL,EAAMhgC,SAAQ,SAAU0yB,GACtB,GAAIA,EAAE8mC,cAAe,CACnB,IAAI1xE,EAAM4qC,EAAE8mC,cAAgB,IAAM9mC,EAAEsnC,SAChCY,EAAU,GACd,GAAIloC,EAAE+mC,WACJmB,EAAQV,SAAWxnC,EAAE+mC,SACjB/mC,EAAE+mC,SAASzrE,QAAQ,MAAQ,GAAG,CAChC,IAAI6rE,EAAcnnC,EAAE+mC,SAAS/1C,MAAM,KACnCk3C,EAAQX,OAASJ,EAAY,GAC7Be,EAAQV,SAAWL,EAAY,GAGnC4qJ,EAAkBvnN,SAASpV,GAAO,CAAC8yE,GACnC6pJ,EAAkBC,aAAa58N,GAAO,OAGnC28N,GAGTpsJ,uCAAgD,SAAUssJ,GACxD,IAAI7hL,EAAS,GAUb,OATA6hL,EAAY3kN,SAAQ,SAAU8lF,GACxBA,EAAE75F,OACA65F,EAAEh6F,MACJg3C,EAAOgjD,EAAE75F,MAAQ65F,EAAEh6F,MAEnBg3C,EAAOgjD,EAAE75F,MAAQ,OAIhB62C,GAGTu1B,iBAA0B,SAAUusJ,GAClC,IAAIzjN,EAAM,GAOV,OANAyjN,EAAoB5kN,SAAQ,SAAUsjN,GACpC,GAAIA,EAAOx3N,OAASw3N,EAAOt8M,IAAK,CAC9B,IAAIlb,EAAQw3N,EAAOt8M,IAAMs8M,EAAOt8M,IAAMs8M,EAAOx3N,MAC7CqV,EAAIpV,KAAKu3N,EAAOr3N,KAAO,IAAMH,OAG1BqV,GAGTk3D,wBAAiC,SAAUwsJ,GACzC,IAAIC,EAAuB,CACzBnlI,WAAW,EACXC,KAAK,GAMP,OAJwB,IAApBilI,IACFC,EAAqBnlI,WAAY,EACjCmlI,EAAqBllI,KAAM,GAEtBklI,GAGTzsJ,qBAA8B,SAAUvU,EAASihK,GAC/CjhK,EAAQ9jD,SAAQ,SAAU+jD,GAEtB,IAAI6W,EADF7W,EAAOtkB,YAEW,SAAhBskB,EAAO7xD,KACT0oE,EAAUmqJ,EAAqBluJ,MAAMniE,GAAK,IAAMqvD,EAAOtkB,UAC9B,SAAhBskB,EAAO7xD,MAAmB6xD,EAAOv8D,OAC1CozE,EAAU7W,EAAOv8D,KAAO,IAAMu8D,EAAOtkB,WAEnCskB,EAAOr0D,WACTkrE,GAAW,OAEb7W,EAAO6W,QAAUA,OAKvBvC,sCAA+C,SAAUvU,GACvD,IAAI2mH,EAAQ,EAMZ,OALA3mH,EAAQ9jD,SAAQ,SAAU+jD,GACJ,SAAhBA,EAAO7xD,QACPu4K,KAGCA,GAGTpyG,oBAA6B,SAAUxU,GAErC,IADA,IAAI/4D,EAAa,GACRpD,EAAI,EAAGA,EAAIm8D,EAAUj8D,OAAQF,IAAK,CACzC,IAAIuV,EAAW4mD,EAAUn8D,GACzBoD,EAAaA,EAAW+7C,OAAO5pC,EAAS4/M,YAE1C,OAAO,IAAO/xN,S,iBCzHpBiT,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,YAAa,CACnD,UACA,SAA0BkC,GACxB,aACA,IAAIipB,EAAS,CAEbA,aAGA,SAAsB2sJ,GAEpB,OAIkB51K,EAAQksC,SAAStpB,OAAOxuC,QAAQ,QAAS,IAAIE,MAAM,KAClD1f,QAAO,SAAU2W,EAAKsqM,GACvC,IAAIzlH,EAASylH,EAAUvhM,MAAM,KACzB57B,EAAM03G,EAAO,GACbl7F,EAAMk7F,EAAO,GAEjB,OADA7kF,EAAI7yB,GAAOwc,EACJqW,IACN,IAXeqqM,IAJpB3sJ,gBAkBA,WACEjpB,EAAQksC,SAAS93D,QAAQ4rB,EAAQksC,SAASC,OAASnsC,EAAQksC,SAAS4pI,SAAW91K,EAAQksC,SAAShnB,QAGlG,OAAO+D,M,wDC3BXt6D,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,gBAAiB,CACvD,YACA,wBACA,sBACA,SAA8ByzD,EAAWxrD,EAAuBR,GAG9D,IAAI0jB,EAAS,GACb,MAAM2B,EAAW2mC,EAAU3mC,WAAWnsE,cAChCsyC,EAAOwgE,EAAUxgE,OACjBglL,EAA4B,SAAbnrJ,GAAgC,KAAT75B,GAA8B,UAAb65B,GAAiC,MAAT75B,EAAgB,GAAK,IAAMA,EAUhH,OARAk4B,EAAOowB,iBAAmB,SAAU5pB,GAClC,MAAQ,GAAE7E,OAAc2mC,EAAUxhE,SAASgmL,KAAc3pI,EAAAA,EAAAA,cAAarmC,KAAyB0pB,KAGjGxG,EAAOytG,sBAAwB,SAAUjnG,GACvC,MAAQ,GAAE7E,OAAc2mC,EAAUxhE,SAASgmL,KAAc3pI,EAAAA,EAAAA,cAAa7mC,cAAgCkqB,KAGjGxG,M,sFCpBXt6D,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,4BAA6B,CACnE,KACA,mBACA,SAAUjxB,EAAI6wB,GAEZ,IAAIY,EAAc,GAKlB,SAAS03K,EAAax2N,GACpB,OACE,IAAaA,EAAK,UACjB,IAAWA,EAAK,gBACf,IAAWA,EAAK,YAChB,IAAWA,EAAK,aAChB,IAAWA,EAAK,cAChB,IAAWA,EAAK,UAChB,IAAWA,EAAK,aAoBtB,OA/BA8+C,EAAY7uC,SAeZ,SAA6BA,GAC3B,IAAIjQ,EAAMiQ,EAASkO,OAAOne,IAI1B,OAHwB,MAApBiQ,EAASwB,QAAkB+kN,EAAax2N,IAAQk+C,EAAiB8J,eACnE9J,EAAiBu4K,gBAAe,GAE3BxmN,GAAYod,EAAGupB,KAAK3mC,IAnB7B6uC,EAAYE,cAsBZ,SAAkCq0B,GAChC,IAAIrzE,EAAMqzE,EAAUl1D,OAAOne,IAI3B,OAH0B,MAArBqzE,EAAU5hE,QAAuC,MAArB4hE,EAAU5hE,SAAwC,IAAtB4hE,EAAU5hE,SAAkB+kN,EAAax2N,IAASk+C,EAAiB8J,eAC9H9J,EAAiBu4K,gBAAe,GAE3BppM,EAAG/E,OAAO+qD,IAGZv0B,M,gFCxCI,MAAM43K,EAEnBl9K,YAAYC,EAAQwI,EAAQplC,EAAgBmH,GAC1CzqB,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKsjB,eAAiBA,EACtBtjB,KAAKyqB,cAAgBA,EAErBzqB,KAAKujB,SAAW,CAAC,IACjBvjB,KAAKo9N,eAAiB,GAEtBp9N,KAAKq9N,gBAAkBr9N,KAAKq9N,gBAAgBh+N,KAAKW,MAGnDq9N,kBACEr9N,KAAK0oD,OAAOr8B,GAAG,uB,sKCfnB,MAIaixM,EAAiB,CAC5B98K,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,mGCAZ,UAAeU,IAAAA,OACL,oDAAqD,IAE5DC,UAAU,iBAAkBynN,EAAAA,gBAC5BznN,UAAU,eAAgB0nN,EAAAA,cAC1B1nN,UAAU,kBAAmB2nN,EAAAA,iBALhC,M,mGCNA,MAKaD,EAAe,CAC1B/8K,YANoCxrC,EAAQ,OAO5CE,WAF0B,UAG1BH,SAAU,CACRwO,SAAU,IACV85M,gBAAiB,O,uGCVrB,MAAM98K,EAAgCvrC,EAAQ,OAIjCwoN,EAAkB,CAC7BzoN,SAAU,CACR0oN,cAAe,IACf95N,MAAO,IACPw8B,MAAO,IAEP/4B,SAAU,IACVwpD,cAAe,KAEjB17C,WAT6B,UAU7BsrC,YAAaD,I,gFCdA,MAAMm9K,EACnBC,YACE,OAAO39N,KAAKgpE,KAAK40J,aAAaznH,UAAan2G,KAAKy9N,gBAAkBz9N,KAAKy9N,cAAcvlN,U,uGCA1E,MAAM2lN,EAEnB59K,YAAYC,EAAQ58B,EAAgBmH,GAClCzqB,KAAKkgD,OAASA,EACdlgD,KAAKsjB,eAAiBA,EACtBtjB,KAAKyqB,cAAgBA,EAErBzqB,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB2oI,UAAW,IAEb99N,KAAKo9N,eAAiB,GAEtBp9N,KAAK+9N,WAAa/9N,KAAK+9N,WAAW1+N,KAAKW,MACvCA,KAAK4iB,cAAgB5iB,KAAK4iB,cAAcvjB,KAAKW,MAC7CA,KAAKg+N,gBAAkBh+N,KAAKg+N,gBAAgB3+N,KAAKW,MACjDA,KAAKi+N,OAASj+N,KAAKi+N,OAAO5+N,KAAKW,MAGjC+9N,aACE/9N,KAAKujB,SAAS3f,KAAK,IAGrBgf,cAAcud,GACZngC,KAAKujB,SAAS0/C,OAAO9iC,EAAO,GAG9B69L,gBAAgBr6N,EAAOw8B,GACrBngC,KAAKujB,SAAS4c,GAASx8B,EAGzBuqH,cACE,OAAOluH,KAAKgpE,KAAKk1J,QAAUl+N,KAAKujB,SAAS+K,OAAO3uB,IAASK,KAAKo9N,eAAez9N,IAAQK,KAAKo9N,eAAez9N,GAAKuY,SAGpG,eACV,OAAOlY,KAAKkgD,QAAO2F,UACjB,IAAK7lD,KAAKkuH,cAER,YADAluH,KAAK+P,MAAM+tN,UAAY,mBAGzB,IAAIv6M,EAAW,IAAUvjB,KAAKujB,UAE9B,GAAKA,EAAS9jB,OAOd,GAFA8jB,EAAWA,EAASjR,QAAQ3S,IAASK,KAAKo9N,eAAez9N,KAASK,KAAKo9N,eAAez9N,GAAKuY,SAEtFqL,EAAS9jB,OAKd,IACE,MAAM,WAAEijB,SAAqB1iB,KAAKsjB,eAAeE,OAAOD,GAExD,GAAIb,GAAc5jB,OAAOD,KAAK6jB,GAAYjjB,OAExC,YADAO,KAAKo9N,eAAiBt+N,OAAOwG,YAAYie,EAASplB,KAAKwB,GAAQ,CAACA,EAAK,CAAEuY,QAASwK,EAAW/iB,GAAMsN,QAASyV,EAAW/iB,SAIvHK,KAAKq9N,kBACL,MAAOviN,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAdzC9a,KAAKq9N,uBAPLr9N,KAAK+P,MAAM+tN,UAAY,8C,yJCrC/B,SAASl5M,EAAOoxC,GA4BdA,EAAuBC,SA3BN,CACfnyD,KAAM,qBACN2C,IAAK,YACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,iBAGfqzC,QAAO,oCAAkB,SAAiBhJ,EAAQwI,EAAQqiB,GACxD,OAAO7qB,GAAO2F,UACZ,IAAKklB,EAAe9gE,UAClB,OAAOy+C,EAAOr8B,GAAG,yBAiBzB2pC,EAAuBC,SAXJ,CACjBnyD,KAAM,yBACN2C,IAAK,gBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,qB,qCA1BnB,UAAeD,IAAAA,OAAe,mCAAoC,CAACuoN,EAAAA,QAAoBC,EAAAA,UAAuBx5M,OAAOA,GAAQjH,QAAQ,iBAAkB2F,EAAAA,IAAvJ,M,8GCCA,UAAe1N,IAAAA,OACL,iDAAkD,IACzDC,UAAU,oBAAqBwoN,EAAAA,mBAC/BxoN,UAAU,cAAesO,EAAAA,aACzBtO,UAAU,mBAAoB8oB,EAAAA,GAC9B9oB,UAAU,eAAgByoN,EAAAA,cAL7B,M,mGCPA,MAIan6M,EAAc,CACzBq8B,YALoCxrC,EAAQ,OAM5CE,WAFyB,UAGzBH,SAAU,CAAEmO,KAAM,O,uGCLL,MAAMq7M,EAEnBt+K,YAAYC,EAAQs+K,EAAe/zM,GACjCzqB,KAAKkgD,OAASA,EACdlgD,KAAKw+N,cAAgBA,EACrBx+N,KAAKyqB,cAAgBA,EAGvBg0M,iBACE,OAAQz+N,KAAKkjB,KAAKu7M,gBAChB,KAAK,EACH,MAAO,mBACT,KAAK,EACH,MAAO,qBACT,QACE,MAAO,IAIbphM,YACE,OAAOD,IAAAA,KAAYp9B,KAAKkjB,KAAKma,WAAWE,OAAO,cAGjDmhM,YACE,OAAO1+N,KAAKokB,UAAYpkB,KAAKkjB,KAAKmB,MAGpC8+B,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKokB,gBAAkBpkB,KAAKw+N,cAAcx6M,aAC1C,MAAOlJ,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,kC,gJClCjD,MAEaujN,EAAoB,CAC/B79K,YAHoCxrC,EAAQ,OAI5CE,WAAY,6BACZH,SAAU,CAAE8xB,QAAS,IAAK6Z,UAAW,IAAKC,SAAU,IAAKC,QAAS,IAAKmc,aAAc,IAAKoF,aAAc,IAAKthB,aAAc,IAAK89K,eAAgB,O,uGCHnI,MAAMC,EAEnB3+K,YAAYC,EAAQwI,EAAQ81K,EAAel7M,EAAgBo+B,EAAcj3B,EAAe4a,GACtFrlC,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKw+N,cAAgBA,EACrBx+N,KAAKsjB,eAAiBA,EACtBtjB,KAAK0hD,aAAeA,EACpB1hD,KAAKyqB,cAAgBA,EACrBzqB,KAAKqlC,UAAYA,EAEjBrlC,KAAKkjB,KAAO,KACZljB,KAAKujB,SAAW,KAChBvjB,KAAKokB,UAAY,EACjBpkB,KAAK8U,SAAW,OAEhB9U,KAAK+8D,aAAe/8D,KAAK+8D,aAAa19D,KAAKW,MAC3CA,KAAK2+N,eAAiB3+N,KAAK2+N,eAAet/N,KAAKW,MAGjD2+N,eAAetqL,GACbr0C,KAAKqlC,UAAUL,SAASqP,EAAKwqL,YAG/B9hK,aAAax5C,GACX,OAAOvjB,KAAKkgD,QAAO2F,UACjB,IACE,MAAMi5K,EAAwBv7M,EAASjR,QAAQqrF,GAAMA,EAAEo9E,QACvD,GAAI+jD,EAAsBr/N,QACFO,KAAKujB,SAASjR,QAAQqrF,GAAMA,EAAEo9E,QAClCt7K,SAAWq/N,EAAsBr/N,OAEjD,YADAO,KAAKyqB,cAAcD,QAAQ,0CAK/B,UAAYxqB,KAAK0hD,aAAa35B,qBAAqB,mDACjD,OAGF,MAAMrR,QAAiB1W,KAAKsjB,eAAeG,OAAOF,EAASplB,KAAK4gO,GAAYA,EAAQF,cACpF,GAAInoN,EAASgM,YAAc5jB,OAAOD,KAAK6X,EAASgM,YAAYjjB,OAC1D,MAAM,IAAId,MAAM,4BAElB,MAAOmc,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4BAE3C9a,KAAK0oD,OAAOxnB,YAIH,gBACX,OAAOlhC,KAAKkgD,QAAO2F,UACjB,IACE,MAAMtiC,QAAiBvjB,KAAKsjB,eAAeC,WAC3CvjB,KAAKujB,SAAWA,EAASplB,KAAK4gO,IAC5B,MAAM1hM,EAAYD,IAAAA,KAAY2hM,EAAQ1hM,WAChC09I,GAASgkD,EAAQC,SAAW5hM,GAAAA,GAASypL,SAASxpL,GACpD,MAAO,IACF0hM,EACHE,cAAe5hM,EAAUE,OAAO,oBAChCw9I,MAAAA,MAGJ,MAAOjgK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAG3C,IACE9a,KAAKokB,gBAAkBpkB,KAAKw+N,cAAcx6M,aAC1C,MAAOlJ,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAG3C,IACE9a,KAAKkjB,WAAaljB,KAAKsjB,eAAeJ,OAClCljB,KAAKokB,UAAYpkB,KAAKkjB,KAAKmB,QAC7BrkB,KAAK8U,SAAW,SAGlB9U,KAAKsjB,eAAeF,WAAWF,IAC7BljB,KAAKkjB,KAAOA,KAEd,MAAOpI,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oC,+MCtFjD,MAIawjN,EAAe,CAC1B99K,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,mCCLL,SAAS09F,EAAoBnuG,GAClCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAOpI,EAAK+H,SACjBxM,KAAKgL,KAAO,OACZhL,KAAKy9M,WAAY,EACjBz9M,KAAKk/N,UAAW,EAChBl/N,KAAKiR,KAAO,CAAE1E,GAAI,EAAGM,KAAM,KAC3B7M,KAAKsR,KAAO,gDAIP,SAASwhG,EAAoBruG,GAClCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAKgL,KAAO,OACZhL,KAAKy9M,WAAY,EACjBz9M,KAAKk/N,UAAW,EAChBl/N,KAAKiR,KAAO,CAAE1E,GAAI,EAAGM,KAAM,KAC3B7M,KAAKsR,KAAO,iD,6MCjBP,SAASy1D,IACd/mE,KAAKuM,GAAK,EACVvM,KAAKgL,KAAOu8D,EAAAA,cAAAA,UACZvnE,KAAK6M,KAAO,yBACZ7M,KAAKqnE,IAAM,c,yLCJN,MAAM83J,EACXl/K,cACEjgD,KAAK04L,eAAiB0mC,EAAAA,iCAAAA,iBACtBp/N,KAAK6M,KAAO,GACZ7M,KAAKqnE,IAAM,GACXrnE,KAAKwhM,KAAM,EACXxhM,KAAKyhM,eAAgB,EACrBzhM,KAAKq/N,qBAAsB,EAC3Br/N,KAAKspN,UAAY,KACjBtpN,KAAKupN,QAAU,KACfvpN,KAAKwpN,OAAS,KACdxpN,KAAKs/N,mBAAqB,GAC1Bt/N,KAAKu/N,cAAgB,GACrBv/N,KAAKqiM,uBAAyB,IAIlC,MAAMm9B,EACJv/K,YAAYt8C,EAAOuK,EAAOgtB,EAAStoB,GACjC5S,KAAKuM,GAAK5I,EACV3D,KAAKioI,MAAQtkI,EACb3D,KAAKwkC,MAAQt2B,EACblO,KAAKy/N,QAAUvkM,EACfl7B,KAAKsiF,YAAc1vE,GAIhB,MAAM8sN,EAAiD5gO,OAAOyyF,OAAO,CAC1E,IAAIiuI,EAA8CJ,EAAAA,iCAAAA,aAA+C,SAAU,gBAAiB,uCAC5H,IAAII,EACFJ,EAAAA,iCAAAA,iBACA,aACA,sBACA,2CAEF,IAAII,EAA8CJ,EAAAA,iCAAAA,MAAwC,QAAS,aAAc,mC,yMClC5G,MAAM91K,EAAyBxqD,OAAOyyF,OAAO,CAElDouI,kBAAmB,EAEnBC,yBAA0B,EAE1BC,iBAAkB,EAElBC,6BAA8B,EAE9BC,2BAA4B,EAE5BC,6BAA8B,EAE9BC,iCAAkC,EAElCC,4BAA6B,IAMlBC,EAAiCrhO,OAAOyyF,OAAO,CAC1D6uI,uBAAwB,EACxBC,iBAAkB,EAClBR,iBAAkB,EAClBS,qBAAsB,EACtBC,2BAA4B,EAC5BC,sBAAuB,IAGZpB,EAAmCtgO,OAAOyyF,OAAO,CAC5DkvI,aAAc,EACdC,iBAAkB,EAClBC,OAAQ,EACR92B,MAAO,EACP+2B,MAAO,EACPC,KAAM,K,mCCxCD,SAASC,EAAsBC,GACpC/gO,KAAKuM,GAAKw0N,EAAQziO,GAClB0B,KAAKsiF,YAAcy+I,EAAQnuN,YAC3B5S,KAAK6M,KAAOk0N,EAAQj9N,KACpB9D,KAAK6/H,UAAYkhG,EAAQ54J,UAAY44J,EAAQ54J,UAAUrkE,KAAO,GAC9D9D,KAAKghO,kBAAoBD,EAAQE,oBACjCjhO,KAAKuvN,gBAAkBwR,EAAQG,2B,+FCN1B,SAASC,IACdnhO,KAAK6M,KAAO,GACZ7M,KAAKsiF,YAAc,GACnBtiF,KAAKkoG,OAAS,GAGT,SAASk5H,EAAmB38N,GACjCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAKsiF,YAAc79E,EAAK69E,YACxBtiF,KAAKkoG,OAASzjG,EAAKyjG,OACnBloG,KAAKw+M,gBAAkB/5M,EAAK+5M,gBAC5Bx+M,KAAKm+M,gBAAkB15M,EAAK05M,gBAC5Bn+M,KAAKoyG,mBAAqB3tG,EAAK2tG,mBAC/BpyG,KAAKsyG,mBAAqB7tG,EAAK6tG,mBAG1B,SAAS+uH,EAA2B59K,EAAOylE,GAChDlpH,KAAK6M,KAAO42C,EAAM52C,KAClB7M,KAAKsiF,YAAc7+B,EAAM6+B,YACzBtiF,KAAKkoG,OAASzkD,EAAMykD,OACpBloG,KAAKshO,oBAAsBp4G,EAGtB,SAASq4G,EAA2B99K,EAAOylE,GAChDlpH,KAAK1B,GAAKmlD,EAAMl3C,GAChBvM,KAAK6M,KAAO42C,EAAM52C,KAClB7M,KAAKsiF,YAAc7+B,EAAM6+B,YACzBtiF,KAAKkoG,OAASzkD,EAAMykD,OACpBloG,KAAKshO,oBAAsBp4G,EAC3BlpH,KAAKoyG,mBAAqB3uD,EAAM2uD,mBAChCpyG,KAAKsyG,mBAAqB7uD,EAAM6uD,mB,+dC5B3B,SAASkvH,EAAkB/8N,GAChCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKgL,KAAOvG,EAAKuG,KACjBhL,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAKqnE,IAAM5iE,EAAK4iE,IAChBrnE,KAAKyhO,QAAUh9N,EAAKg9N,QACpBzhO,KAAK+qE,eAAiBtmE,EAAKsmE,eAC3B/qE,KAAKwM,SAAW/H,EAAK+H,SACrBxM,KAAK0hO,SAAWj9N,EAAKi9N,SACrB1hO,KAAKuzG,iBAAmB9uG,EAAK8uG,iBAC7BvzG,KAAKg7E,SAAU,EACfh7E,KAAKwnE,OAAS/iE,EAAK+iE,OACnBxnE,KAAK+yE,KAAOtuE,EAAKsuE,KACjB/yE,KAAK2hO,IAAMl9N,EAAKk9N,IAGX,SAASC,EAA4Cx6J,GAC1DpnE,KAAK+qE,gBAAiB,EACtB/qE,KAAK0hO,SAAW,GAChB1hO,KAAKwhM,KAAM,EACXxhM,KAAKyhM,eAAgB,EACrBzhM,KAAK2hM,cAAgB,KACrB3hM,KAAK6hM,YAAc,KACnB7hM,KAAK+hM,WAAa,KAEd36H,EAASp8D,OAASu8D,EAAAA,cAAAA,MACpBvnE,KAAK6hO,OAASz6J,EAASu6J,IAAIE,OAC3B7hO,KAAKyhM,eAAgB,GAGnBr6H,EAASp8D,OAASu8D,EAAAA,cAAAA,MAAsBH,EAASp8D,OAASu8D,EAAAA,cAAAA,OAAuBH,EAASp8D,OAASu8D,EAAAA,cAAAA,MACrGvnE,KAAK+qE,gBAAiB,EACtB/qE,KAAKwM,SAAW46D,EAAS56D,SACzBxM,KAAKwhM,KAAM,GAGRp6H,EAASp8D,OAASu8D,EAAAA,cAAAA,QAAwBH,EAASp8D,OAASu8D,EAAAA,cAAAA,SAAyBH,EAAS2D,iBACjG/qE,KAAK+qE,gBAAiB,EACtB/qE,KAAKwM,SAAW46D,EAAS56D,UAItB,SAASs1N,IACd9hO,KAAKgL,KAAOu8D,EAAAA,cAAAA,OACZvnE,KAAKqnE,IAAM,GACXrnE,KAAK6M,KAAO,GACZ7M,KAAK+qE,gBAAiB,EACtB/qE,KAAKwM,SAAW,GAChBxM,KAAK0hO,SAAW,GAGX,SAASK,EAAsBt+K,GACpCzjD,KAAK6M,KAAO42C,EAAM52C,KAClB7M,KAAKgL,KAAOy4C,EAAMz4C,KAClBhL,KAAKqnE,IAAM,IAAU5jB,EAAM4jB,IAAK,iBAAkB,IAClDrnE,KAAKqnE,IAAM,IAAUrnE,KAAKqnE,IAAK,MAAO,IACtCrnE,KAAK+qE,eAAiBtnB,EAAMsnB,eACxBtnB,EAAMsnB,iBACR/qE,KAAKwM,SAAWi3C,EAAMj3C,SACtBxM,KAAK0hO,SAAWj+K,EAAMi+K,UAEpBj+K,EAAMz4C,OAASu8D,EAAAA,cAAAA,SACjBvnE,KAAKwnE,OAAS,CACZw6J,UAAWv+K,EAAM+jB,OAAOw6J,UACxBC,YAAax+K,EAAM+jB,OAAOy6J,YAC1Bx6J,YAAahkB,EAAM+jB,OAAOC,cAG1BhkB,EAAMz4C,OAASu8D,EAAAA,cAAAA,MACjBvnE,KAAK2hO,IAAMl+K,EAAMk+K,KAEfl+K,EAAMz4C,OAASu8D,EAAAA,cAAAA,OACjBvnE,KAAK+yE,KAAO,CACVg9I,gBAAiBtsK,EAAMsvB,KAAKg9I,gBAC5BmS,iBAAkBz+K,EAAMsvB,KAAKmvJ,mBAG7Bz+K,EAAMz4C,OAASu8D,EAAAA,cAAAA,SACjBvnE,KAAKyhO,QAAU,IAAUh+K,EAAMg+K,QAAS,iBAAkB,IAC1DzhO,KAAKyhO,QAAU,IAAUzhO,KAAKyhO,QAAS,MAAO,O,mLChF3C,SAASU,EAA4B9tL,GACtCA,EAAKvwC,MAAQuwC,EAAKmzD,MACpBxnG,KAAK6M,KAAOwnC,EAAKvwC,KACjB9D,KAAKoiO,UAAY,IAAU/tL,EAAKmzD,KAAM,MAAM/nG,SAE5CO,KAAK6M,KAAOwnC,EACZr0C,KAAKoiO,UAAY,GAId,SAASC,EAAkC59N,GAChDzE,KAAK6M,KAAOpI,EAAKk9C,KACjB3hD,KAAKoiO,UAAY39N,EAAK+iG,KAAK/nG,S,sFCdtB,MAAM8nE,EAAgBzoE,OAAOyyF,OAAO,CACzC+wI,UAAW,EACXC,KAAM,EACN14B,MAAO,EACP24B,OAAQ,EACRC,OAAQ,EACRC,OAAQ,EACRC,UAAW,EACXC,IAAK,K,mCCFA,SAASC,EAA6B33N,EAAYH,EAActG,GAGrEzE,KAAKwnF,WAAat8E,EAClBlL,KAAKgL,KAAOD,EACZ/K,KAAKqU,OAAS5P,EAAK4P,OACnBrU,KAAK8iO,mBAAqBr+N,EAAKq+N,mBAC/B9iO,KAAKm5M,MAAQ10M,EAAK00M,MAClBn5M,KAAK+iO,MAAQt+N,EAAKs+N,MAClB/iO,KAAKgjO,eAAiBv+N,EAAKu+N,e,qGCPtB,SAASvH,EAAmChnN,GAAY,EAAOC,GAAa,EAAOzI,EAAQ,GAAIQ,EAAQ,GAAIkvN,EAAe,IAC/H37N,KAAK8iO,mBAAqBruN,EAC1BzU,KAAKqU,OAASK,EACd1U,KAAKm5M,MAAQltM,EACbjM,KAAK+iO,MAAQt2N,EACbzM,KAAKgjO,eAAiBrH,E,4GCbjB,SAAS7rG,EAAsBrsE,GACpCzjD,KAAK6M,KAAO42C,EAAM52C,KAClB7M,KAAKmqH,UAAY1mE,EAAM0mE,UACvBnqH,KAAKiqH,eAAiBxmE,EAAMwmE,eAC5BjqH,KAAK0qH,UAAYjnE,EAAMinE,UACvB1qH,KAAKoqH,YAAc3mE,EAAM2mE,YACzBpqH,KAAK6tE,KAAOpqB,EAAMoqB,KAGb,SAASmiD,EAAsBvsE,GACpCzjD,KAAK1B,GAAKmlD,EAAMl3C,GAChBvM,KAAK6M,KAAO42C,EAAM52C,KAClB7M,KAAKmqH,UAAY1mE,EAAM0mE,UACvBnqH,KAAKiqH,eAAiBxmE,EAAMwmE,eAC5BjqH,KAAK0qH,UAAYjnE,EAAMinE,UACvB1qH,KAAKoqH,YAAc3mE,EAAM2mE,Y,0ICfpB,SAAS64G,EAAkBx+N,GAChCzE,KAAKm7M,QAAU12M,EAAK02M,QACpBn7M,KAAKkjO,kBAAoBz+N,EAAKy+N,kBAC9BljO,KAAKmjO,qBAAuB1+N,EAAK0+N,qBACjCnjO,KAAKojO,qBAAuB3+N,EAAK2+N,qBACjCpjO,KAAKqjO,aAAe5+N,EAAK4+N,aACzBrjO,KAAKsjO,cAAgB,IAAIC,EAAuB9+N,EAAK6+N,eACrDtjO,KAAK0nH,qBAAuBjjH,EAAKijH,qBACjC1nH,KAAKwnH,iBAAmB/iH,EAAK+iH,iBAC7BxnH,KAAKiI,iBAAmBxD,EAAKwD,iBAC7BjI,KAAKwjO,aAAe/+N,EAAK++N,aACzBxjO,KAAKunH,0BAA4B9iH,EAAK8iH,0BACtCvnH,KAAKyjO,oBAAsBh/N,EAAKg/N,oBAChCzjO,KAAK0jO,mBAAqBj/N,EAAKi/N,mBAC/B1jO,KAAKuE,gBAAkBE,EAAKF,gBAC5BvE,KAAKg4L,iBAAmBvzL,EAAKuzL,iBAC7Bh4L,KAAK2jO,kBAAoBl/N,EAAKk/N,kBAC9B3jO,KAAKynH,oBAAsBhjH,EAAKgjH,oBAChCznH,KAAK4jO,cAAgBn/N,EAAKm/N,cAC1B5jO,KAAKsY,YAAc7T,EAAK6T,YACxBtY,KAAK6jO,iBAAmBp/N,EAAKo/N,iBAE7B7jO,KAAK8jO,yBAA2Br/N,EAAKq/N,yBACrC9jO,KAAKwY,KAAO,IAAIurN,EAAsBt/N,EAAK+T,MAC3CxY,KAAKyoE,gBAAkBhkE,EAAKgkE,gBAGvB,SAAS13C,EAAwBzsB,GACtCtE,KAAKmjO,qBAAuB7+N,EAAS6+N,qBACrCnjO,KAAKi5M,SAAW30M,EAAS20M,SACzBj5M,KAAKs/L,uBAAyBh7L,EAASg7L,uBACvCt/L,KAAKunH,0BAA4BjjH,EAASijH,0BAC1CvnH,KAAK4jO,cAAgBt/N,EAASs/N,cAC9B5jO,KAAKyjO,oBAAsBn/N,EAAS0/N,SACpChkO,KAAKm7M,QAAU72M,EAAS62M,QACxBn7M,KAAKikO,cAAgB3/N,EAAS2/N,cAC9BjkO,KAAKuE,gBAAkBD,EAASC,gBAChCvE,KAAKkkO,sBAAwB5/N,EAAS4/N,sBACtClkO,KAAKmkO,eAAiB7/N,EAAS6/N,eAC/BnkO,KAAKg4L,iBAAmB1zL,EAAS0zL,iBACjCh4L,KAAKgkO,SAAW1/N,EAAS0/N,SACzBhkO,KAAKwY,KAAO,IAAIurN,EAAsBz/N,EAASkU,MAC/CxY,KAAKyoE,gBAAkBnkE,EAASmkE,gBAG3B,SAAS27J,EAA8B3/N,GAC5CzE,KAAKs/L,uBAAyB76L,EAAK66L,uBAG9B,SAAS+kC,EAAsB5/N,GACpCzE,KAAKskO,SAAW7/N,EAAK6/N,SACrBtkO,KAAK0hO,SAAWj9N,EAAKi9N,SACrB1hO,KAAKqnE,IAAM5iE,EAAK4iE,IAChBrnE,KAAKukO,eAAiB9/N,EAAK8/N,eAC3BvkO,KAAKwkO,oBAAsB//N,EAAK+/N,oBAChCxkO,KAAKykO,yBAA2BhgO,EAAKggO,yBACrCzkO,KAAK0kO,gBAAkBjgO,EAAKigO,gBAGvB,SAASC,EAAmBC,EAAQC,EAAmB9tL,GAC5D/2C,KAAK4kO,OAASA,EACd5kO,KAAK6kO,kBAAoBA,EACzB7kO,KAAK+2C,OAASA,EAGT,SAAS+tL,EAAwBC,EAAaC,EAAgBC,GACnEjlO,KAAK+kO,YAAcA,EACnB/kO,KAAKglO,eAAiBA,EACtBhlO,KAAKilO,YAAcA,EAGd,SAAS1B,EAAuB9+N,GACrCzE,KAAKklO,SAAWzgO,EAAKygO,SACrBllO,KAAKmlO,aAAe1gO,EAAK0gO,aACzBnlO,KAAKolO,eAAiB3gO,EAAK2gO,eAC3BplO,KAAKqlO,iBAAmB5gO,EAAK4gO,iBAC7BrlO,KAAKslO,YAAc7gO,EAAK6gO,YACxBtlO,KAAKulO,YAAc9gO,EAAK8gO,YACxBvlO,KAAKwlO,eAAiB/gO,EAAK+gO,eAC3BxlO,KAAKylO,OAAShhO,EAAKghO,OACnBzlO,KAAK0lO,qBAAuBjhO,EAAKihO,qBACjC1lO,KAAK2lO,4BAA8BlhO,EAAKkhO,4BACxC3lO,KAAK4lO,gBAAkBnhO,EAAKmhO,gBAC5B5lO,KAAK6lO,cAAgBphO,EAAKohO,cAC1B7lO,KAAK8lO,IAAMrhO,EAAKqhO,IAChB9lO,KAAK+lO,iBAAmBthO,EAAKshO,iBAC7B/lO,KAAKgmO,UAAYvhO,EAAKuhO,UAGjB,SAASjC,EAAsBt/N,EAAO,IAC3CzE,KAAKid,gBAAkBxY,EAAKwY,gBAC5Bjd,KAAK8H,aAAerD,EAAKqD,aACzB9H,KAAKiI,iBAAmBxD,EAAKwD,iBAC7BjI,KAAKkI,gBAAkBzD,EAAKyD,gBAC5BlI,KAAKyY,UAAYhU,EAAKgU,U,6iBC5FjB,SAASwtN,EAAexhO,GAC7BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKgL,KAAOvG,EAAKuG,KACjBhL,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAK0yH,WAAajuH,EAAKiuH,WACvB1yH,KAAKkmO,QAAUzhO,EAAKyhO,QACpBlmO,KAAK2hF,IAAMl9E,EAAKk9E,IAAMl9E,EAAKk9E,IAAM,GACjC3hF,KAAK6yD,OAASpuD,EAAKouD,OACnB7yD,KAAKmmO,gBAAkB1hO,EAAK0hO,gBACxB1hO,EAAK61C,iBAA+C,IAA5B71C,EAAK61C,gBAAgB/tC,KAC/CvM,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK61C,kBAE3Dt6C,KAAKiZ,OAASxU,EAAKwU,OACnBjZ,KAAKyqI,aAAehmI,EAAKgmI,aACzBzqI,KAAK8hF,UAAYr9E,EAAKq9E,UACtB9hF,KAAKomO,WAAa3hO,EAAK2hO,WACvBpmO,KAAKqmO,UAAY5hO,EAAK4hO,UAEtBrmO,KAAKsmO,SAAU,EACftmO,KAAKolN,UAAW,EAChBplN,KAAKqlN,UAAW,EAChBrlN,KAAKg7E,SAAU,EACfh7E,KAAKuuN,UAAY9pN,EAAK8pN,UACtBvuN,KAAKumO,gBAAkB9hO,EAAK8hO,gBAC5BvmO,KAAKq9K,gBAAkB54K,EAAK44K,gBAC5Br9K,KAAK2/K,WAAal7K,EAAKk7K,WACvB3/K,KAAK60G,QAAUpwG,EAAKowG,QAGf,SAASknH,EAAuBj4N,EAAMiG,EAAMy8N,GACjDxmO,KAAK6M,KAAO/I,EACZ9D,KAAKgL,KAAOjB,EACZ/J,KAAKyqI,aAAe+7F,EAEpBxmO,KAAKsmO,SAAU,EACftmO,KAAKolN,UAAW,EAChBplN,KAAKqlN,UAAW,EAChBrlN,KAAKg7E,SAAU,EAGV,SAASyrJ,EAAuBhiO,GACrCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKgL,KAAOvG,EAAKuG,KACjBhL,KAAK6M,KAAOpI,EAAKoI,KACjB7M,KAAK0yH,WAAajuH,EAAKiuH,WACvB1yH,KAAKkmO,QAAUzhO,EAAKyhO,QACpBlmO,KAAK2hF,IAAMl9E,EAAKk9E,IAAMl9E,EAAKk9E,IAAM,GACjC3hF,KAAK6yD,OAASpuD,EAAKouD,OACfpuD,EAAK61C,iBAA+C,IAA5B71C,EAAK61C,gBAAgB/tC,KAC/CvM,KAAKs6C,gBAAkB,IAAIlmC,EAAAA,EAAyB3P,EAAK61C,kBAE3Dt6C,KAAKiZ,OAASxU,EAAKwU,OACnBjZ,KAAKyqI,aAAehmI,EAAKgmI,aACzBzqI,KAAK8hF,UAAYr9E,EAAKq9E,UACtB9hF,KAAKomO,WAAa3hO,EAAK2hO,WACvBpmO,KAAKqmO,UAAY5hO,EAAK4hO,UAEtBrmO,KAAKsmO,SAAU,EACftmO,KAAKolN,UAAW,EAChBplN,KAAKqlN,UAAW,EAChBrlN,KAAKslN,iBAAkB,EACvBtlN,KAAKg7E,SAAU,I,mCC/DV,SAAS0rJ,EAAgBjiO,GAC9BzE,KAAK+qE,eAAiBtmE,EAAKsmE,eAC3B/qE,KAAK2mO,SAAWliO,EAAKkiO,SACrB3mO,KAAKmY,QAAU1T,EAAK0T,QACpBnY,KAAK+a,QAAUtW,EAAKsW,QACpB/a,KAAK4mO,WAAaniO,EAAKmiO,WACvB5mO,KAAK6mO,gBAAkBpiO,EAAKoiO,gBAGvB,SAASC,EAAuBriO,GACrCzE,KAAKy5M,gBAAkBh1M,EAAKg1M,gBAC5Bz5M,KAAK05M,cAAgBj1M,EAAKi1M,c,8MCTrB,SAASqtB,EAAatiO,GAC3BzE,KAAKuM,GAAK9H,EAAK+lC,GACfxqC,KAAK6M,KAAO,IAASpI,EAAKoI,Q,6GCFrB,SAASm6N,EAAcviO,GAC5BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAK6M,KAAO,IAASpI,EAAKoI,MAC1B7M,KAAKg7E,SAAU,I,kCCLV,SAASisJ,EAAoBxiO,GAClCzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKmM,OAAS1H,EAAKyiO,OACnBlnO,KAAK0M,OAASjI,EAAK0M,OACnBnR,KAAKiR,KAAOxM,EAAKwM,K,uLCDZ,MAAMk2N,EACXlnL,YAAYx7C,EAAM3B,GAChB,GACO,MADCA,EAKJ,MAAM,IAAInE,MAAM,gCAHhBqB,KAAKonO,eAAe3iO,GAO1B2iO,eAAe3iO,GACbzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKwkC,MAAQ//B,EAAKyJ,MAClBlO,KAAKgL,KAAOvG,EAAKsF,KACjB/J,KAAKsiF,YAAc79E,EAAKmO,YACxB5S,KAAKqnO,kBAAoB5iO,EAAK4iO,kBAC9BrnO,KAAK6M,KAAOpI,EAAKX,KACjB9D,KAAKqqI,KAAO5lI,EAAK6iO,KACjBtnO,KAAK00N,WAAajwN,EAAK9B,WAAa8B,EAAK9B,WAAa,GACtD3C,KAAKyiF,SAAWh+E,EAAKkW,SAAWlW,EAAKkW,SAAW,GAChD3a,KAAK64I,KAAOp0I,EAAKo2M,KACjB76M,KAAKygF,WAAah8E,EAAKkvE,WACvB3zE,KAAKqtE,SAAW5oE,EAAKg1E,SACrBz5E,KAAKq1F,cAAgB,IAAI3R,EAAAA,sBACzB1jF,KAAKq1F,cAAcnuB,MAAQziE,EAAKopD,MAChC7tD,KAAKq1F,cAAcpuB,SAASI,IAAM5iE,EAAK2iE,UAAY,GACnDpnE,KAAK+6E,QAAUt2E,EAAKyC,QAAUzC,EAAKyC,QAAU,GAC7ClH,KAAKwsF,QAAU/nF,EAAKwuD,QAAUxuD,EAAKwuD,QAAU,GAC7CjzD,KAAK26F,aAAal2F,EAAK8iO,YAAa9iO,EAAK8iO,WACzCvnO,KAAKwnO,cAAc/iO,EAAK8zC,aAAc9zC,EAAK8zC,YAC3Cv4C,KAAKqkF,cAAgB5/E,EAAKgjO,eAAiBhjO,EAAKgjO,eAAiB,SACjEznO,KAAK46C,OAASn2C,EAAKk2C,OAASl2C,EAAKk2C,OAAS,GAC1C36C,KAAKgmF,MAAQvhF,EAAKu9K,MAAQv9K,EAAKu9K,MAAQ,GACvChiL,KAAK2hF,IA0CT,SAAqBl9E,GACnB,IAAIuU,EAAM,GAyBV,OAvBIvU,EAAKuU,MACPA,EAAMvU,EAAKuU,IAAI7a,KAAI,SAAUg9N,GAQ3B,GAPAA,EAAOpxN,KAAO,EACdoxN,EAAOx3N,MAAQw3N,EAAO59K,QAAU49K,EAAO59K,QAAU,GAE7C49K,EAAOuM,SACTvM,EAAOpxN,KAAO,GAGZoxN,EAAO92N,OAAQ,CACjB82N,EAAOpxN,KAAO,EACd,IAAK,IAAIxK,EAAI,EAAGA,EAAI47N,EAAO92N,OAAO5E,OAAQF,IAAK,CAC7C,IAAIooO,EAAexM,EAAO92N,OAAO9E,GACjC,GAAIooO,EAAapqL,QAAS,CACxB49K,EAAOx3N,MAAQgkO,EAAahkO,MAC5B,QAIN,OAAOw3N,MAIJniN,EApEM4uN,CAAYnjO,GACvBzE,KAAKkxE,QAwBT,SAAyBzsE,GACvB,IAAIk3D,EAAU,GAad,OAXIl3D,EAAKk3D,UACPA,EAAUl3D,EAAKk3D,QAAQx9D,KAAI,SAAUqjC,GACnC,MAAO,CACL8V,UAAW9V,EAAE8V,UACb/vC,SAAUi6B,EAAEj6B,WAAY,EACxBwC,KAAMy3B,EAAEniC,KAAO,OAAS,OACxBA,KAAMmiC,EAAEniC,KAAOmiC,EAAEniC,KAAO,UAKvBs8D,EAtCUksK,CAAgBpjO,GAC/BzE,KAAK86C,MAIT,SAAuBr2C,GACrB,IAAIozC,EAAQ,GAeZ,OAbIpzC,EAAKozC,QACPA,EAAQpzC,EAAKozC,MAAM15C,KAAI,SAAUosC,GAC/B,IAAIu9L,EAAkB,IAAQv9L,EAAG,KAC7Bw9L,EAAuB,IAAQD,EAAgB,GAAI,KAEvD,MAAO,CACLx2J,SAAUy2J,EAAqBtoO,OAAS,EAAIsoO,EAAqB,QAAKl2N,EACtEw/D,cAAe02J,EAAqBtoO,OAAS,EAAIsoO,EAAqB,GAAKA,EAAqB,GAChGl2J,SAAUi2J,EAAgB,QAKzBjwL,EApBQmwL,CAAcvjO,M,mCCvCxB,SAASwjO,EAAcxjO,GAC5BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKwM,SAAW/H,EAAK+H,SACrBxM,KAAKiR,KAAOxM,EAAKwM,KACjBjR,KAAK02N,UAAYjyN,EAAKiyN,UACtB12N,KAAKyf,uBAAyBhb,EAAKgb,uBACnCzf,KAAKkoO,wBAA0BzjO,EAAKyjO,wBAClB,IAAdzjO,EAAKwM,KACPjR,KAAKmoO,SAAW,gBAEhBnoO,KAAKmoO,SAAW,OAElBnoO,KAAKmjO,qBAAuB1+N,EAAK0+N,qBACjCnjO,KAAKg7E,SAAU,EAGV,SAASotJ,EAAe3jO,GAC7BzE,KAAK1B,GAAKmG,EAAKnG,GACf0B,KAAK0xB,OAASjtB,EAAKitB,OACnB1xB,KAAK4S,YAAcnO,EAAKmO,YACxB5S,KAAK83L,OAASrzL,EAAKqzL,OACnB93L,KAAKqoO,YAAc5jO,EAAK4jO,YACxBroO,KAAKsoO,SAAW7jO,EAAK6jO,S,2HCtBhB,SAASC,EAAiB9jO,GAC/BzE,KAAKuM,GAAK9H,EAAK8H,GACfvM,KAAKugG,MAAQ97F,EAAK87F,MAClBvgG,KAAKmL,WAAa1G,EAAK+iF,WACvBxnF,KAAK0yH,WAAajuH,EAAK+jO,WACvBxoO,KAAKyoO,YAAchkO,EAAKgkO,Y,wECL1B7yN,QAAQ5W,OAAO,kBAAmB,CAAC,eAAe4uD,SAAS,qBAAsB,mB,4ECAjF,MAAMrN,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,mBAAmBC,UAAU,yBAA0B,CACpE2qC,YAAaD,EACbxrC,SAAU,CACR3N,SAAU,IACVzD,MAAO,KAETuR,WAAUA,EAAAA,W,+JCFCvO,EAAU,CACrB,CACErI,GAAI,YACJgT,KAAMo3N,EAAAA,EACNn3N,aAAa,EACb3K,MAAO,YACPgM,YAAa,2BACbjP,MAAO,YACP6R,QAASyF,EAAAA,GAAAA,oBAEX,CACE3c,GAAI,SACJgT,KAAMq3N,EAAAA,EACN/hO,MAAO,SACPgM,YAAa,wBACbjP,MAAO,SACP6R,QAASyF,EAAAA,GAAAA,oBAEX,CACE3c,GAAI,SACJgT,KAAMs3N,EAAAA,EACNhiO,MAAO,SACPgM,YAAa,wBACbjP,MAAO,SACP6R,QAASyF,EAAAA,GAAAA,oBAEX,CACE3c,GAAI,SACJgT,MAAM,SAACuB,EAAA,EAAD,CAAWvB,KAAMojB,EAAAA,IACvB9tB,MAAO,SACPgM,YAAa,wBACbjP,MAAO,WCtCI,MAAMklO,EACnB5oL,cACEjgD,KAAK2G,QAAUA,K,6ECJnB,MAAM45C,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,mBAAmBC,UAAU,gBAAiB,CAC3D2qC,YAAaD,EACbxrC,SAAU,CACRzQ,SAAU,IACVmI,MAAO,IACPq8N,eAAgB,IAChBC,gBAAiB,KAEnB7zN,WAAUA,EAAAA,W,gICPZ,MAAM8zN,EAA2B,YAElB,MAAMC,EAEnBhpL,YAAY7qC,GACVtW,OAAOM,OAAOY,KAAM,CAAEoV,OAAAA,IAEtBpV,KAAKqoG,eAAiBptF,EAAAA,GAAAA,mBACtBjb,KAAKkpO,oBAAsB,aAE3BlpO,KAAK+P,MAAQ,CACXib,SAAU,SACV8+I,uBAAuB,EACvBq/D,kBAAmB,IAGrBnpO,KAAKmjD,QAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MACjCA,KAAKopO,iBAAmBppO,KAAKopO,iBAAiB/pO,KAAKW,MACnDA,KAAKqpO,0BAA4BrpO,KAAKqpO,0BAA0BhqO,KAAKW,MACrEA,KAAKspO,gCAAkCtpO,KAAKspO,gCAAgCjqO,KAAKW,MACjFA,KAAKupO,UAAYvpO,KAAKupO,UAAUlqO,KAAKW,MACrCA,KAAKwpO,yBAA2BxpO,KAAKwpO,yBAAyBnqO,KAAKW,MACnEA,KAAKypO,qBAAuBzpO,KAAKypO,qBAAqBpqO,KAAKW,MAC3DA,KAAK0pO,mBAAqB1pO,KAAK0pO,mBAAmBrqO,KAAKW,MACvDA,KAAK2pO,sBAAwB3pO,KAAK2pO,sBAAsBtqO,KAAKW,MAC7DA,KAAK4pO,yBAA2B5pO,KAAK4pO,yBAAyBvqO,KAAKW,MACnEA,KAAK6pO,2BAA6B7pO,KAAK6pO,2BAA2BxqO,KAAKW,MAGzEqpO,4BACE,MAAM16M,EAAW3uB,KAAK+P,MAAMo5N,mBAAqBH,EAEjDhpO,KAAKsE,SAAS+gO,iBAAoB,qCAAoC12M,0BACtE3uB,KAAKsE,SAAS8gO,eAAkB,qCAAoCz2M,sBACpE3uB,KAAKsE,SAASghO,YAAe,sCAC7BtlO,KAAKsE,SAAS0hO,UAAa,qCAAoCr3M,uBAGjE26M,gCAAgCQ,GAC9B,MAAM9+M,EAAWuuG,EAAAA,QAAUuwG,GAE3B9pO,KAAK+P,MAAM+5J,uBAAwB,EAE9B9pK,KAAK0b,eAAgC,WAAfouN,GAYzB9pO,KAAKsE,SAAS4gO,SAAW,GACzBllO,KAAKsE,SAAS6gO,aAAe,KAZ7BnlO,KAAKsE,SAAS+gO,iBAAmBr6M,EAAS++M,QAC1C/pO,KAAKsE,SAAS8gO,eAAiBp6M,EAASg/M,eACxChqO,KAAKsE,SAASghO,YAAct6M,EAASi/M,YACrCjqO,KAAKsE,SAAS0hO,UAAYh7M,EAASk/M,UACnClqO,KAAKsE,SAASkhO,eAAiBx6M,EAASm/M,eACxCnqO,KAAKsE,SAASmhO,OAASz6M,EAASo/M,OAEb,cAAfN,GAA+D,KAAjC9pO,KAAK+P,MAAMo5N,mBAC3CnpO,KAAKqpO,6BAQXD,iBAAiBp+M,GACfhrB,KAAK+P,MAAMib,SAAWA,EAEtBhrB,KAAKspO,gCAAgCt+M,GAGvCu+M,UAAU7zM,GACR11B,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKsE,SAASwhO,IAAMpwM,EACpB11B,KAAK4pO,yBAAyBl0M,MAIlCk0M,yBAAyBl0M,GACvB11B,KAAKoV,OAAOE,YAAW,KAChBtV,KAAK0b,gBACR1b,KAAKsE,SAASyhO,iBAAmBrwM,MAKvCm0M,2BAA2Bn0M,GACzB11B,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKsE,SAASqhO,4BAA8BjwM,KAIhD8zM,2BACExpO,KAAKsE,SAASshO,gBAAgByE,mBAAmBzmO,KAAK,CAAE0mO,cAAe,GAAIC,KAAMvqO,KAAKsE,SAASuhO,gBAGjG4D,qBAAqBtpM,GACnBngC,KAAKsE,SAASshO,gBAAgByE,mBAAmBpnK,OAAO9iC,EAAO,GAGjEupM,qBACE1pO,KAAKsE,SAASshO,gBAAgB4E,0BAA0B5mO,KAAK,IAG/D+lO,sBAAsBxpM,GACpBngC,KAAKsE,SAASshO,gBAAgB4E,0BAA0BvnK,OAAO9iC,EAAO,GAGxEsqM,iCACE,GAAIzqO,KAAKsE,SAASqhO,6BAA+B3lO,KAAKsE,SAASshO,gBAAiB,CAC9E,IAAK5lO,KAAKsE,SAASshO,gBAAgB8E,eACjC,OAAO,EAIT,GAD0B1qO,KAAKsE,SAASshO,gBAAgByE,mBAAmB15N,MAAMg6N,KAAQA,EAAEL,eAAiBK,EAAEJ,QAE5G,OAAO,EAGX,OAAO,EAGTK,+BACE,OAAI5qO,KAAKsE,SAASumO,oBAAqB7qO,KAAKsE,SAASkmO,2BAC0B,IAAnDxqO,KAAKsE,SAASkmO,0BAA0B/qO,SAAgBO,KAAKsE,SAASkmO,0BAA0B75N,MAAMjS,GAAY,KAANA,IAS1IykD,UAGE,GAFAnjD,KAAK0b,eAAgBA,EAAAA,EAAAA,IAAc1b,KAAKqoG,iBAEpCroG,KAAK0b,cAAT,CAQA,GAJkC,KAA9B1b,KAAKsE,SAASihO,cAChBvlO,KAAKsE,SAASihO,YAAcxhO,OAAOovF,SAASC,QAASC,EAAAA,EAAAA,aAGnDrzF,KAAKsE,SAAS+gO,iBAAkB,CAClC,MAAM0E,EAAU/pO,KAAKsE,SAAS+gO,iBAG9B,GADArlO,KAAK+P,MAAMib,UAAW8/M,EAAAA,EAAAA,kBAAiBf,GACX,cAAxB/pO,KAAK+P,MAAMib,SAA0B,CACvC,MAAM2D,EAAWo7M,EAAQvnM,MAAM,sCAAsC,GACjE7T,IAAaq6M,IACfhpO,KAAK+P,MAAMo5N,kBAAoBx6M,EAC/B3uB,KAAKqpO,8BAKyB,IAAhCrpO,KAAKsE,SAASuhO,gBAChB7lO,KAAKsE,SAASuhO,cAAgB,MAGK,MAAjC7lO,KAAKsE,SAASshO,kBAChB5lO,KAAKsE,SAASshO,gBAAkB,IAGuB,OAArD5lO,KAAKsE,SAASshO,gBAAgByE,qBAChCrqO,KAAKsE,SAASshO,gBAAgByE,mBAAqB,IAGW,OAA5DrqO,KAAKsE,SAASshO,gBAAgB4E,4BAChCxqO,KAAKsE,SAASshO,gBAAgB4E,0BAA4B,M,8HC7IzD,SAASM,EAAiBC,EAAkB,IACjD,OAAIA,EAAgB5lO,SAAS,6BACpB,YAGL4lO,EAAgB5lO,SAAS,uBACpB,SAGL4lO,EAAgB5lO,SAAS,cACpB,SAGF,SAzCT,WACEs1B,UAAW,CACTsvM,QAAS,oEACTC,eAAgB,gEAChBC,YAAa,sCACbC,UAAY,iEACZC,eAAgB,oBAChBC,OAAQ,kBAEV9vM,OAAQ,CACNyvM,QAAS,4CACTC,eAAgB,6CAChBC,YAAa,yDACbC,UAAY,oGAAmGnmO,OAAOovF,SAASC,UAASC,EAAAA,EAAAA,qBACxI82I,eAAgB,QAChBC,OAAQ,iBAEVhwM,OAAQ,CACN2vM,QAAS,2CACTC,eAAgB,8CAChBC,YAAa,8BACbC,UAAY,4BACZC,eAAgB,QAChBC,OAAQ,iBAEVhyM,OAAQ,CAAE2xM,QAAS,GAAIC,eAAgB,GAAIC,YAAa,GAAIC,UAAW,GAAIC,eAAgB,GAAIC,OAAQ,M,iBC3BzGx0N,QAAQ5W,OAAO,mBAAmB+lD,QAAQ,QAAS,CACjD,YACA,qBACA,SAAsBN,EAAWumL,GAC/B,aACA,OAAOvmL,EACLumL,EAAqB,WACrB,GACA,CACEC,SAAU,CACRrqN,OAAQ,OACR8mE,kBAAkB,EAClBl8E,OAAQ,CACN9G,OAAQ,mB,6FCbpB,MAIawmO,EAAwB,CACnC1qL,YALoCxrC,EAAQ,OAM5CE,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACXC,SAAU,IACVC,QAAS,IACT/Z,QAAS,IACT58B,QAAS,O,oRCPE,MAAMkhO,EAEnBlrL,YAAYx1B,EAAesnF,EAAaqhF,EAAathF,EAAcgsG,EAAastB,EAAuBrgK,GACrG/qE,KAAKyqB,cAAgBA,EACrBzqB,KAAK+xG,YAAcA,EACnB/xG,KAAKozL,YAAcA,EACnBpzL,KAAK8xG,aAAeA,EACpB9xG,KAAK89M,YAAcA,EACnB99M,KAAKorO,sBAAwBA,EAC7BprO,KAAK+qE,eAAiBA,EAEtB/qE,KAAKqoG,eAAiB,aACtBroG,KAAKiM,MAAQ,GAGfo/N,eACErrO,KAAKsrO,UAAY,GACjB,MAAMA,EAAY,GACZj/N,EAAOrM,KAAKurO,aACZx6N,EAAkB,IAAS/Q,KAAKwrO,gBAAiB,CAAEr/N,OAAQE,EAAKE,KAEtE,IAAK,MAAO,CAAEwK,KAAa,IAAU/W,KAAKkpH,WAAY,CACpD,IAAI/lH,EAAOnD,KAAKyrO,8BAA8Bp/N,EAAM0K,GAChD5T,EACFmoO,EAAUv0N,EAASxK,IAAMpJ,GAI3BA,EAAOnD,KAAK0rO,mCAAmCr/N,EAAM0K,GACjD5T,EACFmoO,EAAUv0N,EAASxK,IAAMpJ,GAI3BA,EAAOnD,KAAK2rO,gCAAgC56N,EAAiBgG,GACzD5T,EACFmoO,EAAUv0N,EAASxK,IAAMpJ,GAI3BA,EAAOnD,KAAK4rO,qCAAqC76N,EAAiBgG,GAC9D5T,IACFmoO,EAAUv0N,EAASxK,IAAMpJ,MAI7BnD,KAAKsrO,UAAY,IAASA,GAG5BO,eAAeC,GACb,OAAO,IAAQ,IAAUA,EAAU,eAAgB,SAGrDL,8BAA8Bp/N,EAAM0K,GAClC,MAAMg1N,EAAc,GACd/9C,GAAUj3K,EAASq7F,oBAAsB,IAAI/lG,EAAKE,IACxD,GAAIyhL,EAAQ,CACV,MAAMg+C,EAAe,IAAIC,EAAAA,QAAwBj+C,EAAQj3K,EAAU/W,KAAKkzG,MAAO,KAAM,MACrF64H,EAAYnoO,KAAKooO,GAEnB,OAAOhsO,KAAK6rO,eAAeE,GAG7BL,mCAAmCr/N,EAAM0K,GACvC,MAAMg1N,EAAc,GACd/9C,EAAShuL,KAAKksO,wBAAwBn1N,EAAS08F,SAASpnG,EAAKE,IACnE,GAAIyhL,EAAQ,CACV,MAAMg+C,EAAe,IAAIC,EAAAA,QAAwBj+C,EAAQj3K,EAAU/W,KAAKkzG,MAAOlzG,KAAK+V,OAAOgB,EAAS08F,SAAU,MAC9Gs4H,EAAYnoO,KAAKooO,GAEnB,OAAOhsO,KAAK6rO,eAAeE,GAG7BJ,gCAAgCp7N,EAAawG,GAC3C,MAAMg1N,EAAc,GACpB,IAAK,MAAM/6N,KAAcT,EAAa,CACpC,MAAMy9K,GAAUj3K,EAASu7F,oBAAsB,IAAIthG,EAAWtE,QAC9D,GAAIshL,EAAQ,CACV,MAAMg+C,EAAe,IAAIC,EAAAA,QAAwBj+C,EAAQj3K,EAAU/W,KAAKkzG,MAAO,KAAMlzG,KAAKyM,MAAMuE,EAAWtE,SAC3Gq/N,EAAYnoO,KAAKooO,IAGrB,OAAOhsO,KAAK6rO,eAAeE,GAG7BH,qCAAqCr7N,EAAawG,GAChD,MAAMg1N,EAAc,GACpB,IAAK,MAAM/6N,KAAcT,EAAa,CACpC,MAAMy9K,EAAShuL,KAAKmsO,wBAAwBp1N,EAAS08F,SAASziG,EAAWtE,QACzE,GAAIshL,EAAQ,CACV,MAAMg+C,EAAe,IAAIC,EAAAA,QAAwBj+C,EAAQj3K,EAAU/W,KAAKkzG,MAAOlzG,KAAK+V,OAAOgB,EAAS08F,SAAUzzG,KAAKyM,MAAMuE,EAAWtE,SACpIq/N,EAAYnoO,KAAKooO,IAGrB,OAAOhsO,KAAK6rO,eAAeE,GAKR,sBAAC9/N,EAAOu/N,GAC3B,GAAIxrO,KAAKiK,QACP,OAAOgC,EAGT,MAAMmgO,EAAgB,GAChB16M,EAAS1xB,KAAK+qE,eAAegmB,iBAAiBvmD,GAC9C6hM,QAAqBrsO,KAAKozL,YAAYk5C,iBAAiB56M,GAEvD66M,EAAW,CAAC76M,EAAQ86M,MACf,IAAOhB,EAAiB,CAAEr/N,OAAQulB,EAAQhlB,OAAQ8/N,IAG7D,IAAK,MAAMngO,KAAQJ,EACjB,IAAK,MAAMwgO,KAAeJ,EACxB,GAAIE,EAASlgO,EAAKE,GAAIkgO,EAAYlgO,IAAK,CACrC6/N,EAAcxoO,KAAKyI,GACnB,MAKN,OAAO+/N,EAGI,gBACX,IAGE,IAFoB1wN,EAAAA,EAAAA,IAAc1b,KAAKqoG,gBAGrC,OAGFroG,KAAKiK,QAAUjK,KAAK+qE,eAAe9gE,UACnCjK,KAAK0sO,eAAiB1sO,KAAKozL,YAAYnnL,QACvCjM,KAAKkpH,UAAY,WAAejzG,EAAAA,EAAAA,OAAmBtS,MAAO,MAC1D,MAAMoS,QAAe/V,KAAK8xG,aAAa/7F,SACvC/V,KAAKksO,wBAA0B,GAC/BlsO,KAAKmsO,wBAA0B,GAC/B,IAAUp2N,GAASy9F,IACjBxzG,KAAKksO,wBAAwB14H,EAAMjnG,IAAMinG,EAAMpB,mBAC/CpyG,KAAKmsO,wBAAwB34H,EAAMjnG,IAAMinG,EAAMlB,sBAEjDtyG,KAAK+V,OAAS,IAAQA,EAAQ,MAC9B/V,KAAKkzG,MAAQ,UAAclzG,KAAK+xG,YAAYmB,QAAS,MACrDlzG,KAAKyM,MAAQ,UAAczM,KAAK89M,YAAYrxM,QAAS,MACrDzM,KAAKwrO,sBAAwBxrO,KAAKorO,sBAAsB76N,cACxDvQ,KAAKiM,YAAcjM,KAAK2sO,gBAAgB3sO,KAAK0sO,SAAU1sO,KAAKwrO,iBAC5D,MAAO1wN,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iC,mOC1J/C,MAIa8xN,EAAe,CAC1BpsL,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,sGCNZ,MAKa23N,EAAiB,CAC5BrsL,YANoCxrC,EAAQ,OAO5CE,WAF4B,UAG5BH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,O,mHCXH,MAAMisL,EAEnB7sL,YAAYqd,EAAaloD,GACvBpV,KAAKqoG,eAAiB,aAEtBzyF,IAAAA,OAAe5V,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KAGnE23N,cAAc14L,GACZ,OAAOA,EAAK7J,KAAOs2I,EAAAA,UAAAA,U,qDCZvBlrK,QAAQ5W,OAAO,kBAAkB8gE,UAAU,gBAAiB,CAC1D,iBACA,SACA,SAAUiL,EAAgB7qB,GACxB2F,eAAemnL,EAAUxlL,EAAO4oB,EAAM2iH,GACpC3iH,EAAKp6C,OAGL,IADA,IAAI5W,EAAiB2zK,EAAMpzK,cAAc4b,MAAM,KACtCh8B,EAAI,EAAGA,EAAI6f,EAAe3f,OAAQF,IACzC6f,EAAe7f,GAAK6f,EAAe7f,GAAG0sB,OAGxC,IAAI3M,EAAoByrD,EAAezrD,kBAAkBF,GAErDE,EACF8wD,EAAK9F,OACKhrD,GAAyC,MAApB8wD,EAAK,GAAG68J,UACvC78J,EAAK9F,OACL8F,EAAK1mD,SAAS,4BAIlB,MAAO,CACLq2C,SAAU,IACVz/B,KAAM,SAAUknB,EAAO4oB,EAAM2iH,GAC3B,OAAO7yI,EAAO8sL,EAAWxlL,EAAO4oB,EAAM2iH,S,iBCzB9Cn9K,QAAQ5W,OAAO,kBAAkB8gE,UAAU,uBAAwB,CACjE,iBACA,SACA,SAAUiL,EAAgB7qB,GACxB2F,eAAemnL,EAAUxlL,EAAO4oB,EAAM2iH,GAEpC,IADA,IAAI3zK,EAAiB2zK,EAAMm6C,qBAAqB3xM,MAAM,KAC7Ch8B,EAAI,EAAGA,EAAI6f,EAAe3f,OAAQF,IACzC6f,EAAe7f,GAAK6f,EAAe7f,GAAG0sB,OAGnC8+C,EAAezrD,kBAAkBF,KACpCgxD,EAAK8iH,KAAK,YAAY,GAClB9iH,EAAK9yB,GAAG,WACV8yB,EAAKtnD,IAAI,iBAAkB,SAKjC,MAAO,CACLi3C,SAAU,IACVz/B,KAAM,SAAUknB,EAAO4oB,EAAM2iH,GAC3B,OAAO7yI,EAAO8sL,EAAWxlL,EAAO4oB,EAAM2iH,S,iBCrB9Cn9K,QAAQ5W,OAAO,kBAAkB8gE,UAAU,uBAAwB,CACjE,iBACA,SACA,SAAUiL,EAAgB7qB,GACxB2F,eAAemnL,EAAUxlL,EAAO4oB,EAAM2iH,GACpC3iH,EAAK9F,OAGL,IADA,IAAIlrD,EAAiB2zK,EAAMo6C,qBAAqB5xM,MAAM,KAC7Ch8B,EAAI,EAAGA,EAAI6f,EAAe3f,OAAQF,IACzC6f,EAAe7f,GAAK6f,EAAe7f,GAAG0sB,OAGhB8+C,EAAezrD,kBAAkBF,IAGvDgxD,EAAKp6C,OAIT,MAAO,CACL+pC,SAAU,IACVz/B,KAAM,SAAUknB,EAAO4oB,EAAM2iH,GAC3B,OAAO7yI,EAAO8sL,EAAWxlL,EAAO4oB,EAAM2iH,S,+GCF9C,SAASnuK,EAAOoxC,GAWdA,EAAuBC,SAVT,CACZnyD,KAAM,kBACN2C,IAAK,SACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,gB,qCAlBnBD,QACG5W,OAAO,iBAAkB,CAAC,eAC1B4uD,SAAS,qBAAsB,aAC/B/3C,UAAU,eAAgB+2N,EAAAA,cAC1B/2N,UAAU,wBAAyBq1N,EAAAA,uBACnCr1N,UAAU,iBAAkBg3N,EAAAA,gBAC5Bh3N,UAAU,YAAau3N,EAAAA,WACvBroL,QAAQ,cAAegtD,EAAAA,aACvBhtD,QAAQ,QAASsoL,EAAAA,cACjBzoN,OAAOA,I,mCCjBK,SAASqnN,EAAwBj+C,EAAQj3K,EAAUm8F,EAAOM,EAAO5mG,GAC9E5M,KAAK0yH,WAAa37G,EAASxK,GAC3BvM,KAAKstO,aAAev2N,EAASlK,KAC7B7M,KAAKizG,OAAS+6E,EAAO/6E,OACrBjzG,KAAKmoO,SAAWj1H,EAAM86E,EAAO/6E,QAAQpmG,KACrC7M,KAAKutO,aAAer6H,EAAM86E,EAAO/6E,QAAQu6H,SACrCh6H,IACFxzG,KAAKyzG,QAAUD,EAAMjnG,GACrBvM,KAAK26N,UAAYnnH,EAAM3mG,MAErBD,IACF5M,KAAK0M,OAASE,EAAKL,GACnBvM,KAAKytO,SAAW7gO,EAAKC,MAEvB7M,KAAK0tO,eAAiBl6H,EAAQ,oBAAsB,c,iFCd/C,SAASm6H,EAAcrvO,EAAIwF,EAAM8O,EAAawM,GACnDpf,KAAKwqC,GAAKlsC,EACV0B,KAAK6M,KAAO/I,EACZ9D,KAAKsiF,YAAc1vE,EACnB5S,KAAKozG,eAAiBh0F,E,kFAGjB,MAAM0hK,EAAYhiL,OAAOyyF,OAAO,CACrCq8I,eAAgB,EAChBC,SAAU,EACVC,SAAU,EACVC,UAAW,EACXC,SAAU,K,iBCZZp4N,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,QAAS,CAC/C,YACA,qBACA,SAAsBN,EAAWwpL,GAC/B,aACA,OAAOxpL,EACLwpL,EAAqB,OACrB,GACA,CACEv1L,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,mCCZ3C,SAAS+uO,EAAa5oL,EAAWwpL,GACtC,OAAOxpL,EACLwpL,EAAqB,OACrB,GACA,CACEv1L,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,U,mICTzC,SAASyzG,EAAYj+E,EAAIo6M,GAC9B,MAAO,CACLh7H,MAGF,WACE,OAAOg7H,EAAMh4N,MAAM,IAAI8vC,W,4KCP3B,MAIaonL,EAAY,CACvB5sL,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,wGCJG,MAAMi5N,EAEnBluL,YAAYx1B,EAAesnF,GACzB/xG,KAAKyqB,cAAgBA,EACrBzqB,KAAK+xG,YAAcA,EAGR,gBACX/xG,KAAKkzG,MAAQ,GAEb,IACElzG,KAAKkzG,YAAclzG,KAAK+xG,YAAYmB,QACpClzG,KAAKkzG,MAAQ,IAAUlzG,KAAKkzG,MAAO,WAAY,OAC/C,MAAOp4F,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8B,iICb/C,MAAMqzN,EAEJluL,YAAYx1B,EAAesnF,GACzB/xG,KAAKyqB,cAAgBA,EACrBzqB,KAAK+xG,YAAcA,EAGR,gBACX/xG,KAAKkzG,MAAQ,GAEb,IACElzG,KAAKkzG,YAAclzG,KAAK+xG,YAAYmB,QACpClzG,KAAKkzG,MAAQ,IAAUlzG,KAAKkzG,MAAO,WAAY,OAC/C,MAAOp4F,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8B,0CAI/C,YACAlF,IAAAA,OAAe,kBAAkBV,WAAW,kBAAmBi5N,I,sBCtB/D,MAAM5tL,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,gCAAgC6W,UAAU,gCAAiC,CACxF2qC,YAAaD,EACbrrC,WAAY,0CACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACTtoB,WAAY,IACZoiC,SAAU,IACVC,QAAS,IACTC,aAAc,IACdutL,iBAAkB,IAClBjtM,QAAS,Q,kECZbvrB,QAAQ5W,OAAO,iBAAiBkW,WAAW,0CAA2C,CACpF,SACA,cACA,SAAUE,EAAQkoD,GAChB,IAAId,EAAOx8D,KAEX4V,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzEpV,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAmB1BxrC,EAAO4xD,QACL,WACE,OAAOxK,EAAKzsD,MAAM0wD,mBAEpB,SAAUhK,EAAUg4D,GACdh4D,GAtBR,SAAsB2R,EAAGC,GACvB,IAAKD,IAAMC,EACT,OAAO,EAET,IAAIgmK,EAASjmK,EACVjqE,KAAI,SAAUyC,GACb,OAAOA,EAAEiM,QAEVwJ,OACCi4N,EAASjmK,EACVlqE,KAAI,SAAUyC,GACb,OAAOA,EAAEiM,QAEVwJ,OACH,OAAOg4N,EAAOlhO,KAAK,OAASmhO,EAAOnhO,KAAK,KAQtBohO,CAAa9/G,EAAUh4D,IACrC+F,EAAK4xK,iBAAiB,IAAS33K,GAAU,EAAG2rK,UAAAA,MAAiBA,QAGjE,O,sBCrCN,MAAM7hL,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,gCAAgC6W,UAAU,oCAAqC,CAC5F2qC,YAAaD,EACbrrC,WAAY,8CACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,IACdkc,aAAc,IACdyxK,YAAa,IACbC,0BAA2B,IAC3BL,iBAAkB,IAClBjtM,QAAS,Q,yGCdbvrB,QAAQ5W,OAAO,iBAAiBkW,WAAW,8CAA+C,CACxF,SACA,cACA,SAAUE,EAAQkoD,GAChB1nD,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAQA,KACzE,IAAIonD,EAAOx8D,KAGX,SAASy9B,EAAK4W,GACZ,OAAOA,EAAKxnC,KAAOwnC,EAAKq6L,YAH1B1uO,KAAK+P,MAAM6wC,QAAU5gD,KAAK4gD,QAe1BxrC,EAAO4xD,QACL,WACE,OAAOxK,EAAKzsD,MAAM0wD,mBAEpB,SAAUhK,EAAUg4D,GACdh4D,GAAYA,EAASh3D,QAd7B,SAAsB2oE,EAAGC,GACvB,IAAKD,IAAMC,EACT,OAAO,EAET,IAAIgmK,EAAS,IAAS,IAAMjmK,EAAG3qC,IAC3B6wM,EAAS,IAAS,IAAMjmK,EAAG5qC,IAC/B,OAAO4wM,EAAOlhO,KAAK,OAASmhO,EAAOnhO,KAAK,KAQHohO,CAAa9/G,EAAUh4D,KACxD+F,EAAK4xK,iBAAiB,IAAS33K,EAAU,CAAEk4K,QAAS,MACpDnyK,EAAK4mJ,0BAGT,O,+FC9BNxtM,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,mBAAoB,CACzE,WAGE,IAAImrB,EAAS,CAMbA,eAAwB,SAAU0+J,GAChC,IAL0BC,EAKtB90H,EAAK60H,EAAU70H,GACfC,EAAK40H,EAAU50H,GAEfvxB,GARsBomJ,EAQO90H,EAAGtxB,QAP7B,IAAMomJ,GAAax6L,GAASz+B,QAAQszE,SAAS70C,EAAKy6L,oBAQrDhrO,EAAOi2G,EAAGpgF,IACViiB,EAAK,IAAM6sC,EAAS,SAAU,IAC9BsiB,EAAOgP,EAAG29C,aACV1oJ,EAAOgrG,EAAGluB,OAAOjwE,QAAO,SAAUusD,EAAGC,GACvC,MAAO,CACLr5D,KAAMo5D,EAAEp5D,KAAOq5D,EAAEr5D,SAElBA,KACC48E,EAAUouB,EAAGp1F,OAAO+7D,OACpBouJ,EAAc/0H,EAAGr5B,OAErB,OAAO,IAAIquJ,EAAAA,uBAAuBlrO,EAAM83C,EAAImvD,EAAM/7F,EAAM+/N,EAAanjJ,EAASouB,EAAIvxB,KAGpF,OAAOvY,M,sBChCX,MAAM3vB,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,+BAAgC,IAAI4lB,OAAO,CACxD,yBACA,SAAUoxC,GACR,aAEA,IAoBIi5K,EAAyB,CAC3BnrO,KAAM,2CACN2C,IAAK,0BACLyvD,MAAO,CACL,WAAY,CACV1V,YAAaD,EACbrrC,WAAY,kCAclB8gD,EAAuBC,SAxCK,CAC1BnyD,KAAM,0CACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,4BAoCjBmgD,EAAuBC,SA/BI,CACzBnyD,KAAM,6CACN2C,IAAK,2BACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,+BA2BjBmgD,EAAuBC,SAASg5K,GAChCj5K,EAAuBC,SAbK,CAC1BnyD,KAAM,+CACN2C,IAAK,QACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,oC,mCC1Cd,SAASirN,EAAsBC,GACpC/gO,KAAKuM,GAAKw0N,EAAQziO,GAClB0B,KAAKsiF,YAAcy+I,EAAQnuN,YAC3B5S,KAAK6M,KAAOk0N,EAAQj9N,KACpB9D,KAAK6/H,UAAYkhG,EAAQ54J,UAAY44J,EAAQ54J,UAAUrkE,KAAO,GAC9D9D,KAAKghO,kBAAoBD,EAAQE,oBACjCjhO,KAAKuvN,gBAAkBwR,EAAQG,2B,+FCN1B,SAASgO,EAA8BzqO,GACxCA,IACFzE,KAAKuM,GAAK9H,EAAKnG,GACf0B,KAAKmhF,OAAS18E,EAAK2+C,OACnBpjD,KAAK66E,QAAUp2E,EAAKkyC,QACpB32C,KAAKohF,cAAgB38E,EAAK0qO,eAC1BnvO,KAAKqhF,GAAK58E,EAAKm3C,GACf57C,KAAKshF,aAAe78E,EAAKizJ,aACzB13J,KAAKuhF,OAAS98E,EAAK2qO,OACnBpvO,KAAK+6E,QAAUt2E,EAAKmgB,OAAO48D,IAC3BxhF,KAAKyhF,WAAah9E,EAAK4qO,iBAAiB5tJ,WAAah9E,EAAK4qO,iBAAiB5tJ,WAAa,GACxFzhF,KAAKywE,aAAehsE,EAAK4qO,iBAAiB5+J,aAAe3xE,OAAOD,KAAK4F,EAAK4qO,iBAAiB5+J,cAAgB,GAC3GzwE,KAAKkxE,QAAUzsE,EAAK4qO,iBAAiBn+J,QAAUpyE,OAAOD,KAAK4F,EAAK4qO,iBAAiBn+J,SAAW,GAC5FlxE,KAAK2hF,IAAMl9E,EAAK4qO,iBAAiB1tJ,IAAMl9E,EAAK4qO,iBAAiB1tJ,IAAM,I,gMCXhE,SAAS2tJ,EAA4B/4N,EAAO9R,GACjDzE,KAAK6hF,MAAQtrE,EACbvW,KAAKuM,GAAK9H,EAAKnG,GACf0B,KAAK66E,QAAUp2E,EAAKkyC,QACpB32C,KAAK8hF,UAAY,IAAOr9E,EAAK4qO,iBAAiB7tJ,IAAK,O,mLCJ9C,SAAS2gJ,EAA4B9tL,GACtCA,EAAKvwC,MAAQuwC,EAAKmzD,MACpBxnG,KAAK6M,KAAOwnC,EAAKvwC,KACjB9D,KAAKoiO,UAAY,IAAU/tL,EAAKmzD,KAAM,MAAM/nG,SAE5CO,KAAK6M,KAAOwnC,EACZr0C,KAAKoiO,UAAY,GAId,SAASC,EAAkC59N,GAChDzE,KAAK6M,KAAOpI,EAAKk9C,KACjB3hD,KAAKoiO,UAAY39N,EAAK+iG,KAAK/nG,S,mCCdtB,SAASuvO,EAAuBlrO,EAAM83C,EAAImvD,EAAM/7F,EAAM+/N,EAAanjJ,EAASouB,EAAIvxB,GACrFzoF,KAAK6M,KAAO/I,EACZ9D,KAAKqhF,GAAKzlC,GAAM,GAChB57C,KAAKshF,aAAeypB,GAAQ,GAC5B/qG,KAAK+hF,KAAO/yE,GAAQ,EACpBhP,KAAK0uO,YAAcK,GAAe,GAClC/uO,KAAK2uO,QAAU/iJ,GAAW,GAC1B5rF,KAAKuvO,WAAav1H,GAAM,GACxBh6G,KAAKwvO,QAAU/mJ,GAAW,GAGrB,SAASgnJ,EAAmB3rO,EAAM8nF,EAASmjJ,EAAaW,GAC7D1vO,KAAK6M,KAAO/I,EACZ9D,KAAK2uO,QAAU/iJ,EACf5rF,KAAK0uO,YAAcK,EACnB/uO,KAAKuvO,WAAaG,EAGb,SAASC,EAAwBh2M,EAAK+1M,GAC3C1vO,KAAKwgF,IAAM7mD,EACX35B,KAAK4vO,SAAWF,E,2MClBlB95N,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,kBAAmB,CACxE,YACA,0BACA,SAAgCN,EAAW4H,GAEzC,OAAO5H,EACL4H,EAA0B,kBAC1B,GACA,CACE1tC,IAAK,CACHiC,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,YAC7B+0C,kBAAmBo2L,EAAAA,SAErB9oO,KAAM,CACJ6Z,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOigB,WAAY,gBAEnCuxN,iBAAkB,CAChBlvN,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOigB,WAAY,eACjC5H,QAAS,CAAE,gCAAiC,OAGhD,CACEo5N,sBAAsB,Q,6EClB9Bn6N,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,0BAA2B,CAChF,0BACA,SAAwCsH,GAGtC,SAASpmD,EAASuF,GAChB,IAAI/E,EAAM4lD,EAA0B,IAAM7gD,EAAOlN,GAAK,OAASkN,EAAOmoE,WAAa,cAAgBnoE,EAAOmuB,IAI1G,OAHInuB,EAAO+S,aACT9X,GAAO,eAAiB+E,EAAO+S,YAE1B9X,EAuET,MAAO,CACLkY,IArEF,SAAcnT,GACZ,OAAO,IAAIyQ,SAAQ,CAACld,EAASgwB,KAC3Bw6B,IAAAA,KAAO,CACLx/C,KAAM,MACNimO,SAAU,OACVvpO,IAAKR,EAASuF,GACdmL,QAAS,CACPorG,OAAQ,uDACR,gBAAiB,WACjB,oBAAqB,iCAEvBx3F,QAAUlC,GAAWtpB,EAAQspB,GAC7Bpa,MAAQA,GAAU8gB,EAAO9gB,SA0D7BgiO,MArDF,SAAgBzkO,GACd,OAAO,IAAIyQ,SAAQ,CAACld,EAASgwB,KAC3Bw6B,IAAAA,KAAO,CACLx/C,KAAM,MACNimO,SAAU,OACVvpO,IAAKR,EAASuF,GACdmL,QAAS,CACPorG,OAAQ,uDACR,gBAAiB,WACjB,oBAAqB,iCAEvBx3F,QAASs7B,MAAOqqL,EAAYh4N,EAAQqN,KAClC,MAAM8C,EAAS7iB,KAAKwZ,MAAMkxN,GAE1B7nN,EAAOs4D,OAASp7D,EAAQ4qN,kBAAkB,gCA8CtDtqL,eAAsBz7C,GACpB,MAAM+hE,EAAO,IAAIikK,EAAAA,OAEjB,OADAjkK,EAAKvK,OAAOx3D,SACC+hE,EAAKwU,SAjDqE0vJ,CAAOH,GACpFnxO,EAAQspB,IAEVpa,MAAQA,GAAU8gB,EAAO9gB,SAqC7B88C,IAhCF,SAAcv/C,EAAQ/G,GAIpB,OAAO,IAAIwX,SAAQ,CAACld,EAASgwB,KAHHxuB,IAAAA,EAIxBgpD,IAAAA,KAAO,CACLx/C,KAAM,MACNtD,IAAKR,EAASuF,GACdmL,QAAS,CACP,eAAgB,wDAElBlS,MAVsBlE,EAUCkE,EATlBmR,QAAQg5M,OAAOruN,EAAG,IAUvBgqB,QAAUlC,GAAWtpB,EAAQspB,GAC7Bpa,MAAQA,GAAU8gB,EAAO9gB,SAoB7BkzC,OAfF,SAAiB31C,GACf,OAAO,IAAIyQ,SAAQ,CAACld,EAASgwB,KAC3Bw6B,IAAAA,KAAO,CACLx/C,KAAM,SACNtD,IAAKR,EAASuF,GACd+e,QAAUlC,GAAWtpB,EAAQspB,GAC7Bpa,MAAQA,GAAU8gB,EAAO9gB,c,yDCnFnC2H,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,eAAgB,CACrE,YACA,0BACA,SAA6BN,EAAW4H,GAEtC,OAAO5H,EACL4H,EAA0B,gCAC1B,GACA,CACE1tC,IAAK,CACHiC,OAAQ,MACRpV,OAAQ,CAAElN,GAAI,MAAOq1E,WAAY,eACjCl6B,kBAAmBo2L,EAAAA,e,mCCdd,SAASS,EAAsB7rO,EAAMkS,GAClD,IAAID,EAAW,GACf,IACEA,EAASjS,KAAOmR,QAAQszE,SAASzkF,GACjCiS,EAAS65N,KAAO55N,EAAQ,eACxB,MAAO1I,GACPyI,EAAWjS,EAEb,OAAOiS,E,iFCRM,SAASm5N,EAAgBprO,EAAMkS,GAC5C,IAAID,EAAWd,QAAQszE,SAASzkF,GAC5B67B,EAAO3pB,EAAQ,QACnB,GAAI2pB,EAGF,IAFA,IACI1N,EADc0N,EAAKx6B,UAAUw6B,EAAKz6B,QAAQ,KAAO,GAAG01B,MAAM,MAAM,GAC1CA,MAAM,KACvBh8B,EAAI,EAAGA,EAAIqzB,EAAQnzB,OAAQF,IAAK,CACvC,IAAIixO,EAAK59M,EAAQrzB,GAAGg8B,MAAM,KAC1B7kB,EAAS85N,EAAG,IAAMA,EAAG,GAGzB,OAAO95N,E,sJCCMmvC,eAAgB4qL,EAAsB38M,EAAI+6B,EAAM28B,EAAMhgF,GACnE,MAAM82B,EAXR,SAAsB7iC,GACpB,IAAI6iC,EAAOxlB,KAAKyhB,MAAM9+B,EAAS,IAM/B,OALI6iC,EAAO,GACTA,EAAO,GACEA,EAAO,MAChBA,EAAO,KAEFA,EAIMouM,CAAa7hL,EAAKpvD,QAC/B,IAAI0W,EAAQ,EACRoiN,EAAMpiN,EAAQmsB,EACdmwF,EAAU,GACd,KAAOt8G,EAAQ04C,EAAKpvD,QAAQ,CAC1B,MAAMkxO,EAAQ,IAAQ9hL,EAAM14C,EAAOoiN,GAC7B38M,EAAW,GACjB,IAAK,IAAIrc,EAAI,EAAGA,EAAIoxO,EAAMlxO,OAAQF,IAChCqc,EAAShY,KAAK4nF,KAAQhgF,EAAQmlO,EAAMpxO,WAEhC4W,EACN,MAAMkzH,QAAYv1G,EAAGxB,IAAI1W,GACzB,IAAK,IAAIrc,EAAI,EAAGA,EAAI8pI,EAAI5pI,OAAQF,IAC9BkzH,EAAQ7uH,KAAKylI,EAAI9pI,IAEnB4W,EAAQoiN,EACRA,GAAOj2L,QAEHusB,EAAKpvD,aACLgzH,I,wDC9BR78G,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,0BAA2B,CAChF,KACA,oBACA,wBACA,qBACA,SAAiCjxB,EAAI88M,EAAmBC,EAAuBC,GAE7E,MAAO,CACL/pO,KAeF,SAAcqgE,EAAU7oD,EAAYwyN,GAClC,OAAOH,EAAkB7pO,KAAKqgE,EAAU7oD,EAAYwyN,IAfpDC,aAkBF,SAAsB5pK,EAAU7oD,GAC9B,OAAI6oD,EAASp8D,OAASu8D,EAAAA,cAAAA,OACbspK,EAAsBG,aAAa5pK,EAAU7oD,GAE/CqyN,EAAkBI,aAAa5pK,EAAU7oD,IArBhD0yN,uBAwBF,SAAgC7pK,EAAU7oD,EAAYyyN,GACpD,OAAOJ,EAAkBK,uBAAuB7pK,EAAU7oD,EAAYyyN,IAxBtEr3M,IAmCF,SAAaytC,EAAU7oD,EAAYo1D,EAAYh6C,GAC7C,OAAOi3M,EAAkBj3M,IAAIytC,EAAU7oD,EAAYo1D,EAAYh6C,IAnC/D6tE,KA0BF,SAAcpgC,EAAU7oD,EAAYo1D,GAClC,OAAOi9J,EAAkBppI,KAAKpgC,EAAU7oD,EAAYo1D,IA1BpDu9J,eA6BF,SAAwB9pK,EAAU7oD,EAAYo1D,EAAY6zB,GACxD,OAAOopI,EAAkBM,eAAe9pK,EAAU7oD,EAAYo1D,EAAY6zB,IA7B1E2pI,OAoCF,SAAgB/pK,EAAU7oD,EAAYo1D,EAAYh6C,EAAK+1M,GACrD,OAAOkB,EAAkBO,OAAO/pK,EAAU7oD,EAAYo1D,EAAYh6C,EAAK+1M,IApCvE0B,kBAmDF,SAA2BhqK,EAAU7oD,EAAYo1D,EAAY09J,EAAcC,EAAiBC,GAC1F,OAAInqK,EAASp8D,OAASu8D,EAAAA,cAAAA,IACbupK,EAAmBM,kBAAkBhqK,EAAU7oD,EAAYo1D,EAAY09J,EAAcC,EAAiBC,GAExGX,EAAkBQ,kBAAkBhqK,EAAU7oD,EAAYo1D,EAAY09J,EAAcC,EAAiBC,IAtD5GC,sBA0CF,SAA+BpqK,EAAU7oD,EAAYo1D,EAAY89J,GAC/D,OAAOb,EAAkBY,sBAAsBpqK,EAAU7oD,EAAYo1D,EAAY89J,IA1CjFC,uBA6CF,SAAgCtqK,EAAU7oD,EAAYo1D,EAAY29J,EAAiBC,GACjF,OAAOX,EAAkBc,uBAAuBtqK,EAAU7oD,EAAYo1D,EAAY29J,EAAiBC,IA7CnGI,eAoCF,SAAwBvqK,EAAU7oD,EAAYo1D,EAAYgN,GACxD,OAAOiwJ,EAAkBe,eAAevqK,EAAU7oD,EAAYo1D,EAAYgN,IApC1EixJ,iBA4DF,SAA0BxqK,EAAU7oD,EAAYo1D,GAC9C,OAAOm9J,EAAmBc,iBAAiBxqK,EAAU7oD,EAAYo1D,IA5DjEk+J,gBAsDF,SAAyBrmO,EAAQ/G,GAC/B,OAAOqsO,EAAmBe,gBAAgBrmO,EAAQ/G,S,+JCxExDmR,QAAQ5W,OAAO,gCAAgC+lD,QAAQ,oBAAqB,CAC1E,KACA,SACA,kBACA,eACA,0BACA,mBACA,SAAkCjxB,EAAIosB,EAAQ4xL,EAAiBC,EAAcC,EAAyBC,GAEpG,IAAIt0N,EAAU,GAqBd,SAASu0N,EAAgB1mO,EAAQq+E,EAAUmnJ,GACzCc,EAAgBnzN,IAAInT,GAAQw6C,SAAShqC,MAAK,SAAUvX,GAClDusO,EAAe,IAASA,EAAcvsO,EAAKusO,cACvCvsO,EAAK6+B,MAAQ7+B,EAAKoY,EACpBq1N,EAAgB,CAAE5zO,GAAIkN,EAAOlN,GAAIigB,WAAY/S,EAAO+S,WAAY1B,EAAGpY,EAAKoY,EAAGymB,KAAM7+B,EAAK6+B,MAAQumD,EAAUmnJ,GAExGnnJ,EAAS9qF,QAAQiyO,MAKvB,SAASmB,EAAY7zO,EAAIigB,GACvB,IAAIsrE,EAAW/1D,EAAGg2D,QAIlB,OADAooJ,EAAgB,CAAE5zO,GAAIA,EAAIigB,WAAYA,GAAcsrE,EAFjC,IAGZA,EAAS/tE,QAoDlB,SAASs2N,EAAa5mO,EAAQq+E,EAAUwoJ,GACtCN,EAAapzN,IAAInT,GACdw6C,SAAShqC,MAAK,SAAUvX,GACvB4tO,EAAavuO,KAAOW,EAAKX,KACzBuuO,EAAa7qI,KAAO,IAAS6qI,EAAa7qI,KAAM/iG,EAAK+iG,MACjD/iG,EAAK6+B,MAAQ7+B,EAAKoY,EACpBu1N,EAAa,CAAE9zO,GAAIkN,EAAOlN,GAAIigB,WAAY/S,EAAO+S,WAAYo1D,WAAYnoE,EAAOmoE,WAAY92D,EAAGpY,EAAKoY,EAAGymB,KAAM7+B,EAAK6+B,MAAQumD,EAAUwoJ,GAEpIxoJ,EAAS9qF,QAAQszO,MAGpBv1K,OAAM,SAAehiD,GACD,MAAfA,EAAI5C,OAKR2xE,EAAS96D,OAAO,CACdlU,IAAK,0BACLC,IAAKA,IANL+uE,EAAS9qF,QAAQszO,MAWzB,SAAS7qI,EAAKpgC,EAAU7oD,EAAYo1D,GAClC,MAAMkW,EAAW/1D,EAAGg2D,QAIpB,OADAsoJ,EAAa,CAAE9zO,GAFJ8oE,EAAS76D,GAEGgS,WAAYA,EAAYo1D,WAAYA,GAAckW,EAAU,CAAE/lF,KAAM6vE,EAAY6zB,KAAM,KACtG3d,EAAS/tE,QASlB,SAAS6d,EAAIytC,EAAU7oD,EAAYo1D,EAAYh6C,GAC7C,MAAMkwD,EAAW/1D,EAAGg2D,QACdxrF,EAAK8oE,EAAS76D,GAEpB,IAAIqP,EAAW,CACbm+F,GAAIi4H,EAAwBrzN,IAAI,CAC9BrgB,GAAIA,EACJigB,WAAYA,EACZo1D,WAAYA,EACZh6C,IAAKA,IAEPqgF,GAAIg4H,EAAwB/B,MAAM,CAChC3xO,GAAIA,EACJigB,WAAYA,EACZo1D,WAAYA,EACZh6C,IAAKA,KAgBT,OAbA7F,EAAGxB,IAAI1W,GACJI,MAAK,SAAiBvX,GACrB,IAAI6tO,EAAaL,EAAiBM,eAAe9tO,GACjD6tO,EAAWzlO,KAAOylO,EAAWzlO,MAAQ8sB,EACrCkwD,EAAS9qF,QAAQuzO,MAElBx1K,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CACdlU,IAAK,0BAA4B8e,EACjC7e,IAAKA,OAIJ+uE,EAAS/tE,QAYlB,SAAS02N,EAAqBprK,EAAU7oD,EAAYo1D,EAAYh6C,GAC9D,OAAOw3M,EAAO/pK,EAAU7oD,EAAYo1D,EAAYh6C,EAAI6mD,IAAK7mD,EAAIi2M,UAG/D,SAASuB,EAAO/pK,EAAU7oD,EAAYo1D,EAAYh6C,EAAK+1M,GACrD,MAAMpxO,EAAK8oE,EAAS76D,GAEpB,cADOmjO,EAAS/uJ,OACTqxJ,EAAwBjnL,IAC7B,CACEzsD,GAAIA,EACJigB,WAAYA,EACZo1D,WAAYA,EACZh6C,IAAKA,GAEP+1M,GAIJ7pL,eAAgB4sL,EAAqBrrK,EAAU7oD,EAAYo1D,EAAY89J,EAAUiB,EAAc,GAC7F,UAAW,MAAMC,KAAiBlC,EAAAA,EAAAA,SAAsB38M,EAAI29M,EAAUe,EAAsB,CAACprK,EAAU7oD,EAAYo1D,IACpF,iBAAlBg/J,QACHD,EAAcC,QAEdA,EAaZ,SAAShB,EAAevqK,EAAU7oD,EAAYo1D,EAAYo7J,GACxD,MAAMzwO,EAAK8oE,EAAS76D,GACpB,OAAOylO,EAAwB7wL,OAAO,CACpC7iD,GAAIA,EACJigB,WAAYA,EACZo1D,WAAYA,EACZh6C,IAAKo1M,IAITlpL,eAAgB+sL,EAA6BxrK,EAAU7oD,EAAYo1D,EAAYi7J,GAC7E,UAAW,MAAM+D,KAAiBlC,EAAAA,EAAAA,SAAsB38M,EAAI86M,EAAW+C,EAAgB,CAACvqK,EAAU7oD,EAAYo1D,UACtGg/J,EAYV,SAASE,EAAuBv0O,EAAIigB,EAAYo1D,EAAYh6C,GAC1D,OAAO,IAAI1d,SAAQ,CAACld,EAASgwB,KAC3BijN,EAAwB/B,MAAM,CAAE3xO,GAAIA,EAAIigB,WAAYA,EAAYo1D,WAAYA,EAAYh6C,IAAKA,IAC1F3d,MAAMvX,GAAS1F,EAAQ,IAAI0wO,EAAAA,mBAAmB91M,EAAKl1B,EAAKmgB,OAAO+7D,OAAQl8E,EAAKk8E,OAAQl8E,MACpFq4D,OAAOhiD,GAAQiU,EAAOjU,QAqE7B,OAjBA6C,EAAQ5W,KAzRR,SAAcqgE,EAAU7oD,EAAYwyN,GAClC,MAAMzyO,EAAK8oE,EAAS76D,GACpB,OAAIwkO,EACKe,EAAgBhC,iBAAiB,CAAExxO,GAAIA,EAAIigB,WAAYA,IAAcynC,SAEvE8rL,EAAgB/qO,KAAK,CAAEzI,GAAIA,EAAIigB,WAAYA,IAAcynC,UAsRlEroC,EAAQqzN,aAxPR,SAAsB5pK,EAAU7oD,GAC9B,MAAMsrE,EAAW/1D,EAAGg2D,QAepB,OAZAqoJ,EAFW/qK,EAAS76D,GAEJgS,GACbvC,MAAK,SAAiBvX,GACrB,MAAMusO,EAAe,IAAMvsO,GAAOquO,GAAmB,IAAI3Q,EAAAA,4BAA4B2Q,KACrFjpJ,EAAS9qF,QAAQiyO,MAElBl0K,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CACdlU,IAAK,kCACLC,IAAKA,OAIJ+uE,EAAS/tE,SAyOlB6B,EAAQszN,uBAtOR,SAAgC7pK,EAAU7oD,EAAYyyN,GACpD,MAAMnnJ,EAAW/1D,EAAGg2D,QACdluE,EAAW,IAAMo1N,GAAer9J,GAAe6zB,EAAKpgC,EAAU7oD,EAAYo1D,EAAW9mE,QAiB3F,OAfAoP,QAAQqW,IAAI1W,GACTI,MAAK,SAAiBvX,GACrB,IAAIusO,EAAevsO,EAAKtG,KAAI,SAAUk2C,GACpC,OAAO,IAAI8tL,EAAAA,4BAA4B9tL,MAEzC28L,EAAe,IAAUA,OAAcn/N,GACvCg4E,EAAS9qF,QAAQiyO,MAElBl0K,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CACdlU,IAAK,kCACLC,IAAKA,OAIJ+uE,EAAS/tE,SAqNlB6B,EAAQ6pF,KAAOA,EACf7pF,EAAQgc,IAAMA,EACdhc,EAAQuzN,eA5KR,SAAwB9pK,EAAU7oD,EAAYo1D,EAAY6zB,GACxD,MAAM5rF,EAAW,IAAM4rF,GAAO/nD,GAAM9lB,EAAIytC,EAAU7oD,EAAYo1D,EAAYl0B,EAAE5yC,QAE5E,OAAOinB,EAAGxB,IAAI1W,IA2KhB+B,EAAQ6zN,sBAzDR3rL,gBAAsCuhB,EAAU7oD,EAAYo1D,EAAY89J,GACtE,MAAMnzO,EAAK8oE,EAAS76D,UACbkkO,EAAAA,EAAAA,SAAsB38M,EAAI29M,EAAUoB,EAAwB,CAACv0O,EAAIigB,EAAYo1D,KAyDtFh2D,EAAQwzN,OAASA,EACjBxzN,EAAQg0N,eAAiBA,EAEzBh0N,EAAQ+zN,uBA9BR7rL,gBAAuCuhB,EAAU7oD,EAAYo1D,EAAY29J,EAAiBC,SACjFqB,EAA6BxrK,EAAU7oD,EAAYo1D,EAAY29J,GAEtE,MAAMyB,EAAU,IAAMxB,GAAel9L,GAAS,IAAIs7L,EAAAA,wBAAwBt7L,EAAKxnC,KAAMwnC,EAAKk7L,oBAEnFkD,EAAqBrrK,EAAU7oD,EAAYo1D,EAAYo/J,EAASzB,EAAgB7xO,SA0BzFke,EAAQyzN,kBAnDRvrL,gBAAkCuhB,EAAU7oD,EAAYo1D,EAAY09J,EAAcC,EAAiBC,SAC1FqB,EAA6BxrK,EAAU7oD,EAAYo1D,EAAY29J,GAEtE,MAAMyB,EAAU,IAAMxB,GAAel9L,IACnC,MAAM2+L,EAAe,IAAO3B,EAAc,CAAExkO,KAAMwnC,EAAKxnC,OACjD/I,EAAOkvO,GAAgBA,EAAanmO,OAASmmO,EAAaC,QAAUD,EAAaC,QAAU5+L,EAAKxnC,KACtG,OAAO,IAAI8iO,EAAAA,wBAAwB7rO,EAAMuwC,EAAKk7L,qBAGzCkD,EAAqBrrK,EAAU7oD,EAAYo1D,EAAYo/J,EAASzB,EAAgB7xO,SA4ClFke,M,8HC1TJ,MAAMu1N,EAEXjzL,YAAY7qC,EAAQ8qC,EAAQwI,EAAQ+d,EAAiB0sK,EAAyB1oN,GAC5EzqB,KAAKoV,OAASA,EACdtW,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQ+d,gBAAAA,EAAiB0sK,wBAAAA,EAAyB1oN,cAAAA,IAEhFzqB,KAAK+P,MAAQ,CACXqjO,gBAAgB,EAChBz6H,kBAAkB,EAClB06H,oBAAoB,GAGtBrzO,KAAKszO,kBAAoBtzO,KAAKszO,kBAAkBj0O,KAAKW,MACrDA,KAAKuzO,uBAAyBvzO,KAAKuzO,uBAAuBl0O,KAAKW,MAC/DA,KAAK+5K,oBAAsB/5K,KAAK+5K,oBAAoB16K,KAAKW,MACzDA,KAAKg6K,yBAA2Bh6K,KAAKg6K,yBAAyB36K,KAAKW,MACnEA,KAAK8uN,qBAAuB9uN,KAAK8uN,qBAAqBzvN,KAAKW,MAC3DA,KAAKwzO,UAAYxzO,KAAKwzO,UAAUn0O,KAAKW,MACrCA,KAAKyzO,oBAAsBzzO,KAAKyzO,oBAAoBp0O,KAAKW,MACzDA,KAAKmjD,QAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MAGnC8uN,qBAAqBr4J,GACnBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMsnB,eAAiBtU,KAIhC+8K,UAAU/8K,GACRz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAM+9I,IAAM/qI,KAIrBg9K,oBAAoBh9K,GAClBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKyjD,MAAMg+I,cAAgBhrI,KAI/B68K,oBACE,OAAOtzO,KAAKkgD,OAAOlgD,KAAKuzO,wBAEE,+BAC1BvzO,KAAK+P,MAAMqjO,gBAAiB,EAC5B,UACQpzO,KAAKymE,gBAAgBitK,kBAAkB1zO,KAAKonE,SAAS76D,GAAIvM,KAAKyjD,aAC9DzjD,KAAKmzO,wBAAwBpsO,KAAK/G,KAAKonE,SAAU,MAAM,GAE7DpnE,KAAKyqB,cAAcF,QAAQ,UAAW,kCACtCvqB,KAAK+P,MAAMsjO,oBAAqB,EAChC,MAAOv4N,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAG3C9a,KAAK+P,MAAMqjO,gBAAiB,EAG9Br5D,sBACE,OAAO/5K,KAAKkgD,OAAOlgD,KAAKg6K,0BAEI,iCAC5Bh6K,KAAK+P,MAAM4oG,kBAAmB,EAC9B,UACQ34G,KAAKymE,gBAAgBitK,kBAAkB1zO,KAAKonE,SAAS76D,GAAIvM,KAAKyjD,OACpEzjD,KAAKyqB,cAAcF,QAAQ,UAAW,6CACtCvqB,KAAK0oD,OAAOr8B,GAAG,6CAA8C,CAAE/tB,GAAI0B,KAAKonE,SAAS76D,IAAM,CAAE20B,QAAQ,IACjG,MAAOpmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,sDAG3C9a,KAAK+P,MAAM4oG,kBAAmB,EAGnB,gBACX,MAAM7yC,EAAa9lE,KAAK0oD,OAAOl9C,OAAOlN,GACtC0B,KAAKunE,cAAgBA,EAAAA,cAErB,IACE,MAAMH,QAAiBpnE,KAAKymE,gBAAgBW,SAAStB,GAC/CriB,EAAQ,IAAIm+K,EAAAA,4CAA4Cx6J,GAE9DpnE,KAAKonE,SAAWA,EAChBpnE,KAAKyjD,MAAQA,EACb,MAAO3oC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yC,iLCxF/C,MAAMylC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,gCAAgCC,UAAU,wBAAyB,CAChF2qC,YAAaD,EACbrrC,WAAYg+N,EAAAA,+B,0ICJP,MAAMS,EAEX1zL,YAAYC,EAAQwI,EAAQ+d,EAAiB0sK,EAAyB1oN,EAAesgD,GACnFjsE,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQ+d,gBAAAA,EAAiB0sK,wBAAAA,EAAyB1oN,cAAAA,EAAesgD,eAAAA,IAE/F/qE,KAAK+P,MAAQ,CACX6jO,oCAAoC,EACpCzyM,SAAS,GAGXnhC,KAAKouO,iBAAmBpuO,KAAKouO,iBAAiB/uO,KAAKW,MACnDA,KAAK6zO,sBAAwB7zO,KAAK6zO,sBAAsBx0O,KAAKW,MAC7DA,KAAKmjD,QAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MAGnCouO,iBAAiB4C,GACf,OAAOhxO,KAAKkgD,OAAOlgD,KAAK6zO,sBAAuB7C,GAEtB,4BAACA,GAC1B,GAAIhxO,KAAKonE,SAASp8D,OAASu8D,EAAAA,cAAAA,OAA3B,CAGAvnE,KAAK+P,MAAMoxB,SAAU,EACrB,IACE,MAAM18B,QAAazE,KAAKmzO,wBAAwBlC,uBAAuBjxO,KAAKonE,SAAUpnE,KAAKue,WAAYyyN,GACvG,IAAK,IAAIzxO,EAAI,EAAGA,EAAIkF,EAAKhF,OAAQF,IAAK,CACpC,MAAMorE,EAAM,IAAY3qE,KAAKgxO,aAAc,CAAEnkO,KAAMpI,EAAKlF,GAAGsN,QAC9C,IAAT89D,IACwB,IAAtBlmE,EAAKlF,GAAG6iO,UACVpiO,KAAKgxO,aAAa/tK,OAAO0H,EAAK,GAE9B3qE,KAAKgxO,aAAarmK,GAAKy3J,UAAY39N,EAAKlF,GAAG6iO,WAIjDpiO,KAAK+P,MAAMoxB,SAAU,EACrB,MAAOrmB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6CAIhC,gBACX,MAAMgrD,EAAa9lE,KAAK0oD,OAAOl9C,OAAOlN,GAEtC0B,KAAKiK,QAAUjK,KAAK+qE,eAAe9gE,UACnCjK,KAAKue,WAAave,KAAK0oD,OAAOl9C,OAAO+S,WAErC,IACEve,KAAKonE,eAAiBpnE,KAAKymE,gBAAgBW,SAAStB,EAAY9lE,KAAKue,YACrE,UACQve,KAAKmzO,wBAAwBpsO,KAAK/G,KAAKonE,SAAUpnE,KAAKue,YAAY,GACxEve,KAAKgxO,mBAAqBhxO,KAAKmzO,wBAAwBnC,aAAahxO,KAAKonE,SAAUpnE,KAAKue,YACxF,MAAO7f,GACPsB,KAAK+P,MAAM6jO,oCAAqC,GAElD,MAAO94N,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yC,wXCrD/C,SAASg5N,EACPhgN,EACAosB,EACA9qC,EACA2+N,EACAprL,EACAD,EACAyqL,EACA1sK,EACA/kB,EACAj3B,EACA+7C,EACAuE,GA0CA,SAASipK,EAAUn0J,GACjB,OAAOA,EAAO,IAEhB,SAASo0J,EAAUC,EAAU93M,GAC3B,OAAS83M,EAAW93M,EAAS,KAAK04D,UAGpC,SAASq/I,EAAUp1O,GACjB,OAAOg1O,EAAUn1K,KAAK,CACpB/oD,UAAW,mBACXu+N,SAAU,SACVC,UAAU,EACVt1O,QAASA,IAwBb,SAASu1O,EAAqB75E,GAC5BrlJ,EAAOrF,MAAMwkO,cAAcC,YAAcR,EAAUhxN,KAAKC,MAAQw3I,GAGlE,SAASg6E,IACPr/N,EAAOrF,MAAMwkO,cAAcG,eAAiBvB,EAAwB3B,sBAAsBp8N,EAAOgyD,SAAUhyD,EAAOmJ,WAAYnJ,EAAOu+D,WAAW9mE,KAAMuI,EAAOu+D,WAAWsO,MAmC1Kp8B,eAAe8uL,IACbv/N,EAAOrF,MAAMwkO,cAAcr6E,SAAU,EACrC,MAAMO,EAAYz3I,KAAKC,MACvB7N,EAAOrF,MAAMwkO,cAAcK,MAAQjsL,EAAU2rL,EAAsB,IAAM,GAAG,EAAM75E,GAClF,UAAW,MAAMk4E,KAAiBv9N,EAAOrF,MAAMwkO,cAAcG,eAC9B,iBAAlB/B,EACTv9N,EAAOrF,MAAMwkO,cAAc7B,YAAcuB,EAAUtB,EAAev9N,EAAOu+D,WAAWsO,KAAKxiF,QAEzF2V,EAAOy/N,MAAM5yJ,KAAO,IAAS0wJ,EAAe,QAGhDv9N,EAAOrF,MAAMwkO,cAAcr6E,SAAU,EACrCvxG,EAAU7gC,OAAO1S,EAAOrF,MAAMwkO,cAAcK,OAU9C/uL,eAAeivL,IACb,IAEE,GADA1/N,EAAOrF,MAAMolF,kBAAmB,GAC3B3uB,EAAY8M,WAAWl+D,EAAOzB,WAAW6sE,KAC5C,KAAM,CAAE3lE,IAAK,6DAEf,MAAM8e,EAAMvkB,EAAOy/N,MAAM5yJ,KAAKx4E,MAAM4qC,GAASA,EAAKs6L,UAAYv5N,EAAOzB,WAAWohO,gBAC1ErF,EAAW/1M,EAAI41M,iBACf4D,EAAwBhC,OAAO/7N,EAAOgyD,SAAUhyD,EAAOmJ,WAAYnJ,EAAOu+D,WAAW9mE,KAAMuI,EAAOzB,WAAW6sE,IAAKkvJ,GAExHjlN,EAAcF,QAAQ,UAAW,0BACjCnV,EAAOy/N,MAAM5yJ,KAAKr+E,KAAK,IAAI6rO,EAAAA,mBAAmBr6N,EAAOzB,WAAW6sE,IAAK7mD,EAAIg1M,QAASh1M,EAAI+0M,YAAa/0M,EAAI41M,mBAEjGyF,IACN5/N,EAAOzB,WAAW6sE,IAAM,UACjBprE,EAAOzB,WAAWohO,cACzB,MAAOj6N,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,qBAhBtC,QAkBE1F,EAAOrF,MAAMolF,kBAAmB,GAcpC,SAAS8/I,EAAiBx6E,GACxBrlJ,EAAOrF,MAAMmlO,UAAUV,YAAcR,EAAUhxN,KAAKC,MAAQw3I,GAc9D50G,eAAesvL,IACb,IAAIC,EAAQ,KACZ,IACEhgO,EAAOrF,MAAMmlO,UAAUh7E,SAAU,EAEjC,MAAMm3E,EAAe,IAASj8N,EAAOoyF,MAAOnzD,IAA2B,IAAlBA,EAAKghM,WAC1D,IAAK,MAAM17M,KAAO03M,EAChB,IAAK7qK,EAAY8M,WAAW35C,EAAIs5M,SAC9B,KAAM,CAAEp4N,IAAK,6DAGjBu6N,QAAcjB,EAAU,CACtBlnO,QAAS,IAAM,qIACfqoO,cAAe,IAAM,iBACrB93N,QAAS,IAAMpI,EAAOrF,MAAMmlO,YAE9B,MAAM5D,EAAkB,IAAO,IAAMD,EAAc,gBAC7CE,EAAe,IAASn8N,EAAOy/N,MAAM5yJ,MAAO5tC,GAAS,IAAWi9L,EAAiBj9L,EAAKq6L,eAEtF6G,EAAWjE,EAAgB7xO,OAAS8xO,EAAa9xO,QA9B3D,SAAmC4xO,EAAcC,EAAiBC,GAChEn8N,EAAOrF,MAAMmlO,UAAUR,eAAiBvB,EAAwB/B,kBAC9Dh8N,EAAOgyD,SACPhyD,EAAOmJ,WACPnJ,EAAOu+D,WAAW9mE,KAClBwkO,EACAC,EACAC,GAyBAiE,CAA0BnE,EAAcC,EAAiBC,GAEzD,MAAM92E,EAAYz3I,KAAKC,MACvB7N,EAAOrF,MAAMmlO,UAAUN,MAAQjsL,EAAUssL,EAAkB,IAAM,GAAG,EAAMx6E,GAC1E,UAAW,MAAMk4E,KAAiBv9N,EAAOrF,MAAMmlO,UAAUR,eAC1B,iBAAlB/B,IACTv9N,EAAOrF,MAAMmlO,UAAUxC,YAAcuB,EAAUtB,EAAe4C,IAIlE,IAAMlE,GAAeh9L,IACnB,MAAMs2B,EAAM,IAAYv1D,EAAOy/N,MAAM5yJ,MAAO1iF,GAAMA,EAAEsN,OAASwnC,EAAKxnC,OAClEuI,EAAOy/N,MAAM5yJ,KAAKtX,GAAK99D,KAAOwnC,EAAK4+L,WAGrCxoN,EAAcF,QAAQ,UAAW,mCAE3ByqN,IACN,MAAOl6N,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,yBAtCtC,QAwCE6tC,EAAU7gC,OAAO1S,EAAOrF,MAAMmlO,UAAUN,OACxCx/N,EAAOrF,MAAMmlO,UAAUh7E,SAAU,EAC7Bk7E,GACFA,EAAMnhJ,SAgBZ,SAASwhJ,EAAkBh7E,GACzBrlJ,EAAOrF,MAAM2lO,WAAWlB,YAAcR,EAAUhxN,KAAKC,MAAQw3I,GA0B/D50G,eAAe8vL,EAAgB13C,GAC7B,GAAI7oL,EAAOgyD,SAASp8D,OAASu8D,EAAAA,cAAAA,IAG3B,OAjBJ1hB,eAAkCo4I,GAChC,IACE,MAAMz2F,EAAOy2F,EAAa9/L,KAAKw7B,GAAQA,EAAI9sB,aAErCsmO,EAAwBtB,gBAAgB,CAAEvzO,GAAI8W,EAAOgyD,SAAS76D,GAAIgS,WAAYnJ,EAAOmJ,WAAYu0N,eAAgB19N,EAAOu+D,WAAW9mE,MAAQ,CAAEo1E,KAAMulB,UAEnJwtI,IACNvqN,EAAcF,QAAQ,UAAW,6BACjC,MAAOzP,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0BAQ7B86N,CAAmB33C,GAG5B,IAAIm3C,EAAQ,KACZ,IACEhgO,EAAOrF,MAAM2lO,WAAWx7E,SAAU,EAClCk7E,QAAcjB,EAAU,CACtBlnO,QAAS,IAAM,0IACfqoO,cAAe,IAAM,oBACrB93N,QAAS,IAAMpI,EAAOrF,MAAM2lO,aAG9B,MAAMG,EAAkB,IAAM53C,EAAc,QACtC63C,EAAmB,IAAS1gO,EAAOy/N,MAAM5yJ,MAAO5tC,GAAS,IAAWwhM,EAAiBxhM,EAAKxnC,QAC1FykO,EAAkB,IAAO,IAAMwE,EAAkB,gBACjDvE,EAAe,IAASn8N,EAAOy/N,MAAM5yJ,MAAO5tC,GAAS,IAAWi9L,EAAiBj9L,EAAKq6L,eACtFqH,EAAa,IAAUxE,KAAiBuE,GAExCP,EAAWjE,EAAgB7xO,OAASs2O,EAAWt2O,QA7CzD,SAAoC6xO,EAAiBC,GACnDn8N,EAAOrF,MAAM2lO,WAAWhB,eAAiBvB,EAAwBzB,uBAC/Dt8N,EAAOgyD,SACPhyD,EAAOmJ,WACPnJ,EAAOu+D,WAAW9mE,KAClBykO,EACAC,GAyCAyE,CAA2B1E,EAAiByE,GAE5C,MAAMt7E,EAAYz3I,KAAKC,MACvB7N,EAAOrF,MAAM2lO,WAAWd,MAAQjsL,EAAU8sL,EAAmB,IAAM,GAAG,EAAMh7E,GAC5E,UAAW,MAAMk4E,KAAiBv9N,EAAOrF,MAAM2lO,WAAWhB,eAC3B,iBAAlB/B,IACTv9N,EAAOrF,MAAM2lO,WAAWhD,YAAcuB,EAAUtB,EAAe4C,IAInE,IAAOngO,EAAOy/N,MAAM5yJ,QAAS6zJ,GAC7B1gO,EAAOy/N,MAAM56J,OAAS,IAAM,IAAS7kE,EAAOy/N,MAAM5yJ,KAAM,WAAY,WAEpEx3D,EAAcF,QAAQ,UAAW,6BAEA,IAA7BnV,EAAOy/N,MAAM5yJ,KAAKxiF,QACpBipD,EAAOr8B,GAAG,6CAA8C,CAAE/tB,GAAI8W,EAAOgyD,SAAS76D,GAAIgS,WAAYnJ,EAAOmJ,YAAc,CAAE2iB,QAAQ,UAEzH8zM,IACN,MAAOl6N,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,yBApCtC,QAsCE6tC,EAAU7gC,OAAO1S,EAAOrF,MAAM2lO,WAAWd,OACzCx/N,EAAOrF,MAAM2lO,WAAWx7E,SAAU,EAClCk7E,EAAMnhJ,SAmBVpuC,eAAeowL,IACb,IACE,GAAI7gO,EAAOgyD,SAASp8D,MAAQu8D,EAAAA,cAAAA,UACpB4rK,EAAwBvB,iBAAiBx8N,EAAOgyD,SAAUhyD,EAAOmJ,WAAYnJ,EAAOu+D,gBACrF,CACL,MAAMuiK,EAAU,IAAS9gO,EAAOy/N,MAAM5yJ,KAAM,eACtCrmE,EAAW,GACjB,IAAMs6N,GAAU7hM,GAASz4B,EAAShY,KAAKuvO,EAAwBxB,eAAev8N,EAAOgyD,SAAUhyD,EAAOmJ,WAAYnJ,EAAOu+D,WAAW9mE,KAAMwnC,EAAKq6L,sBACzIzyN,QAAQqW,IAAI1W,GAEpB6O,EAAcF,QAAQ,UAAW,mCACjCm+B,EAAOr8B,GAAG,6CAA8C,CAAE/tB,GAAI8W,EAAOgyD,SAAS76D,GAAIgS,WAAYnJ,EAAOmJ,YAAc,CAAE2iB,QAAQ,IAC7H,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAsBxC+qC,eAAemvL,IACb,IACE,MAAM5tK,EAAWhyD,EAAOgyD,SAClBuM,EAAav+D,EAAOu+D,WAAW9mE,KAC/B26F,QAAa2rI,EAAwB3rI,KAAKpgC,EAAUhyD,EAAOmJ,WAAYo1D,GAC7Ev+D,EAAOoyF,KAAO,GACdpyF,EAAOu+D,WAAWsO,KAAO,GACzB7sE,EAAOu+D,WAAWsO,KAAO,IAAS,IAAS7sE,EAAOu+D,WAAWsO,KAAM,IAAUulB,EAAKA,KAAM,QACxF,IAAMpyF,EAAOu+D,WAAWsO,MAAO5tC,GAASj/B,EAAOoyF,KAAK5jG,KAAK,IAAIorO,EAAAA,uBAAuB36L,MACpF,MAAOv5B,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAIxC+qC,eAAeuuC,IACb,IACE,MAAMtuB,EAAapd,EAAOl9C,OAAOlN,GACjC8W,EAAOu+D,WAAW9mE,KAAO67C,EAAOl9C,OAAOmoE,WACvCv+D,EAAOmJ,WAAamqC,EAAOl9C,OAAO+S,WAClCnJ,EAAOrF,MAAMoxB,SAAU,EAEvB/rB,EAAO+gO,wBAA0BprK,EAAezrD,kBAAkB,CAAC,oCAEnElK,EAAOgyD,eAAiBX,EAAgBW,SAAStB,EAAY1wD,EAAOmJ,kBAC9Dy2N,IACF5/N,EAAOu+D,WAAWsO,KAAKxiF,OAAS2V,EAAOrF,MAAMwkO,cAAcn+N,QAC7DhB,EAAOrF,MAAMwkO,cAAc6B,MAAO,GAEpC3B,IACA,MAAO35N,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,6CAftC,QAiBE1F,EAAOrF,MAAMoxB,SAAU,GAxZ3B/rB,EAAOrF,MAAQ,CACbolF,kBAAkB,EAClBh0D,SAAS,EACTozM,cAAe,CACb6B,MAAM,EACNl8E,SAAS,EACT9jJ,MAAO,IACPs8N,YAAa,EACb8B,YAAa,EACbE,eAAgB,KAChBE,MAAO,MAETM,UAAW,CACTh7E,SAAS,EACTw4E,YAAa,EACb8B,YAAa,EACbE,eAAgB,KAChBE,MAAO,MAETc,WAAY,CACVx7E,SAAS,EACTw4E,YAAa,EACb8B,YAAa,EACbE,eAAgB,KAChBE,MAAO,OAGXx/N,EAAOzB,WAAa,CAClB6sE,IAAK,IAEPprE,EAAOoyF,KAAO,GACdpyF,EAAOy/N,MAAQ,CACb5yJ,KAAM,GACNhI,OAAQ,IAEV7kE,EAAOu+D,WAAa,CAClB9mE,KAAM,GACNo1E,KAAM,IAmBR7sE,EAAOg5N,iBAAmB,SAAU5mI,GAClCpyF,EAAOrF,MAAMoxB,SAAU,EACvBgyM,EAAwBjC,eAAe97N,EAAOgyD,SAAUhyD,EAAOmJ,WAAYnJ,EAAOu+D,WAAW9mE,KAAM26F,GAChGxrF,MAAK,SAAiBvX,GACrB,IAAK,IAAIlF,EAAI,EAAGA,EAAIkF,EAAKhF,OAAQF,IAAK,CACpC,IAAIorE,EAAM,IAAYv1D,EAAOoyF,KAAM,CAAE36F,KAAMpI,EAAKlF,GAAGsN,QACtC,IAAT89D,IACFv1D,EAAOoyF,KAAK78B,GAAOlmE,EAAKlF,IAG5B6V,EAAOrF,MAAMoxB,SAAU,KAExB27B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,uCA2B1C1F,EAAOihO,mBAAqB,WACtBjhO,EAAOrF,MAAMwkO,cAAcr6E,SAC7B9kJ,EAAOrF,MAAMwkO,cAAcG,eAAe4B,SAC1C3tL,EAAU7gC,OAAO1S,EAAOrF,MAAMwkO,cAAcK,QAcvC10L,EAAOy0L,GAZG34N,MAAK,KAClBy4N,IACiC,IAA7Br/N,EAAOy/N,MAAM5yJ,KAAKxiF,QAlB1B2V,EAAOrF,MAAMwkO,cAAcr6E,SAAU,EACrC9kJ,EAAOrF,MAAMwkO,cAAc7B,YAAc,EACzCt9N,EAAOrF,MAAMwkO,cAAcC,YAAc,EACzCp/N,EAAOrF,MAAMwkO,cAAcK,MAAQ,MAGrC,WACE,MAAMp6K,EAAS,IAAMplD,EAAOy/N,MAAM5yJ,KAAM,WACxC7sE,EAAOy/N,MAAM56J,OAAS,IAAU,IAAOzf,GAAS,IAa1C+7K,OAuDRnhO,EAAO+7N,OAAS,WACd,OAAOjxL,EAAO40L,IA0EhB1/N,EAAOo5N,YAAc,WACnB,OAAOtuL,EAAOi1L,IAyFhB//N,EAAOohO,WAAa,SAAU1sM,GAC5B4X,EAAap6B,gBAAgB,uDAAwDX,IACnF,GAAKA,EAGL,OAAOu5B,EAAOy1L,EAAiB7rM,OA2BnC10B,EAAOqhO,iBAAmB,WACxB/0L,EAAap6B,gBACX,4OACA,SAAmBX,GACjB,GAAKA,EAGL,OAAOu5B,EAAO+1L,OA+CpB7gO,EAAO49E,IAAI,YAAY,KACjB59E,EAAOrF,MAAMwkO,cAAcG,gBAC7Bt/N,EAAOrF,MAAMwkO,cAAcG,eAAe4B,SAExClhO,EAAOrF,MAAMwkO,cAAcK,OAC7BjsL,EAAU7gC,OAAO1S,EAAOrF,MAAMwkO,cAAcK,OAE1Cx/N,EAAOrF,MAAMmlO,UAAUR,gBACzBt/N,EAAOrF,MAAMmlO,UAAUR,eAAe4B,SAEpClhO,EAAOrF,MAAMmlO,UAAUN,OACzBjsL,EAAU7gC,OAAO1S,EAAOrF,MAAMmlO,UAAUN,OAEtCx/N,EAAOrF,MAAM2lO,WAAWhB,gBAC1Bt/N,EAAOrF,MAAM2lO,WAAWhB,eAAe4B,SAErClhO,EAAOrF,MAAM2lO,WAAWd,OAC1BjsL,EAAU7gC,OAAO1S,EAAOrF,MAAM2lO,WAAWd,UAI7C50O,KAAKmjD,QAAU,WACb,OAAOjD,EAAOk0C,GAAUp4E,MAAK,KACvB5G,EAAOrF,MAAMwkO,cAAc6B,MAC7BhhO,EAAOihO,yB,8KArcfzgO,QAAQ5W,OAAO,iBAAiBkW,WAAW,+BAAgC4+N,I,sBCJ3E,MAAMvzL,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,gCAAgC6W,UAAU,mBAAoB,CAC3E2qC,YAAaD,EACbxrC,SAAU,CACRhW,QAAS,Q,6ECLb,MAAMwhD,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,gCAAgCC,UAAU,2BAA4B,CACnF2qC,YAAaD,EACbrrC,WAAYy+N,EAAAA,kC,qLCJP,MAAM+C,EAEXz2L,YAAYyI,EAAQxI,EAAQz1B,EAAeg8C,EAAiB0sK,EAAyBwD,GACnF73O,OAAOM,OAAOY,KAAM,CAAE0oD,OAAAA,EAAQxI,OAAAA,EAAQz1B,cAAAA,EAAeg8C,gBAAAA,EAAiB0sK,wBAAAA,EAAyBwD,wBAAAA,IAE/F32O,KAAKwd,QAAU,GAEfxd,KAAKmjD,QAAUnjD,KAAKmjD,QAAQ9jD,KAAKW,MACjCA,KAAK42O,aAAe52O,KAAK42O,aAAav3O,KAAKW,MAG7CqtG,mBAAmBC,GACjB/jD,EAAE,0BAA4B+jD,EAAU,SAASC,YAAY,4CAC7DhkD,EAAE,kBAAoB+jD,EAAU,UAAUE,SAC1CjkD,EAAE,kBAAoB+jD,EAAU,SAASE,SAG3Cj3F,MAAM2gC,GACJl3C,KAAK62O,KAAKC,QAAU92O,KAAK62O,KAAK7rO,OAASksC,IAAYl3C,KAAK62O,KAAKC,QAC7D92O,KAAK62O,KAAK7rO,KAAOksC,EAGnBiM,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK42O,cAER,qBAChB52O,KAAKwd,QAAQsoD,WAAa9lE,KAAK0oD,OAAOl9C,OAAOlN,GAC7C0B,KAAKwd,QAAQm2D,WAAa3zE,KAAK0oD,OAAOl9C,OAAOmoE,WAC7C3zE,KAAKwd,QAAQmc,IAAM35B,KAAK0oD,OAAOl9C,OAAOmuB,IACtC35B,KAAKwd,QAAQe,WAAave,KAAK0oD,OAAOl9C,OAAO+S,WAC7Cve,KAAK62O,KAAO,CACV7rO,KAAM,QACN8rO,SAAS,GAEX,IACE92O,KAAKonE,eAAiBpnE,KAAKymE,gBAAgBW,SAASpnE,KAAKwd,QAAQsoD,WAAY9lE,KAAKwd,QAAQe,YAC1Fve,KAAK25B,UAAY35B,KAAKmzO,wBAAwBx5M,IAAI35B,KAAKonE,SAAUpnE,KAAKwd,QAAQe,WAAYve,KAAKwd,QAAQm2D,WAAY3zE,KAAKwd,QAAQmc,KAChI,MAAMl6B,EAASO,KAAK25B,IAAI61M,QAAQ/vO,OAChCO,KAAKyoF,QAAU,IAAMzoF,KAAK25B,IAAI61M,SAAS,CAACuH,EAAOpsK,IAAQ,IAAI2kK,EAAAA,4BAA4B7vO,EAASkrE,EAAKosK,KACrG,IAAU/2O,KAAKyoF,SAAUp0C,GAAUA,EAAKytC,UAAY9hF,KAAK22O,wBAAwBtiM,EAAKytC,aACtF9hF,KAAKolB,QAAU,IAAI8pN,EAAAA,8BAA8BlvO,KAAK25B,IAAI61M,QAAQ,IAClE,MAAOvhO,GACPjO,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,4B,kMC9CjD,MAAMsyC,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,gCAAgCC,UAAU,4BAA6B,CACpF2qC,YAAaD,EACbrrC,WAAYwhO,EAAAA,mC,iBCRd9gO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,OAAQ,CAC9C,YACA,oBACA,SAAqBN,EAAWkH,GAC9B,aACA,OAAOlH,EACLkH,EAAoB,WACpB,GACA,CACEqrL,MAAO,CAAEp2N,OAAQ,OAAQ8mE,kBAAkB,GAC3C00H,OAAQ,CAAEx7L,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,UAAYgjF,kBAAkB,S,iBCVlF9xE,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,SAAU,CAChD,YACA,sBACA,SAAuBN,EAAWmH,GAChC,aACA,OAAOnH,EACLmH,EAAsB,wBACtB,GACA,CACE1K,SAAU,CACRtgC,OAAQ,OACRskC,aAAc,cACdwiC,kBAAkB,EAClBjuC,kBAAmB,CAACh1C,EAAMwyO,EAAe/+N,KACvC,GAAe,MAAXA,EAAgB,CAClB,MACMg0D,EADU,IAAI27D,YAAY,SACZG,OAAOvjI,GAC3B,OAAOe,KAAKwZ,MAAMktD,GAGpB,MAAO,CACLp9C,KAAMrqB,EACNX,KAAMmzO,EAAc,uBAAuB57M,QAAQ,wBAAyB,OAIlF67M,cAAe,CAAEt2N,OAAQ,MAAOpV,OAAQ,CAAE2lB,YAAa,KAAMzsB,OAAQ,aACrEyyO,eAAgB,CAAEv2N,OAAQ,OAAQpV,OAAQ,CAAE2lB,YAAa,KAAMzsB,OAAQ,aACvE0yO,eAAgB,CAAEx2N,OAAQ,OAAQpV,OAAQ,CAAE2lB,YAAa,KAAMzsB,OAAQ,YACvE2yO,gBAAiB,CAAEz2N,OAAQ,OAAQpV,OAAQ,CAAE2lB,YAAa,KAAMzsB,OAAQ,kB,kECzBhF,SAAS4yO,EAAuB7yL,EAAWoH,GACzC,OAAOpH,EACLoH,EAAgC,eAChC,GACA,CACEnT,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1CwwB,KAAM,CAAElO,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,W,wDAZ1DkR,IAAAA,OAAe,iBAAiBmvC,QAAQ,kBAAmBuyL,I,iBCA3D,SAASC,EAAW9yL,EAAW4H,GAC7B,aACA,MAAM/0C,EAAU+0C,EAA0B,WAE1C,OAAO5H,EACLntC,EACA,CACEhZ,GAAI,MACJw0O,eAAgB,kBAChBn5M,IAAK,QAEP,CACEi4M,iBAAkB,CAChBhxN,OAAQ,SACRna,IAAK6Q,EAAU,iCAEjBu6N,gBAAiB,CACfjxN,OAAQ,SACRna,IAAK6Q,EAAU,qCACfX,QAAS,CAAE,eAAgB,kCAC3B6gO,SAAS,K,kDAtBjB5hO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,MAAOwyL,I,yDCE/C3hO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,YAAa,CACnD,YACA,yBACA,SAA0BN,EAAWC,GAEnC,OAAOD,EACLC,EAAyB,eACzB,GACA,CACExuC,MAAO,CACL0K,OAAQ,MACRpV,OAAQ,CAAE2K,MAAO,SAAUC,MAAO,SAAUyzD,OAAQ,UAAW1yD,QAAS,YACxEsiC,kBAAmBg+L,EAAAA,SAErB94N,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCo5O,aAAc,CAAE92N,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,gBAC/DkJ,aAAc,CAAEgT,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,WAC5D+e,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1C62L,UAAW,CAAEv0K,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,aAC/CurL,eAAgB,CAAErvK,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,aAC/DwT,OAAQ,CAAE0I,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,WACtDusB,eAAgB,CAAErQ,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,aAC9DizO,gBAAiB,CAAE/2N,OAAQ,MAAOna,IAAM,GAAEi+C,+BAC1Cw8H,iBAAkB,CAAEz6K,IAAKi+C,EAAyB,yBAA0B9jC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOs5O,IAAK,SACrHv1K,mBAAoB,CAAEzhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,uBAClEoiE,WAAY,CAAErgE,IAAM,GAAEi+C,mBAAyC9jC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAO6pE,UAAW,cAAgBloC,SAAS,GACvIgyE,qBAAsB,CAAExrG,IAAM,GAAEi+C,+BAAqD9jC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOwnE,WAAY,sB,yDC3B7IlwD,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,SAAU,CAChD,YACA,0BACA,SAAuBN,EAAW4H,GAEhC,OAAO,SAAUrzC,GACf,MAAMrC,EAAU,GACZqC,IACFrC,EAAQ,iBAAmBqC,EAAI09D,MAC/B//D,EAAQ,mBAAqBqC,EAAIvS,KAGnC,MAAM6Q,EAAU+0C,EAA0B,sCAE1C,OAAO5H,EACLntC,EACA,CAAEhZ,GAAI,OACN,CACEoxN,SAAU,CACR9uM,OAAQ,MACRpV,OAAQ,CAAEwF,WAAY,QACtByoC,kBAAmB62L,EAAAA,QACnB35N,QAASA,GAEXq6N,aAAc,CACZpwN,OAAQ,MACRna,IAAK6Q,EAAU,oCACf9L,OAAQ,CAAEg8F,MAAM,GAChB7wF,QAASA,EACT8iC,kBAAmB62L,EAAAA,gB,iBC/B/B16N,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,iBAAkB,CACxD,YACA,+BACA,SAA+BN,EAAWyH,GACxC,aACA,OAAOzH,EACLyH,EAA+B,eAC/B,GACA,CACExT,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCsP,aAAc,CAAEgT,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,WAC5DkpN,YAAa,CAAEhtM,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,YAC3DopN,eAAgB,CAAEltM,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,YACjE+e,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,iBChBlDsX,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,aAAc,CACpD,YACA,0BACA,SAA2BN,EAAW4H,GACpC,aACA,OAAO5H,EACL4H,EAA0B,eAC1B,GACA,CACE3T,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,GAAI6Z,WAAY,gBACnEqjD,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1Cm+K,UAAW,CAAE77J,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,oB,gBCdlEkR,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,YACA,iCACA,SAAgCN,EAAW6H,GACzC,aACA,OAAO7H,EACL6H,EAAiC,OACjC,GACA,CACEsV,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,c,iBCT/CsX,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,WAAY,CAClD,YACA,wBACA,SAAyBN,EAAW8H,GAClC,aACA,OAAO9H,EACL8H,EAAwB,wBACxB,GACA,CACE5tC,IAAK,CAAEiC,OAAQ,OACfghD,OAAQ,CAAEhhD,OAAQ,MAAO8mE,kBAAkB,GAC3Clf,eAAgB,CAAE5nD,OAAQ,MAAOpV,OAAQ,CAAE2lB,YAAa,UAAYu2D,kBAAkB,GACtFmwJ,sBAAuB,CAAEj3N,OAAQ,MAAOpV,OAAQ,CAAE2lB,YAAa,iBAAkBzsB,OAAQ,oB,kECLjG,SAASozO,EAAWrzL,GAClB,OAAOA,EANgB,UAQrB,GACA,CACE9lC,IAAK,CAAEiC,OAAQ,OACf+T,OAAQ,CAAE/T,OAAQ,S,wBATxBhL,IAAAA,OAAe,iBAAiBmvC,QAAQ,MAAO+yL,I,kECA/C,SAASC,EAAatzL,EAAW+H,GAC/B,OAAO/H,EACL+H,EAAsB,0BACtB,GACA,CACE7tC,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpC4X,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCyY,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5C9lB,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,OAASopF,kBAAkB,GAClEswJ,UAAW,CAAEp3N,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAO25O,QAAS,WAAY15N,WAAY,cAAe25N,gBAAiB,mBAAoBxzO,OAAQ,cAC9I+e,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,MAAO65O,SAAU,YAAa55N,WAAY,gBACpF0zJ,aAAc,CAAErxJ,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,SAC5D0zO,QAAS,CAAEx3N,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,UAAW6Z,WAAY,eAAiBmpE,kBAAkB,GAClHvxE,MAAO,CAAEyK,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,UACtDi9F,KAAM,CAAE/gF,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,OAAQ6Z,WAAY,gBACzEwyM,UAAW,CAAEnwM,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,MAAO2zO,UAAW,aAC3EpnB,uBAAwB,CAAErwM,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,MAAOoG,OAAQ,OAASgjF,kBAAkB,K,8CAlBxG9xE,IAAAA,OAAe,iBAAiBmvC,QAAQ,QAASgzL,I,gBCFjDniO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,SAAU,CAChD,YACA,sBACA,SAAuBN,EAAWgI,GAChC,aACA,OAAOhI,EACLgI,EAAsB,WACtB,GACA,CACE9tC,IAAK,CAAEiC,OAAQ,OACf9d,QAAS,CAAE8d,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,YAC5Csf,WAAY,CAAEpD,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,gB,gBCXvDkR,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,UAAW,CACjD,YACA,uBACA,SAAwBN,EAAWiI,GACjC,aACA,OAAOjI,EACLiI,EACA,GACA,CACE/tC,IAAK,CAAEiC,OAAQ,MAAOqf,SAAS,S,iBCTvCrqB,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,OAAQ,CAC9C,YACA,oBACA,SAAqBN,EAAWmI,GAC9B,aACA,OAAOnI,EACLmI,EAAoB,OACpB,GACA,CACElU,OAAQ,CAAE93B,OAAQ,QAClB1K,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCxc,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,iBCXlDsX,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,QAAS,CAC/C,YACA,qBACA,SAAsBN,EAAWoI,GAC/B,aACA,OAAOpI,EACLoI,EAAqB,yBACrB,GACA,CACEnU,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1Cg6O,iBAAkB,CAAE13N,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAElN,GAAI,MAAO6zB,OAAQ,sB,iBCbvFvc,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,YACA,gCACA,SAAgCN,EAAWqI,GACzC,aACA,OAAOrI,EACLqI,EAAgC,eAChC,GACA,CACEpU,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjC2hC,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,iBCZlDsX,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,YAAa,CACnD,YACA,yBACA,SAA0BN,EAAWsI,GACnC,OAAOtI,EACLsI,EAAyB,WACzB,GACA,CACE72C,MAAO,CAAE0K,OAAQ,OACjBkO,KAAM,CAAElO,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,e,mCCTnC,SAAS+yO,EAAuBhzO,EAAMkS,GACnD,MAAMD,EAAW,GAGjB,OAFAA,EAAS/S,MAAQiS,QAAQszE,SAASzkF,GAClCiS,EAASD,WAAaE,EAAQ,iBACvBD,E,iFCJM,SAAS45N,EAAsB7rO,EAAMkS,GAClD,IAAID,EAAW,GACf,IACEA,EAASjS,KAAOmR,QAAQszE,SAASzkF,GACjCiS,EAAS65N,KAAO55N,EAAQ,eACxB,MAAO1I,GACPyI,EAAWjS,EAEb,OAAOiS,E,+DCRTd,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,QAAS,CAC/C,YACA,qBACA,SAAsBN,EAAWkI,GAC/B,aACA,OAAOlI,EACLkI,EAAqB,yBACrB,GACA,CACEjU,OAAQ,CAAE93B,OAAQ,OAAQ8mE,kBAAkB,GAC5CxxE,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCthB,IAAK,CAAEiC,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACpCsjE,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,OAASopF,kBAAkB,GAClE6wJ,eAAgB,CAAE33N,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAO6zB,OAAQ,WAC9DqmN,YAAa,CAAE53N,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QAC5CmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,QAC1Cg6O,iBAAkB,CAAE13N,OAAQ,MAAOqf,SAAS,EAAMz0B,OAAQ,CAAElN,GAAI,MAAO6zB,OAAQ,gBAC/EsmN,eAAgB,CAAE73N,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QAAS6zB,OAAQ,SAAW8N,SAAS,EAAMynD,kBAAkB,GAC5GgxJ,cAAe,CAAE93N,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,QAAS6zB,OAAQ,QAAUu1D,kBAAkB,GAC5FixJ,kBAAmB,CAAElyO,IAAM,GAAEkmD,eAAiC/rC,OAAQ,OAAQpV,OAAQ,CAAElN,GAAI,OAASopF,kBAAkB,GACvHkxJ,gBAAiB,CAAEh4N,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,MAAO6zB,OAAQ,UAAY8N,SAAS,GACpF44M,kBAAmB,CAAEpyO,IAAM,GAAEkmD,wBAA0C/rC,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,MAAOw6O,SAAU,mB,gBCrBhIljO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,WAAY,CAClD,YACA,wBACA,SAAyBN,EAAWuI,GAClC,aACA,OAAOvI,EACLuI,EAAwB,OACxB,GACA,CACE92C,MAAO,CAAE0K,OAAQ,MAAOqf,SAAS,GACjCyY,OAAQ,CAAE93B,OAAQ,QAClBghD,OAAQ,CAAEhhD,OAAQ,MAAOpV,OAAQ,CAAElN,GAAI,QACvCmlB,OAAQ,CAAE7C,OAAQ,SAAUpV,OAAQ,CAAElN,GAAI,c,wGCNnCunD,eAAey9G,EAAY1nJ,GACxC,MAAMytH,EAAM,CACVo6B,UAAW,GACXs1E,SAAU,IAENt0O,QAAawX,QAAQ0nH,WAAW/nH,GAqBtC,OApBAytH,EAAIo6B,UAAY,IACdh/J,GACA,CAAC+tB,EAAK6hB,KACgB,cAAhBA,EAAKn8B,QACPsa,EAAI5uB,KAAKywC,EAAK1wC,OAET6uB,IAET,IAEF62G,EAAI0vG,SAAW,IACbt0O,GACA,CAAC+tB,EAAK6hB,KACgB,aAAhBA,EAAKn8B,QACPsa,EAAI5uB,KAAKywC,EAAK8lI,QAET3nJ,IAET,IAEK62G,I,qHC5BTzzH,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,gBAAiB,CACvD,KACA,SACA,cACA,cACA,SAA8BjxB,EAAIosB,EAAQkzI,EAAa0qB,GAErD,MAAO,CACLx6D,SAgGF,SAAkBnxH,EAAQixB,EAAQ8vD,GAChC,OAAOhzD,EAAO84L,EAAe7mN,EAAQixB,EAAQ8vD,IAhG7CisG,uBAmGF,SAAgCC,EAAoBC,EAAoBG,EAAsBC,EAAsBH,GAClH,MAAM25B,EAAkB,IAAQ75B,GAC1B85B,EAAkB,IAAQ75B,GAUhC,OARA,IAAUG,GAAuB1iC,GAAYm8D,EAAgBn8D,EAAOvwK,IAAM,CAAE0mG,OAAQqsG,GAAkCxiC,EAAO7rK,KAAK1E,MAClI,IAAUkzM,GAAuB3iC,GAAYo8D,EAAgBp8D,EAAOvwK,IAAM,CAAE0mG,OAAQqsG,GAAkCxiC,EAAO7rK,KAAK1E,MAE3G,CACrB6yM,mBAAoB65B,EACpB55B,mBAAoB65B,KAzGxB,SAASC,EAASjmI,EAAOF,GACvB,GAAIE,EAAMzzG,OAAQ,CAEhB,OADa,IAAOyzG,GAAQ/vG,GAASA,EAAKoJ,KAAOymG,KAC5B,CAAEzmG,GAAI,EAAGM,KAAM,KAEtC,MAAO,CAAEN,GAAI,EAAGM,KAAM,KAGxB,SAASusO,EAAe91F,EAAU+1F,EAAoBC,EAAmBpmI,GAIvE,IAHA,IAAIqmI,EAAoB,GACpBC,EAAqB,GAEhBj6O,EAAI,EAAGA,EAAI+jJ,EAAS7jJ,OAAQF,IAAK,CACxC,MAAMu9K,EAASx5B,EAAS/jJ,GAElBk6O,EAAaJ,GAAsBA,EAAmBv8D,EAAOvwK,IAC7DmtO,EAAYJ,GAAqBA,EAAkBx8D,EAAOvwK,IAE5DktO,GAAcC,GAChB58D,EAAO7rK,KAAOkoO,EAASjmI,EAAOmmI,EAAmBv8D,EAAOvwK,IAAI0mG,QAC5D6pE,EAAOoiD,UAAW,EAClBsa,EAAmB51O,KAAKk5K,IACf28D,IAAeC,GACxB58D,EAAO7rK,KAAOkoO,EAASjmI,EAAOmmI,EAAmBv8D,EAAOvwK,IAAI0mG,QAC5DumI,EAAmB51O,KAAKk5K,KACd28D,GAAcC,GACxB58D,EAAO7rK,KAAOkoO,EAASjmI,EAAOomI,EAAkBx8D,EAAOvwK,IAAI0mG,QAC3D6pE,EAAO2gC,WAAY,EACnB+7B,EAAmB51O,KAAKk5K,GACxBy8D,EAAkB31O,KAAKk5K,IAEvBy8D,EAAkB31O,KAAKk5K,GAI3B,MAAO,CACLvL,UAAWgoE,EACXE,WAAYD,GAoChB3zL,eAAemzL,EAAc7mN,EAAQixB,EAAQ8vD,GAC3C,IAAK/gF,EACH,MAAM,IAAIxzB,MAAM,+BAclB,OAZKwzB,EAAOigF,qBACVjgF,EAAOigF,mBAAqB,IAEzBjgF,EAAOmgF,qBACVngF,EAAOmgF,mBAAqB,IAE1BlvD,IAAWA,EAAOgvD,qBACpBhvD,EAAOgvD,mBAAqB,IAE1BhvD,IAAWA,EAAOkvD,qBACpBlvD,EAAOkvD,mBAAqB,UA9ChC,SAAqBqnI,EAAwBC,EAAwBC,EAAuBC,EAAuB5mI,GACjH,IAAIrpB,EAAW/1D,EAAGg2D,QA4BlB,OA1BAh2D,EAAGxB,IAAI,CACLrmB,MAAOmnL,EAAYnnL,OAAM,GACzBQ,MAAOqxM,EAAYrxM,UAElBuP,MAAK,SAAiBvX,GACrB,IAAIs1O,EAAet1O,EAAKwH,MAAM9N,KAAI,SAAUkO,GAC1C,OAAO,IAAIumG,EAAAA,oBAAoBvmG,MAE7B2tO,EAAev1O,EAAKgI,MAAMtO,KAAI,SAAUyO,GAC1C,OAAO,IAAIkmG,EAAAA,oBAAoBlmG,MAG7BqtO,EAAiBb,EAAeW,EAAcJ,EAAwBE,EAAuB3mI,GAC7FgnI,EAAiBd,EAAeY,EAAcJ,EAAwBE,EAAuB5mI,GAE7FinI,EAAa,CACft5D,uBAAwBo5D,EAAe1oE,UAAU7yH,OAAOw7L,EAAe3oE,WACvEmP,wBAAyBu5D,EAAeR,WAAW/6L,OAAOw7L,EAAeT,aAG3E5vJ,EAAS9qF,QAAQo7O,MAElBr9K,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,QAmBHs+N,CAAYjoN,EAAOigF,mBAAoBjgF,EAAOmgF,mBAAoBlvD,EAASA,EAAOgvD,mBAAqB,GAAIhvD,EAASA,EAAOkvD,mBAAqB,GAAIY,Q,iBCzGvKt9F,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,gBAAiB,CACvD,KACA,SACA,SACA,oBACA,SAA8BjxB,EAAIosB,EAAQm6L,EAAQzwJ,GAChD,aAmEA,MAlEgB,CAEhBjsE,eAAyB,SAAUmD,GACjC,OAAOu5N,EAAOn5L,SAAS,GAAIpgC,GAASklC,UAGtCroC,aAAuB,SAAUmR,EAAM+8C,GACrC,OAAO+d,EAAkB0wJ,aAAaxrN,EAAM+8C,IAG9CluD,cAAwB,WACtB,IAAIksE,EAAW/1D,EAAGg2D,QAUlB,OARAuwJ,EAAOnD,gBACJlxL,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,wCAAyCC,IAAKA,OAGlE+uE,EAAS/tE,SAGlB6B,eAAyB,SAAUmD,GACjC,IAAI+oE,EAAW/1D,EAAGg2D,QAUlB,OARAuwJ,EAAOlD,eAAe,GAAIr2N,GACvBklC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,oCAAqCC,IAAKA,OAG9D+uE,EAAS/tE,SAGlB6B,aAAuB,SAAUmD,GAC/B,IAAI+oE,EAAW/1D,EAAGg2D,QAUlB,OARAuwJ,EAAOjD,eAAe,GAAIt2N,GACvBklC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAGlB6B,cAAwB,SAAUmD,GAChC,IAAI+oE,EAAW/1D,EAAGg2D,QAUlB,OARAuwJ,EAAOhD,gBAAgB,GAAIv2N,GACxBklC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAG7D+uE,EAAS/tE,c,6ECjEtB,SAASy+N,EAA6BC,EAAWC,EAAiB7wJ,GA2DhE,MA1Dc,CAEdjsE,eAAyB,SAAwBrf,GAC/C,OAAOm8O,EAAgB97N,IAAI,CAAErgB,GAAAA,IAAM0nD,UAGrCroC,gBAA0BkoC,eAA+B97C,GACvD,MAAM2xD,QAAkB++K,EAAgBvkO,MAAM,CAAEnM,KAAAA,IAAQi8C,SAMxD,OALA0V,EAAU7jD,SAAS/C,IACbA,EAASu1H,OACXv1H,EAASu1H,KAAO9gF,EAAE,OAAOmxL,KAAKF,EAAU1lO,EAASu1H,OAAO5gI,KAAK,OAAOga,SAAS80M,MAAMmiB,WAGhFh/K,GAGT/9C,OAAiB,SAAgBrf,GAC/B,OAAOm8O,EAAgBh3N,OAAO,CAAEnlB,GAAAA,IAAM0nD,UAGxCroC,mBAA6BkoC,eAAkCvnD,GAC7D,IACE,MAAM,YAAE8rH,SAAsBqwH,EAAgB3rN,KAAK,CAAExwB,GAAAA,IAAM0nD,SAC3D,OAAOokE,EACP,MAAOtvG,GACP,KAAM,CAAED,IAAK,4CAA6CC,IAAAA,KAI9D6C,qBAA+BkoC,eAAoCvnD,EAAI46I,GACrE,OAAOuhG,EAAgB74K,OAAO,CAAEtjE,GAAAA,GAAM46I,GAAgBlzF,UAGxDroC,oCAA8CkoC,eAAmD/kC,GAC/F,IACE,aAAa25N,EAAgB/hM,OAAO,CAAE93B,OAAQ,UAAYE,GAASklC,SACnE,MAAOlrC,GACP,KAAM,CAAED,IAAK,sCAAuCC,IAAAA,KAIxD6C,mCAA6CkoC,eAAkD/kC,GAC7F,IACE,MAAM,KAAErc,SAAemlF,EAAkB+wJ,qBAAqB75N,GAC9D,OAAOrc,EACP,MAAOqW,GACP,KAAM,CAAED,IAAK,sCAAuCC,IAAAA,KAIxD6C,sCAAgDkoC,eAAqD/kC,GACnG,IACE,aAAa25N,EAAgB/hM,OAAO,CAAE93B,OAAQ,cAAgBE,GAASklC,SACvE,MAAOlrC,GACP,KAAM,CAAED,IAAK,sCAAuCC,IAAAA,M,8DA1D1DlF,IAAAA,OAAe,iBAAiBmvC,QAAQ,wBAAyBw1L,I,oECIjE,SAAS30K,EAAiB8kD,EAAWvlE,GACnC,MAAO,CACL8gB,gBAGF,SAAyBlvD,EAAU+uD,GACjC,GAAIE,EAAAA,QAAAA,gBAA+BjvD,GACjC,OAAO2zG,EAAUitH,gBAAgB,CAAEr5O,GAAIyY,EAASxK,GAAIu5D,WAAAA,IAAc9f,SAGpE,OAAQjvC,EAAS/L,MACf,KAAKs+C,EAAAA,uBAAAA,yBACL,KAAKA,EAAAA,uBAAAA,6BACH,OAAOnE,EAAeC,OAAO,CAAE7mC,WAAYxH,EAASxK,GAAIs6J,aAAc,SAAU/gG,WAAAA,IAAc9f,SAEhG,KAAKsD,EAAAA,uBAAAA,6BACL,KAAKA,EAAAA,uBAAAA,iCACH,OAAOnE,EAAeC,OAAO,CAAE7mC,WAAYxH,EAASxK,GAAIs6J,aAAc,aAAc/gG,WAAAA,IAAc9f,Y,yCApB1GpwC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,mBAAoB6gB,I,yDCD5DhwD,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,KACA,YACA,oBACA,SAAgCjxB,EAAI42F,EAAW9gC,GAyM7C,MAvMc,CACZ34D,eAgNF,SAAwB3yB,EAAIgG,GAC1B,OAAOomH,EAAUz5F,eAAe,CAAE3yB,GAAAA,GAAMgG,GAAU0hD,UAhNlD8gB,WA2MF,SAAoBxoE,EAAI6pE,GACtB,OAAOuiD,EAAU5jD,WAAW,CAAEqB,UAAAA,EAAW7pE,GAAAA,IAAM0nD,UA3M/CisD,qBAsMF,SAA8B3zG,EAAIwnE,EAAY06G,GAC5C,OAAO91D,EAAUzY,qBAAqB,CAAEnsC,WAAAA,EAAYxnE,GAAAA,GAAMkiL,GAAkBx6H,UApM9EroC,SAAmB,SAAUknC,GAC3B,OAAO6lE,EAAU/rG,IAAI,CAAErgB,GAAIumD,IAAcmB,UAG3CroC,kBAA4B,WAC1B,OAAO+sG,EAAUyqE,UAAU,GAAI,IAAInvI,UAGrCroC,iBAA2B,SAAUknC,GACnC,OAAO6lE,EAAUzjH,SAAS,CAAE3I,GAAIumD,GAAc,IAAImB,UAGpDroC,aAAuB,SAAUrf,EAAI8gN,EAAoBC,GACvD,OAAO30F,EAAU98G,aAAa,CAAEtP,GAAIA,GAAM,CAAE8zG,mBAAoBgtG,EAAoB9sG,mBAAoB+sG,IAAsBr5J,UAGhIroC,qBAA+B,SAAUknC,GACvC,OAAO6lE,EAAUgtH,aAAa,CAAEp5O,GAAIumD,IAAcmB,UAGpDroC,eAAyB,SAAUrf,EAAIwiB,GACrC,IAAI+oE,EAAW/1D,EAAGg2D,QAalB,OAZAF,EAAkBgxJ,0BAA0Bt8O,EAAIwiB,EAAQwoM,UAAWxoM,EAAQyoM,QAASzoM,EAAQ0oM,QACzFxtM,MAAK,WAEJ,OADA6tE,EAASgxJ,OAAO,CAAElmN,QAAQ,IACnB+1F,EAAU9oD,OAAO,CAAEtjE,GAAIA,GAAMwiB,GAASklC,YAE9ChqC,MAAK,SAAiBvX,GACrBolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAASgxJ,OAAO,CAAElmN,QAAQ,IAC1Bk1D,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,OAEzD+uE,EAAS/tE,SAGlB6B,eAAyB,SAAUknC,GACjC,OAAO6lE,EAAUjnG,OAAO,CAAEnlB,GAAIumD,IAAcmB,UAG9CroC,oBAA8B,SAAU7Z,EAAO,QAASujE,EAAM,GAAItvB,EAAY,GAAI+iM,EAAU,EAAGtkO,EAAS,IACtG,IAAIqzE,EAAW/1D,EAAGg2D,QAEdixJ,EAAc1zK,EAkBlB,MAjBoB,KAAhB0zK,IAGAA,EAFsC,GAApCA,EAAYl1O,QAAQ,aAER,WAAawhE,EAEb,UAAYA,GAI9BuiB,EAAkBoxJ,eAAel3O,EAAMq8N,EAAAA,+BAAAA,uBAAuD4a,EAAahjM,EAAW+iM,EAAStkO,GAAQ,GACpIwF,MAAK,SAAiBtF,GACrBmzE,EAAS9qF,QAAQ2X,EAASjS,SAE3Bq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,OAGzD+uE,EAAS/tE,SAGlB6B,qBAA+B,SAC7B7Z,EACA68L,EACAt5H,EACAtvB,EACA+iM,EACAtkO,EACAgrL,EACAC,EACAC,EACAu5C,EACAp5C,EACAE,EACAm5C,EACAl6C,EACAuB,EACAC,EACAC,GAEA,IAAI54G,EAAW/1D,EAAGg2D,QAEdixJ,EAAc1zK,EA+BlB,OA9BIs5H,IAAiBw/B,EAAAA,+BAAAA,uBACnB4a,EAAc,SAAW1zK,GAG3BuiB,EAAkBoxJ,eAChBl3O,EACA68L,EACAo6C,EACAhjM,EACA+iM,EACAtkO,EACAgrL,EACAC,EACAC,EACAu5C,EACAp5C,EACAE,EACAm5C,EACAl6C,EACAuB,EACAC,EACAC,GAECzmL,MAAK,SAAiBtF,GACrBmzE,EAAS9qF,QAAQ2X,EAASjS,SAE3Bq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,OAGzD+uE,EAAS/tE,SAGlB6B,8BAAwC,SAAU7Z,EAAO,QAAS0S,EAAS,IACzE,IAAIqzE,EAAW/1D,EAAGg2D,QAUlB,OARAF,EAAkBoxJ,eAAel3O,EAAMq8N,EAAAA,+BAAAA,2BAA2D,GAAI,GAAI,EAAG3pN,GAAQ,GAAM,GAAM,GAC9HwF,MAAK,SAAiBtF,GACrBmzE,EAAS9qF,QAAQ2X,EAASjS,SAE3Bq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,OAGzD+uE,EAAS/tE,SAGlB6B,oBAA8B,SAAU7Z,EAAMo+L,EAAeE,EAAUE,EAAmBnrL,EAASX,GACjG,IAAIqzE,EAAW/1D,EAAGg2D,QAUlB,OARAF,EAAkBuxJ,oBAAoBr3O,EAAMo+L,EAAeE,EAAUE,EAAmBnrL,EAASX,GAC9FwF,MAAK,SAAiBtF,GACrBmzE,EAAS9qF,QAAQ2X,EAASjS,SAE3Bq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,yBAAmC,SAAU7Z,EAAM28L,EAAYtpL,EAASX,GACtE,IAAIqzE,EAAW/1D,EAAGg2D,QAUlB,OARAF,EAAkBwxJ,yBAAyBt3O,EAAM28L,EAAYtpL,EAASX,GACnEwF,MAAK,SAAiBtF,GACrBmzE,EAAS9qF,QAAQ2X,EAASjS,SAE3Bq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+CAAgDC,IAAKA,OAGzE+uE,EAAS/tE,SAGlB6B,iBAA2B,SAAUknC,EAAY89E,EAAcq+C,EAAYC,EAAYG,EAAeC,GACpG,OAAO32D,EAAUw2D,iBACf,CACE5iL,GAAIumD,EACJ+yL,IAAKj1G,GAEP,CACE04G,WAAYr6D,EACZs6D,WAAYr6D,EACZs6D,cAAen6D,EACfC,cAAeA,IAEjBr7H,UAGJroC,mBAA6B,SAAUknC,EAAY22L,EAAWp5K,GAC5D,OAAOsoD,EAAUroD,mBACf,CACE/jE,GAAIumD,GAEN,CACEsiC,UAAWq0J,EACXjrB,UAAWnuJ,IAEbpc,UAGJroC,MAAgB,SAAUrf,GACxBosH,EAAU7wD,eAAe,CAAEv7D,GAAAA,GAAM,CAAEm9O,aAAa,IAAQz1L,e,yDC1M9DpwC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,eAAgB,CACtD,KACA,iBACA,SAAsBjxB,EAAI4nN,GAiDxB,MA/Cc,CAEd/9N,MAAgB,SAAUxG,GACxB,IAAI0yE,EAAW/1D,EAAGg2D,QAWlB,OATA4xJ,EAAe/8N,IAAI,CAAErgB,GAAI6Y,IACtB6uC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI+uG,EAAQ,IAAI4tH,EAAAA,mBAAmB38N,GACnColF,EAAS9qF,QAAQy0G,MAElB12C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAGrD+uE,EAAS/tE,SAGlB6B,OAAiB,WACf,OAAO+9N,EAAexlO,MAAM,IAAI8vC,UAGlCroC,YAAsB,SAAU8lC,EAAOylE,GACrC,IAAIpoG,EAAU,IAAIugN,EAAAA,2BAA2B59K,EAAOylE,GACpD,OAAOwyH,EAAehjM,OAAO53B,GAASklC,UAGxCroC,YAAsB,SAAU8lC,EAAOylE,GACrC,IAAIpoG,EAAU,IAAIygN,EAAAA,2BAA2B99K,EAAOylE,GACpD,OAAOwyH,EAAe95K,OAAO9gD,GAASklC,UAGxCroC,aAAuB,SAAUxG,EAASioM,EAAoBC,GAC5D,OAAOq8B,EAAe9tO,aAAa,CAAEtP,GAAI6Y,GAAW,CAAEi7F,mBAAoBgtG,EAAoB9sG,mBAAoB+sG,IAAsBr5J,UAG1IroC,YAAsB,SAAUxG,EAASJ,GACvC,OAAO2kO,EAAe9tB,YAAY,CAAEtvN,GAAI6Y,EAASzS,OAAQ,aAAeqS,EAASxK,IAAMwK,GAAUivC,UAGnGroC,eAAyB,SAAUxG,EAASoH,GAC1C,OAAOm9N,EAAe5tB,eAAe,CAAExvN,GAAI6Y,EAASzS,OAAQ,aAAe6Z,IAAcynC,UAG3FroC,YAAsB,SAAUxG,GAC9B,OAAOukO,EAAej4N,OAAO,CAAEnlB,GAAI6Y,IAAW6uC,e,8LC7CpDpwC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,KACA,SACA,kBACA,aACA,cACA,oBACA,SAAgCjxB,EAAIosB,EAAQyZ,EAAiB+zD,EAAYlnD,EAAaojB,GACpF,MAAO,CACL9iB,WAaF,WACE,IAAI+iB,EAAW/1D,EAAGg2D,QAalB,OAXA4jC,EAAWx3G,QACR8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIqiE,EAAariE,EAAKtG,KAAI,SAAUk2C,GAClC,OAAO,IAAImtL,EAAAA,kBAAkBntL,MAE/Bw1C,EAAS9qF,QAAQ+nE,MAElBhK,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gCAAiCC,IAAKA,OAG1D+uE,EAAS/tE,SA1BhBsrD,SA6BF,SAAkB9oE,EAAIigB,GACpB,IAAIsrE,EAAW/1D,EAAGg2D,QAWlB,OATA4jC,EAAW/uG,IAAI,CAAErgB,GAAIA,EAAIigB,WAAYA,IAClCynC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI2iE,EAAW,IAAIo6J,EAAAA,kBAAkB/8N,GACrColF,EAAS9qF,QAAQqoE,MAElBtK,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,sCAAuCC,IAAKA,OAGhE+uE,EAAS/tE,SAxChBowE,mBA2CF,SAA4B9kB,GAC1B,IAAIl7C,EAAc,CAChB45C,WAAYsB,EAAS76D,IAEvB,OAAO8jB,KAAK7qB,KAAKC,UAAUymB,KA9C3ByvN,eAiDF,SAAwBr9O,GACtB,OAAOovH,EAAWjqG,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAjDrC41L,eAoDF,SAAwBx0K,GAGtB,OAFAA,EAASC,IAAM,IAAUD,EAASC,IAAK,iBAAkB,IACzDD,EAASC,IAAM,IAAUD,EAASC,IAAK,MAAO,IACvCqmD,EAAW9rD,OAAO,CAAEtjE,GAAI8oE,EAAS76D,IAAM66D,GAAUphB,UAtDxD0tL,kBAyDF,SAA2Bp1O,EAAIu9O,GAC7B,OAAOjyJ,EAAkB8pJ,kBAAkBp1O,EAAIu9O,IAzD/CC,eA4DF,SAAwBr4L,GACtB,IAAI3iC,EAAU,IAAIihN,EAAAA,sBAAsBt+K,GACxC,OAAOiqE,EAAWh1E,OAAO53B,GAASklC,UA7DlC+1L,uBAgEF,SAAgCt4L,EAAOisK,GACrC,MAAM9zM,EAAW,GAUjB,OATA,IAAU8zM,GAAWnlL,IACnB,MAAMogM,EAAIlnL,EACVknL,EAAE99N,KAAO09B,EAAEy2L,kBACX2J,EAAEnjK,OAAOC,YAAc,IAAUl9B,EAAEy2L,mBACnC2J,EAAEnjK,OAAOw6J,UAAYz3L,EAAEh+B,GACvBo+N,EAAEjJ,SAAWiJ,EAAEpqI,MACf,MAAMz/E,EAAU,IAAIihN,EAAAA,sBAAsB4I,GAC1C/uN,EAAShY,KAAK8pH,EAAWh1E,OAAO53B,GAASklC,aAEpClyB,EAAGxB,IAAI1W,IA1EdqiF,uCAmJF,SAAgDtqB,EAAYp1D,EAAYunD,EAAYqC,GAClF,OAAOjoB,GAAO2F,UACZ,IACE,MAAMm2L,QAAariL,EAAgBmN,WAAWvoD,EAAY4pD,GAC1D,OAAO8zK,EAAqDtoK,EAAYqoK,EAAMl2K,GAC9E,MAAOhrD,GACP,KAAM,CAAED,IAAK,+DAAgEC,IAAKA,QAxJtFmhO,qDAAAA,EACA9tI,0BA4JF,SAAmC5vF,EAAY4pD,GAC7C,OAAOjoB,GAAO2F,UACZ,IACE,MAAMihB,QAAmBnN,EAAgBmN,WAAWvoD,EAAY4pD,GAOhE,OAJKrB,EAAWn2D,MAAMy2D,GAAaA,EAASp8D,OAASu8D,EAAAA,cAAAA,aACnDT,EAAWljE,KAAK,IAAImjE,EAAAA,oBAGfD,EACP,MAAOhsD,GACP,KAAM,CAAED,IAAK,oCAAqCC,IAAKA,SA7F7D,SAASohO,EAAOt0K,GACd,IAAInhE,EAAMmhE,EAAIP,IACd,GAAIO,EAAI58D,OAASu8D,EAAAA,cAAAA,OACf9gE,EAAMmhE,EAAIP,IAAM,IAAMO,EAAIJ,OAAOC,iBAC5B,GAAIG,EAAI58D,OAASu8D,EAAAA,cAAAA,KAAoB,CAC1C,MAAMzjE,EAAO8jE,EAAImL,KAAKC,gBAAkBpL,EAAImL,KAAKE,iBAAmBrL,EAAIp7D,SACxE/F,EAAMmhE,EAAIP,IAAM,IAAMvjE,EAExB,OAAO2C,EAuCT,SAASw1O,EAAqDtoK,EAAY7M,EAAYhB,GACpF,MAAMriB,EAAQ,IAAIigC,EAAAA,sBACZtc,EAhCR,SAA+BuM,EAAY7M,EAAYhB,GACrD,IAAIq2K,EAAQC,EAAQC,EAEpB,IAAK,MAAMj1K,KAAYN,EAAY,CACjC,GAAIM,EAAS76D,IAAMu5D,EACjB,OAAOsB,EAGLA,EAASp8D,OAASu8D,EAAAA,cAAAA,aAIhBoM,EAAW/3C,WAAWwrC,EAAS56D,SAAW,MAAQmnE,EAAW/3C,WAAWsgN,EAAO90K,GAAY,IAAMA,EAAS56D,SAAW,QACvH2vO,EAAS/0K,GAMXi1K,EAASA,GAAUj1K,GAGjB,IAAWuM,EAAYuoK,EAAO90K,MAChCg1K,EAASh1K,GAIb,OAAO+0K,GAAUC,GAAUC,EAKVC,CAAsB3oK,EAAY7M,EAAYhB,GAC/D,GAAIsB,EAAU,CACZ,MAAM3gE,EAAMy1O,EAAO90K,GACnB,IAAIm1K,EAAY5oK,EAAWtwB,YAAY58C,GACvC81O,GAA2B,IAAfA,EAAmB,EAAIA,EAAY91O,EAAIhH,OACnD,IAAIouD,EAAQ8lB,EAAW7tE,UAAUy2O,GAC7B,IAAa1uL,EAAO,OACtBA,EAAQA,EAAM/nD,UAAU,IAE1B29C,EAAMwjB,SAAWG,EACjB3jB,EAAMyjB,MAAQrZ,OAEV2Y,EAAYsB,iBAAiB6L,KAC/BlwB,EAAMukB,aAAc,GAEtBvkB,EAAMwjB,SAAW,IAAIF,EAAAA,mBACrBtjB,EAAMyjB,MAAQyM,EAEhB,OAAOlwB,O,iBCvKb7tC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,yBAA0B,CAChE,KACA,kBACA,cACA,cACA,wBACA,SAAuCjxB,EAAIwmB,EAAiB84I,EAAa0qB,EAAayd,GACpF,aACA,MAAM59M,EAAU,GAehB,SAAS7J,EAAsB0oO,EAAM5oO,GACnC,MAAMkN,EAAU,CACdgiN,mBAAoBlvN,EAAoBkvN,mBACxCzuN,OAAQT,EAAoBS,OAC5B8kM,MAAOvlM,EAAoBulM,MAC3B4pB,MAAOnvN,EAAoBmvN,OAG7B,OAAOzoL,EAAgBsnB,OAAO,CAAEtjE,GAAIk+O,GAAQ17N,GAASklC,SAkEvD,OAvFAroC,EAAQ+kF,yBAkDR,SAAkChxE,EAAQ8wE,EAAoBC,GAC5D,MAAM7uF,EAAsB2nN,EAAsBC,iCAAiC9pM,EAAQ8wE,GAC3F,OAAO1uF,EAAsB2uF,EAAmBl2F,GAAIqH,IAnDtD+J,EAAQ3J,qBAsCR,SAA8B0d,EAAQzd,EAAmBpJ,EAAiB8wN,EAAe,IACvF,MAAM/nN,EAAsB2nN,EAAsBG,gCAAgChqM,EAAQzd,EAAmB0nN,GAC7G,OAAO7nN,EAAsBjJ,EAAgB0B,GAAIqH,IAvCnD+J,EAAQygM,yBAyDR,SAAkCvzM,GAChC,IAAIg/E,EAAW/1D,EAAGg2D,QAElB,OAAKj/E,GAKLipB,EAAGxB,IAAI,CACLrmB,MAAOpB,EAAgBgB,aAAapM,OAAS,EAAI2zL,EAAYnnL,OAAM,GAAS,GAC5EQ,MAAO5B,EAAgBkB,aAAatM,OAAS,EAAIq+M,EAAYrxM,QAAU,KAEtEuP,MAAK,SAAiBvX,GACrB,IAAI6F,EAAkBixN,EAAsBK,wBAAwB/wN,EAAiBpG,EAAKwH,OACtFzB,EAAkB+wN,EAAsBM,wBAAwBhxN,EAAiBpG,EAAKgI,OAC1Fo9E,EAAS9qF,QAAQ,CAAEuL,gBAAiBA,EAAiBE,gBAAiBA,OAEvEsyD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+CAAgDC,IAAKA,OAGzE+uE,EAAS/tE,UAjBd+tE,EAAS9qF,QAAQ,CAAEuL,gBAAiB,GAAIE,gBAAiB,KAClDq/E,EAAS/tE,UAuBb6B,M,yDC/FX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmB,CACzD,KACA,WACA,SAAgCjxB,EAAIylL,GA0ClC,MAxCc,CAEd57L,SAAmB,WACjB,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OATAyvH,EAAS56L,MACNqnC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIH,EAAW,IAAI2+N,EAAAA,kBAAkBx+N,GACrColF,EAAS9qF,QAAQuF,MAElBw4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0CAA2CC,IAAKA,OAGpE+uE,EAAS/tE,SAGlB6B,OAAiB,SAAUrZ,GACzB,OAAOi1M,EAAS33I,OAAO,GAAIt9D,GAAU0hD,UAGvCroC,eAAyB,WACvB,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OATAyvH,EAAS/wI,iBACNxiB,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIH,EAAW,IAAIysB,EAAAA,wBAAwBtsB,GAC3ColF,EAAS9qF,QAAQuF,MAElBw4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0CAA2CC,IAAKA,OAGpE+uE,EAAS/tE,SAGlB6B,sBAAgC,SAAUrZ,GACxC,OAAOi1M,EAASs+B,sBAAsB,GAAIvzO,GAAU0hD,e,kECvC1D,SAASy2L,EAAkBC,GACzB,MAAO,CACL/nN,OAQF,SAAgBgoN,EAAa10C,EAAMtoM,GACjC,OAAO+8O,EAAI/nN,OAAO,CAAEgoN,YAAAA,EAAa10C,KAAAA,EAAMtoM,IAAAA,IAAOqmD,UAR9CrnC,IAGF,WACE,OAAO+9N,EAAI/9N,MAAMqnC,W,kBAVrBpwC,IAAAA,OAAe,iBAAiB+H,QAAQ,aAAc8+N,I,2GCEtD7mO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,eAAgB,CACtD,KACA,SACA,QACA,oBACA,cACA,iBACA,mBACA,eACA,mBACA,SAA6BjxB,EAAIosB,EAAQ08L,EAAOhzJ,EAAmBizJ,EAAa17K,EAAgBwqB,EAAkBmxJ,EAAcn4L,GAE9H,IAAIhnC,EAAU,CACZozM,UAibF,SAAmBzyN,EAAIigB,EAAYvF,EAAKovE,EAAO20J,EAAW36K,GACxD,OAAOw6K,EAAM7rB,UACX,CAAExyM,WAAAA,EAAYjgB,GAAAA,GACd,CACE0a,IAAAA,EACAovE,MAAAA,EACAioC,wBAAyB0sH,EAAU5uB,QACnC59F,yBAA0BwsH,EAAUxsH,yBACpCC,mBAAoBusH,EAAUvsH,mBAC9BC,mBAAoBssH,EAAUtsH,mBAC9B8/F,UAAWnuJ,IAEbpc,UA5bFqoK,cA+bF,SAAuB/vN,EAAIigB,EAAY4pD,EAAW40K,GAChD,OAAOH,EAAM7rB,UACX,CAAExyM,WAAAA,EAAYjgB,GAAAA,GACd,CACEuhI,UAAW13D,EACXkoD,wBAAyB0sH,EAAU5uB,QACnC59F,yBAA0BwsH,EAAUxsH,yBACpCC,mBAAoBusH,EAAUvsH,mBAC9BC,mBAAoBssH,EAAUtsH,qBAEhCzqE,WA/CJH,eAAem3L,EAAsBz+N,EAAYqC,EAAQE,GACvD,UACQ87N,EAAMlkM,OAAO,CAAEn6B,WAAYA,EAAYqC,OAAQA,EAAQ7W,KAAM,GAAK+W,GAASklC,SACjF,MAAOlrC,GACP,KAAM,CAAEA,IAAKA,IA0EjB,OAreA6C,EAAQ4qC,MAAQ,SAAUjqD,GACxB,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OATA8yJ,EAAMj+N,IAAI,CAAErgB,GAAIA,IACb0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI8jD,EAAQ,IAAI09K,EAAAA,eAAexhO,GAC/BolF,EAAS9qF,QAAQwpD,MAElBuU,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAG7D+uE,EAAS/tE,SAGlB6B,EAAQs0J,aAAe,SAAU3zK,GAC/B,IAAIurF,EAAW/1D,EAAGg2D,QAUlB,OARA8yJ,EAAM3qE,aAAa,CAAE3zK,GAAIA,IACtB0nD,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,EAAKopH,qBAEvB/wD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mCAAoCC,IAAKA,OAG7D+uE,EAAS/tE,SAGlB6B,EAAQs/N,kBAAoB,SAAU10L,EAAO20L,EAAkB7uN,GAC7D,IAAIw7D,EAAW/1D,EAAGg2D,QAuBlB,OArBAnlC,EAAiBoV,cAAcmjL,GAE/BJ,EAAaxhL,QACVt/C,MAAK,SAAiBvX,GACrB,IAAI62D,EAAQ72D,EACZ,GAAI62D,EAAM/uD,KAAOg8C,EAAM29K,QAIvB,OAAO0W,EAAMxE,QAAQ,CAAE95O,GAAIiqD,EAAMh8C,GAAIgS,WAAYgqC,EAAMmqE,YAAc,CAAE81G,WAAY0U,EAAkBC,QAAS7hL,EAAM/uD,GAAIM,KAAMwhB,IAAW23B,SAHvI6jC,EAAS96D,OAAO,CAAElU,IAAK,qFAAsFC,IAAK,UAKrHkB,MAAK,WACJ6tE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAExDonD,SAAQ,WACPvd,EAAiBoV,cAAcxR,EAAMmqE,eAGlC7oC,EAAS/tE,SAGlB6B,EAAQy/N,oBAAsB,SAAU70L,EAAO20L,EAAkB7uN,GAC/D,IAAIw7D,EAAW/1D,EAAGg2D,QAalB,OAXAnlC,EAAiBoV,cAAcmjL,GAE/BN,EAAMxE,QAAQ,CAAE95O,GAAIiqD,EAAMh8C,GAAIgS,WAAYgqC,EAAMmqE,YAAc,CAAE81G,WAAY0U,EAAkBrwO,KAAMwhB,IACjG23B,SAAShqC,MAAK,WACb6tE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB6pC,EAAiBoV,cAAcxR,EAAMmqE,YACrC7oC,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAGpD+uE,EAAS/tE,SAGlB6B,EAAQw9C,OAAS,SAAUjmC,EAASomC,EAAO/8C,EAAY8+N,GAAwB,GAC7E,IAAIxzJ,EAAW/1D,EAAGg2D,QAEdl3D,EAAU,GAwBd,OAvBIsC,GACFtC,EAAQhvB,KAAK+Z,EAAQ2/N,cAAc/+N,GAAY,EAAM,CAAEiqN,WAAYjqN,EAAYg/N,sBAAuBF,KAEpG/hL,GACF1oC,EAAQhvB,KAAK+Z,EAAQ6/N,YAAYj/N,GAAY,EAAM,CAAEiqN,WAAYjqN,EAAYg/N,sBAAuBF,KAGtGvpN,EAAGxB,IAAIM,GACJ5W,MAAK,SAAiBvX,GACrB,IAAI02D,EAAS,GACT12D,EAAK,KACP02D,EAASA,EAAOzc,OAAOj6C,EAAK,KAE1BA,EAAK,KACP02D,EAASA,EAAOzc,OAAOj6C,EAAK,KAE9B02D,EAAS,IAAWA,GAAQ,CAACsiL,EAAIC,IAAOD,EAAGlxO,KAAOmxO,EAAGnxO,IAAMkxO,EAAG5wO,OAAS6wO,EAAG7wO,OAC1Eg9E,EAAS9qF,QAAQo8D,MAElB2B,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,4BAA6BC,IAAKA,OAGtD+uE,EAAS/tE,SAGlB6B,EAAQggO,oBAAsB,WAC5B,IAAI9zJ,EAAW/1D,EAAGg2D,QAUlB,OARA3oB,EAAenG,WACZh/C,MAAK,SAAiBg/C,GACrB6uB,EAAS9qF,QAAQ89O,EAAY5gB,8BAA8BjhK,OAE5D8B,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,SAGlB6B,EAAQigO,sBAAwB,WAC9B,IAAI/zJ,EAAW/1D,EAAGg2D,QAUlB,OARA6B,EAAiBrwC,WAAW,GACzBt/B,MAAK,SAAiBs/B,GACrBuuC,EAAS9qF,QAAQ89O,EAAY7gB,gCAAgC1gL,OAE9DwhB,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,SAGlB6B,EAAQkgO,YAAc,SAAU1iL,EAAQ2iL,GAYtC,OAXA3iL,EAAOtjD,SAAS0wC,IACdu1L,EAAejmO,SAASkmO,IAClBx1L,EAAM88J,UAAY98J,EAAM17C,MAAQkxO,EAAclxO,OAChD07C,EAAM+8J,iBAAkB,SAIf,IAAYnqJ,EAAQ2iL,GAAgB,SAAU11K,EAAGC,GAC9D,OAAOD,EAAEv7D,OAASw7D,EAAEx7D,SAMxB8Q,EAAQ2/N,cAAgB,SAAU/+N,EAAYy/N,EAAuBjvL,GACnE,IAAI86B,EAAW/1D,EAAGg2D,QAsBlB,OApBAh2D,EAAGxB,IAAI,CACL6oC,OAAQyhL,EAAM1mO,MAAM,CAAE64C,QAASA,IAAW/I,SAC1C83L,eAAgBE,EAAwBrgO,EAAQigO,wBAA0B,KAEzE5hO,MAAK,SAAiBvX,GACrB,IAAI02D,EAAS12D,EAAK02D,OAAOh9D,KAAI,SAAUk2C,GACrC,OAAIA,EAAKq+E,YAAcn0G,EACd,IAAI0nN,EAAAA,eAAe5xL,GAEnB,IAAIoyL,EAAAA,uBAAuBpyL,MAGlCypM,EAAiBr5O,EAAKq5O,eAC1B,MAAMz1N,EAAS1K,EAAQkgO,YAAY1iL,EAAQ2iL,GAC3Cj0J,EAAS9qF,QAAQspB,MAElBy0C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,4BAA6BC,IAAKA,OAGtD+uE,EAAS/tE,SAGlB6B,EAAQ6/N,YAAc,SAAUj/N,EAAYy/N,EAAuBjvL,EAAU,IAC3E,IAAI86B,EAAW/1D,EAAGg2D,QA4BlB,OA1BAgzJ,EAAaxhL,QACVt/C,MAAK,SAAiBvX,GAIrB,OAFAsqD,EAAU,CAAEouL,QADA14O,EACe8H,MAAOwiD,GAE3Bj7B,EAAGxB,IAAI,CACZ6oC,OAAQyhL,EAAM1mO,MAAM,CAAE64C,QAASA,IAAW/I,SAC1C83L,eAAgBE,EAAwBrgO,EAAQggO,sBAAwB,QAG3E3hO,MAAK,SAAiBvX,GACrB,IAAI02D,EAAS12D,EAAK02D,OAAOh9D,KAAI,SAAUk2C,GACrC,OAAIA,EAAKq+E,YAAcn0G,EACd,IAAI0nN,EAAAA,eAAe5xL,GAEnB,IAAIoyL,EAAAA,uBAAuBpyL,MAGlCypM,EAAiBr5O,EAAKq5O,eAC1B,MAAMz1N,EAAS1K,EAAQkgO,YAAY1iL,EAAQ2iL,GAC3Cj0J,EAAS9qF,QAAQspB,MAElBy0C,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,4BAA6BC,IAAKA,OAGtD+uE,EAAS/tE,SAGlB6B,EAAQ8F,OAAS,SAAU8kC,EAAO4vL,EAAU55N,GAC1C,IAAIsrE,EAAW/1D,EAAGg2D,QAUlB,OARA8yJ,EAAMn5N,OAAO,CAAEnlB,GAAIiqD,EAAMh8C,GAAKg8C,EAAMh8C,GAAKg8C,EAAM17C,KAAMsrO,SAAUA,EAAU55N,WAAYA,IAClFynC,SAAShqC,MAAK,WACb6tE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,EAAQq6N,UAAY,SAAUzvL,EAAOhqC,EAAY25N,GAC/C,IAAIruJ,EAAW/1D,EAAGg2D,QAwBlB,OAtBkB,GAAdvhC,EAAMv9C,KACR8xO,EAAaxhL,QACVt/C,MAAK,SAAiBvX,GACrB,MAAM62D,EAAQ72D,EACd,OAAOm4O,EAAM5E,UAAU,CAAE15O,GAAIiqD,EAAMh8C,GAAIgS,WAAYA,EAAY05N,QAAS38K,EAAM/uD,GAAI2rO,gBAAAA,IAAmBlyL,YAEtGhqC,MAAK,SAAiBvX,GACrBolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gCAAiCC,IAAKA,OAGjE8hO,EAAM5E,UAAU,CAAE15O,GAAIiqD,EAAMh8C,GAAIgS,WAAYA,EAAY25N,gBAAAA,IACrDlyL,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gCAAiCC,IAAKA,OAI5D+uE,EAAS/tE,SAGlB6B,EAAQq4G,YAAc,SAAUztE,EAAOuoE,EAAW93G,EAAKovE,EAAOoZ,EAASp/B,GACrE,OAAOw6K,EAAMh7K,OACX,CAAErjD,WAAYgqC,EAAMmqE,YACpB,CACEp0H,GAAIiqD,EAAMh8C,GACVshH,iBAAkBiD,EAClBnvC,IAAK3oE,EACLs3M,MAAOloI,EACPysB,QAASrT,EACT+uH,UAAWnuJ,IAEbpc,UAGJroC,EAAQ2rJ,gBAAkB,SAAU/gH,EAAOuoE,EAAWisH,GACpD,IAAIj8N,EAAU,GAEd,GAAIgwG,EACFhwG,EAAU,CACR+sG,iBAAkBiD,OAEf,CACL,MAAMw8F,EAAa,GACfyvB,EAAUp9D,YAAco9D,EAAUp9D,WAAWrC,6BAC/CgwC,EAAW1tC,YAAcm9D,EAAUp9D,WAAWpC,gCAC9C+vC,EAAWkD,eAAiBusB,EAAUp9D,WAAWpC,gCAC7Cw/D,EAAUp9D,WAAWnC,sBAAwB9rB,EAAAA,yBAAAA,SAC/C47D,EAAWztC,SAAWk9D,EAAUp9D,WAAWlC,wBAClCs/D,EAAUp9D,WAAWnC,sBAAwB9rB,EAAAA,yBAAAA,UACtD47D,EAAWz4G,QAAUkoI,EAAUp9D,WAAWjC,qBAAqBniJ,MAAM,KAAK+iC,UAAU,KAGxFx9C,EAAU,CACR6+J,WAAY2tC,EACZj9F,wBAAyB0sH,EAAU5uB,QACnC59F,yBAA0BwsH,EAAUxsH,yBACpCC,mBAAoBusH,EAAUvsH,mBAC9BC,mBAAoBssH,EAAUtsH,oBAIlC,OAAOmsH,EAAMh7K,OAAO,CAAEtjE,GAAIiqD,EAAMh8C,GAAIgS,WAAYgqC,EAAMmqE,YAAc5xG,GAASklC,UAG/EroC,EAAQsgO,iCAAmC,SAAUn6O,EAAMgtH,EAAW93G,EAAKuF,EAAYijF,GACrF,OAAO5X,EAAkBs0J,mBAAmBp6O,EAAMgtH,EAAW93G,EAAKuF,EAAYijF,IAGhF7jF,EAAQwgO,+BAAiC,SAAUr6O,EAAMgtH,EAAW93G,EAAKuF,EAAYijF,GACnF,IAAI3X,EAAW/1D,EAAGg2D,QAclB,OAZAgzJ,EAAaxhL,QACVt/C,MAAK,SAAiBvX,GACrB,IAAI62D,EAAQ72D,EACZ,OAAOmlF,EAAkBw0J,iBAAiBt6O,EAAMw3D,EAAM/uD,GAAIukH,EAAW93G,EAAKuF,EAAYijF,MAEvFxlF,MAAK,SAAiBvX,GACrBolF,EAAS9qF,QAAQ0F,EAAKA,SAEvBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAElB6B,EAAQ0gO,kCAAoC,SAAUv6O,EAAMulK,EAAkBrwJ,EAAKuF,EAAYijF,GAC7F,IAAI1gF,EAAU,CACZjU,KAAM/I,EACN+pH,iBAAkBw7C,EAClB1nF,IAAK3oE,EACL67F,QAASrT,GAEX,OAAOo7I,EAAMlkM,OAAO,CAAE93B,OAAQ,SAAU7W,KAAM,EAAGwU,WAAYA,GAAcuC,GAASklC,UAGtFroC,EAAQ2gO,gCAAkC,SAAUx6O,EAAMulK,EAAkBrwJ,EAAKuF,EAAYijF,GAC3F,IAAI3X,EAAW/1D,EAAGg2D,QAoBlB,OAlBAgzJ,EAAaxhL,QACVt/C,MAAK,SAAiBs/C,GACrB,IAAIx6C,EAAU,CACZjU,KAAM/I,EACNq5O,QAAS7hL,EAAM/uD,GACfshH,iBAAkBw7C,EAClB1nF,IAAK3oE,EACL67F,QAASrT,GAEX,OAAOo7I,EAAMlkM,OAAO,CAAE93B,OAAQ,SAAU7W,KAAM,EAAGwU,WAAYA,GAAcuC,GAASklC,YAErFhqC,MAAK,SAAiBvX,GACrBolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,EAAQ4gO,oCAAsC,SAAUz6O,EAAMqsH,EAAmBn3G,EAAKuF,GACpF,IAAIuC,EAAU,CACZjU,KAAM/I,EACNssH,cAAeD,EAAkBC,cACjCC,wBAAyBF,EAAkBE,wBAC3CmuH,YAAaruH,EAAkBkD,4BAC/BgqD,gBAAiBltD,EAAkBktD,gBACnC9sD,yBAA0BJ,EAAkBI,yBAC5CC,mBAAoBL,EAAkBK,mBACtCC,mBAAoBN,EAAkBM,mBACtC81G,gBAAiBp2G,EAAkBo2G,gBACnC5kJ,IAAK3oE,GAOP,OAJIm3G,EAAkBwvD,aACpB7+J,EAAQ6+J,WAAaxvD,EAAkBwvD,YAGlCi9D,EAAMlkM,OAAO,CAAE93B,OAAQ,aAAc7W,KAAM,EAAGwU,WAAYA,GAAcuC,GAASklC,UAG1FroC,EAAQ8gO,kCAAoC,SAAU36O,EAAMqsH,EAAmBn3G,EAAKuF,GAClF,IAAIsrE,EAAW/1D,EAAGg2D,QAgClB,OA9BAgzJ,EAAaxhL,QACVt/C,MAAK,SAAiBvX,GACrB,IACIqc,EAAU,CACZjU,KAAM/I,EACNq5O,QAHU14O,EAGK8H,GACf6jH,cAAeD,EAAkBC,cACjCC,wBAAyBF,EAAkBE,wBAC3CmuH,YAAaruH,EAAkBkD,4BAC/BgqD,gBAAiBltD,EAAkBktD,gBACnC9sD,yBAA0BJ,EAAkBI,yBAC5CC,mBAAoBL,EAAkBK,mBACtCC,mBAAoBN,EAAkBM,mBACtC81G,gBAAiBp2G,EAAkBo2G,gBACnC5kJ,IAAK3oE,GAOP,OAJIm3G,EAAkBwvD,aACpB7+J,EAAQ6+J,WAAaxvD,EAAkBwvD,YAGlCi9D,EAAMlkM,OAAO,CAAE93B,OAAQ,aAAc7W,KAAM,EAAGwU,WAAYA,GAAcuC,GAASklC,YAEzFhqC,MAAK,SAAiBvX,GACrBolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,6BAA8BC,IAAKA,OAGvD+uE,EAAS/tE,SAGlB6B,EAAQo2M,eAAiB,SAAwBjwN,EAAMulK,EAAkBrwJ,EAAKuF,EAAYxU,GAExF,OADsB,IAATA,EAAa4T,EAAQ2gO,gCAAkC3gO,EAAQ0gO,mCAC9Dv6O,EAAMulK,EAAkBrwJ,EAAKuF,IAW7CZ,EAAQmiK,iBAAmB,SAAUvhK,EAAYqC,EAAQE,GACvD,OAAOo/B,EAAO88L,EAAuBz+N,EAAYqC,EAAQE,IAG3DnD,EAAQxH,MACR,SAAe7X,GACb,OAAOs+O,EAAMzmO,MAAM,CAAE7X,GAAAA,IAAM0nD,UAG7BroC,EAAQgkF,KACR,SAAcrjG,EAAIigB,GAChB,OAAOq+N,EAAMj7I,KAAK,CAAErjG,GAAIA,EAAIigB,WAAYA,IAAcynC,UA+BxDroC,EAAQszM,uBAAyB,SAAU3yN,EAAIigB,EAAYvF,EAAK+jO,GAE9D,MAAMzvB,EAAa,GAYnB,OAVIyvB,EAAUp9D,YAAco9D,EAAUp9D,WAAWrC,6BAC/CgwC,EAAW1tC,YAAcm9D,EAAUp9D,WAAWpC,gCAC9C+vC,EAAWkD,eAAiBusB,EAAUp9D,WAAW6wC,eAC7CusB,EAAUp9D,WAAWnC,sBAAwB9rB,EAAAA,yBAAAA,SAC/C47D,EAAWztC,SAAWk9D,EAAUp9D,WAAWlC,wBAClCs/D,EAAUp9D,WAAWnC,sBAAwB9rB,EAAAA,yBAAAA,UACtD47D,EAAWz4G,QAAUkoI,EAAUp9D,WAAWjC,qBAAqBniJ,MAAM,KAAK+iC,UAAU,KAIjFs+K,EAAM3rB,uBACX,CAAE1yM,WAAAA,EAAYjgB,GAAAA,GACd,CACEqhL,WAAY2tC,EACZ3rI,IAAK3oE,EACLq3G,wBAAyB0sH,EAAU5uB,QACnC59F,yBAA0BwsH,EAAUxsH,yBACpCC,mBAAoBusH,EAAUvsH,mBAC9BC,mBAAoBssH,EAAUtsH,mBAC9B6/F,MAAOysB,EAAUlqL,OAAOy9J,QAE1BtqK,UAGGroC,M,yDCxfX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,gBAAiB,CACvD,KACA,SACA,SAA8BjxB,EAAI7a,GAuChC,MArCc,CAEd0E,OAAiB,WACf,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OATA7wE,EAAO0F,MACJqnC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIyT,EAAS,IAAIwuN,EAAAA,gBAAgBjiO,GACjColF,EAAS9qF,QAAQmZ,MAElB4kD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,wCAAyCC,IAAKA,OAGlE+uE,EAAS/tE,SAGlB6B,QAAkB,WAChB,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OATA7wE,EAAOnW,UACJkjD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIyT,EAAS,IAAI4uN,EAAAA,uBAAuBriO,GACxColF,EAAS9qF,QAAQmZ,MAElB4kD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,8CAA+CC,IAAKA,OAGxE+uE,EAAS/tE,SAGlB6B,WAAqBkoC,iBAEnB,aADuB5sC,EAAO+K,aAAagiC,UAC3B3hC,Y,iBCzCtBzO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,iBAAkB,CACxD,KACA,UACA,SAA+BjxB,EAAI4qN,GACjC,aAiBA,MAhBc,CAEd/gO,gBAA0B,WACxB,IAAIksE,EAAW/1D,EAAGg2D,QAUlB,OARA40J,EAAQ//N,MACLqnC,SAAShqC,MAAK,SAAiBvX,GAC9BolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,qCAAsCC,IAAKA,OAG/D+uE,EAAS/tE,c,yDChBtBlG,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,aAAc,CACpD,KACA,SACA,OACA,SAA2BjxB,EAAIosB,EAAQ+hC,GAErC,IAAItkE,EAAU,GAgCdkoC,eAAe84L,EAAe76O,GAC5B,IAAIgd,EAAU,CACZjU,KAAM/I,GAER,IACE,MAAM61B,QAAYsoD,EAAKvpC,OAAO,GAAI53B,GAASklC,SAC3C,OAAO,IAAI+gL,EAAAA,aAAaptM,GACxB,MAAO7e,GACP,KAAM,CAAED,IAAK,uBAAwBC,IAAAA,IAazC,OAnDA6C,EAAQ6pF,KAAO,WACb,IAAI3d,EAAW/1D,EAAGg2D,QAWlB,OAVA7H,EAAK/rE,QACF8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI+iG,EAAO/iG,EAAKtG,KAAI,SAAUk2C,GAC5B,OAAO,IAAI0yL,EAAAA,aAAa1yL,MAE1Bw1C,EAAS9qF,QAAQyoG,MAElB1qC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAEpD+uE,EAAS/tE,SAGlB6B,EAAQihO,SAAW,WACjB,IAAI/0J,EAAW/1D,EAAGg2D,QAWlB,OAVA7H,EAAK/rE,QACF8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI+iG,EAAO/iG,EAAKtG,KAAI,SAAUk2C,GAC5B,OAAOA,EAAKxnC,QAEdg9E,EAAS9qF,QAAQyoG,MAElB1qC,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,0BAA2BC,IAAKA,OAEpD+uE,EAAS/tE,SAkBlB6B,EAAQs2K,UAHR,SAAmBnwL,GACjB,OAAOo8C,EAAOy+L,EAAgB76O,IAIhC6Z,EAAQkhO,UAAY,SAAUvgP,GAC5B,OAAO2jF,EAAKx+D,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAG1BroC,M,wDC3DX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,wBAAyB,CAC/D,KACA,kBACA,SAA+BjxB,EAAI8xM,GAyCjC,MAvCc,CAEdjoN,YAAsB,WACpB,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OAVA87I,EAAgB1vN,QACb8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI8L,EAAc9L,EAAKtG,KAAI,SAAUk2C,GACnC,OAAO,IAAI4yL,EAAAA,oBAAoB5yL,MAEjCw1C,EAAS9qF,QAAQwR,MAElBusD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,sCAAuCC,IAAKA,OAEhE+uE,EAAS/tE,SAGlB6B,iBAA2B,SAAU+T,EAAQ86M,EAAQrpO,GACnD,IAAI2d,EAAU,CACZomN,OAAQx1M,EACRvgB,OAAQq7N,EACRv7N,KAAM9N,GAER,OAAOyiO,EAAgBltL,OAAO,GAAI53B,GAASklC,UAG7CroC,iBAA2B,SAAUrf,GACnC,OAAOsnO,EAAgBniN,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAG5CroC,iBAA2B,SAAUrf,EAAIozB,EAAQ86M,EAAQrpO,GACvD,IAAI2d,EAAU,CACZomN,OAAQx1M,EACRvgB,OAAQq7N,EACRv7N,KAAM9N,GAER,OAAOyiO,EAAgBhkK,OAAO,CAAEtjE,GAAIA,GAAMwiB,GAASklC,e,mECxCzDpwC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,cAAe,CACrD,KACA,QACA,wBACA,SAA4BjxB,EAAIivM,GAmE9B,MAjEc,CAEdplN,MAAgB,WACd,IAAIksE,EAAW/1D,EAAGg2D,QAWlB,OAVAi5I,EAAM7sN,QACH8vC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIgI,EAAQhI,EAAKtG,KAAI,SAAUk2C,GAC7B,OAAO,IAAI2yL,EAAAA,cAAc3yL,MAE3Bw1C,EAAS9qF,QAAQ0N,MAElBqwD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,2BAA4BC,IAAKA,OAErD+uE,EAAS/tE,SAGlB6B,KAAe,SAAUrf,GACvB,IAAIurF,EAAW/1D,EAAGg2D,QASlB,OARAi5I,EAAMpkN,IAAI,CAAErgB,GAAIA,IACb0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAImI,EAAO,IAAIo6N,EAAAA,cAAcviO,GAC7BolF,EAAS9qF,QAAQ6N,MAElBkwD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,kCAAmCC,IAAKA,OAE5D+uE,EAAS/tE,SAGlB6B,WAAqB,SAAU7Z,EAAMg7O,GACnC,IAAIj1J,EAAW/1D,EAAGg2D,QACdhpE,EAAU,CACZjU,KAAM/I,EACNi7O,YAAaD,GASf,OAPA/b,EAAMrqL,OAAO,GAAI53B,GACdklC,SAAShqC,MAAK,WACb6tE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,wBAAyBC,IAAKA,OAElD+uE,EAAS/tE,SAGlB6B,WAAqB,SAAUrf,GAC7B,OAAOykO,EAAMt/M,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAGlCroC,gBAA0B,SAAUrf,GAClC,IAAIurF,EAAW/1D,EAAGg2D,QAWlB,OAVAi5I,EAAMuV,iBAAiB,CAAEh6O,GAAIA,IAC1B0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI8L,EAAc9L,EAAKtG,KAAI,SAAUk2C,GACnC,OAAO,IAAI4yL,EAAAA,oBAAoB5yL,MAEjCw1C,EAAS9qF,QAAQwR,MAElBusD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,mDAAoDC,IAAKA,OAE7E+uE,EAAS/tE,c,oECjEtB,SAASkjO,EAAuBlrN,EAAImrN,EAAWC,EAAgB14K,EAAa0qB,EAAiBv3B,GAC3F,IAAIh8C,EAAU,CACZ+9C,UAGF,SAAmBn9C,GACjB,MAAMsrE,EAAW/1D,EAAGg2D,QA0BpB,OAxBAh2D,EAAGxB,IAAI,CACLopC,UAAWujL,EAAU/oO,QAAQ8vC,SAC7B8gB,WAAYnN,EAAgBmN,WAAWvoD,KAEtCvC,MAAK,UAAiB,UAAE0/C,EAAF,WAAaoL,IAClC,MAAMhkE,EAAU44D,EAAU54D,QAC1B+mF,EAAS9qF,QACP28D,EAAUA,UAAUv9D,KAAKk2C,IACvB,IACE,MAAMv/B,EAAW,IAAIqyN,EAAAA,kBAAkB9yL,EAAMvxC,GACvCq8O,EAAcrqO,EAASugF,cAAcpuB,SAASI,IAC9CD,EAAW+3K,EAAcr4K,EAAWr9D,MAAMm+D,GAAQA,EAAIP,MAAQ83K,IAAe,IAAIp4K,EAAAA,mBAEvF,OADAjyD,EAASugF,cAAcpuB,SAAWG,EAC3BtyD,EACP,MAAOgG,GACP+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,YAKnEgiD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,+BAAgCC,IAAKA,OAGzD+uE,EAAS/tE,SAGlB6B,aACA,SAAsByhO,EAAeC,GACnC,OAAOJ,EAAUnwN,KAAK,CAAEswN,cAAAA,EAAeC,4BAAAA,IAA+Br5L,UAGxEroC,4BAAsC,SAAU7I,EAAUyhF,EAAetjC,GACvE,IAAIk5B,EAAqB3lB,EAAY+M,8BAA8Bz+D,EAASugF,eACxEiqJ,EAKN,SAAsCxqO,EAAUyhF,EAAetjC,GAC7D,IAAI83B,EAAgBm0J,EAAeK,mCACnCx0J,EAAc1a,WAAWC,YAAcrd,EAAQpmD,KAC/Ck+E,EAAc1a,WAAWsqB,WAAa7lF,EAAS6lF,WAC/C5P,EAAc1a,WAAWgU,cAAgB,CAAEx3E,KAAMiI,EAASuvE,eAC1D0G,EAAc1a,WAAW4mB,WAAaniF,EAASkxE,MAAQlxE,EAASkxE,MAAQ,GACxE+E,EAAcjnF,KAAOyyF,EACrBxL,EAAc1d,SAAWv4D,EAASu4D,SAClC0d,EAAcpJ,IAAMu9J,EAAeM,iBAAiB1qO,EAAS6sE,KAC7DoJ,EAAcvJ,IAAM0P,EAAgB6C,qBAAqBj/E,EAASimE,SAClE,IAAIuhJ,EAAoB4iB,EAAeO,6BAA6B3qO,EAASgmC,OAC7EiwC,EAAc1a,WAAWinB,aAAeglI,EAAkBvnN,SAC1Dg2E,EAActa,aAAe6rJ,EAAkBC,aAC/C,IAAII,EAAuBuiB,EAAeQ,wBAAwB5qO,EAAS0yN,aAI3E,OAHAz8I,EAAcpF,UAAYg3I,EAAqBnlI,UAC/CzM,EAAc+I,IAAM6oI,EAAqBllI,IACzC1M,EAAcnwC,OAASskM,EAAeS,uCAAuC7qO,EAAS8lC,QAC/EmwC,EAtBsB60J,CAA6B9qO,EAAUyhF,EAAetjC,GAEnF,OADAqsL,EAAuBp4K,MAAQilB,EAAmB3Y,UAC3C8rK,GAuBT3hO,wCAAkD,SAAUotE,EAAej2E,EAAU8nN,GACnF,IAAIjhK,EAAU7mD,EAASo8D,QACvBguK,EAAeW,qBAAqBlkL,EAASihK,GAC7CjhK,EAAQ9jD,SAAQ,SAAU+jD,GACpBA,EAAO6W,UACTsY,EAAc7Z,QAAQtV,EAAOtkB,WAAa,GAC1CyzC,EAAc1a,WAAWY,MAAMrtE,KAAKg4D,EAAO6W,eAKjD,OAAO90D,E,gGAjFT/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,kBAAmBi6L,I,4ICIpD,SAAS5rD,EAAYt/J,EAAIqlL,EAAO2E,EAAastB,GAElD,IAAIztN,EAAU,CAEdA,MAAgBkoC,eAAgB3zB,GAG9B,aAFoBH,EAAAA,EAAAA,IAASG,IAEhB/zB,KAAKmO,GAAM,IAAI27N,EAAAA,cAAc37N,MAG5CqR,KAAekoC,eAAgB3zB,GAC7B,MAAM7lB,QAAa+T,EAAAA,EAAAA,IAAQ8R,GAE3B,OAAO,IAAI+1M,EAAAA,cAAc57N,IAG3BsR,WAAqB,SAAUwqC,EAAU0jB,EAAU1oE,EAAM28O,GACvD,IAAIj2J,EAAW/1D,EAAGg2D,QAEdhpE,EAAU,CACZqnC,SAAUA,EACV0jB,SAAUA,EACV1oE,KAAMA,GAkBR,OAfAg2M,EAAMzgK,OAAO,GAAI53B,GACdklC,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIitB,EAASjtB,EAAK8H,GACdwzO,EAAwB,GAC5BnqO,QAAQiC,QAAQioO,GAAS,SAAUtT,GACjCuT,EAAsBn8O,KAAKwnO,EAAsB4U,iBAAiBtuN,EAAQ86M,EAAQ,OAEpF14M,EAAGxB,IAAIytN,GAAuB/jO,MAAK,WACjC6tE,EAAS9qF,gBAGZ+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,wBAAyBC,IAAKA,OAGlD+uE,EAAS/tE,SAGlB6B,WAAqB,SAAUrf,GAC7B,OAAO66M,EAAM11L,OAAO,CAAEnlB,GAAIA,IAAM0nD,UAGlCroC,WAAqB,SAAUrf,GAAI,SAAEutE,EAAF,KAAY1oE,EAAZ,SAAkBglD,IACnD,OAAOgxJ,EAAMv3I,OAAO,CAAEtjE,GAAAA,GAAM,CAAEutE,SAAAA,EAAU1oE,KAAAA,EAAMglD,SAAAA,IAAYnC,UAG5DroC,mBAA6B,SAAUrf,EAAI2hP,EAAiBC,GAC1D,IAAIp/N,EAAU,CACZ4gN,SAAUue,EACVE,YAAaD,GAGf,OAAO/mC,EAAMo/B,eAAe,CAAEj6O,GAAIA,GAAMwiB,GAASklC,UAGnDroC,gBAA0B,SAAUrf,EAAIg4N,GACtC,OAAOnd,EAAMq/B,YAAY,CAAEl6O,GAAAA,GAAM,CAAEg4N,UAAAA,IAAatwK,UAGlDroC,gBAA0B,SAAUrf,GAClC,IAAIurF,EAAW/1D,EAAGg2D,QAalB,OAXAqvH,EAAMm/B,iBAAiB,CAAEh6O,GAAIA,IAC1B0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI8L,EAAc9L,EAAKtG,KAAI,SAAUk2C,GACnC,OAAO,IAAI4yL,EAAAA,oBAAoB5yL,MAEjCw1C,EAAS9qF,QAAQwR,MAElBusD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,sCAAuCC,IAAKA,OAGhE+uE,EAAS/tE,SAGlB6B,iBAA2B,SAAUrf,GACnC,IAAIurF,EAAW/1D,EAAGg2D,QAoBlB,OAlBAh2D,EAAGxB,IAAI,CACL7lB,MAAOqxM,EAAYrxM,QACnB8D,YAAaoN,EAAQ5M,gBAAgBzS,KAEpC0d,MAAK,SAAiBvX,GACrB,IAAI8L,EAAc9L,EAAK8L,YACnB9D,EAAQhI,EAAKgI,MAAM6F,QAAO,SAAU1F,GACtC,IAAIoE,EAAa,IAAOT,EAAa,CAAE7D,OAAQE,EAAKL,KACpD,GAAIyE,GAAkC,IAApBA,EAAWC,KAC3B,OAAOrE,KAGXi9E,EAAS9qF,QAAQ0N,MAElBqwD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gCAAiCC,IAAKA,OAG1D+uE,EAAS/tE,SAGlB6B,kBAA4B,SAAUrf,EAAIsU,GACxC,MAAMi3E,EAAW/1D,EAAGg2D,QACdhpE,EAAU,CAAElO,YAAAA,GAQlB,OAPAumM,EAAMw/B,kBAAkB,CAAEr6O,GAAAA,GAAMwiB,GAC7BklC,SAAShqC,MAAMvX,IACdolF,EAAS9qF,QAAQ0F,MAElBq4D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,wBAAyBC,IAAKA,OAElD+uE,EAAS/tE,SAGlB6B,gBAA0B,SAAUrf,GAClC,IAAIurF,EAAW/1D,EAAGg2D,QAalB,OAXAqvH,EAAMy/B,gBAAgB,CAAEt6O,GAAIA,IACzB0nD,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAI27O,EAAa37O,EAAKtG,KAAI,SAAUk2C,GAClC,OAAO,IAAI+zL,EAAAA,eAAe/zL,MAE5Bw1C,EAAS9qF,QAAQqhP,MAElBtjL,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,iCAAkCC,IAAKA,OAG3D+uE,EAAS/tE,SAGlB6B,kBAA4B,SAAUrf,EAAI+hP,GACxC,OAAOlnC,EAAM0/B,kBAAkB,CAAEv6O,GAAIA,EAAI+hP,QAASA,IAAWr6L,UAG/DroC,kBAA4B,SAAUwqC,EAAU0jB,GAC9C,OAAOstI,EAAMu/B,cAAc,CAAElsO,SAAU27C,EAAUu5K,SAAU71J,IAAY7lB,UAGzEroC,oBAA8B,WAC5B,IAAIksE,EAAW/1D,EAAGg2D,QAiBlB,OAfAqvH,EAAMs/B,eAAe,IAClBzyL,SAAShqC,MAAK,WACb6tE,EAAS9qF,SAAQ,MAElB+9D,OAAM,SAAehiD,GACD,MAAfA,EAAI5C,QACN2xE,EAAS9qF,SAAQ,GAGA,MAAf+b,EAAI5C,QACN2xE,EAAS9qF,SAAQ,GAEnB8qF,EAAS96D,OAAO,CAAElU,IAAK,mDAAoDC,IAAKA,OAG7E+uE,EAAS/tE,UAGlB,OAAO6B,E,yHCzKT/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,iBAAkB,CACxD,KACA,WACA,SAA+BjxB,EAAIwsN,GAmCjC,MAjCc,CAEd3iO,SAAmB,SAAU69N,EAAW32L,GACtC,IAAIglC,EAAW/1D,EAAGg2D,QACd/6B,EAAU,CAAEy4B,WAAYg0J,EAAWhT,WAAY3jL,GAanD,OAXAy7L,EAASpqO,MAAM,CAAE64C,QAASA,IACvB/I,SAAShqC,MAAK,SAAiBvX,GAC9B,IAAIu9D,EAAWv9D,EAAKtG,KAAI,SAAUk2C,GAChC,OAAO,IAAIk0L,EAAAA,iBAAiBl0L,MAE9Bw1C,EAAS9qF,QAAQijE,MAElBlF,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,8BAA+BC,IAAKA,OAGxD+uE,EAAS/tE,SAGlB6B,cAAwB,SAAU69N,EAAW32L,EAAYgxC,EAAY0qJ,GAEnE,OAAOD,EAAS5nM,OAAO,CAAE8uC,WAAYg0J,EAAWhT,WAAY3jL,EAAY4jL,YAAa8X,EAAa1qJ,WAAAA,IAAc7vC,UAGlHroC,qBAA+B,SAAUrf,EAAIu3F,GAC3C,OAAOyqJ,EAAS1+K,OAAO,CAAEtjE,GAAAA,EAAIu3F,WAAAA,IAAc7vC,UAG7CroC,cAAwB,SAAUrf,GAChC,OAAOgiP,EAAS78N,OAAO,CAAEnlB,GAAIA,IAAM0nD,e,iBC/BzCpwC,QAAQ5W,OAAO,aAAa+lD,QAAQ,SAAU,CAC5C,KACA,SAAUjxB,GACR,OAAO,SAAU0sN,KAAcx8O,GAC7B,MAAMu7C,EAAMzrB,EAAGg2D,QAUf,OATgB,SAAUt+E,GACxB,MAAMq+E,EAAW/1D,EAAGg2D,QAIpB,OAHA02J,KAAah1O,GACVwQ,KAAK6tE,EAAS9qF,SACd+9D,MAAM+sB,EAAS96D,QACX86D,EAAS/tE,QAGlB2kO,CAAQz8O,GAAMgY,KAAKujC,EAAIxgD,SAAS+9D,MAAMvd,EAAIxwB,QACnCwwB,EAAIzjC,a,yDCnBjBlG,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,iBAAkB,CACxD,SACA,SACA,OACA,QACA,YACA,eACA,eACA,mBACA,cACA,eACA,SAA+B7E,EAAQwI,EAAQg4L,EAAMC,EAAOC,EAAWh4L,EAAchE,EAAcD,EAAkByuI,EAAa8iC,GAGhI,IAAIv4M,EAAU,GACVtR,EAAO,GAYXw5C,eAAeg7L,IACb,IACE,MAAM9gO,EAAM6oC,EAAakB,SAIzB,OAHI/pC,SACIC,EAAQD,KAEPA,EACT,MAAO9R,GACP,OAAO,GAIX43C,eAAei7L,EAAYngN,GACrBA,SACI+/M,EAAKtkC,SAASp2J,UAGtB+6L,EAAAA,EAAAA,SACAn8L,EAAao8L,QACbr8L,EAAiBq8L,QACjBp4L,EAAaq4L,gBACbr4L,EAAas4L,oBAAoB,IAWnCr7L,eAAes7L,EAAgBviP,GAC7B,MAAM8X,QAAiBiqO,EAAM1V,SAAS,CAAErsO,KAAMA,IAAQonD,eAChDhmC,EAAQtJ,EAASqJ,KAOzB8lC,eAAeu7L,EAAWj5L,EAAU0jB,GAClC,MAAMn1D,QAAiBgqO,EAAK1J,MAAM,CAAE7uL,SAAUA,EAAU0jB,SAAUA,IAAY7lB,eACxEhmC,EAAQtJ,EAASqJ,KA8BzB8lC,eAAe7lC,EAAQD,GACrB6oC,EAAay4L,SAASthO,GACtB,IAAIuhO,EAAeV,EAAUW,YAAYxhO,GACzC1T,EAAK87C,SAAWm5L,EAAan5L,SAC7B97C,EAAKm+B,GAAK82M,EAAahjP,GACvB+N,EAAKlJ,KAAOm+O,EAAan+O,KACzBkJ,EAAK+yL,oBAAsBkiD,EAAaliD,0BApB1Cv5I,iBACE,MAAMphD,QAAa2uL,EAAY/mL,KAAKA,EAAKm+B,IACzCn+B,EAAKm1O,uBAAyB/8O,EAAKgb,uBACnCpT,EAAKo1O,wBAA0Bh9O,EAAKyjO,wBAGpC,MAAM5R,EAAY7xN,EAAKiyN,UACL,SAAdJ,GAAyBA,EAG3BJ,EAAaC,SAASG,GAFtBJ,EAAaG,YAaTqrB,GAGR,SAASz3O,IACP,OAAkB,IAAdoC,EAAKlJ,KAMX,SAASmc,EAAkBF,GACzB,MAAMb,EAAaomC,EAAiBE,aACpC,GAAI56C,IACF,OAAO,EAET,IAAKoC,EAAKm1O,yBAA2Bn1O,EAAKm1O,uBAAuBjjO,GAC/D,OAAO,EAET,MAAMmB,EAA6BrT,EAAKm1O,uBAAuBjjO,GAC/D,OAAOa,EAAezO,MAAMgP,GAAkBD,EAA2BC,KAU3E,OAvHAhC,EAAQrC,KAsCR,WACE,OAAO4kC,EAAO2gM,IAtChBljO,EAAQgkO,WA8CR,SAAoB/iP,GAClB,OAAOshD,EAAOihM,EAAiBviP,IA9CjC+e,EAAQq5N,MAsDR,SAAe7uL,EAAU0jB,GACvB,OAAO3rB,EAAOkhM,EAAYj5L,EAAU0jB,IAtDtCluD,EAAQy+L,OA+BR,SAAgBz7K,GACd,OAAOuf,EAAO4gM,EAAangN,IA/B7BhjB,EAAQ0oD,gBAwDR,WACE,IAAItmD,EAAM6oC,EAAakB,SACvB,OAAO/pC,IAAQ6gO,EAAUgB,eAAe7hO,IAzD1CpC,EAAQozE,eA4DR,WACE,OAAO1kF,GA5DTsR,EAAQ1T,QAAUA,EAClB0T,EAAQ2B,kBAAoBA,EAC5B3B,EAAQ01F,uBAwGR,SAAgCj0F,GACXE,EAAkBF,IAEnCspC,EAAOr8B,GAAG,mBAIP1O,M,qFCtIX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,eAAgB,CACtD,WAIE,IAEIpnC,EAAU,GAEd,SAASkkO,EAAoBC,EAAKC,EAAiBC,EAAgBC,GACjE,MAAO,CACLC,UAAW,CAAEjpK,SAAU,GACvBkpK,4BAA6B,EAC7BC,YAAY,EACZC,SAAU,CACRpnN,KAAM,QACNqnN,WAAW,EACX5gN,SAAUogN,EACVS,UAAW,CACT37O,MAAO,SAAU47O,EAAa/9O,GAC5B,IAAIg+O,EAAeh+O,EAAKi+O,SAASF,EAAYG,cAAc/7O,MAC3D,OAAOm7O,EAAgBU,EAAcD,EAAYI,WAIvDC,OAAQ,CACNv6C,QAAS,CACP0xB,KAAM,KAGV8oB,MAAO,CAAEC,kBAAmB,GAC5BC,OAAQ,CACNC,MAAO,CACL,CACEC,QAASjB,EACTkB,MAAO,CACLC,aAAa,EACb18N,SAAUs7N,EACV7uB,UAAW,OAiJvB,SAASkwB,EAAgB5/I,EAAO6/I,GAC1B7/I,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKhF,OAAS6jP,IACvC7/I,EAAMh/F,KAAKk2C,OAAO+zB,MAClB+0B,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKiqE,MAC5B+0B,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKiqE,OAkDhC,SAAS60K,EAAsB38O,EAAOjD,GAOpC,OAAOiD,EAAQ,MALXjD,EAAQ,EACOs2N,GAAAA,CAASt2N,EAAO,CAAEqnI,KAAM,GAAIn2C,MAAO,IAEnClxF,EAAMmxF,QAAQ,GAAK,KAKxC,SAAS0uJ,EAAmB7/O,GAC1B,OAAIA,EAAQ,EACHs2N,GAAAA,CAASt2N,EAAO,CAAEqnI,KAAM,GAAIn2C,MAAO,IAErClxF,EAAMmxF,QAAQ,GAAK,IAG5B,SAAS2uJ,EAAyB9/O,GAChC,OAAIA,EAAQ,EACHmZ,KAAK+3E,MAAMlxF,GAAS,IAEtBA,EAAMmxF,QAAQ,GAAK,IAG5B,SAAS4uJ,EAA4B98O,EAAOjD,GAO1C,OAAOiD,EAAQ,MALXjD,EAAQ,EACOmZ,KAAK+3E,MAAMlxF,GAEXA,EAAMmxF,QAAQ,IAEM,IAGzC,OAtIAn3E,EAAQgoF,eAAiB,SAAUnoF,GACjC,OA5FF,SAAqBA,EAAS5W,EAAOm7O,EAAiBC,GACpD,OAAO,IAAIv/G,IAAJ,CAAUjlH,EAAS,CACxBzT,KAAM,OACNtF,KAAM,CACJk2C,OAAQ,GACR+nM,SAAU,CACR,CACE97O,MAqFoB,MApFpBnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,KAInBp9O,QAASk7O,EAAoB,UAAWE,EAAiBC,KAyEpDgC,CAAYxmO,EAAS,EAAOkmO,EAA6BD,IAGlE9lO,EAAQooF,cAAgB,SAAUvoF,GAChC,OAvCF,SAAuBA,EAASukO,EAAiBC,GAC/C,OAAO,IAAIv/G,IAAJ,CAAUjlH,EAAS,CACxBzT,KAAM,OACNtF,KAAM,CACJk2C,OAAQ,GACR+nM,SAAU,CACR,CACE97O,MAAO,mBACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,GAEf,CACEn9O,MAAO,oBACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,KAInBp9O,QAASk7O,EAAoB,UAAWE,EAAiBC,GAAgB,KASpEj8I,CAAcvoF,EAAS+lO,EAAuBC,IAGvD7lO,EAAQkoF,kBAAoB,SAAUroF,GACpC,OA7EF,SAA2BA,EAASukO,EAAiBC,GACnD,OAAO,IAAIv/G,IAAJ,CAAUjlH,EAAS,CACxBzT,KAAM,OACNtF,KAAM,CACJk2C,OAAQ,GACR+nM,SAAU,CACR,CACE97O,MAAO,SACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,GAEf,CACEn9O,MAAO,QACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,KAInBp9O,QAASk7O,EAAoB,UAAWE,EAAiBC,GAAgB,KA+CpEn8I,CAAkBroF,EAAS+lO,EAAuBC,IAG3D7lO,EAAQ8nF,mBAAqB,SAAUjoF,GACrC,OAAO,IAAIilH,IAAJ,CAAUjlH,EAAS,CACxBzT,KAAM,OACNtF,KAAM,CACJk2C,OAAQ,GACR+nM,SAAU,CACR,CACE97O,MAAO,aACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,GAEf,CACEn9O,MAAO,aACPnC,KAAM,GACNpE,MAAM,EACNm8B,gBAAiB,wBACjBmnN,YAAa,wBACbC,qBAAsB,sBACtBC,iBAAkB,sBAClBC,YAAa,EACbC,YAAa,KAInBp9O,QAASk7O,EAAoB,UAAW0B,EAAuBC,MAwBnE7lO,EAAQomF,kBAAoB,SAAqBn9F,EAAOq9O,EAAaC,EAAYzgJ,GAC/EA,EAAMh/F,KAAKk2C,OAAO/2C,KAAKgD,GACvB68F,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKqgP,GAE7BC,EACFzgJ,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKsgP,GAGjCzgJ,EAAMh/F,KAAKi+O,SAASz/K,OAAO,EAAG,GAGhCogL,EAAgB5/I,GAEhBA,EAAM7hC,OAAO,IAEfjkD,EAAQknF,eA3BR,SAAqBj+F,EAAOjD,EAAO8/F,GACjCA,EAAMh/F,KAAKk2C,OAAO/2C,KAAKgD,GACvB68F,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKD,GAE7B8/F,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKhF,OA9LhB,MA+LdgkG,EAAMh/F,KAAKk2C,OAAO+zB,MAClB+0B,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKiqE,OAG9B+0B,EAAM7hC,OAAO,IAmBfjkD,EAAQumF,cAAgB,SAAUt9F,EAAOs0E,EAAM0X,EAAO6Q,GACpDA,EAAMh/F,KAAKk2C,OAAO/2C,KAAKgD,GACvB68F,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKs3E,GACjCuoB,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKgvF,GACjCywJ,EAAgB5/I,GAChBA,EAAM7hC,OAAO,IAGfjkD,EAAQkmF,mBAAqB,SAAUj9F,EAAOmxB,EAAI4rE,EAAIF,GACpDA,EAAMh/F,KAAKk2C,OAAO/2C,KAAKgD,GACvB68F,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAKm0B,GACjC0rE,EAAMh/F,KAAKi+O,SAAS,GAAGj+O,KAAKb,KAAK+/F,GAEjC0/I,EAAgB5/I,GAEhBA,EAAM7hC,OAAO,IAqCRjkD,M,4JCtQX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,qBAAqB,WAG3D,IAAIpnC,EAAU,GAEVwmO,EAA2B,CAC7BC,aAAa,EACbC,UAAW,CACT,QAAS,mBAITC,EAAwB,CAC1BrpN,KAAM,cACNspN,QAAS,CAAC,2BACVC,MAAM,EACNH,UAAW,CACT,QAAS,iBACTI,IAAK,SAAUz3I,GACb,IAAI03I,EAAS1kN,MAAMgtE,EAAG23I,UAAU,cAAgB,GAAGx3O,KAAK,KACxD6/F,EAAG43I,iBAAiBF,MAqB1B,OAhBA/mO,EAAQmjM,yBAA2B,SAAU/2J,EAAS86L,EAAU5xM,GAC9D,IAAItsC,EAAUiP,QAAQu0D,KAAKg6K,GAEvBU,GACF,IAASl+O,EAAS29O,GAGhBrxM,IACFtsC,EAAQssC,UAAW,GAGrB,IAAI+5D,EAAK83I,IAAAA,aAAwB/6L,EAASpjD,GAE1C,OADAqmG,EAAG+3I,QAAQ,OAAQ,KACZ/3I,GAGFrvF,M,wGCjDT/H,IAAAA,OAAe,iBAAiBmvC,QAAQ,mBAAoBigM,GAE5D,MACMC,EAA0B,yBAGhC,SAASD,EAAwBp8L,GAC/B,MAAO,CACLs1E,qBAgBF,SAA8Bv+H,EAAK2E,GACjCskD,EAAas8L,uBAAuBvlP,EAAK2E,IAhBzCw6D,qBAmBF,SAA8Bn/D,GAC5B,OAAOipD,EAAakW,qBAAqBn/D,IAnBzCqpH,wBAsBF,SAAiCrpH,EAAKovD,GACpCljB,EAAAA,KAAoBo5M,EAAyBtlP,EAAKovD,IAtBlDyP,wBAyBF,SAAiC7+D,GAC/B,OAAOksC,EAAAA,IAAmBo5M,EAAyBtlP,IAzBnD+/D,oBA4BF,SAA6B//D,EAAKovD,GAChCnG,EAAau8L,sBAAsBxlP,EAAKovD,IA5BxC4P,oBA+BF,SAA6Bh/D,GAC3B,OAAOipD,EAAa+V,oBAAoBh/D,IA/BxC0+D,kBAkCF,SAA2B1+D,GACzB,OAAOipD,EAAayV,kBAAkB1+D,IAlCtC2jN,kBAqCF,SAA2B3jN,EAAKihD,EAAS0d,GACvC,IAAIhsD,EAAS,CACXsuC,QAASA,EACT0d,QAASA,GAEX1V,EAAaw8L,oBAAoBzlP,EAAK2S,IAzCtC4wD,0BA4CF,SAAmCvjE,EAAK89D,GACtC7U,EAAay8L,4BAA4B1lP,EAAK89D,IA5C9CuF,4BA+CF,SAAqCrjE,EAAKkjE,GACxCja,EAAa08L,8BAA8B3lP,EAAKkjE,IA/ChDS,0BAkDF,SAAmC3jE,GACjC,OAAOipD,EAAa0a,0BAA0B3jE,IAlD9C4lP,0BAqDF,SAAmC5lP,EAAKmqC,GACtC8e,EAAa48L,4BAA4B7lP,EAAKmqC,IArD9C27M,0BAwDF,SAAmC9lP,GACjC,OAAOipD,EAAa68L,0BAA0B9lP,IAxD9C6jE,4BA2DF,SAAqC7jE,GACnC,OAAOipD,EAAa4a,4BAA4B7jE,O,iBCrFpDiW,QAAQ5W,OAAO,iBAAiB+lD,QAC9B,mBADF,mCAGE,SAAiC6D,EAAc88L,GAC7C,MAAM31O,EAAQ,CACZo5C,gBAAiB,MAEnB,IAAIxrC,EAAU,GACV5G,EAAW,GA6Gf,OA3GA4G,EAAQqrC,WAAa,WACnB,IAAInE,EAAa+D,EAAa+8L,gBAC1BC,EAAoBh9L,EAAai9L,uBACjCp3L,EAAc7F,EAAak9L,iBAE3BjhM,IACF9tC,EAASyzB,GAAKqa,GAEZ+gM,IACF7uO,EAASghC,UAAY6tM,GAEnBn3L,IACF13C,EAASgvO,YAAct3L,IAI3B9wC,EAAQqjO,MAAQ,WACdp4L,EAAao9L,oBACbjvO,EAAW,IAGb4G,EAAQ5G,SAAW,WACjB,OAAOA,GAGT4G,EAAQknC,WAAa,WAInB,YAHoBhzC,IAAhBkF,EAASyzB,KACXzzB,EAASyzB,GAAKoe,EAAa+8L,iBAET,OAAhB5uO,EAASyzB,SAA+B34B,IAAhBkF,EAASyzB,GAC5B7sB,EAAQsoO,mBAEVlvO,EAASyzB,IAuBlB7sB,EAAQsoO,iBAAmB,IAClBP,EAAiBl6O,OAAOlN,GAGjCqf,EAAQo8C,cAAgB,SAAUz7D,GAChCyY,EAASyzB,GAAKlsC,EACdsqD,EAAas9L,gBAAgB5nP,IAG/Bqf,EAAQioO,kBAAoB,WAI1B,YAH2B/zO,IAAvBkF,EAASghC,YACXhhC,EAASghC,UAAY6Q,EAAai9L,wBAE7B9uO,EAASghC,WAGlBp6B,EAAQq8C,qBAAuB,SAAUmsL,GACvCpvO,EAASghC,UAAYouM,EACrBv9L,EAAaw9L,uBAAuBD,IAGtCxoO,EAAQurG,UAAY,WAClB,OAAOtgE,EAAa6tH,gBAGtB94J,EAAQ6+J,aAAe,SAAU/3K,GAC/BmkD,EAAay9L,eAAe5hP,IAG9BkZ,EAAQ8wC,YAAc,WACpB,OAAO13C,EAASgvO,aAGlBpoO,EAAQu/M,eAAiB,SAAUopB,GACjCvvO,EAASgvO,YAAcO,EACvB19L,EAAa29L,iBAAiBD,IAGhC3oO,EAAQs8C,yBAA2B,SAAU/hD,GAC3C,IAAIouO,EAAuB,IAAXpuO,EAChBnB,EAASgvO,YAAcO,EACvB19L,EAAa29L,iBAAiBD,IAGhC3oO,EAAQwrC,gBAAkB,WACxB,OAAOp5C,EAAMo5C,iBAGfxrC,EAAQk/L,mBAAqB,SAAU9lM,GACrChH,EAAMo5C,gBAAkBpyC,GAGnB4G,M,oEClHX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,oBAAqB,CAC3D,KACA,SACA,mBACA,SAA2BjxB,EAAIc,EAAQ+vB,GAGrC,IAAIhnC,EAAU,GAEd,SAAS2iC,EAAW75C,EAAKqoB,GACvB,OAAO8F,EAAOD,OAAO,CAAEluB,IAAKA,EAAKhC,KAAM,CAAEqqB,KAAMA,KAuOjD,OApOAnR,EAAQ8pE,WAAa,SAAUr5D,EAAOU,EAAM6yB,GAC1C,IAAIkD,EAAaF,EAAiBE,aAClC,OAAOjwB,EAAOg1H,KAAK,CACjBnjJ,IAAK,iBAAmBo+C,EAAa,gBACrCluC,QAAS,CACP,eAAgBmY,EAAK/kB,MAEvBtF,KAAMqqB,EACNtjB,OAAQ,CACNi0C,EAAGrxB,EACH47D,WAAYroC,GAEd+lC,kBAAkB,EAClBjuC,kBAAmB,SAAUh1C,GAC3B,OAAOkjF,EAAAA,EAAAA,2BAA0BljF,OAKvCkZ,EAAQkrD,WAAa,SAAU/5C,GAC7B,IAAI+1B,EAAaF,EAAiBE,aAClC,OAAOjwB,EAAOg1H,KAAK,CACjBnjJ,IAAK,iBAAmBo+C,EAAa,sBACrCluC,QAAS,CACP,eAAgBmY,EAAK/kB,MAEvBtF,KAAMqqB,EACN44D,kBAAkB,EAClBjuC,kBAAmBC,EAAAA,kBAIvB/7B,EAAQoyG,eAAiB,SAAUjvG,GACjC,OAAO8T,EAAOD,OAAO,CACnBluB,IAAK,4BACLhC,KAAM,CACJqqB,KAAMhO,EAAQ+sD,KACdhhE,KAAMiU,EAAQjU,KACdo9G,eAAgBnpG,EAAQmpG,eACxB/iD,MAAOpmD,EAAQomD,MACfwjD,UAAW91F,EAAOld,KAAKoJ,EAAQ4pG,WAC/B87H,WAAY1lO,EAAQ0lO,WACpBC,cAAe3lO,EAAQ2lO,kBAK7B9oO,EAAQ28N,aAAe,SAAUxrN,EAAM+8C,GACrC,OAAOj3C,EAAOD,OAAO,CACnBluB,IAAK,cACLhC,KAAM,CACJqqB,KAAAA,EACA+8C,SAAAA,MAKNluD,EAAQygO,iBAAmB,SAAUhxO,EAAW6qO,EAASnpN,EAAM9V,EAAKuF,EAAYijF,GAC9E,OAAO5sE,EAAOD,OAAO,CACnBluB,IAAK,4CAA8C8X,EACnD9Z,KAAM,CACJqqB,KAAMA,EACNjiB,KAAMO,EACN+vO,QAASlF,EACTt2J,IAAK/sD,EAAOld,KAAKsB,GACjB67F,QAASrT,GAEX9Z,kBAAkB,KAItB/pE,EAAQugO,mBAAqB,SAAU9wO,EAAW0hB,EAAM9V,EAAKuF,EAAYijF,GACvE,OAAO5sE,EAAOD,OAAO,CACnBluB,IAAK,4CAA8C8X,EACnD9Z,KAAM,CACJqqB,KAAMA,EACNjiB,KAAMO,EACNu0E,IAAK/sD,EAAOld,KAAKsB,GACjB67F,QAASrT,GAEX9Z,kBAAkB,KAItB/pE,EAAQuyG,gBAAkB,UAAyB,WAAElC,EAAF,WAAcN,KAAe5sG,GAAWgO,EAAM6+F,GAC/F,OAAO/4F,EAAOD,OAAO,CACnBluB,IAAM,sCAAqCknH,IAC3ClpH,KAAM,CACJqqB,KAAAA,EACAk/F,WAAYp5F,EAAOld,KAAKs2G,GACxBN,WAAY94F,EAAOld,KAAKg2G,MACrB5sG,GAEL4mE,kBAAkB,KAItB/pE,EAAQg9N,qBAAuB,SAA8Bl2O,GAC3D,OAAOmwB,EAAOD,OAAO,CACnBluB,IAAK,mCACLhC,KAAAA,EACAijF,kBAAkB,KAItB/pE,EAAQ+1N,kBAAoB,SAAU5tK,EAAY+1K,GAChD,OAAOjnN,EAAOD,OAAO,CACnBluB,IAAK,kBAAoBq/D,EAAa,aACtCrhE,KAAMo3O,KAIVl+N,EAAQq9N,eAAiB,SACvBl3O,EACA68L,EACAt5H,EACAtvB,EACA+iM,EACAtkO,EACAgrL,EACAC,EACAC,EACAu5C,EACAp5C,EACAE,EACAm5C,EACAl6C,EACAuB,EACAC,EACAC,GAEA,OAAO7tK,EAAOD,OAAO,CACnBluB,IAAK,gBACLhC,KAAM,CACJoI,KAAM/I,EACNs9L,qBAAsBT,EACtBt5H,IAAKA,EACLtvB,UAAWA,EACXspJ,QAASy5C,EACT5yI,OAAQtzE,EAAOld,KAAKlB,GACpBgrL,IAAKA,EACLC,cAAeA,EACfC,oBAAqBA,EACrBC,cAAes5C,EACfp5C,YAAaA,EACbE,WAAYA,EACZ9kL,gBAAiBi+N,EACjB55C,aAAcN,EACduB,iBAAkBA,EAClBC,qBAAsBA,EACtBC,oBAAqBA,GAEvB/6G,kBAAkB,KAItB/pE,EAAQw9N,oBAAsB,SAAUr3O,EAAMo+L,EAAeE,EAAUE,EAAmBnrL,EAASX,GACjG,OAAOoe,EAAOD,OAAO,CACnBluB,IAAK,gBACLhC,KAAM,CACJoI,KAAM/I,EACNs9L,qBAAsB++B,EAAAA,+BAAAA,iBACtB9+B,QAASlqL,EACT+wF,OAAQtzE,EAAOld,KAAKlB,GACpByrL,mBAAoBC,EACpBC,cAAeC,EACfC,uBAAwBC,GAE1B56G,kBAAkB,KAItB/pE,EAAQy9N,yBAA2B,SAAUt3O,EAAM28L,EAAYtpL,EAASX,GACtE,OAAOoe,EAAOD,OAAO,CACnBluB,IAAK,gBACLhC,KAAM,CACJoI,KAAM/I,EACNs9L,qBAAsB++B,EAAAA,+BAAAA,sBACtB9+B,QAASlqL,EACT+wF,OAAQtzE,EAAOld,KAAKlB,GACpB+qL,WAAYd,GAEd/4G,kBAAkB,KAItB/pE,EAAQ+oO,mBAAqB,SAAUzL,EAAWp5C,EAAaE,GAC7D,IAAI4kD,EAAQ,GAYZ,OAVI1L,GACF0L,EAAM/iP,KAAK08C,EAAW,gCAAiC26L,IAErDp5C,GACF8kD,EAAM/iP,KAAK08C,EAAW,kCAAmCuhJ,IAEvDE,GACF4kD,EAAM/iP,KAAK08C,EAAW,iCAAkCyhJ,IAGnDjuK,EAAGxB,IAAIq0N,IAGhBhpO,EAAQi9N,0BAA4B,SAAU/1L,EAAYo2L,EAAWp5C,EAAaE,GAChF,IAAI4kD,EAAQ,GAYZ,OAVI1L,GACF0L,EAAM/iP,KAAK08C,EAAW,4BAA8BuE,EAAYo2L,IAE9Dp5C,GACF8kD,EAAM/iP,KAAK08C,EAAW,8BAAgCuE,EAAYg9I,IAEhEE,GACF4kD,EAAM/iP,KAAK08C,EAAW,6BAA+BuE,EAAYk9I,IAG5DjuK,EAAGxB,IAAIq0N,IAGhBhpO,EAAQipO,uBAAyB,SAAUC,GACzC,OAAOjyN,EAAOD,OAAO,CACnBluB,IAAK,mBACLhC,KAAM,CACJqiP,QAASD,GAEXn/J,kBAAkB,KAIf/pE,M,yDClPX/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,gBAAiB,CACvD,WAkBE,MAfgB,CAEhB4lJ,sBAAkC,SAAU12L,EAAmBhK,GAC7D,OAAKgK,EAAkBgpF,qBAInBhzF,GAAWgK,EAAkBrI,YAAcw0D,EAAAA,EAAAA,YAA+D,IAA7CnsD,EAAkBuqM,gBAAgB/+M,QAA6D,IAA7CwU,EAAkBkqM,gBAAgB1+M,OAC5I,8CACGwK,GAAWgK,EAAkBrI,YAAcw0D,EAAAA,EAAAA,YAA+D,IAA7CnsD,EAAkBkqM,gBAAgB1+M,OAGpG,GAFE,oCANA,S,iBCVfmW,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,eAAgB,CACtD,sBACA,SAA6BgiM,GAC3B,MAAO,CACLb,gBAAiB,SAAU5nP,GACzByoP,EAAoBloO,IAAI,cAAevgB,IAEzCqnP,cAAe,WACb,OAAOoB,EAAoBpoO,IAAI,gBAEjCynO,uBAAwB,SAAUD,GAChCY,EAAoBloO,IAAI,sBAAuBsnO,IAEjDN,qBAAsB,WACpB,OAAOkB,EAAoBpoO,IAAI,wBAEjCuiO,oBAAqB,SAAUr7C,GAC7BkhD,EAAoBloO,IAAI,mBAAoBgnL,IAE9CmhD,kBAAmB,WACjB,OAAOD,EAAoBpoO,IAAI,qBAEjC4nO,iBAAkB,SAAUD,GAC1BS,EAAoBloO,IAAI,wBAAyBynO,IAEnDR,eAAgB,WACd,OAAOiB,EAAoBpoO,IAAI,0BAEjC0nO,eAAgB,SAAU5hP,GACxBsiP,EAAoBloO,IAAI,iBAAkBpa,IAE5CgyK,aAAc,WACZ,OAAOswE,EAAoBpoO,IAAI,mBAEjCsoO,mBAAoB,SAAUl3O,GAC5Bg3O,EAAoBloO,IAAI,iBAAkB9O,IAE5Cm3O,iBAAkB,WAChB,OAAOH,EAAoBpoO,IAAI,mBAEjCwoO,sBAAuB,SAAUp3O,GAC/Bg3O,EAAoBloO,IAAI,oBAAqB9O,IAE/Cq3O,oBAAqB,WACnB,OAAOL,EAAoBpoO,IAAI,sBAEjC0oO,aAAc,SAAUt3O,GACtBg3O,EAAoBloO,IAAI,WAAY9O,IAEtCu3O,WAAY,WACV,OAAOP,EAAoBpoO,IAAI,aAEjC0iO,SAAU,SAAUthO,GAClBgnO,EAAoBloO,IAAI,MAAOkB,IAEjC+pC,OAAQ,WACN,OAAOi9L,EAAoBpoO,IAAI,QAEjC4oO,UAAW,WACTR,EAAoBtjO,OAAO,QAE7B+jO,qBAAsB,SAAU7nP,EAAK2iL,GACnCykE,EAAoBloO,IAAI,wBAA0Blf,EAAK2iL,IAEzD2hC,mBAAoB,SAAUtkN,GAC5B,OAAOonP,EAAoBpoO,IAAI,wBAA0Bhf,IAE3D0+D,kBAAmB,SAAU1+D,GAC3B,OAAOonP,EAAoBpoO,IAAI,mBAAqBhf,IAEtDylP,oBAAqB,SAAUzlP,EAAK8E,GAClCsiP,EAAoBloO,IAAI,mBAAqBlf,EAAK8E,IAEpD+5D,wBAAyB,SAAU7+D,GACjC,OAAOonP,EAAoBpoO,IAAI,yBAA2Bhf,IAE5D8nP,0BAA2B,SAAU9nP,EAAK8E,GACxCsiP,EAAoBloO,IAAI,yBAA2Blf,EAAK8E,IAE1Dk6D,oBAAqB,SAAUh/D,GAC7B,OAAOonP,EAAoBpoO,IAAI,qBAAuBhf,IAExDwlP,sBAAuB,SAAUxlP,EAAK8E,GACpCsiP,EAAoBloO,IAAI,qBAAuBlf,EAAK8E,IAEtDq6D,qBAAsB,SAAUn/D,GAC9B,OAAOonP,EAAoBpoO,IAAI,sBAAwBhf,IAEzDulP,uBAAwB,SAAUvlP,EAAK8E,GACrCsiP,EAAoBloO,IAAI,sBAAwBlf,EAAK8E,IAEvD6+D,0BAA2B,SAAU3jE,GACnC,OAAOonP,EAAoBpoO,IAAI,2BAA6Bhf,IAE9D0lP,4BAA6B,SAAU1lP,EAAK8E,GAC1CsiP,EAAoBloO,IAAI,2BAA6Blf,EAAK8E,IAE5DghP,0BAA2B,SAAU9lP,GACnC,OAAOonP,EAAoBpoO,IAAI,2BAA6Bhf,IAE9D6lP,4BAA6B,SAAU7lP,EAAK8E,GAC1CsiP,EAAoBloO,IAAI,2BAA6Blf,EAAK8E,IAE5D26G,6BAA8B,SAAUz/G,EAAK8E,GAC3CsiP,EAAoBloO,IAAI,mBAAqBlf,EAAK8E,IAEpD66G,2BAA4B,SAAU3/G,GACpC,OAAOonP,EAAoBpoO,IAAI,mBAAqBhf,IAEtD2lP,8BAA+B,SAAU3lP,EAAK8E,GAC5CsiP,EAAoBloO,IAAI,kBAAoBlf,EAAK8E,IAEnD++D,4BAA6B,SAAU7jE,GACrC,OAAOonP,EAAoBpoO,IAAI,kBAAoBhf,IAErD+nP,cAAe,SAAUjjP,GACvBsiP,EAAoBloO,IAAI,YAAapa,IAEvCkjP,YAAa,WACX,OAAOZ,EAAoBpoO,IAAI,cAEjC6nJ,eAAgB,SAAU7mK,EAAKwgC,GAC7B,OAAO4mN,EAAoBloO,IAAI,cAAgBlf,EAAKwgC,IAEtDumI,aAAc,SAAU/mK,GACtB,MAAMisG,EAAYm7I,EAAoBpoO,IAAI,cAAgBhf,GAC1D,OAAqB,OAAdisG,EAAqB,EAAIA,GAElCg8I,kBAAoBztE,GAAW4sE,EAAoBloO,IAAI,gBAAiBs7J,GACxE0tE,gBAAiB,IAAMd,EAAoBpoO,IAAI,iBAC/CmpO,kBAAmB,IAAMf,EAAoBtjO,OAAO,iBACpDu9N,MAAO,WACL+F,EAAoBgB,YAEtB9G,gBACE8F,EAAoBtjO,OAAO,MAAO,oBAAqB,qBAEzDuiO,oBACEe,EAAoBtjO,OAAO,cAAe,sBAAuB,wBAAyB,iBAAkB,mBAE9G8oK,6BAA6B5oL,GAC3BojP,EAAoBloO,IAAI,8BAA+Blb,IAEzDipL,2BAA0B,IACjBm6D,EAAoBpoO,IAAI,+BAEjCqpO,gCAAgCppP,GAC9BmoP,EAAoBloO,IAAI,0BAA4BjgB,GAAM,IAE5DqpP,8BAA8BrpP,GACrBmoP,EAAoBpoO,IAAI,0BAA4B/f,Q,6ECjJnE,SAASspP,EAAqBz9N,GAC5B,MAAO,CACL09N,wBAGFtiM,eAAuC/hD,GACrC,IAEE,aADwBmS,EAAAA,EAAAA,IAAgB,CAAEG,MAAO,EAAGtS,KAAAA,KACnCH,MAAMlE,OAAS,EAChC,MAAOqb,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,6C,4BAZ1ClF,IAAAA,OAAe,iBAAiBmvC,QAAQ,gBAAiBmjM,I,iBCHzDtyO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,oBAAqB,CAC3D,eACA,uBACA,SAAkC6D,EAAcsE,GAC9C,aAkBA,MAhBc,CAEdvvC,mBAA6B,SAAUhe,GACrC,IAAIyoP,EAAkBl7L,EAElBm7L,EAAcz/L,EAAaq7J,mBAAmBtkN,GAIlD,OAHoB,OAAhB0oP,IACFD,EAAkBC,GAEb,GAAKD,GAGdzqO,mBAA6B,SAAUhe,EAAKyW,GAC1CwyC,EAAa4+L,qBAAqB7nP,EAAKyW,S,6ECb7C,SAASkyO,EAA0Bx0N,EAAIk+M,EAAyBrQ,GAQ9D,SAASkQ,EAAgBrmO,EAAQ/G,GAC/B,OAAOk9N,EAAIkQ,gBAAgBrmO,EAAQ/G,GAAMuhD,SAwB3C,SAASwsL,EAAqBprK,EAAU7oD,EAAYo1D,EAAYh6C,GAC9D,OAfF,SAAiBytC,EAAU7oD,EAAYo1D,EAAYh6C,EAAK+1M,GACtD,MAAMpxO,EAAK8oE,EAAS76D,GAEpB,cADOmjO,EAAS/uJ,OACTqxJ,EAAwBjnL,IAC7B,CACEzsD,GAAIA,EACJigB,WAAYA,EACZo1D,WAAYA,EACZh6C,IAAKA,GAEP+1M,GAKK6Y,CAAQnhL,EAAU7oD,EAAYo1D,EAAYh6C,EAAIs5M,QAASt5M,EAAI41M,YAuBpE,MAvDgB,CACd6B,kBAwCFvrL,gBAAkCuhB,EAAU7oD,EAAYo1D,EAAY09J,EAAcC,EAAiBC,SANnG1rL,gBAAqCuhB,EAAU7oD,EAAYo1D,EAAY09J,GACrE,UAAW,MAAMsB,KAAiBlC,EAAAA,EAAAA,SAAsB38M,EAAIu9M,EAAcmB,EAAsB,CAACprK,EAAU7oD,EAAYo1D,UAC/Gg/J,EAKDF,CAAqBrrK,EAAU7oD,EAAYo1D,EAAY09J,GAE9D,MAAMmX,EAAcnX,EAAalzO,KAAKw7B,GAAQA,EAAI9sB,OAC5C47O,EAAcpX,EAAalzO,KAAKw7B,GAAQA,EAAIs5M,UAC5CyV,EAAY,IAAUF,KAAgBC,GAExCC,EAAUjpP,cACNoyO,EAAgB,CAAEvzO,GAAI8oE,EAAS76D,GAAIgS,WAAYA,EAAYu0N,eAAgBn/J,GAAc,CAAEsO,KAAMymK,UAGnGpX,EAAgB7xO,OAAS8xO,EAAa9xO,QAlD5CoyO,gBAAAA,EACAD,iBAOF,SAA0BxqK,EAAU7oD,EAAYo1D,GAC9C,OAAOguJ,EAAIiQ,iBAAiB,CAAEtzO,GAAI8oE,EAAS76D,GAAIgS,WAAYA,EAAYu0N,eAAgBn/J,EAAW9mE,OAAQm5C,W,iDAhB9GpwC,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,qBAAsBujM,I,gICC9D1yO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,wBAAyB,CAC/D,SACA,SACA,SAAsC7E,EAAQsnB,GAE5C,IAAI7pD,EAAU,GAMdkoC,eAAe8iM,EAAiB3vO,EAAKxN,EAAQkkN,GAC3C,MAAMh5M,QAAiB8wD,EAAOxuD,GAAK02M,SAASlkN,GAAQw6C,SAMpD,OALA0pK,EAAW,IAASA,EAAUh5M,EAASjS,MACnCiS,EAAS65N,OACX/kO,EAAO4N,KAAO1C,EAAS65N,KACvB7gB,QAAiBi5B,EAAiB3vO,EAAKxN,EAAQkkN,IAE1CA,EAGT7pK,eAAe+iM,EAAcniP,EAAKiwE,GAChC,IACE,MAAMjyE,QAAakkP,EAAiB,CAAEliP,IAAKA,EAAKiwE,MAAOA,GAAS,CAAEt9D,KAAM,GAAK,IAC7E,OAAO,IAAM3U,GAAOs8N,GAAY,IAAID,EAAAA,sBAAsBC,KAC1D,MAAO9yN,GACP,KAAM,CAAE4M,IAAK,8BAA+BC,IAAK7M,IAYrD43C,eAAegjM,EAAqBr9O,EAAQwlO,GAC1C,MAAMt6N,QAAiB8wD,IAASwpK,aAAaxlO,GAAQw6C,SAMrD,OALAgrL,EAAe,IAASA,EAAct6N,EAASjS,MAC3CiS,EAAS65N,OACX/kO,EAAO4N,KAAO1C,EAAS65N,KACvBS,QAAqB6X,EAAqBr9O,EAAQwlO,IAE7CA,EAGTnrL,eAAeijM,EAAkB1hL,EAAU7oD,GACzC,IACE,MAAM/S,EAAS,CACblN,GAAI8oE,EAAS76D,GACbgS,WAAYA,EACZwqO,UAAW3hL,EAASI,OAAOw6J,UAC3B5oN,KAAM,GAEF3U,QAAaokP,EAAqBr9O,EAAQ,IAChD,OAAO,IACL,IAAM/G,GAAO8xE,GAAM,IAAI8rJ,EAAAA,kCAAkC9rJ,MACxDA,GAAMA,EAAE6rJ,UAAY,IAEvB,MAAOn0N,GACP,KAAM,CAAE4M,IAAK,kCAAmCC,IAAK7M,IAsBzD,OAFA0P,EAAQ+xM,SARR,SAAkBjpN,EAAKiwE,GACrB,OAAOx2B,EAAO0oM,EAAeniP,EAAKiwE,IAQpC/4D,EAAQqzN,aALR,SAAsB5pK,EAAU7oD,GAC9B,OAAO2hC,EAAO4oM,EAAmB1hL,EAAU7oD,IAKtCZ,M,iECpFX,SAASqrO,EAAoBl1N,EAAI4tB,EAAc+kB,GAC7C,MAAM9oD,EAAU,CAShBA,cAAwBkoC,eAAgB8tB,EAAY7M,GAClD,MAAM+iB,EAAW/1D,EAAGg2D,QAEdnjF,EAVR,SAA4BmgE,GAC1B,OAAOA,EAAW3oE,KAAKo4E,IAAD,CACpB9tD,KAAM8tD,EAAE1pE,KACRlJ,MAAO0O,OAAOkkE,EAAEhqE,QAOF08O,CAAmBniL,GAC7BklB,EAAgBvlB,EAAgBw1K,qDAAqDtoK,EAAY7M,GACjG59D,EAAemJ,OAAO,IAAM25E,EAAe,cAAe,MAiBhE,OAfAtqC,EAAah5B,eAAe,CAC1Bxa,MAAO,qCACPoa,UAAW,SACXC,aAAc5hB,EACdhD,MAAOuF,EACPwd,SAAWo/C,IACT,GAAIA,EAAY,CACd,MAAMkmB,EAAgBvlB,EAAgBw1K,qDAAqDtoK,EAAY7M,EAAYhB,GACnH+jB,EAAS9qF,QAAQitF,QAEjBnC,EAAS9qF,QAAQ,SAKhB8qF,EAAS/tE,UAGlB,OAAO6B,E,kDArCT/H,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,uBAAwBikM,I,mCCCzD,SAAS9wC,IACdrsK,eAAeqsK,QAUV,SAASx7I,EAAK/8D,EAAKgE,GACxBkoC,eAAe5sB,QAAQtf,EAAK6F,KAAKC,UAAU9B,IAQtC,SAASgb,EAAIhf,GAClB,IACE,MAAMgE,EAAQkoC,eAAe9sB,QAAQpf,GACrC,OAAO6F,KAAKwZ,MAAMrb,GAClB,MAAOjF,GACP,Q,gKCvBJ,SAASwqP,EACPhpM,EACApsB,EACA+0B,EACAsgM,EACAvgM,EACA+d,EACA63J,EACArxK,EACA1G,EACA2hD,EACAzjD,GAEA,IAAIykM,EAAU,GAEVr5O,EAAQ,CACVoxB,SAAS,EACTi7G,YAAa,GACbrlI,SAAU,GACVsyO,GAAI,CACFC,oBAAqB,GACrBxsD,kBAAmB,GACnBysD,2BAA4B,KAoNhC,OAhNAH,EAAQziJ,wBAA0B,SAAUroG,GAC1CyR,EAAMs5O,GAAGC,oBAAoBhrP,IAAM,EACnCsqD,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQI,4BAA8B,SAAUr9K,GAC9Cp8D,EAAMs5O,GAAGvsD,kBAAoB3wH,EAC7BvjB,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQK,0BAA4B,SAAUhqP,GAC5CsQ,EAAMs5O,GAAGK,uBAAyBjqP,EAClCmpD,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQO,yBAA2B,SAAUC,GAC3C75O,EAAMs5O,GAAGQ,WAAa95O,EAAMs5O,GAAGQ,YAAc95O,EAAMqsI,YAAYytG,WAC/D95O,EAAMs5O,GAAGE,2BAA2BK,GAAU75O,EAAMs5O,GAAGE,2BAA2BK,GAAU,GAAK,EACjGhhM,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQU,yBAA2B,SAAUF,GACvC75O,EAAMs5O,GAAGE,2BAA2BK,KAAS75O,EAAMs5O,GAAGE,2BAA2BK,GAAU,GAC/FhhM,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQW,yBAA2B,WACjCh6O,EAAMs5O,GAAGE,2BAA6B,GACtC3gM,EAAay+L,aAAat3O,EAAMs5O,KAGlCD,EAAQtjM,SAAW,WACjB,OAAO/1C,GAGTq5O,EAAQpI,MAAQ,WACdjxO,EAAMgH,SAAW,GACjBhH,EAAMqsI,YAAc,IAGtBgtG,EAAQY,cAAgB,WACtBj6O,EAAMgH,SAAW,GACjB4tC,EAAiBq8L,SAGnBoI,EAAQa,WAAa,SAAUC,GAC7Bn6O,EAAMqsI,YAAYy+D,KAAOqvC,EACzBthM,EAAau+L,sBAAsBp3O,EAAMqsI,cAG3CgtG,EAAQ5Q,YAAc,SAAUpiB,GAC9BrmN,EAAMqsI,YAAYg6E,MAAQA,EAC1BxtK,EAAau+L,sBAAsBp3O,EAAMqsI,cAG3CgtG,EAAQe,uBAAyB,SAAUxnC,GACzC5yM,EAAMqsI,YAAYguG,iBAAmBznC,EACrC/5J,EAAau+L,sBAAsBp3O,EAAMqsI,cAG3CgtG,EAAQiB,gCAAkC,SAAyCC,GACjFv6O,EAAMqsI,YAAYkuG,0BAA4BA,EAC9C1hM,EAAau+L,sBAAsBp3O,EAAMqsI,cAG3CgtG,EAAQmB,sBAAwB,SAA+BC,GAC7Dz6O,EAAMqsI,YAAYouG,gBAAkBA,EACpCpiJ,EAAWqiJ,WAAWD,GACtB5hM,EAAau+L,sBAAsBp3O,EAAMqsI,cAsC3CgtG,EAAQpgM,WACRnD,iBACE,OAAO3F,GAAO2F,UACZ,MAAM6kM,EAAgB9hM,EAAas+L,mBAC/BwD,IACF36O,EAAMgH,SAAW2zO,GAGnB,MAAM7/K,EAAmBjiB,EAAaw+L,sBA7B1C,IACMv9J,GAoDN,SAAyB8gK,GACvB,IAAKA,IAAaA,EAASvvJ,SACzB,OAAO,EAIT,OAFYh+D,GAAAA,GAAS+lE,OACOwnJ,EAASvvJ,SACdjuC,EA7BjBy9L,CAAgB//K,SA7BlBgf,EAAW/1D,EAAGg2D,QAElBh2D,EAAGxB,IAAI,CACLhuB,SAAUqiE,EAAgB6B,iBAC1BtwD,OAAQsmN,EAActmN,WAErB8D,MAAK,SAAiBvX,GArB3B,IAA0CyT,EAAQ5T,EAAR4T,EAsBvBzT,EAAKyT,OAtB0B5T,EAuB7BG,EAAKH,SAtBxByL,EAAMqsI,YAAYt5I,QAAUoV,EAAOC,QACnCpI,EAAMqsI,YAAY7gI,QAAUrD,EAAO6C,QACnChL,EAAMqsI,YAAYytG,WAAa3xO,EAAO0uN,WACtC72N,EAAMqsI,YAAY0sE,gBAAkB5wM,EAAO2uN,gBAE3C92N,EAAMqsI,YAAYouG,gBAAkBlmP,EAASC,gBAC7CwL,EAAMqsI,YAAYy+D,KAAOv2M,EAAS62M,QAClCprM,EAAMqsI,YAAYg6E,MAAQ9xN,EAASumP,MACnC96O,EAAMqsI,YAAYguG,iBAAmB9lP,EAAS2D,iBAC9C8H,EAAMqsI,YAAYkuG,0BAA4BhmP,EAASijH,0BACvDx3G,EAAMqsI,YAAYhhD,SAAWh+D,GAAAA,GAAS+lE,OAclCv6C,EAAau+L,sBAAsBp3O,EAAMqsI,aACzCvyD,EAAS9qF,QAAQgR,MAElB+sD,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,gDAAiDC,IAAKA,OAG1E+uE,EAAS/tE,SAaZ/L,EAAMqsI,YAAcvxE,EAKtB,MAAMigL,EAAUliM,EAAa0+L,aAa7B,OAZIwD,IACF/6O,EAAMs5O,GAAKyB,EACP/6O,EAAMs5O,GAAGQ,YAAc95O,EAAMs5O,GAAGQ,aAAe95O,EAAMqsI,YAAYytG,aACnE95O,EAAMs5O,GAAGQ,WAAa95O,EAAMqsI,YAAYytG,WACxC95O,EAAMs5O,GAAGE,2BAA6B,GACtC3gM,EAAay+L,aAAat3O,EAAMs5O,MAIpCt5O,EAAMoxB,SAAU,EAChBinE,EAAWxlG,mBAAmBmN,EAAMqsI,YAAYytG,WAAY95O,EAAMqsI,YAAYt5I,SAC9EslG,EAAWqiJ,WAAW16O,EAAMqsI,YAAYouG,iBACjCz6O,MAaXq5O,EAAQlvL,oBAAsB,SAAUnjD,GACtC,IAAI8yE,EAAW/1D,EAAGg2D,QAElB,GAAsB,IAAlB/yE,EAAS/L,KAKX,OAJA+E,EAAMgH,SAASjT,KAAOiT,EAASlK,KAC/BkD,EAAMgH,SAASkkB,KAAO,CAAEjQ,SAAU,SAClC49B,EAAaq+L,mBAAmBl3O,EAAMgH,UACtC8yE,EAAS9qF,UACF8qF,EAAS/tE,QACX,GAAsB,IAAlB/E,EAAS/L,MAAgC,IAAlB+L,EAAS/L,MAAgC,IAAlB+L,EAAS/L,KAKhE,OAJA+E,EAAMgH,SAASjT,KAAOiT,EAASlK,KAC/BkD,EAAMgH,SAASkkB,KAAO,CAAEjQ,SAAU,cAClC49B,EAAaq+L,mBAAmBl3O,EAAMgH,UACtC8yE,EAAS9qF,UACF8qF,EAAS/tE,QACX,GAAsB,IAAlB/E,EAAS/L,KAKlB,OAJA+E,EAAMgH,SAASjT,KAAOiT,EAASlK,KAC/BkD,EAAMgH,SAASkkB,KAAO,CAAEjQ,SAAU,SAClC49B,EAAaq+L,mBAAmBl3O,EAAMgH,UACtC8yE,EAAS9qF,UACF8qF,EAAS/tE,QAGlB,MAAMolB,EAA6B,IAApBnqB,EAASkC,SAAiBlC,EAASg0O,YAAch0O,EAASg0O,UAAUtrP,SAAWsX,EAASgjE,UAAU,GAAGC,YA+BpH,OA7BAlmD,EAAGxB,IAAI,CACLxvB,QAASo+B,EAAS2nB,EAAc/lD,UAAYgxB,EAAGupB,KAAKtmC,EAASgjE,UAAU,GAAGC,YAAY7hE,SACtF+K,KAAMge,EAAS2nB,EAAc3lC,OAAS4Q,EAAGupB,KAAKtmC,EAASgjE,UAAU,GAAGC,YAAYE,QAE/El+D,MAAK,SAAiBvX,GACrB,IAAI4iG,EAAe8hJ,EAAW6B,sBAAsBvmP,EAAKye,KAAMnM,EAAS/L,MACpEigP,EAAqB5mJ,WAAW5/F,EAAK3B,QAAQ0nG,YAMjD,GALAz6F,EAAMgH,SAASkkB,KAAOosE,EACtBt3F,EAAMgH,SAASjT,KAAOiT,EAASlK,KAC/BkD,EAAMgH,SAAShN,KAAOgN,EAAS/L,KAC/B+E,EAAMgH,SAASq0D,WAAa6/K,EAExB5jJ,EAAa1mC,YAAkC,IAApB5pD,EAASkC,OACtC,OAAOwtC,EAAiB1/C,OAAOiV,MAAK,SAAuBvX,GACzDsL,EAAMgH,SAASgvC,gBAAkBthD,EAAK3B,cAI3CkZ,MAAK,WACJ4sC,EAAaq+L,mBAAmBl3O,EAAMgH,UACtC8yE,EAAS9qF,aAEV+9D,OAAM,SAAehiD,GACpB+uE,EAAS96D,OAAO,CAAElU,IAAK,8CAA+CC,IAAKA,OAE5EonD,SAAQ,WACPnyD,EAAMoxB,SAAU,KAGb0oD,EAAS/tE,SAGlBstO,EAAQtkM,mBAAqB,WAC3B,OAAO/0C,EAAMgH,SAASgvC,iBAGjBqjM,E,wLA7OTxzO,QAAQ5W,OAAO,iBAAiB+lD,QAAQ,eAAgBmkM,I,mCCEjD,SAAShzB,EAAatxK,GAC3B,MAAO,CACLuxK,SAKF,SAAkBC,GACXA,GAGH5wL,SAAS0lN,gBAAgBC,aAAa,QAAS/0B,GAC/CxxK,EAAa4zL,YAAYpiB,IAHzB5wL,SAAS0lN,gBAAgBE,gBAAgB,UAN3C/0B,UAaF,WACE,MAAMg1B,EAActnP,OAAOunP,WAAW,gCAAgCtyK,QAAU,OAAS,GACzFh5E,KAAKm2N,SAASk1B,IAdd70B,aAiBF,WACEhxL,SAAS0lN,gBAAgBE,gBAAgB,W,6EA1B7Cx1O,QAAQ5W,OAAO,iBAAiB2e,QAAQ,eAAgBu4M,I,0JCAjD,MAAMq1B,EAA+B,CAC1CC,SAAU,EACVC,KAAM,EACNC,MAAO,GAGIC,EAAkC,CAC7C,CAACJ,EAA6BC,UAAW,WACzC,CAACD,EAA6BE,MAAO,OACrC,CAACF,EAA6BG,OAAQ,U,8JCTjC,MAAME,EAAiC,CAC5CC,YAAa,EACbC,YAAa,EACbC,OAAQ,GAGGC,EAAoC,CAC/C,CAACJ,EAA+BC,aAAc,yBAC9C,CAACD,EAA+BE,aAAc,yBAC9C,CAACF,EAA+BG,QAAS,W,gGCT3C,MAEaE,EAA0B,CACrCzrM,YAHoCxrC,EAAQ,OAI5CgrD,WAAY,CACVptD,YAAa,oBAEfmC,SAAU,CACRosM,QAAS,O,8LCAN,SAAS+qC,EAAT,GAAgE,IAA9B39O,EAA8B,EAA9BA,SAAUa,EAAoB,EAApBA,UACjD,OACE,iCACE,SAAC+kC,EAAA,EAAD,uBACA,gBAAKlzC,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,EAAA,EAAD,CACEE,YAAY,YACZD,UAAWA,EACXF,QAAS,kBAAMX,KAHjB,kC,wDCCH,SAAS49O,EAAT,GAA8C,IANjCjiM,EAMI54C,EAA6B,EAA7BA,KAAM3N,EAAuB,EAAvBA,MAAOsL,EAAgB,EAAhBA,MACnC,OACE,kBACEhO,UAAU,iCACVH,MAAO,CACL07B,iBAXY0tB,EAWgBj7C,EAAO,GAVzC,UAAUi7C,GAAV,OAAgBptC,KAAKwf,MAAM8vN,MACxBvoP,SAAS,IACTwoP,SAAS,EAAG,OASTp9O,MAAAA,EACAq5L,QAAS,YALb,UAQGh3L,EACA3N,K,oCCzBP,OAAgB,YAAc,gIAAgI,KAAO,yHCmB/J2oP,EAIE,CACJC,SAAU,OACVt9O,MAAO,UACPwZ,KAAM,iBAPJ6jO,EASE,CACJC,SAAU,OACVt9O,MAAO,UACPwZ,KAAM,iBAZJ6jO,EAcI,CACNC,SAAU,SACVt9O,MAAO,UACPwZ,KAAM,mBAjBJ6jO,EAmBQ,CACVC,SAAU,aACVt9O,MAAO,UACPwZ,KAAM,wBAIJ+jO,EAAoBC,EAAAA,GAAAA,wBAAiCA,EAAAA,IAEpD,SAASC,EAAT,GAMG,IALR3vO,EAKQ,EALRA,IACAqlB,EAIQ,EAJRA,IACAE,EAGQ,EAHRA,KACA3+B,EAEQ,EAFRA,MACAyD,EACQ,EADRA,SAEMulP,EAEN,SAAwBhpP,GACtB,OAAIA,EAAQ,GACH2oP,EAGL3oP,EAAQ,GACH2oP,EAGL3oP,EAAQ,GACH2oP,EAGFA,EAfWM,CAAejpP,GAoCnC,OACE,iBAAK1C,WAAW6L,EAAAA,EAAAA,GAAK8wB,EAAAA,KAAaA,EAAO+uN,EAAYJ,WAArD,WACE,gBAAKtrP,UAAU,WAAf,UACE,SAACurP,EAAD,CACEK,aAAc,SAAClpP,GAAD,gBAAcA,EAAd,gBACdoZ,IAAKA,EACLqlB,IAAKA,EACLE,KAAMA,EACNp5B,aAAc,GACdvF,MAAOA,EACPyD,SAdR,SAAsB0lP,GACpB1lP,EAAS0lP,IAcHC,YAAa,CACX5sP,OAAQ,GACRD,MAAO,GACP6jP,YAAa,KACbJ,YAAagJ,EAAY19O,MACzBg5E,IAAK,IACL+kK,UAAW,QAEbC,UAAW,CAAE9sP,OAAQ,IACrB+sP,WAAY,CAAE1wN,gBAAiBmwN,EAAY19O,MAAO9O,OAAQ,SAI9D,gBAAKc,WAAW6L,EAAAA,EAAAA,GAAK,WAAY8wB,EAAAA,aAAjC,UACE,SAACuuN,EAAD,CACE76O,KA5CR,SAAsBi7O,GACpB,OAAQA,GACN,IAAK,OACH,OAAO,SAAC,IAAD,CAASv9O,KAAK,KAAK/N,UAAU,cAAcoB,YAAY,QAChE,IAAK,OACL,IAAK,SACH,OACE,SAAC,IAAD,CAAa2M,KAAK,KAAK/N,UAAU,cAAcoB,YAAY,QAE/D,QACE,OAAO,SAAC,IAAD,CAAM2M,KAAK,KAAK/N,UAAU,cAAcoB,YAAY,SAkCnD8qP,CAAaR,EAAYJ,UAC/B5oP,MAAOgpP,EAAYlkO,KACnBxZ,MAAO09O,EAAY19O,aC/CtB,IAAMm+O,GAAsB13O,EAAAA,EAAAA,IAvD5B,YAKG,IAJRozN,EAIQ,EAJRA,eACA15N,EAGQ,EAHRA,UACAzL,EAEQ,EAFRA,MACAyD,EACQ,EADRA,SAuBA,OACE,iCACE,SAAC+sC,EAAA,EAAD,2BACA,gBAAKlzC,UAAU,wCAAf,uHAKA,SAACkzC,EAAA,EAAD,8BACA,gBAAKlzC,UAAU,wCAAf,kEAIA,gBAAKA,UAAU,aAAf,UACE,SAACyrP,EAAD,CACE3vO,IAAK,EACLqlB,IAAK,GACLE,KAAM,EACN3+B,MAAOA,EAAM27L,uBACbl4L,SAAUA,OAId,SAAC8kP,EAAD,CAAwB39O,SA5C5B,WACM5K,EAAM27L,uBAAyB,IACjCn4K,EAAAA,EAAAA,IAAmB,CACjBjZ,MAAO,wBACPjB,QACE,qHACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,MACP3F,UAAW,eAGfylB,SAAU,SAAmBC,GACvBA,GAAWmiN,OAInBA,KA2B4C15N,UAAWA,SAKE,CAC7D,iBACA,YACA,QACA,aCpEF,EAAewG,IAAAA,OACL,oCAAqC,CAACy3O,EAAAA,UAC7Cx3O,UAAU,eAAgBu3O,GAC1Bv3O,UAAU,yBAA0By3O,EAAAA,wBACpCz3O,UAAU,0BAA2Bo2O,EAAAA,yBAJxC,M,8HCHe,MAAMsB,EAEnBttM,YAAYutM,GACVxtP,KAAKwtP,YAAcA,EAEnBxtP,KAAKytP,aAAe,GACpBztP,KAAK0tP,iBAAmBzyO,EAAAA,GAAAA,mBACxBjb,KAAK2tP,kBAAoB3tP,KAAK2tP,kBAAkBtuP,KAAKW,MACrDA,KAAK4tP,YAAc5tP,KAAK4tP,YAAYvuP,KAAKW,MACzCA,KAAK6tP,aAAe7tP,KAAK6tP,aAAaxuP,KAAKW,MAC3CA,KAAK8tP,kBAAoB9tP,KAAK8tP,kBAAkBzuP,KAAKW,MACrDA,KAAK+tP,gBAAkB/tP,KAAK+tP,gBAAgB1uP,KAAKW,MACjDA,KAAKguP,gBAAkBhuP,KAAKguP,gBAAgB3uP,KAAKW,MAGnD+tP,gBAAgB9xC,GAGd,GAFAj8M,KAAKiuP,WAAa,IAEbhyC,IAAYA,EAAQ92M,SAAS,KAChC,OAGF,MAAO,CAAE8oP,GAAchyC,EAAQ1gL,MAAM,KACrC,IAAK0yN,EACH,OAGF,MAAM9hJ,EAAQ,IAAU8hJ,EAAW1yN,MAAM,MACzCv7B,KAAKytP,aAAethJ,EAAMhuG,KAAK+vP,GAAU,MAAKA,MAAQ/gP,KAAK,KAG7D6gP,gBAAgB/xC,GACdj8M,KAAK+tP,gBAAgB9xC,GAGvB2xC,cACE,OAAO5tP,KAAKwtP,YAAYvhP,MAAMjM,KAAKsE,UAGrCupP,eACE,OAAO7tP,KAAKwtP,YAAYz3O,OAAO/V,KAAKsE,UAGtCwpP,oBACM9tP,KAAKsE,SAASumO,oBAChB7qO,KAAKsE,SAAS6pP,YAAcnuP,KAAKouP,oBAAoBjwP,KAAKyO,GAASA,EAAK9I,QAG1E,MAAMQ,EAAW,IACZtE,KAAKsE,SACRmgO,yBAA0BzkO,KAAKsE,SAASmgO,yBAAyBtmO,KAAK0rE,IAAD,IAAkBA,EAAQo7J,YAAap7J,EAAOo7J,aArD5F,2BAwDzB,OAAOjlO,KAAKwtP,YAAYa,YAAY/pP,GAGtCqpP,kBAAkB7+N,GAChB9uB,KAAKsuP,UAAYx/N,EAGnBy/N,aACEvuP,KAAKsE,SAASkqP,KAAK5qP,KAAK,IAG1B6qP,cAActuN,GACZngC,KAAKsE,SAASkqP,KAAKvrL,OAAO9iC,EAAO,GAGnCuuN,8BACE,OAAOhzO,EAAAA,EAAAA,IAAc1b,KAAK0tP,oBAAsB1tP,KAAK2uP,kBAGvDxrM,UACEnjD,KAAKsuP,UAAYtuP,KAAKsE,SAASglN,UAC/BtpN,KAAK+tP,gBAAgB/tP,KAAKsE,SAASggO,W,6HC/EvC,MAIasqB,EAAa,CACxBpuM,YALoCxrC,EAAQ,OAM5CE,WAFwB,UAGxBH,SAAU,CACRzQ,SAAU,IACV8pP,oBAAqB,IACrBE,UAAW,IACXv+O,MAAO,IACP8+O,kBAAmB,IACnB/lB,eAAgB,IAChBC,gBAAiB,IACjB4lB,gBAAiB,Q,0RCSrB,UAAe/4O,IAAAA,OACL,yCAA0C,IACjD+H,QAAQ,cAAe6vO,EAAAA,aACvB7vO,QAAQ,OAAQ8tO,EAAAA,MAChB51O,UAAU,wBAAyBi5O,EAAAA,uBACnCj5O,UAAU,sBAAuBk5O,EAAAA,qBACjCl5O,UAAU,eAAgBm5O,EAAAA,cAC1Bn5O,UAAU,aAAc+4O,EAAAA,YACxB/4O,UAAU,kBAAmBo5O,EAAAA,iBAC7Bp5O,UAAU,sBAAuBq5O,EAAAA,qBACjCr5O,UAAU,iBAAkBs5O,EAAAA,gBAC5Bt5O,UAAU,qBAAsBu5O,EAAAA,oBAChCv5O,UAAU,qBAAsBw5O,EAAAA,oBAChCx5O,UAAU,wBAAyBy5O,EAAAA,uBACnCz5O,UAAU,6BAA8B05O,EAAAA,4BACxC15O,UAAU,wBAAyB25O,EAAAA,uBACnC35O,UAAU,uBAAwB45O,EAAAA,sBAClC55O,UAAU,uBAAwB65O,EAAAA,sBAClC75O,UAAU,wBAAyB85O,EAAAA,uBACnC95O,UAAU,uBAAwB+5O,EAAAA,sBAClC/5O,UAAU,uBAAwBg6O,EAAAA,sBAClCh6O,UAAU,qBAAsBi6O,EAAAA,oBArBnC,M,8FCxBA,MAEahB,EAAwB,CACnCtuM,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACRzQ,SAAU,IACVyL,MAAO,IACP8+O,kBAAmB,IACnBnB,iBAAkB,O,4GCRtB,MAIamC,EAAuB,CAClCrvM,YALoCxrC,EAAQ,OAM5CE,WAFkC,UAGlCH,SAAU,CACRzQ,SAAU,IACV8pP,oBAAqB,IACrB2B,8BAA+B,IAC/BC,cAAe,IACftC,iBAAkB,O,gFCZP,MAAMuC,EAEnBhwM,YAAYC,EAAQz1B,EAAe+iO,GACjC1uP,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,EAAe+iO,YAAAA,IAE7CxtP,KAAK+V,OAAS,KACd/V,KAAKkwP,WAAa,KAClBlwP,KAAKmwP,wBAAyB,EAE9BnwP,KAAK4wD,cAAgB5wD,KAAK4wD,cAAcvxD,KAAKW,MAC7CA,KAAKowP,WAAapwP,KAAKowP,WAAW/wP,KAAKW,MACvCA,KAAK6pE,OAAS7pE,KAAK6pE,OAAOxqE,KAAKW,MAGjCowP,aACEpwP,KAAKsE,SAASmgO,yBAAyB7gO,KAAK,CAAEmhO,YAAa,GAAIC,eAAgB,GAAIC,YAAa,KAGlGr0K,cAAczwB,GACZngC,KAAKsE,SAASmgO,yBAAyBxhK,OAAO9iC,EAAO,GAGvD0pC,SACE,OAAO7pE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+V,OAAS,KACd/V,KAAK+V,aAAe/V,KAAKgwP,gBACzBhwP,KAAKmwP,uBAAyBnwP,KAAK+V,QAAU/V,KAAK+V,OAAOtW,OAAS,EAClE,MAAOwO,GACPjO,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,+BAKpC,gBACX,GAAIjO,KAAKsE,SAASumO,mBAAqB7qO,KAAKsE,SAAS6pP,aAAenuP,KAAKsE,SAAS6pP,YAAY1uP,OAAS,EAAG,CACxG,MAAM6E,EAAW,IACZtE,KAAKsE,SACRmgO,yBAA0BzkO,KAAKsE,SAASmgO,yBAAyBtmO,KAAK0rE,IAAD,IAAkBA,EAAQo7J,YAAap7J,EAAOo7J,aAAejlO,KAAK+vP,mCAGzI/vP,KAAK+V,aAAe/V,KAAKwtP,YAAYa,YAAY/pP,GAG/CtE,KAAK+V,QAAU/V,KAAK+V,OAAOtW,OAAS,IACtCO,KAAKmwP,wBAAyB,I,gKC7CpC,MAIaX,EAAwB,CACnChvM,YALoCxrC,EAAQ,OAM5CE,WAFmC,UAGnCH,SAAU,CACRzQ,SAAU,IACV0rP,cAAe,IACftC,iBAAkB,O,gFCVP,MAAM2C,EAEnBpwM,YAAYC,EAAQz1B,GAClB3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,IAE9BzqB,KAAK+V,OAAS,KACd/V,KAAKswP,WAAY,EAEjBtwP,KAAK4wD,cAAgB5wD,KAAK4wD,cAAcvxD,KAAKW,MAC7CA,KAAKowP,WAAapwP,KAAKowP,WAAW/wP,KAAKW,MACvCA,KAAK6pE,OAAS7pE,KAAK6pE,OAAOxqE,KAAKW,MAGjCowP,aACEpwP,KAAKsE,SAASV,KAAK,CAAEmhO,YAAa,GAAIC,eAAgB,GAAIC,YAAa,KAGzEr0K,cAAczwB,GACZngC,KAAKsE,SAAS2+D,OAAO9iC,EAAO,GAG9B0pC,SACE,OAAO7pE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+V,OAAS,KACd/V,KAAKswP,WAAY,EACjBtwP,KAAK+V,aAAe/V,KAAKgwP,gBACzB,MAAO/hP,GACPjO,KAAKswP,WAAY,EACjBtwP,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,+B,iJC7BnD,MAIa2hP,EAAuB,CAClCpvM,YALoCxrC,EAAQ,OAM5CE,WAFkC,UAGlCH,SAAU,CACRzQ,SAAU,IACV0rP,cAAe,IACftC,iBAAkB,O,gFCVP,MAAM6C,EAEnBtwM,YAAYC,EAAQz1B,GAClB3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,IAE9BzqB,KAAKiM,MAAQ,KAEbjM,KAAK4wD,cAAgB5wD,KAAK4wD,cAAcvxD,KAAKW,MAC7CA,KAAKowP,WAAapwP,KAAKowP,WAAW/wP,KAAKW,MACvCA,KAAK6pE,OAAS7pE,KAAK6pE,OAAOxqE,KAAKW,MAGjCowP,aACEpwP,KAAKsE,SAASV,KAAK,CAAEghO,OAAQ,GAAI4rB,kBAAmB,GAAIz5M,OAAQ,KAGlE6Z,cAAczwB,GACZngC,KAAKsE,SAAS2+D,OAAO9iC,EAAO,GAG9B0pC,SACE,OAAO7pE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKiM,MAAQ,KACbjM,KAAKswP,WAAY,EACjBtwP,KAAKiM,YAAcjM,KAAKgwP,gBACxB,MAAO/hP,GACPjO,KAAKswP,WAAY,EACjBtwP,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,+B,iJC5BnD,MAIaihP,EAAsB,CACjC1uM,YALoCxrC,EAAQ,OAM5CE,WAFiC,UAGjCH,SAAU,CACR6P,OAAQ,IACRub,MAAO,IACPstN,aAAc,IACdgD,WAAY,IAEZ7/L,cAAe,IACf88L,iBAAkB,O,gFCdP,MAAMgD,EAEnBzwM,YAAYx1B,GACV3rB,OAAOM,OAAOY,KAAM,CAAEyqB,cAAAA,IAEtBzqB,KAAK+V,OAAS,GAEd/V,KAAK2wP,eAAiB3wP,KAAK2wP,eAAetxP,KAAKW,MAGjD2wP,eAAeC,GACb5wP,KAAK4kB,OAAOmgN,YAAc6rB,EAG5BC,WACE7wP,KAAK+V,OAAOnS,KAAK,CAAEmG,KAAM,KAAMpG,MAAO,KAGxCmtP,YAAYC,GACV/wP,KAAK+V,OAAOktD,OAAO8tL,EAAQ,GAC3B/wP,KAAKgxP,iBAGPA,iBACE,MAAMC,EAAejxP,KAAK+V,OAAO5X,KAAI,EAAG4L,KAAAA,EAAMpG,MAAAA,KAAa,IAAGoG,KAAQpG,OAAUwJ,KAAK,IACrFnN,KAAKwlN,eAAeyrC,EAAgB,KAAIjxP,KAAKywP,eAAeQ,MAAoB,GAAEjxP,KAAKywP,cAGzFjrC,eAAelzM,GACbtS,KAAK4kB,OAAOqgN,YAAc3yN,EAG5B4+O,mBACE,MAAM1uN,EAAQxiC,KAAK4kB,OAAOqgN,YAAYziM,MAAM,qDAC5C,IAAKA,EACH,OAGF,MAAO,CAAC,CAAG+2J,EAAc,IAAM/2J,EAE/BxiC,KAAK+V,OAASwjL,EACX/vL,MAAM,GAAI,GACV+xB,MAAM,MACNp9B,KAAK+tE,GAAQA,EAAI3wC,MAAM,OACvBp9B,KAAI,EAAE4L,EAAMpG,MAAR,CAAsBoG,KAAAA,EAAMpG,MAAAA,MAGrCw/C,UACEnjD,KAAKkxP,oB,oIChDT,MAIajC,EAAkB,CAC7BzuM,YALoCxrC,EAAQ,MAM5CE,WAF6B,UAG7BH,SAAU,CACRzQ,SAAU,IACVmpP,aAAc,IACdgD,WAAY,IAEZT,cAAe,IACftC,iBAAkB,O,wGCXP,MAAMyD,EAEnBlxM,YAAYC,EAAQz1B,GAClB3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,IAE9BzqB,KAAK+V,OAAS,KAEd/V,KAAK4wD,cAAgB5wD,KAAK4wD,cAAcvxD,KAAKW,MAC7CA,KAAKowP,WAAapwP,KAAKowP,WAAW/wP,KAAKW,MACvCA,KAAK6pE,OAAS7pE,KAAK6pE,OAAOxqE,KAAKW,MAGjCowP,aACE,MAAMgB,EAAc,IAAOpxP,KAAKsE,UAChCtE,KAAKsE,SAASV,KAAK,CAAEmhO,YAAa/kO,KAAKytP,aAAczoB,eAAgBosB,EAAYpsB,eAAgBC,YAAajlO,KAAKywP,aAGrH7/L,cAAczwB,GACZngC,KAAKsE,SAAS2+D,OAAO9iC,EAAO,GAG9B0pC,SACE,OAAO7pE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+V,OAAS,KACd/V,KAAKswP,WAAY,EACjBtwP,KAAK+V,aAAe/V,KAAKgwP,gBACzB,MAAO/hP,GACPjO,KAAKswP,WAAY,EACjBtwP,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,+B,kIC/BnD,MAEa8gP,EAAsB,CACjCvuM,YAHoCxrC,EAAQ,OAI5CE,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,O,0GCXlB,MAIawuM,EAAqB,CAChC7uM,YALoCxrC,EAAQ,OAM5CE,WAFgC,UAGhCH,SAAU,CACRzQ,SAAU,IACVgqP,UAAW,IACXv+O,MAAO,IACPq+O,oBAAqB,IACrBT,kBAAmB,IACnBkB,kBAAmB,IACnBwC,mBAAoB,IACpBC,oBAAqB,IACrBC,yBAA0B,IAC1BzoB,eAAgB,IAChBC,gBAAiB,IACjByoB,mBAAoB,O,+FCjBT,MAAMC,EACnBxxM,cACEjgD,KAAK0tP,iBAAmBzyO,EAAAA,GAAAA,mBAG1BszO,aACEvuP,KAAKsE,SAASkqP,KAAK5qP,KAAK,IAG1B6qP,cAActuN,GACZngC,KAAKsE,SAASkqP,KAAKvrL,OAAO9iC,EAAO,M,2GCZrC,MAIamvN,EAAwB,CACnC9uM,YALoCxrC,EAAQ,OAM5CE,WAFmC,UAGnCH,SAAU,CAERosM,QAAS,IAET/5M,SAAU,IAEVsqP,OAAQ,IACR9qP,MAAO,IACP8mP,iBAAkB,O,gFCfP,MAAMiE,EAEnB1xM,cACEjgD,KAAKuF,QAAU,GAGjB0gI,WACEjmI,KAAKuF,QAAQ3B,KAAK,CAAEmG,KAAM,KAAMpG,MAAO,KAGzC4jI,YAAYwpH,GACV/wP,KAAKuF,QAAQ09D,OAAO8tL,EAAQ,GAC5B/wP,KAAK4xP,kBAGPC,OAAOd,GACDA,GAAU,IAGdl7M,EAAU71C,KAAKuF,QAASwrP,EAAQA,EAAS,GACzC/wP,KAAK4xP,mBAGPE,SAASf,GACHA,GAAU/wP,KAAKuF,QAAQ9F,OAAS,IAGpCo2C,EAAU71C,KAAKuF,QAASwrP,EAAQA,EAAS,GACzC/wP,KAAK4xP,mBAGPA,kBACE,MAAMG,EAAK/xP,KAAKuF,QACb+M,QAAO,EAAG3O,MAAAA,KAAYA,IACtBxF,KAAI,EAAG4L,KAAAA,EAAMpG,MAAAA,KAAa,GAAEoG,KAAQpG,MACpC+6C,OAAO1+C,KAAK0xP,QACZp/O,QAAQ3O,GAAUA,IAClBwJ,KAAK,KAERnN,KAAKoH,SAAS2qP,GAGhBC,YAAYD,EAAItE,EAAe,IAC7B,MAAMwE,EAAQ,gBACd,IAAIC,EAAW,GACXl4B,EAAO+3B,EACPvvN,EAAQw3L,EAAKx3L,MAAMyvN,GACvB,KAAOzvN,GAASw3L,IAASyzB,GAAc,CACrC,MAAO,CAAE1jP,EAAMpG,GAAS6+B,EACxB0vN,EAAStuP,KAAK,CAAEmG,KAAAA,EAAMpG,MAAAA,IACtBq2N,EAAOA,EAAK3+L,QAAQ42N,EAAO,IAC3BzvN,EAAQw3L,EAAKx3L,MAAM,iBAErB,OAAO0vN,EAGTC,cACEnyP,KAAKuF,QAAUvF,KAAKgyP,YAAYhyP,KAAKmhN,QAASnhN,KAAK0xP,QAGrD19N,YAAW,OAAE09N,EAAF,QAAUvwC,KACbuwC,IAAWvwC,GAAauwC,GAAUA,EAAO9oI,iBAG/C5oH,KAAK4xP,kBAGPzuM,UACEnjD,KAAKmyP,eAIT,SAASt8M,EAAUtrC,EAAOurC,EAAWs8M,GACnC,IAAKz8M,EAAgBprC,EAAOurC,KAAeH,EAAgBprC,EAAO6nP,GAChE,MAAM,IAAIzzP,MAAM,0BAElB,MAAO01C,GAAQ9pC,EAAM04D,OAAOntB,EAAW,GAIvC,SAASH,EAAgBprC,EAAO41B,GAC9B,OAAOA,GAAS,GAAKA,GAAS51B,EAAM9K,OAHtC8K,EAAM04D,OAAOmvL,EAAS,EAAG/9M,G,gIC9E3B,MAIak7M,EAA6B,CACxC/uM,YALoCxrC,EAAQ,OAM5CE,WAFwC,UAGxCH,SAAU,CAERosM,QAAS,IAET/5M,SAAU,IAEVsqP,OAAQ,IAERvxN,MAAO,IACPywB,cAAe,IACf88L,iBAAkB,O,gFCjBP,MAAM2E,EAEnBpyM,cACEjgD,KAAK0lH,UAAY,GACjB1lH,KAAKuF,QAAU,GAEfvF,KAAK4xP,gBAAkB5xP,KAAK4xP,gBAAgBvyP,KAAKW,MACjDA,KAAKsyP,kBAAoBtyP,KAAKsyP,kBAAkBjzP,KAAKW,MACrDA,KAAKuyP,cAAgBvyP,KAAKuyP,cAAclzP,KAAKW,MAC7CA,KAAK8wP,YAAc9wP,KAAK8wP,YAAYzxP,KAAKW,MAG3C4xP,gBAAgBrsP,GACdvF,KAAKuyP,cAAcvyP,KAAK0lH,UAAWngH,GAGrC+sP,oBACEtyP,KAAKuyP,cAAcvyP,KAAK0lH,UAAW1lH,KAAKuF,SAG1CgtP,cAAc7sI,EAAWngH,GACvB,IAAKmgH,EACH,OAEF,MAAM8sI,EAAkB,MAAK9sI,IAC7B1lH,KAAKoH,SAASpH,KAAKmgC,MAAO56B,GAAWvF,KAAK0xP,OAAU,GAAEc,KAAkBjtP,GAAWvF,KAAK0xP,SAAWc,GAGrG1B,cACE9wP,KAAK4wD,cAAc5wD,KAAKmgC,OAG1BsyN,aAAa9uP,EAAO+tP,GAClB,GAAI/tP,IAAU+tP,EAGZ,OAFA1xP,KAAK0lH,UAAY,QACjB1lH,KAAKuF,QAAUmsP,GAIjB,MAAOhsI,EAAWngH,GAAWvF,KAAKmhN,QAAQ5lL,MAAM,SAChDv7B,KAAK0lH,UAAYA,EAAUrqF,QAAQ,MAAO,IAC1Cr7B,KAAKuF,QAAUA,GAAW,GAG5BmtP,WAAU,QAAEvxC,EAAF,OAAWuwC,KACbA,IAAUA,EAAO9oI,iBAAqBu4F,IAG5CnhN,KAAKyyP,aAAatxC,EAAQx9M,MAAO+tP,EAAO/tP,OAG1Cw/C,UACEnjD,KAAKyyP,aAAazyP,KAAKmhN,QAASnhN,KAAK0xP,S,0HCpDzC,MAIajC,EAAuB,CAClCjvM,YALoCxrC,EAAQ,OAM5CE,WAFkC,UAGlCH,SAAU,CACRzQ,SAAU,IACVgqP,UAAW,IACXv+O,MAAO,IACP8+O,kBAAmB,IAEnBlB,kBAAmB,IACnB0D,mBAAoB,IACpBC,oBAAqB,IACrBxoB,eAAgB,IAChBC,gBAAiB,IACjByoB,mBAAoB,O,+FChBT,MAAMmB,EAEnB1yM,cACEjgD,KAAKytP,aAAe,GACpBztP,KAAK0tP,iBAAmBzyO,EAAAA,GAAAA,mBAExBjb,KAAK4yP,iBAAmB5yP,KAAK4yP,iBAAiBvzP,KAAKW,MACnDA,KAAK6yP,kBAAoB7yP,KAAK6yP,kBAAkBxzP,KAAKW,MACrDA,KAAKguP,gBAAkBhuP,KAAKguP,gBAAgB3uP,KAAKW,MAGnD4yP,mBACE,MAAME,EAAiB9yP,KAAKsE,SAASggO,SACrC,IAAImpB,EAAeztP,KAAK6yP,kBAAkBC,GAC1C,IAAKrF,GAAgBztP,KAAKsE,SAASigO,eAAe9kO,OAAS,EAAG,CAC5D,MAAMszP,EAAiB/yP,KAAKsE,SAASigO,eAAe,GACpDkpB,EAAeztP,KAAK6yP,kBAAkBE,EAAenuB,QAGvD5kO,KAAKytP,aAAeA,EAGtBoF,kBAAkBzoP,EAAS,IACzB,MAAM+1B,EAAQ/1B,EAAO1E,cAAcG,QAAQ,OAC3C,OAAkB,IAAXs6B,EAAe/1B,EAAOtE,UAAUq6B,GAAS,GAGlD6tN,gBAAgB8E,GACd9yP,KAAKytP,aAAeztP,KAAK6yP,kBAAkBC,GAG7CvE,aACEvuP,KAAKsE,SAASkqP,KAAK5qP,KAAK,IAG1B6qP,cAActuN,GACZngC,KAAKsE,SAASkqP,KAAKvrL,OAAO9iC,EAAO,GAGnCgjB,UACEnjD,KAAK4yP,oB,2GC1CT,MAEalD,EAAuB,CAClClvM,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACRzQ,SAAU,IACVgqP,UAAW,IACXX,kBAAmB,IACnBxtM,iBAAkB,IAClBjyC,MAAO,IACPw/O,iBAAkB,O,6GCVtB,MAIaiC,EAAwB,CACnCnvM,YALoCxrC,EAAQ,OAM5CE,WAFmC,UAGnCH,SAAU,CACRzQ,SAAU,IACVopP,iBAAkB,IAClBsF,wBAAyB,O,gFCV7B,MAAMC,EAAc,CAClBC,QAAS,UACTC,QAAS,UACTC,QAAS,WAGI,MAAMC,EAEnBpzM,YAAYC,EAAQstM,EAAa/iO,GAC/B3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQstM,YAAAA,EAAa/iO,cAAAA,IAE3CzqB,KAAKizP,YAAcA,EAEnBjzP,KAAK+P,MAAQ,CACXujP,WAAY,IAID,gBAACnrM,EAAU0jB,GACxB,OAAO7rE,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMujP,WAAaL,EAAYC,QACpC,IACE,MAAMx8O,QAAiB1W,KAAKwtP,YAAY+F,UAAUvzP,KAAKsE,SAAU6jD,EAAU0jB,GAC3E7rE,KAAK+P,MAAMujP,WAAa58O,EAASqkK,MAAQk4E,EAAYE,QAAUF,EAAYG,QAC3E,MAAOt4O,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wBACzC9a,KAAK+P,MAAMujP,WAAaL,EAAYG,a,uFC1BrC,SAASI,IACd,MAAO,CACLC,eAAe,EACfnvB,SAAU,GACVkqB,KAAM,CAAC,IACPkF,WAAY,EACZtqC,UAAW,CACT5nB,KAAK,EACLC,eAAe,GAEjBkyD,UAAU,EACVpvB,eAAgB,CACd,CACEK,OAAQ,GACR7tL,OAAQ,GACRy5M,kBAAmB,KAGvBhsB,oBAAqB,CACnB,CACEO,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBP,yBAA0B,CACxB,CACEM,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBN,iBAAiB,GAId,SAASkvB,IACd,MAAMtvP,EApCC,CACLmvP,eAAe,EACfnvB,SAAU,GACVkqB,KAAM,CAAC,IACPkF,WAAY,EACZtqC,UAAW,CACT5nB,KAAK,EACLC,eAAe,GAEjBkyD,UAAU,EACVpvB,eAAgB,CACd,CACEK,OAAQ,GACR7tL,OAAQ,GACRy5M,kBAAmB,KAGvBhsB,oBAAqB,CACnB,CACEO,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBP,yBAA0B,CACxB,CACEM,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBN,iBAAiB,GAcnB,OAPApgO,EAASovP,WAAa,EACtBpvP,EAASmvP,eAAgB,EACzBnvP,EAASigO,eAAe,GAAGisB,kBAAoB,iBAC/ClsP,EAASigO,eAAe,GAAGxtL,OAAS,qBACpCzyC,EAASkgO,oBAAoB,GAAGQ,eAAiB,SACjD1gO,EAASkgO,oBAAoB,GAAGS,YAAc,sBAEvC3gO,EAGF,SAASuvP,IACd,MAAMvvP,EAjDC,CACLmvP,eAAe,EACfnvB,SAAU,GACVkqB,KAAM,CAAC,IACPkF,WAAY,EACZtqC,UAAW,CACT5nB,KAAK,EACLC,eAAe,GAEjBkyD,UAAU,EACVpvB,eAAgB,CACd,CACEK,OAAQ,GACR7tL,OAAQ,GACRy5M,kBAAmB,KAGvBhsB,oBAAqB,CACnB,CACEO,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBP,yBAA0B,CACxB,CACEM,YAAa,GACbE,YAAa,GACbD,eAAgB,KAGpBN,iBAAiB,GA2BnB,OAPApgO,EAASovP,WAAa,EACtBpvP,EAASmvP,eAAgB,EACzBnvP,EAASigO,eAAe,GAAGisB,kBAAoB,MAC/ClsP,EAASigO,eAAe,GAAGxtL,OAAS,8BACpCzyC,EAASkgO,oBAAoB,GAAGQ,eAAiB,SACjD1gO,EAASkgO,oBAAoB,GAAGS,YAAc,6BAEvC3gO,E,2PC3DT,MAIa0qP,EAAe,CAC1BxuM,YALoCxrC,EAAQ,OAM5CE,WAF0B,UAG1BH,SAAU,CACRzQ,SAAU,IACVgqP,UAAW,IACXF,oBAAqB,IACrBr+O,MAAO,IACP8+O,kBAAmB,IACnB/lB,eAAgB,IAChBC,gBAAiB,IACjB4lB,gBAAiB,O,2ICFRhoP,EAAU,CACrB,CACErI,GAAI,cACJgT,MAAM,E,QAAA,KAACuB,EAAA,EAAD,CAAWvB,KAAMojB,EAAAA,IACvB9tB,MAAO,SACPjD,MAVM,GAYR,CACErF,GAAI,gBACJgT,KAAMwiP,EAAAA,EACNltP,MAAO,WACPjD,MAfS,EAgBT6R,QAASyF,EAAAA,GAAAA,qBCtBb,MAAM84O,EAAe,CACnBvxB,OAAQ,EACRwxB,UAAW,EACXC,GAAI,GAGAC,EAAuB,6BAGd,MAAMC,EAEnBl0M,YAAYutM,GACV1uP,OAAOM,OAAOY,KAAM,CAAEwtP,YAAAA,EAAauG,aAAYA,IAE/C/zP,KAAKsuP,UAAY,KACjBtuP,KAAKo0P,eAAiB,GAEtBp0P,KAAKq0P,mBAAqB1tP,EAE1B3G,KAAK2tP,kBAAoB3tP,KAAK2tP,kBAAkBtuP,KAAKW,MACrDA,KAAK4tP,YAAc5tP,KAAK4tP,YAAYvuP,KAAKW,MACzCA,KAAK6tP,aAAe7tP,KAAK6tP,aAAaxuP,KAAKW,MAC3CA,KAAK8tP,kBAAoB9tP,KAAK8tP,kBAAkBzuP,KAAKW,MACrDA,KAAKs0P,mBAAqBt0P,KAAKs0P,mBAAmBj1P,KAAKW,MAGzD2tP,kBAAkB7+N,GAChB9uB,KAAKsuP,UAAYx/N,EAGnBq0B,UACEnjD,KAAKsuP,UAAYtuP,KAAKsE,SAAS8kN,UAAUE,UAG3CgrC,mBAAmBC,GAGjB,GAFAv0P,KAAKo0P,eAAep0P,KAAKsE,SAASovP,YAAc1zP,KAAKsE,SAEjDtE,KAAKo0P,eAAeG,GACtBv0P,KAAKsE,SAAWtE,KAAKo0P,eAAeG,QAItC,OAAQA,GACN,KAAKR,EAAaC,UAChBh0P,KAAKsE,UAAWuvP,EAAAA,EAAAA,8BAChB,MACF,KAAKE,EAAavxB,OAChBxiO,KAAKsE,UAAWkvP,EAAAA,EAAAA,2BAKtB5F,cACE,MAAMtpP,EAAW,IACZtE,KAAKsE,SACRigO,eAAgBvkO,KAAKsE,SAASigO,eAAepmO,KAAK0rE,IAAD,IAAkBA,EAAQ9yB,OAAQ8yB,EAAO9yB,QAhDpE,mCAkDxB,OAAO/2C,KAAKwtP,YAAYvhP,MAAM3H,GAGhCupP,eACE,MAAMvpP,EAAW,IACZtE,KAAKsE,SACRkgO,oBAAqBxkO,KAAKsE,SAASkgO,oBAAoBrmO,KAAK0rE,IAAD,IAAkBA,EAAQo7J,YAAap7J,EAAOo7J,aAAeivB,OAE1H,OAAOl0P,KAAKwtP,YAAYz3O,OAAOzR,GAGjCwpP,oBACM9tP,KAAKsE,SAASumO,oBAChB7qO,KAAKsE,SAAS6pP,YAAcnuP,KAAKouP,oBAAoBjwP,KAAKyO,GAASA,EAAKC,QAG1E,MAAMvI,EAAW,IACZtE,KAAKsE,SACRmgO,yBAA0BzkO,KAAKsE,SAASmgO,yBAAyBtmO,KAAK0rE,IAAD,IAAkBA,EAAQo7J,YAAap7J,EAAOo7J,aAAeivB,OAGpI,OAAOl0P,KAAKwtP,YAAYa,YAAY/pP,I,qICjFxC,MAIa8qP,EAAqB,CAChC5uM,YALoCxrC,EAAQ,OAM5CE,WAFgC,UAGhCH,SAAU,CACR6P,OAAQ,IACRub,MAAO,IACPq0N,mBAAoB,IACpB/G,aAAc,IACdgD,WAAY,IACZ7/L,cAAe,IACf88L,iBAAkB,O,gFCdP,MAAM+G,EAEnBx0M,cACEjgD,KAAK+V,OAAS,GAEd/V,KAAK00P,eAAiB10P,KAAK00P,eAAer1P,KAAKW,MAC/CA,KAAKuyP,cAAgBvyP,KAAKuyP,cAAclzP,KAAKW,MAC7CA,KAAKgxP,eAAiBhxP,KAAKgxP,eAAe3xP,KAAKW,MAC/CA,KAAK8wP,YAAc9wP,KAAK8wP,YAAYzxP,KAAKW,MAG3C00P,eAAe9D,GACb5wP,KAAK4kB,OAAOggN,OAASgsB,EAGvB2B,cAAcpyN,EAAOqzE,GACnBxzG,KAAK+V,OAAOoqB,GAASqzE,EACrBxzG,KAAKgxP,eAAehxP,KAAK+V,QAG3Bi7O,eAAej7O,GACb/V,KAAK4kB,OAAOmyB,OAAS/2C,KAAK20P,mBAAmB5+O,GAG/C+6O,YAAY3wN,GACVngC,KAAK+V,OAAOktD,OAAO9iC,EAAO,GAC1BngC,KAAKgxP,eAAehxP,KAAK+V,QAG3B86O,WACE7wP,KAAK+V,OAAOnS,KAAK5D,KAAKytP,aAAgB,OAAMztP,KAAKytP,eAAiB,OAGpEkH,mBAAmB5+O,GACjB,MAAMqmL,EAAiBrmL,EAAOzD,QAAQkhG,GAAUA,IAAUxzG,KAAKytP,eAE/D,IAAKrxD,EAAe38L,OAClB,OAAOO,KAAKywP,WAGd,MAAMQ,EAAe70D,EAAej+L,KAAKq1G,GAAW,aAAYA,OAEhE,MAAQ,KAAIxzG,KAAKywP,aAAaQ,EAAaxxP,OAAS,EAAK,KAAIwxP,EAAa9jP,KAAK,OAAS8jP,EAAa,MAGvG2D,cACE,MAAMtiP,EAAStS,KAAK4kB,OAAOmyB,OAC3B,GAAIzkC,IAAWtS,KAAKywP,WAClB,OAGF,IAAKn+O,EAAOnN,SAAS,KAAM,CACzB,MAAMg7B,EAAQ7tB,EAAOzM,QAAQ,aAI7B,YAHIs6B,GAAS,IACXngC,KAAK+V,OAAS,CAACzD,EAAO9I,MAAM22B,EAAQ,GAAI,MAK5C,MAAM00N,EAAUviP,EAAO9I,MAAM8I,EAAOzM,QAAQ,KAAO,GAAI,GACvD7F,KAAK+V,OAAS8+O,EAAQt5N,MAAM,MAAMp9B,KAAK22P,GAAWA,EAAOz5N,QAAQ,YAAa,MAGhF8nB,UACEnjD,KAAK40P,e,oHChET,MAIazF,EAAiB,CAC5B3uM,YALoCxrC,EAAQ,OAM5CE,WAF4B,UAG5BH,SAAU,CACRzQ,SAAU,IACVmpP,aAAc,IACd+G,mBAAoB,IACpB/D,WAAY,IACZ/C,iBAAkB,IAElBsC,cAAe,O,4HCZJ,MAAM+E,EAEnB90M,YAAYC,EAAQz1B,GAClB3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQz1B,cAAAA,IAE9BzqB,KAAKiM,MAAQ,KACbjM,KAAKswP,WAAY,EAEjBtwP,KAAK4wD,cAAgB5wD,KAAK4wD,cAAcvxD,KAAKW,MAC7CA,KAAKowP,WAAapwP,KAAKowP,WAAW/wP,KAAKW,MACvCA,KAAK6pE,OAAS7pE,KAAK6pE,OAAOxqE,KAAKW,MAGjCowP,aACE,MAAMgB,EAAc,IAAOpxP,KAAKsE,UAChCtE,KAAKsE,SAASV,KAAK,CAAEghO,OAAQ5kO,KAAKytP,aAAc+C,kBAAmBY,EAAYZ,kBAAmBz5M,OAAQ/2C,KAAKywP,aAGjH7/L,cAAczwB,GACZngC,KAAKsE,SAAS2+D,OAAO9iC,EAAO,GAG9B0pC,SACE,OAAO7pE,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAKiM,MAAQ,KACbjM,KAAKswP,WAAY,EACjB,MAAMrkP,QAAcjM,KAAKgwP,gBACzBhwP,KAAKiM,MAAQ,IAAUA,GACvB,MAAOgC,GACPjO,KAAKyqB,cAAcxc,MAAM,UAAWA,EAAO,0BAC3CjO,KAAKswP,WAAY,O,iICjCzB,MAEaR,EAAqB,CAChCtvM,YAHoCxrC,EAAQ,OAI5CE,WAAY,6BACZH,SAAU,CACR0rC,UAAW,IACXC,UAAW,IACX7Z,QAAS,IACT8Z,SAAU,IACVC,QAAS,IACTC,aAAc,O,mCCRX,SAAS4qM,EAAKhnM,GACnB,OAAOA,EACJ,mBACD,GACA,CACEuwM,MAAO,CAAEp0O,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,UAC3CuH,MAAO,CAAE2U,OAAQ,OAAQqf,SAAS,EAAMz0B,OAAQ,CAAE9G,OAAQ,UAC1DqR,OAAQ,CAAE6K,OAAQ,OAAQqf,SAAS,EAAMz0B,OAAQ,CAAE9G,OAAQ,WAC3D2pP,YAAa,CAAEztO,OAAQ,OAAQqf,SAAS,EAAMz0B,OAAQ,CAAE9G,OAAQ,iBAChE6uP,UAAW,CAAE3yO,OAAQ,OAAQpV,OAAQ,CAAE9G,OAAQ,W,sGCX9C,SAAS8oP,EAAY/B,GAC1B,MAAO,CAAEx/O,MAET,SAAe+iP,GACb,OAAOvD,EAAKx/O,MAAM,CAAE+iP,aAAAA,IAAgBhpM,UAHtBjwC,OAMhB8vC,eAAsBmpM,GAEpB,aADyBvD,EAAK11O,OAAO,CAAEi5O,aAAAA,IAAgBhpM,UACrC7nD,KAAI,EAAG0O,KAAAA,EAAM44E,OAAAA,MAC7B,IAAI3hF,EAAO+I,EACX,GAAIA,EAAK1H,SAAS,MAAQ0H,EAAK1H,SAAS,KAAM,CAC5C,MAAO8vP,GAAUpoP,EAAK0uB,MAAM,KAE5Bz3B,EADcmxP,EAAO15N,MAAM,KACd,GAEf,MAAO,CAAEkqD,OAAAA,EAAQ54E,KAAM/I,OAfHuqP,YAmBxBxoM,eAA2BmpM,GAEzB,aADyBvD,EAAK4C,YAAY,CAAEW,aAAAA,IAAgBhpM,UAC1C3vC,MAAK,CAAC+xD,EAAGC,IAAOD,EAAE1iE,cAAgB2iE,EAAE3iE,cAAgB,GAAK,IAAIvH,KAAK2F,IAAD,CAAaA,KAAAA,EAAMk7B,SAAUgwN,EAAab,YAAYhpP,SAASrB,QArB/GkxP,MAwBrC,SAAehG,GACb,OAAOvD,EAAKuJ,MAAM,CAAEhG,aAAAA,IAAgBhpM,UAzBMutM,UA4B5C,SAAmBvE,EAAc7mM,EAAU0jB,GACzC,OAAO4/K,EAAK8H,UAAU,CAAEvE,aAAAA,EAAc7mM,SAAAA,EAAU0jB,SAAAA,IAAY7lB,W,oKC/BhE,MAEasnM,EAAyB,CACpC9sM,YAHoCxrC,EAAQ,OAI5CD,SAAU,CACR+zN,eAAgB,IAChB0oB,mBAAoB,IACpBzoB,gBAAiB,IACjB2kB,iBAAkB,IAClBxkB,oBAAqB,IACrBjoO,UAAW,O,4ECNf,UAAe2U,IAAAA,OAAe,6BAA8B,IAAIC,UAAU,yBAA0Bq/O,EAAAA,gBAApG,M,sGCJA,MAIaA,EAAiB,CAC5B10M,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,0CCNZ,MAAMigP,EAEJl1M,YAAYC,EAAQ9qC,EAAQszC,EAAQ0sM,EAAY3qO,GAC9C3rB,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQ9qC,OAAAA,EAAQszC,OAAAA,EAAQ0sM,WAAAA,EAAY3qO,cAAAA,IAE1DzqB,KAAKioM,KAAO,KACZjoM,KAAKq1P,eAAiB,CACpBC,YAAY,EACZxzD,SAAU,KACVE,QAAS,MAGXhiM,KAAK2T,WAAa,CAChBmuL,SAAU,KACVE,QAAS,KACTszD,YAAY,GAGdt1P,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBogK,eAAe,GAIjBv1P,KAAKw1P,gBAAmB,uBACxBx1P,KAAKy1P,eAAkB,YAEvBz1P,KAAK08D,KAAO18D,KAAK08D,KAAKr9D,KAAKW,MAC3BA,KAAK01P,mBAAqB11P,KAAK01P,mBAAmBr2P,KAAKW,MAGzD21P,gBACE,OAAO72P,OAAOyG,QAAQvF,KAAKq1P,gBAAgB1kP,MAAK,EAAEhR,EAAKgE,KAAWA,GAAS3D,KAAK2T,WAAWhU,KAG7F+1P,mBAAmBhgO,GACjB,OAAO11B,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK2T,WAAW2hP,WAAa5/N,KAIvB,aACR,OAAO11B,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACE,MAAM8yG,EAAOjoM,KAAK2T,WAAWmuL,eAAiB9hM,KAAK2T,WAAWmuL,SAASr5K,OAAS,KAC1E9oB,EAAMK,KAAK2T,WAAWquL,cAAgBhiM,KAAK2T,WAAWquL,QAAQv5K,OAAS,KACvEk0N,GAAe38O,KAAK2T,WAAW2hP,iBAC/Bt1P,KAAKo1P,WAAWzgO,OAAOgoN,EAAa10C,EAAMtoM,SAE1C,IAAIsc,SAASld,GAAYof,WAAWpf,EAAS,OACnDo0F,SAASjyD,SACTlhC,KAAK+P,MAAMwlP,eAAgB,EAC3B,MAAOz6O,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2BAE3C9a,KAAK+P,MAAMolF,kBAAmB,KAIlCygK,kBACE,OAAO51P,KAAKq1P,eAAeC,aAAet1P,KAAK2T,WAAW2hP,WAG/C,gBACX,OAAOt1P,KAAKkgD,QAAO2F,UACjB,IACE,MAAMgwM,QAAiB71P,KAAKo1P,WAAWz2O,MAEvC3e,KAAK2T,WAAW2hP,YAAcO,EAASlZ,YACvC38O,KAAKq1P,eAAeC,WAAat1P,KAAK2T,WAAW2hP,WACjD,MAAOx6O,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,wC,oEAMjD,a,01BChEO,SAASg7O,EAAT,GAA+D,IAAxBhsN,EAAwB,EAAxBA,cACtCjf,GAASC,EAAAA,EAAAA,aACTirO,GAA2BhpO,EAAAA,EAAAA,MAEjC,OACE,iCACE,UAAC,KAAD,CACE/kB,SAAU8hC,EAAcrqC,OAAS,EACjCwP,MAAM,cACNC,QAAS,kBATqD,2CAS/CmzM,CAAcv4K,IAC7B,UAAQ,2BAJV,WAME,SAACt4B,EAAA,EAAD,CACEF,KAAK,UACLG,SAAO,EACPxQ,UAAU,cACV,cAAY,SAVhB,aAeA,UAAC,KAAD,CACEiO,QAAS,kBACP2b,EAAOuB,aAAaC,GAAG,2CAEzB,UAAQ,wBAJV,WAME,SAAC7a,EAAA,EAAD,CAAMF,KAAK,OAAOG,SAAO,EAACxQ,UAAU,gBANtC,wBArBgE,iDAiCpE,WAA6B6oC,GAA7B,iGAC0B/hB,EAAAA,EAAAA,IAAqB,6DAD/C,kEASE+hB,EAAcjyB,SAAQ,SAACw8B,GACrB0hN,EAAyBxmP,OAAO8kC,MAGlCxpB,EAAOuB,aAAa8U,SAbtB,2CAjCoE,yB,eCRzDp9B,EAA2B,CACtC0iC,OAAQ,OACRoQ,SAAU,SAAC7M,GAAD,OAASA,EAAIjmC,MACvBxF,GAAI,OACJu4C,KAOK,YAA+D,IAApC/yC,EAAoC,EAA3CH,MAAaomC,EAA8B,EAA9BA,IACtC,OACE,SAACz+B,EAAA,EAAD,CACEC,GAAG,sCACHC,OAAQ,CAAElN,GAAIyrC,EAAIzrC,IAClB4P,MAAOpK,EAHT,SAKGA,KAbLwqC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,U,UCVClsB,EAA+B,CAC1Cwb,OAAQ,iBACRoQ,SAAU,SAAC7M,GAAD,OAASxe,EAAAA,GAAewe,EAAI/e,WACtC1sB,GAAI,WACJu4C,KAOK,YACL,OADuE,EAA1ClzC,OAN7B2qC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,U,iyBC4BL,SAAS8+M,EAAT,GAIG,I,IAHRlvN,EAGQ,EAHRA,WACAD,EAEQ,EAFRA,QACAz3B,EACQ,EADRA,UAEA,GACEmjC,EAAAA,EAAAA,KADMjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAEZzM,GCzCCrnB,EAAAA,EAAAA,UAAQ,iBAAM,CAAChb,EAAMknB,KAAW,ID0CvC,G,GAA4Cyc,EAAAA,EAAAA,GAAkBX,G,EAA9D,E,8zBAAOY,EAAP,KAAuBC,EAAvB,KACA,GAWIE,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMoiC,EACNkB,YAAa,CAAEC,SAAAA,EAAAA,GACfC,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,QAClBC,aAAcV,GAEhBL,gBAVF,WAWI,OAAO,GAETgB,uBAAuB,EACvBlB,SAdF,SAcW4C,GACP,OAAO13B,OAAO03B,EAAIzrC,KAEpBi8H,wBAAyBxrF,EAAAA,GAE3BlG,EAAAA,WACAC,EAAAA,gBACAC,EAAAA,UACAC,EAAAA,cACAC,EAAAA,EACAE,EAAAA,IAnCAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAJ,EANF,EAMEA,iBACAK,EAPF,EAOEA,SACAb,EARF,EAQEA,YACAc,EATF,EASEA,gBATF,IAUE35B,MAAS45B,EAVX,EAUWA,UAAWzB,EAVtB,EAUsBA,SA6BhB2+E,GAAuB/oG,EAAAA,EAAAA,GAAY4pB,GAEnCkC,EAAaP,IACbQ,EAAaP,IAMnB,OAJA//B,EAAAA,EAAAA,YAAU,WACRmgC,EAAgBm9E,KACf,CAACA,EAAsBn9E,KAGxB,UAAC,KAAD,YACE,UAAC,KAAD,CACEp4B,KAAK,QACLC,aAAW,EACX3K,MAAM,6BAHR,WAKE,SAAC6kC,EAAA,EAAD,CACE9nC,MAAO+jC,EACPtgC,SAAU,SAACzD,GAAD,OAAmBgkC,EAAkBhkC,IAC/C,UAAQ,wBACRsO,YAAY,gCAEd,SAAC,KAAD,WACE,SAAC6jP,EAAD,CACEhsN,cAAeV,EAAiBjrC,KAAI,SAAC4rC,GAAD,OAASA,EAAIC,oBAKvD,UAAC+B,EAAA,EAAD,CACE9qC,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,QACrBu3B,aAAcqzE,GALT5hH,SAUb,mBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKGsO,IACC,yBACE,eACE7B,QAAS44B,EAAQ1mC,OAAS,EAC1BwB,UAAU,yBACV,UAAQ,sBAHV,0BASa,IAAhBmY,EAAK3Z,SAAiB2P,IACrB,yBACE,eACE7B,QAAS44B,EAAQ1mC,OAAS,EAC1BwB,UAAU,yBACV,UAAQ,4BAHV,yCASHmY,EAAK3Z,QAAU,GACd2Z,EAAKjb,KAAI,SAAC4rC,GACRP,EAAWO,GACX,MAAwCA,EAAIoD,cAApCxtC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAC9B,OACE,SAAC,KAAD,CACEwpC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,aAUjB,UAACqtC,EAAA,EAAD,YACE,SAAClB,EAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,EAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYowB,EAAQpnC,OACpB+jC,kBAaR,SAA8B0E,GAC5BU,EAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,cAAoBA,GAApB,IAA8B4jC,SAAAA,gBATjD,SAASq5E,EAAiBjjH,EAAYqqC,GACpCiK,GAAiB,SAACtuC,GAAD,cACZA,GADY,IAEf6jC,OAAQ,CAAE7pC,GAAAA,EAAIqqC,KAAAA,SEjMb,SAASstN,IACd,IAKMnvN,EAAa,mBAEbovN,GAAwBrqO,EAAAA,EAAAA,MAExBK,EAAcgqO,EAAsBzxP,MAAQ,GAElD,OACE,SAAC,IAAD,CAAuBiuC,SAZD,CACtBuG,gBAAiB,EACjB/Q,SAAU,GACVC,OAAQ,CAAE7pC,GAAI,QAASqqC,MAAM,IASqB7B,WAAYA,EAA9D,UACE,SAACkvN,EAAD,CACElvN,WAAYA,EACZD,QAAS3a,EACT9c,UAAW8mP,EAAsB9mP,cCGlC,IAAM+mP,GAAmBzgP,EAAAA,EAAAA,IApBzB,WACL,OACE,iCACE,SAACurB,EAAA,EAAD,CACE/yB,MAAM,iBACN4xB,YAAa,CACX,CAAEl5B,MAAO,WAAY05B,KAAM,sBAC3B,CAAE15B,MAAO,aAIb,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACg1P,EAAD,aAO+C,ICtBzD,EAAergP,IAAAA,OACL,2BAA4B,IACnCC,UAAU,oBAAqBsgP,GAFlC,K,iGCYMC,EAAqD,CACzD,CACE93P,GAAI2sB,EAAAA,GAAAA,KACJ3Z,KAAMw3L,EAAAA,EACNliM,MAAO,OACPgM,YAAa,kBACbjP,MAAOsnB,EAAAA,GAAAA,MAET,CACE3sB,GAAI2sB,EAAAA,GAAAA,OACJ3Z,KAAMy3L,EAAAA,EACNniM,MAAO,SACPgM,YAAa,iCACbjP,MAAOsnB,EAAAA,GAAAA,QAET,CACE3sB,GAAI2sB,EAAAA,GAAAA,cACJ3Z,KAAM03L,EAAAA,EACNpiM,MAAO,eACPgM,YAAa,iCACbjP,MAAOsnB,EAAAA,GAAAA,eAET,CACE3sB,GAAI2sB,EAAAA,GAAAA,aACJ3Z,KAAM23L,EAAAA,EACNriM,MAAO,eACPgM,YAAa,iCACbjP,MAAOsnB,EAAAA,GAAAA,cAET,CACE3sB,GAAI2sB,EAAAA,GAAAA,IACJ3Z,KAAM43L,EAAAA,EACNtiM,MAAO,4BACPgM,YAAa,mCACbjP,MAAOsnB,EAAAA,GAAAA,KAET,CACE3sB,GAAI2sB,EAAAA,GAAAA,MACJ3Z,KAAM63L,EAAAA,EACNviM,MAAO,kBACPgM,YAAa,iCACbjP,MAAOsnB,EAAAA,GAAAA,QAIJ,SAASorO,GAAT,GAA2D,IAA1B1yP,EAA0B,EAA1BA,MAAOyD,EAAmB,EAAnBA,SAC7C,OACE,SAACkM,EAAA,EAAD,CACEC,UAAU,gBACV5M,QAASyvP,EACTzyP,MAAOA,EACPyD,SAAUA,I,2HChBT,ICvBFkvP,GDuBQC,IAA8B7gP,EAAAA,EAAAA,IAtC5B,WACb,I,IAAA,G,GAAgDvM,EAAAA,EAAAA,UAC9C8hB,EAAAA,GAAAA,M,EADF,E,g0BAAON,EAAP,KAAyB6rO,EAAzB,KAGA,OACE,iCACE,SAACv1N,EAAA,EAAD,CACE/yB,MAAM,iCACN4xB,YAAa,CACX,CAAEl5B,MAAO,WAAY05B,KAAM,sBAC3B,CAAE15B,MAAO,QAAS05B,KAAM,4BACxB,CAAE15B,MAAO,uBAIb,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACojC,EAAA,GAAD,WACE,UAACA,EAAA,GAAD,YACE,SAAC8P,EAAA,EAAD,sCACA,SAACkiN,GAAD,CACE1yP,MAAOgnB,EACPvjB,SAAU,SAAC4jB,GACTwrO,EAAoBxrO,OAGxB,SAACN,GAAA,EAAD,CACEC,iBAAkBA,EAClBC,eAAe,2CAY7B,IEjDF,GAAehV,IAAAA,OACL,yCAA0C,IACjDC,UAAU,yBAA0B0gP,IAFvC,K,0xBD+BO,SAASE,GAAT,GAAmD,MAArBlqO,EAAqB,EAArBA,WAC3BvB,EAAauB,EAAbvB,SACF0rO,EAmHR,SAAqB1rO,GACnB,OAAQA,GACN,KAAKC,EAAAA,GAAAA,aACH,OAAOqrO,GAAUK,gBAEnB,KAAK1rO,EAAAA,GAAAA,IACH,OAAOqrO,GAAUM,WAEnB,KAAK3rO,EAAAA,GAAAA,MACH,OAAOqrO,GAAUzsD,MAEnB,KAAK5+K,EAAAA,GAAAA,KACL,KAAKA,EAAAA,GAAAA,cACL,KAAKA,EAAAA,GAAAA,OACL,QACE,OAAOqrO,GAAU57D,KAlIJm8D,CAAY7rO,GAEvBH,GAASC,EAAAA,EAAAA,aAETc,GACJ,WAF4BC,EAAAA,EAAAA,MAENpnB,YAAtB,eACI6N,QAAO,SAACwZ,GAAD,OAAOA,EAAEhoB,OAASyoB,EAAWzoB,MAAQgoB,EAAEd,WAAaA,KAC5D7sB,KAAI,SAAC2tB,GAAD,OAAgCA,EAAEhoB,UAAS,GAE9CgzP,GAA2BrqO,EAAAA,EAAAA,MAE3Bre,EAAgB,CACpBtK,KAAMyoB,EAAWzoB,KACjBknB,SAAUuB,EAAWvB,SACrBkB,YAAaK,EAAWL,aAG1B,OACE,gCACGwqO,IAAaJ,GAAU57D,KAAO,WAAYnuK,EAAWL,cACpD,SAACb,GAAA,EAAD,CACEV,iBAAkBK,EAClB0C,WAAS,EACTte,UAAW0nP,EAAyB1nP,UACpCb,SAAUA,EACVqd,gBAAiBA,EACjBxd,cAAa,SAENA,GAFM,IAGT8d,YAAa,SAAK9d,EAAc8d,aAArB,IAAkCuB,OAAQ,OAGzDE,gBAAgB,YAGnB+oO,IAAaJ,GAAUK,iBACtB,kBAAmBpqO,EAAWL,cAC5B,SAAChB,GAAA,EAAD,CACEP,iBAAkBK,EAClB0C,WAAS,EACTte,UAAW0nP,EAAyB1nP,UACpCb,SAAUA,EACVqd,gBAAiBA,EACjBxd,cAAa,SAENA,GAFM,IAGT8d,YAAa,SACR9d,EAAc8d,aADR,IAETmD,cAAe,SAM1BqnO,IAAaJ,GAAUM,YACtB,oBAAqBrqO,EAAWL,cAC9B,SAACf,GAAA,EAAD,CACER,iBAAkBK,EAClB0C,WAAS,EACTte,UAAW0nP,EAAyB1nP,UACpCb,SAAUA,EACVqd,gBAAiBA,EACjBxd,cAAa,SAENA,GAFM,IAGT8d,YAAa,SACR9d,EAAc8d,aADR,IAETsC,gBAAiB,OAIvBb,gBAAgB,YAGrB+oO,IAAaJ,GAAUzsD,OACtB,iBAAkBt9K,EAAWL,cAC3B,SAACd,GAAA,EAAD,CACET,iBAAkBK,EAClB0C,WAAS,EACTte,UAAW0nP,EAAyB1nP,UACpCb,SAAUA,EACVqd,gBAAiBA,EACjBxd,cAAa,SAENA,GAFM,IAGT8d,YAAa,SAAK9d,EAAc8d,aAArB,IAAkCwC,aAAc,OAG/Df,gBAAgB,eAM1B,SAASpf,EAASlH,GAChB,IAAM0vP,EAA0C,CAC9CjzP,KAAMuD,EAAOvD,KAAKmoB,OAClBjB,SAAAA,GAEF,IAAI2F,EAAAA,GAAAA,IAAsBtpB,EAAO6kB,aAC/B6qO,EAAe7qO,aAAcC,EAAAA,GAAAA,IAAW9kB,EAAO6kB,iBAC1C,CACL,IAAM8qO,EAAqB,KAAO3vP,EAAO6kB,YAAawE,GAAAA,IAClD5xB,OAAOD,KAAKm4P,GAAoBv3P,OAAS,IAC3Cs3P,EAAe7qO,aAAcC,EAAAA,GAAAA,IAAW6qO,IAG5CF,EAAyBvnP,OAAO,CAC9Bgd,WAAYwqO,EACZz4P,GAAIiuB,EAAWjuB,KAEjBusB,EAAOuB,aAAaC,GAAG,8B,SAxHtBiqO,GAAAA,EAAAA,IAAAA,MAAAA,EAAAA,gBAAAA,kBAAAA,EAAAA,WAAAA,aAAAA,EAAAA,MAAAA,Q,CAAAA,KAAAA,GAAAA,KEeE,IAAMW,IAA4BvhP,EAAAA,EAAAA,IA/B1B,WACb,IAAQlK,GAAW8S,EAAAA,EAAAA,4BAAX9S,OAEF0rP,GAAuBlqO,EAAAA,EAAAA,IAAmBxhB,EAAOlN,IACjDiuB,EAAa2qO,EAAqBzyP,KAExC,OACE,iCACE,SAACw8B,EAAA,EAAD,CACE/yB,MAAM,kCACN4xB,YAAa,CACX,CAAEl5B,MAAO,WAAY05B,KAAM,sBAC3B,CAAE15B,MAAO,QAAS05B,KAAM,4BACxB,CAAE15B,MAAO,wBAIb,gBAAK3F,UAAU,MAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACojC,EAAA,GAAD,WACE,UAACA,EAAA,GAAD,CAAYlD,QAAS+1N,EAAqB9nP,UAA1C,WACE,SAAC+kC,EAAA,EAAD,qCACC5nB,IAAc,SAACkqO,GAAD,CAAoBlqO,WAAYA,kBASc,ICvC3E,GAAe3W,IAAAA,OACL,sCAAuC,IAC9CC,UAAU,0BAA2BohP,IAFxC,K,2XCkBO,SAASE,GAAT,GAGG,IAFRtyI,EAEQ,EAFRA,aACA/6E,EACQ,EADRA,cAEMjf,GAASC,EAAAA,EAAAA,aACT4B,GAAcC,EAAAA,GAAAA,kBAEpB,OACE,iBAAK1rB,UAAU,YAAf,WACE,SAACqK,EAAA,EAAD,CAAMC,GAAG,8BAA8BtK,UAAU,aAAjD,UACE,SAAC,KAAD,CAAQ+G,UAAW68G,EAAcvzG,KAAK,cAAcC,aAAW,EAA/D,4BAKF,SAAC,KAAD,CACEvJ,UAAW68G,GAAyC,IAAzB/6E,EAAcrqC,OACzCyP,QAAS,kBAdP,0CAcakoP,IACf9lP,KAAK,cACLC,aAAW,EAJb,wBASA,SAAC,KAAD,CACEvJ,UAAW68G,GAAgB/6E,EAAcrqC,OAAS,EAClDwP,MAAM,SACNC,QAAS,kBAxBP,0CAwBamoP,IACf/lP,KAAK,UACLC,aAAW,EALb,uBArBI,kDAiCR,sHAC0B9B,EAAAA,EAAAA,IAAa,CACnCvB,MAAO,iBACPjB,QAAS,6DACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,UACP3F,UAAW,kBAPnB,kFAiBUkgB,EAAU2oB,EAAc,GAjBlC,UAkB6BxoB,EAAAA,GAAAA,IAAiBH,EAAQ7iB,IAlBtD,OAkBUg5P,EAlBV,OAmBIrmM,GAAAA,GAAsB,kCAAmC9vC,EAAQrd,MACjE+mB,EAAOuB,aAAaC,GAAG,mCAAoC,CACzD/tB,GAAIg5P,EAAWh5P,KArBrB,kDAwBI2yD,GAAAA,GACE,UADF,KAGE,+BA3BN,2DAjCQ,wEAiER,8GAC0BrqC,EAAAA,EAAAA,IAAwB,CAC9C1Y,MAAO,iBACPjB,QAAS,6DACTyC,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,iBAPnB,kFAgBQgb,QAAQqW,IACZwX,EAAc3rC,IAAd,6CAAkB,WAAOgjB,GAAP,0GAERC,EAAAA,GAAAA,IAAcD,EAAQ7iB,IAFd,OAId2yD,GAAAA,GAAsB,+BAAgC9vC,EAAQrd,MAJhD,+CAMdmtD,GAAAA,GACE,UADF,KAGE,4BATY,wDAAlB,wDAjBJ,uBAgCQvkC,EAAYI,kBAAkB,gBAhCtC,2CAjEQ,yB,gBCpBG6pB,GAA2B,CACtCnQ,OAAQ,UACRoQ,SAAU,cACVt4C,GAAI,UACJu4C,KAAM,gBAAGlzC,EAAH,EAAGA,MAAH,OAAeyZ,EAAAA,GAAAA,sBAAqBzZ,IAC1C2qC,gBAAgB,EAChBwI,SAAS,EACTC,OAAQ,kBAAM,OCPHjzC,GAAwB,CACnC0iC,OAAQ,OACRoQ,SAAU,OACVt4C,GAAI,OACJu4C,KAOK,YAGgB,IAFd/yC,EAEc,EAFrBH,MACiBwd,EACI,EADrB4oB,IAAOC,SAEDuN,GAAY1W,EAAAA,EAAAA,SAAQ,mCAAoC,CAC5DviC,GAAI6iB,EAAQ7iB,KAGd,OACE,cAAGytB,KAAMwrB,EAAUxrB,KAAM7c,QAASqoC,EAAUroC,QAAShB,MAAOpK,EAA5D,SACGA,KAhBLwqC,gBAAgB,EAChByI,OAAQ,kBAAM,MACdD,SAAS,EACTI,SAAU,U,6rBCsBL,SAASqgN,GAAT,GAEuB,IAD5B1yI,EAC4B,EAD5BA,aAEA,GACEtyE,EAAAA,EAAAA,KADMjuC,EAAR,EAAQA,SAAUsuC,EAAlB,EAAkBA,iBAEZzM,GClCCrnB,EAAAA,EAAAA,UAAQ,iBAAM,CAAChb,GAAM6yC,MAAU,IDoCtC,EEnCK,WACL,OAA4CvwC,EAAAA,GAAAA,UAAS,gBAAgB,kBACnE2a,EAAAA,GAAAA,SADM3R,EAAR,EAAQA,UAAW3K,EAAnB,EAAmBA,KAAM8/G,EAAzB,EAAyBA,QAASt2G,EAAlC,EAAkCA,MAgBlC,OAZA1E,EAAAA,EAAAA,YAAU,WACJg7G,GACFtzD,GAAAA,GACE,UACAhjD,EACA,oCAGH,CAACs2G,EAASt2G,IAIN,CACLmB,UAAAA,EACA4R,UAJelC,EAAAA,EAAAA,UAAQ,kBAAMra,GAAQ,KAAI,CAACA,IAK1CwJ,MAAOs2G,EAAWt2G,OAA2B4D,GFeR2lP,GAA/BpoP,EAAR,EAAQA,UAAW4R,EAAnB,EAAmBA,SAAU/S,EAA7B,EAA6BA,MAE7B,GAUI45B,EAAAA,EAAAA,UACF,CACEC,kBAAkB,EAClB3B,QAAAA,EACA1hC,KAAMuc,EACNinB,aAAc,CACZC,SAAU5jC,EAAS4jC,UAAY,GAC/BC,OAAQ,CAAC7jC,EAAS6jC,SAEpBd,gBARF,WASI,OAAOw9E,GAETxD,kBAAmB,GAErBt4E,EAAAA,UACAC,EAAAA,cACAC,EAAAA,EACAE,EAAAA,IA1BAE,EADF,EACEA,cACAC,EAFF,EAEEA,kBACAC,EAHF,EAGEA,aACAnwB,EAJF,EAIEA,KACAowB,EALF,EAKEA,WACAJ,EANF,EAMEA,iBACAK,EAPF,EAOEA,SACAb,EARF,EAQEA,YARF,IASE74B,MAAS45B,EATX,EASWA,UAAWzB,EATtB,EASsBA,SAqBhB0B,EAAaP,IACbQ,EAAaP,IAEnB,OACE,UAAC,KAAD,YACE,SAAC,KAAD,CAAYh4B,KAAK,OAAOC,aAAW,EAAC3K,MAAM,kBAA1C,UACE,SAACuwP,GAAD,CACEtyI,aAAcA,EACd/6E,cAAeV,EAAiBjrC,KAAI,SAAC4rC,GAAD,OAASA,EAAIC,iBAIrD,UAAC,KAAD,CACE/oC,UAAW2oC,EAAW3oC,UACtBkC,KAAMymC,EAAWzmC,KACjBrC,MAAO8oC,EAAW9oC,MAHpB,WAKE,2BACGyoC,EAAaprC,KAAI,SAAC8rC,GACjB,MACEA,EAAYC,sBADNvqC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CAEEG,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,EACP6V,QAASszB,EAAYtzB,SAJhBhX,SASb,kBACEsB,UAAW4oC,EAAW5oC,UACtBkC,KAAM0mC,EAAW1mC,KACjBrC,MAAO+oC,EAAW/oC,MAHpB,UAKIsO,GAAa4R,GAAYA,EAASvhB,OAAS,EAC3C2Z,EAAKjb,KAAI,SAAC4rC,GACRP,EAAWO,GACX,MAAwCA,EAAIoD,cAApCxtC,EAAR,EAAQA,IAAKsB,EAAb,EAAaA,UAAWkC,EAAxB,EAAwBA,KAAMrC,EAA9B,EAA8BA,MAE9B,OACE,SAAC,KAAD,CACEwpC,MAAOP,EAAIO,MAEXrpC,UAAWA,EACXkC,KAAMA,EACNrC,MAAOA,GAHFnB,OAQX,yBACE,eAAI4N,QAAS,EAAGtM,UAAU,yBAA1B,SACGwjH,GAAYr1G,EAAWnB,aAOlC,UAAC++B,EAAA,EAAD,YACE,SAAClB,EAAA,EAAD,CAAmBnoC,MAAOylC,EAAiB3pC,UAC3C,SAAC8jC,EAAA,EAAD,CACEjC,SAAO,EACPjoB,UAAW6uB,EACX9uB,KAAMuwB,EAAY,EAClB1H,aAAc,SAACsI,GAAD,OAAOd,EAASc,EAAI,IAClC9zB,WAAYuK,EAAWA,EAASvhB,OAAS,EACzC+jC,kBAMR,SAA8B0E,GAC5BU,EAAYV,GACZ0K,GAAiB,SAACtuC,GAAD,UAAC,MAAmBA,GAApB,IAA8B4jC,SAAAA,gBAInD,SAASu8E,GAAYr1G,EAAoBnB,GACvC,OAAImB,EACK,aAGLnB,EACKA,EAAMhB,QAGR,oB,6rBG9JF,SAASwqP,GAAT,GAEuB,IADzBx3P,EACyB,oBAM5B,OACE,SAAC,IAAD,CAAuByyC,SAND,CACtBxK,SAAU,GACVC,OAAQ,CAAE7pC,GAAI,OAAQqqC,MAAM,IAIsB7B,WAAW,cAA7D,UAEE,SAACywN,GAAD,MAA0Bt3P,M,ufCdhC,IAAMy3P,IAAqBhiP,EAAAA,EAAAA,ICuBpB,YAAoD,I,IAA7BpR,EAA6B,EAA7BA,SAAUiK,EAAmB,EAAnBA,SAChCi5G,EAAmBljH,EAAWA,EAASkjH,iBAAmB,KAC1DmwI,IAAoBnwI,GAAmBA,EAAiB3uG,QAE9D,G,GAAwC1P,EAAAA,EAAAA,UAASwuP,G,EAAjD,E,g0BAAO9yI,EAAP,KAAqB+yI,EAArB,MACAruP,EAAAA,EAAAA,YAAU,WAAM,MACdquP,EAAgBtzP,MAAAA,GAAD,UAACA,EAAUkjH,wBAAX,aAAC,EAA4B3uG,WAC3C,CAACvU,IAEJ,IAAM8J,EAAgB,CACpByK,QAAS8+O,EACTE,SAAUrwI,EAAmBA,EAAiBqwI,SAAW,GACzDC,cAAetwI,EAAmBA,EAAiBswI,cAAgB,GACnEC,cAAevwI,EAAmBA,EAAiBuwI,cAAgB,IAG/DC,IAA6B1zP,GAC/BA,EAASijH,0BAGb,OACE,gBAAKtmH,UAAU,MAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,aAAapD,MAAM,SACrC,UAACm2B,EAAA,GAAD,YACE,SAAC,MAAD,CACEj2B,cAAeA,EACfG,SAAUA,EACVqf,oBAAkB,EAClB5jB,iBAAkB,kBCrDrB1B,EAAAA,GAAAA,MAAS4B,MAAM,CACpB2tP,UAAUztP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACjCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1BsvP,eAAe1tP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACtCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1BuvP,eAAe3tP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACtCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,0BD2ClBiG,kBAAgB,EAChBD,iBAAe,EANjB,SAQG,gBACCnH,EADD,EACCA,OACAwH,EAFD,EAECA,OACAgf,EAHD,EAGCA,aACAnf,EAJD,EAICA,cACAC,EALD,EAKCA,aACAC,EAND,EAMCA,QACAkf,EAPD,EAOCA,MAPD,OASC,UAAC,MAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAA5C,WACE,SAACjc,GAAA,EAAD,CACE/J,QAAQ,iBACRjB,MAAM,gCACNoI,KAAK,QACLH,OAAQA,EAAOgK,QAJjB,UAME,SAACu9B,GAAA,EAAD,CACE93C,GAAG,iBACHwF,KAAK,iBACL7C,UAAU,cACV+G,UAAWgwP,EACXtiO,QAASsiO,GAA8B3wP,EAAOwR,QAC9CzR,SAAU,SAAC1I,GAAD,OAvD6B,6CAuDtBu5P,CAAiBv5P,EAAGgQ,SAIzC,SAACg1B,GAAA,EAAD,CAASz0B,MAAM,OAAf,oFAKC+oP,GAA8B3wP,EAAOwR,UACpC,iCACE,mBAEA,SAACjH,GAAA,EAAD,CACE/J,QAAQ,YACRjB,MAAM,uBACNiI,OAAQA,EAAOgpP,SAHjB,UAKE,SAAC,MAAD,CACE7pO,GAAIC,GAAAA,EACJnqB,KAAK,WACLxF,GAAG,YACH2T,YAAY,wBACZtO,MAAO0D,EAAOwwP,SACd,UAAQ,uBAIZ,SAACjmP,GAAA,EAAD,CACE/J,QAAQ,iBACRjB,MAAM,yBACNiI,OAAQA,EAAOipP,cAHjB,UAKE,SAAC,MAAD,CACE9pO,GAAIC,GAAAA,EACJnqB,KAAK,gBACLxF,GAAG,iBACH2T,YAAY,WACZtO,MAAO0D,EAAOywP,cACd,UAAQ,yBAIZ,SAAClmP,GAAA,EAAD,CACE/J,QAAQ,iBACRjB,MAAM,yBACNiI,OAAQA,EAAOkpP,cAHjB,UAKE,SAAC,MAAD,CACE/pO,GAAIC,GAAAA,EACJlkB,KAAK,WACLjG,KAAK,gBACLxF,GAAG,iBACH2T,YAAY,WACZtO,MAAO0D,EAAO0wP,cACd,UAAQ,4BAMhB,gBAAK92P,UAAU,kBAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,GAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,qBACR1e,UAAWT,EACXU,YAAY,qBAJd,qCAcT2oP,GAA8BnzI,IAC7B,iBAAK5jH,UE/JU,gFF+Jf,WACE,SAACkzC,EAAA,EAAD,+BACA,SAACzQ,GAAA,EAAD,CAASz0B,MAAM,OAAf,iGAIA,SAACwoP,GAAD,CAA+B5yI,aAAc8yI,eA3IA,kDAmJzD,WACEj5P,EACAgQ,GAFF,gFAQEkpP,EAAgBl5P,GAChBgQ,EAAc,UAAWhQ,GAT3B,4CAnJyD,yBDvBL,CAAC,WAAY,a,kcIAnE,IAAMw5P,IAAyBxiP,EAAAA,EAAAA,ICqBxB,YAAwD,I,IAA7BpR,EAA6B,EAA7BA,SAAUiK,EAAmB,EAAnBA,SAC1C,G,GAAgCpF,EAAAA,EAAAA,Y,EAAhC,E,g0BAAO24L,EAAP,KAAiBq2D,EAAjB,KAD6D,kDAE7D,WACErpO,EACApgB,GAFF,0FAQMogB,EARN,uBASIqpO,EAAYrpO,GAThB,SAU8Bg5K,EAAgBh5K,GAV9C,OAUUitC,EAVV,OAWIrtD,EAAc,kBAAmBqtD,GACjCrtD,EAAc,eAAgBogB,EAAKhrB,MAZvC,4CAF6D,sBAkB7D,SAASgkM,EAAgBh5K,GACvB,OAAO,IAAI7S,SAAQ,SAACld,EAASgwB,GAC3B,IAAMg5K,EAAa,IAAI94K,WACvB84K,EAAW54K,OAAS,SAACzwB,GACnB,GAAgB,MAAZA,EAAEY,QAAqC,MAAnBZ,EAAEY,OAAO+oB,OAAjC,CAIA,IAAM2/K,EAAStpM,EAAEY,OAAO+oB,OAAOxkB,WAEzBs8B,EAAQ6nK,EAAOniM,QAAQ,WACvBoiM,EAAOD,EAAOliM,UAAUq6B,EAAQ,EAAG6nK,EAAOvoM,QAChDV,EAAQkpM,QAPNlpM,EAAQ,KASZgpM,EAAW34K,QAAU,WACnBL,EAAO,IAAIpwB,MAAM,iDAEnBopM,EAAWG,cAAcp5K,MAI7B,IAAM44F,EAAuBpjH,EAAWA,EAASojH,qBAAuB,KAClEt5G,EAAgB,CACpByK,UAAS6uG,GAAuBA,EAAqB7uG,QACrDmtG,UAAW0B,EAAuBA,EAAqB1B,UAAY,GACnEoyI,QAAS1wI,EAAuBA,EAAqB0wI,QAAU,GAC/DC,YAAa3wI,EAAuBA,EAAqB2wI,YAAc,GACvEpK,WAAYvmI,EAAuBA,EAAqBumI,WAAa,GACrEqK,gBAAiB5wI,EACbA,EAAqB4wI,gBACrB,GACJC,aAAc7wI,EAAuBA,EAAqB6wI,aAAe,GACzEC,iBAAkB9wI,EACdA,EAAqB8wI,iBACrB,IAIJpqP,EAAckqP,iBACdlqP,EAAcmqP,eACbz2D,GAEDq2D,EAAY,IAAItqL,KAAK,GAAIz/D,EAAcmqP,eAGzC,IAAMP,IAA6B1zP,GAC/BA,EAASijH,0BAGb,OACE,gBAAKtmH,UAAU,MAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,aAAapD,MAAM,mBACrC,SAACm2B,EAAA,GAAD,WACE,SAAC,MAAD,CACEj2B,cAAeA,EACfG,SAAUA,EACVqf,oBAAkB,EAClB5jB,iBAAkB,kBClGrB1B,EAAAA,GAAAA,MAAS4B,MAAM,CACpB87G,WAAW57G,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CAClCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1B4vP,SAAShuP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CAChCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1B6vP,aAAajuP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACpCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1BylP,YAAY7jP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACnCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1B8vP,iBAAiBluP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACxCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1B+vP,cAAcnuP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACrCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,uBAE1BgwP,kBAAkBpuP,EAAAA,GAAAA,MAASizC,KAAK,UAAW,CACzCC,IAAI,EACJthC,MAAM5R,EAAAA,GAAAA,MAAS5B,SAAS,0BDwElBiG,kBAAgB,EAChBD,iBAAe,EANjB,SAQG,gBACCnH,EADD,EACCA,OACAwH,EAFD,EAECA,OACAgf,EAHD,EAGCA,aACAnf,EAJD,EAICA,cACAC,EALD,EAKCA,aACAC,EAND,EAMCA,QACAkf,EAPD,EAOCA,MAPD,OASC,UAAC,MAAD,CAAM7sB,UAAU,kBAAkBsN,SAAUsf,EAA5C,WACE,SAACjc,GAAA,EAAD,CACE/J,QAAQ,qBACRjB,MAAM,iBACNiI,OAAQA,EAAOgK,QACf7J,KAAK,QAJP,UAME,SAAConC,GAAA,EAAD,CACE93C,GAAG,qBACHwF,KAAK,qBACL7C,UAAU,cACV+G,UAAWgwP,EACXtiO,QAASsiO,GAA8B3wP,EAAOwR,QAC9CzR,SAAU,SAAC1I,GAAD,OAAOgQ,EAAc,UAAWhQ,SAI9C,SAACglC,GAAA,EAAD,CAASz0B,MAAM,OAAf,0FAKC+oP,GAA8B3wP,EAAOwR,UACpC,iCACE,mBAEA,SAACjH,GAAA,EAAD,CACE/J,QAAQ,aACRjB,MAAM,aACNoI,KAAK,SACLH,OAAQA,EAAOm3G,UAJjB,UAME,SAAC,MAAD,CACEh4F,GAAIC,GAAAA,EACJnqB,KAAK,YACLxF,GAAG,aACH2T,YAAY,uBACZtO,MAAO0D,EAAO2+G,UACd,UAAQ,2BAIZ,SAACp0G,GAAA,EAAD,CACE/J,QAAQ,eACRjB,MAAM,WACNoI,KAAK,SACLH,OAAQA,EAAOupP,QAJjB,UAME,SAAC,MAAD,CACEpqO,GAAIC,GAAAA,EACJnqB,KAAK,UACLxF,GAAG,eACH2T,YAAY,qBACZtO,MAAO0D,EAAO+wP,QACd,UAAQ,6BAIZ,SAACxmP,GAAA,EAAD,CACE/J,QAAQ,eACRjB,MAAM,eACNoI,KAAK,SACLhI,QAAQ,2HACR6H,OAAQA,EAAOwpP,YALjB,UAOE,SAAC,MAAD,CACErqO,GAAIC,GAAAA,EACJlkB,KAAK,WACLjG,KAAK,cACLxF,GAAG,eACH2T,YAAY,yBACZtO,MAAO0D,EAAOgxP,YACd,UAAQ,6BAIZ,mBAEA,SAACzmP,GAAA,EAAD,CACE/J,QAAQ,cACRjB,MAAM,cACNoI,KAAK,SACLhI,QAAQ,0FACR6H,OAAQA,EAAOo/O,WALjB,UAOE,SAAC,MAAD,CACEjgO,GAAIC,GAAAA,EACJnqB,KAAK,aACLxF,GAAG,cACH2T,YAAY,wBACZtO,MAAO0D,EAAO4mP,WACd,UAAQ,2BAIZ,SAACr8O,GAAA,EAAD,CACE/J,QAAQ,mBACRjB,MAAM,uCACNoI,KAAK,SACLhI,QAAQ,6JACR6H,OAAQA,EAAOypP,gBALjB,UAOE,SAAC9oO,GAAA,EAAD,CACE3nB,QAAQ,mBACRqG,MAAM,cACNuhB,OAAO,OACP9rB,MAAOm+L,EACP16L,SAAU,SAAC0nB,GAAD,OApM6B,6CAqMrCY,CAAiBZ,EAAMpgB,SAK7B,SAACkD,GAAA,EAAD,CACE/J,QAAQ,uBACRjB,MAAM,oCACNoI,KAAK,SACLhI,QAAQ,2HACR6H,OAAQA,EAAO2pP,iBALjB,UAOE,SAAC,MAAD,CACExqO,GAAIC,GAAAA,EACJlkB,KAAK,WACLjG,KAAK,mBACLxF,GAAG,uBACH2T,YAAY,aACZtO,MAAO0D,EAAOmxP,iBACd,UAAQ,oCAMhB,gBAAKv3P,UAAU,kBAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,GAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,qBACR1e,UAAWT,EACXU,YAAY,qBAJd,8CDrP0C,CAC5D,WACA,a,YGYK,SAASopP,GAAT,GAA4D,IAA7Bn0P,EAA6B,EAA7BA,SAAUiK,EAAmB,EAAnBA,SAC9C,OAAKjK,GAKH,gBAAKrD,UAAU,MAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,aAAapD,MAAM,2BACrC,SAACm2B,EAAA,GAAD,WACE,SAAC,MAAD,CACEj2B,cAAe9J,EACfspB,oBAAkB,EAClB5jB,iBAAkB,kBC1BrB1B,EAAAA,GAAAA,MAAS4B,MAAM,CACpBq9G,2BAA2BnqE,EAAAA,GAAAA,MAAU50C,SAAS,2BAC9Co7N,eAAexmL,EAAAA,GAAAA,MAAU50C,SAAS,2BAClCs7N,0BAA0Bv7N,EAAAA,GAAAA,MAASg1C,QAAQ,MDwBnChvC,SAAUA,EACVC,iBAAe,EALjB,SAOG,gBACCnH,EADD,EACCA,OACAwH,EAFD,EAECA,OACAgf,EAHD,EAGCA,aACAnf,EAJD,EAICA,cACAC,EALD,EAKCA,aACAC,EAND,EAMCA,QACAkf,EAPD,EAOCA,MAPD,OASC,UAAC,MAAD,CACE7sB,UAAU,kBACVsN,SAAUsf,EACVE,YAAU,EAHZ,WAKE,SAACnc,GAAA,EAAD,CACE/J,QAAQ,cACRjB,MAAM,+BACNoI,KAAK,QACLH,OAAQA,EAAO04G,0BAJjB,UAME,SAACnxE,GAAA,EAAD,CACE93C,GAAG,cACHwF,KAAK,cACL7C,UAAU,cACVy0B,QAASruB,EAAOkgH,0BAChBngH,SAAU,SAAC1I,GAAD,OACRgQ,EAAc,4BAA6BhQ,SAKjD,SAACglC,GAAA,EAAD,CAASz0B,MAAM,OAAf,wFAKA,SAAC2C,GAAA,EAAD,CACE/J,QAAQ,kBACRjB,MAAM,6CACNoI,KAAK,QACLhI,QAAQ,8DACR6H,OAAQA,EAAO+0N,cALjB,UAOE,SAACxtL,GAAA,EAAD,CACE93C,GAAG,kBACHwF,KAAK,kBACL7C,UAAU,cACVy0B,QAASruB,EAAOu8N,cAChBx8N,SAAU,SAAC1I,GAAD,OACRgQ,EAAc,gBAAiBhQ,EAAE4lG,iBAKtCnpF,GAYD,gBAAKla,UAAU,kBAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,GAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,6BACR1e,UAAWT,EACXU,YAAY,qBAJd,4CAnFT,K,+UEdJ,SAAeqpP,KAAtB,gC,oDAAO,8HAEoB1yP,GAAAA,GAAAA,KAAA,gCAFpB,uBAEKvB,EAFL,EAEKA,KAFL,kBAKIA,EAAKq3C,SALT,uCAOG51C,EAAAA,GAAAA,IAAgB,EAAD,GAAe,0BAPjC,0D,ygBCCA,SAASyyP,KACd,I,IAAA,G,GAAoCz0D,EAAAA,GAAAA,IAAkB,uB,EAAtD,E,g0BAAO00D,EAAP,KAAmB5qP,EAAnB,KAAyBq2L,EAAzB,KAEA,OACE,SAACzyL,GAAA,EAAD,CACE/J,QAAQ,oBACRjB,MAAM,wCACNiI,OAAQb,EAAKC,MAHf,UAKE,SAACmoC,GAAA,EAAD,CACE93C,GAAG,oBACHwF,KAAK,sBACL7C,UAAU,cACVy0B,QAASkjO,EAAWj1P,MACpByD,SAdmC,kGAmBzC,WAA4ByxP,GAA5B,yFACOA,EADP,uBAEIx0D,EAAQzlL,UAAS,GAFrB,2CAM0BnP,EAAAA,EAAAA,IAAa,CACnCvB,MAAO,wCACPjB,QACE,2JACFyC,QAAS,CACPoY,OAAQ,CACNlhB,MAAO,SACP3F,UAAW,eAEb0O,QAAS,CACP/I,MAAO,UACP3F,UAAW,iBAjBnB,OAMQ0lB,EANR,OAsBE09K,EAAQzlL,WAAW+H,GAtBrB,4CAnByC,uBCa3C,IAqGQs+K,GArGFgB,GAAa6yD,GAAAA,GAAW,CAC5BrxI,oBAAqBqxI,GAAAA,KACrBj1B,iBAAkBi1B,GAAAA,KAEfruP,KACC,MACA,0DACA,SAAC9G,GACC,IAAKA,EACH,OAAO,EAET,IACE,IAAM8C,EAAM,IAAI4gE,IAAI1jE,GACpB,QAAS8C,EAAIgzE,UAA6B,cAAjBhzE,EAAIgzE,SAC7B,SACA,OAAO,MAIZjxE,SAAS,qBAORuwP,IA2EE9zD,IAAW5xG,EAAAA,GAAAA,YACVtvF,OAAOovF,SAASC,QAAuB,MAAb6xG,GAAmBA,GAAW,KA1E1D,SAAS+zD,GAAT,GAA0D,IAAnB10P,EAAmB,EAAnBA,SACtCmC,EAAMnC,EAASu/N,iBAEfz1N,EAAgB,CACpBy1N,iBAAkBp9N,GAAOsyP,GACzBtxI,oBAAqBnjH,EAASmjH,qBAG1Bz0F,GAAW5B,EAAAA,GAAAA,MAEDH,EAAmB+B,EAA3BzjB,OAEFse,GAAeza,EAAAA,EAAAA,cACnB,SAACtF,GACCmjB,EAAenjB,EAAW,CACxBK,UADwB,YAEtBqB,EAAAA,GAAAA,IACE,UACA,qEAKR,CAACyhB,IASH,OANA1nB,EAAAA,EAAAA,YAAU,YACH9C,GAAOw/L,GAAWgzD,YAAY,CAAEp1B,iBAAkBk1B,MACrD9nO,EAAe,CAAE4yM,iBAAkBk1B,OAEpC,CAAC9nO,EAAgBxqB,KAGlB,SAAC,MAAD,CACE2H,cAAeA,EACfG,SAAUsf,EACV7jB,iBAAkBi8L,GAClBz3L,iBAAe,EACfof,oBAAkB,EALpB,SAOG,gBAAG/e,EAAH,EAAGA,OAAQD,EAAX,EAAWA,QAASkf,EAApB,EAAoBA,MAApB,OACC,UAAC,MAAD,CAAM7sB,UAAU,kBAAhB,WACE,SAACkzC,EAAA,EAAD,6BAEA,SAACviC,GAAA,EAAD,CACEhL,MAAM,gBACNI,QAAQ,wFACRa,QAAQ,YACRgH,OAAQA,EAAOg1N,iBAJjB,UAME,SAAC,MAAD,CAAO71M,GAAIC,GAAAA,EAAO3vB,GAAG,YAAYwF,KAAK,wBAGxC,SAAC60P,GAAD,KAEA,gBAAK13P,UAAU,aAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,GAAA,EAAD,CACEE,YAAY,gBACZD,UAAW4jB,EAAS5jB,UACpBpH,UAAW4G,IAAYkf,EAHzB,qCC7Fd,IAAMkuB,GAAW,CACfwrJ,MAAO,CACLhqJ,GAAAA,GAAAA,SACAA,GAAAA,GAAAA,WACAA,GAAAA,GAAAA,gBACAA,GAAAA,GAAAA,YAEFiqJ,IAAK,CAACjqJ,GAAAA,GAAAA,aAA2BA,GAAAA,GAAAA,mBAG5B,SAAS07M,KAA2B,MACnCC,EAAkBC,KACRV,EAAgBS,EAAxB5pP,OACFlG,GAAgBC,EAAAA,GAAAA,MAEhB7C,EAAG,UAAG4C,EAAc5E,YAAjB,aAAG,EAAoBo/N,iBAQhC,IANAt6N,EAAAA,EAAAA,YAAU,WACJ9C,GACFiyP,MAED,CAACA,EAAajyP,KAEZ4C,EAAc5E,KACjB,OAAO,KAGT,IAAMq3C,EAAUq9M,EAAgB10P,KAEhC,OACE,UAAC4/B,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CACE/yB,KAAK,aACLpD,MAAM,yCAER,UAACm2B,EAAA,GAAD,YACE,SAAC20N,GAAD,CAA6B10P,SAAU+E,EAAc5E,OAEpD00P,EAAgB/pP,WACf,iDAAyB3I,EAAzB,WAEAq1C,IACE,SAACmB,GAAA,EAAD,CACEC,SAAU,CAAEv9C,IAAKm8C,GACjBE,SAAUA,GACVU,qBAAmB,UAUjC,SAAS08M,KACP,OAAOvrP,EAAAA,GAAAA,aAAY6qP,I,uIClDrB,IAAMW,GAA6B,CACjCtyP,KAAM,CACJH,MAAO,oCACPI,QACE,8IAEJC,SAAU,CACRL,MAAO,wCACPI,QACE,4EAEJE,QAAS,CACPN,MAAO,uCACPI,QAAS,qEAIN,SAASsyP,KACd,I,IAAMjwP,GAAgBC,EAAAA,GAAAA,MAChBiwP,GAAmBnoO,EAAAA,GAAAA,MACzB,G,GAA6BthB,EAAAA,EAAAA,aAAW,SAACC,GAAD,OAAWA,EAAQ,IAAG,G,EAA9D,E,g0BAAO21L,EAAP,KAAgB8zD,EAAhB,KAEA,IAAKnwP,EAAc5E,KACjB,OAAO,KAGT,IAAM2J,EAAgB,CACpBoK,KAAMnP,EAAc5E,KAAK+T,KACzBsrN,yBAA0Bz6N,EAAc5E,KAAKq/N,0BAG/C,OACE,gBAAK7iO,UAAU,MAAf,UACE,UAACojC,EAAA,GAAD,YACE,SAACA,EAAA,GAAD,CAAa/yB,KAAK,aAAapD,MAAM,6BACrC,SAACm2B,EAAA,GAAD,WACE,SAAC,MAAD,CACEj2B,cAAeA,EACfG,SAuEV,SAAsBlH,GACpBkyP,EAAiBhqP,OACf,CACEiJ,KAAMnR,EAAOmR,KACbsrN,yBAA0Bz8N,EAAOy8N,0BAEnC,CACE31N,UADF,YAEIqB,EAAAA,GAAAA,IAAc,UAAW,iCACzBgqP,QAlFA,SAKG,kBAAG3qP,EAAH,EAAGA,OAAQH,EAAX,EAAWA,cAAerH,EAA1B,EAA0BA,OAAQuH,EAAlC,EAAkCA,QAASkf,EAA3C,EAA2CA,MAA3C,OACC,UAAC,MAAD,CAAM7sB,UAAU,kBAAhB,WACE,SAAC2Q,GAAA,EAAD,CACE/J,QAAQ,kBACRjB,MAAM,4BACNoI,KAAK,QACLH,OAAQA,MAAAA,GAAF,UAAEA,EAAQ2J,YAAV,aAAE,EAAcC,UACtBzR,QAAQ,6FALV,UAQE,SAACovC,GAAA,EAAD,CACE93C,GAAG,kBACHwF,KAAK,kBACL7C,UAAU,cACVy0B,QAASruB,EAAOmR,KAAKC,UACrBrR,SAAU,SAAC1I,GAAD,OACRgQ,EAAc,iBAAkBhQ,EAAE4lG,iBAKxC,SAAC5gE,GAAA,EAAD,CAASz0B,MAAM,SAAf,2DAIA,SAAC+kC,GAAA,EAAD,CAAa9lC,MAAM,qBAAnB,SACI7G,EAAOmR,KAAKC,WAWZ,SAACtR,GAAA,EAAD,CACEE,OAAQA,EAAOmR,KACfpR,SAAU,SAACzD,GAAD,OAAW+K,EAAc,OAAQ/K,IAC3C2D,iBAAe,EACfE,cAAe6xP,MAdjB,SAAC,MAAD,CACE11P,MAAO0D,EAAOy8N,yBACd18N,SAAU,SAACzD,GAAD,OACR+K,EAAc,2BAA4B/K,IAE5C2D,iBAAe,EACfV,MAAM,oCACNI,QAAQ,2JAYd,SAACgtC,GAAA,EAAD,CAAa9lC,MAAM,UAAnB,UACE,gBAAKjN,UAAU,kBAAf,UACE,gBAAKA,UAAU,YAAf,UACE,SAACkO,GAAA,EAAD,CACEnH,UAAW4G,IAAYkf,EACvB,UAAQ,mCACR1e,UAAWmqP,EAAiBnqP,UAC5BC,YAAY,qBAJd,sCAnDLq2L,UC5BV,IAAM+zD,IAAiC9wP,EAAAA,EAAAA,IAhBvC,YAAgE,IAA7BrE,EAA6B,EAA7BA,SAAUiK,EAAmB,EAAnBA,SAClD,OACE,iBAAKtN,UAAU,MAAf,WACE,SAACw3P,GAAD,CAAqBn0P,SAAUA,EAAUiK,SAAUA,KAGjD,iCACE,SAAC+qP,GAAD,KAEA,SAACJ,GAAD,YAOiE,CACzE,WACA,aCnBF,GAAetjP,IAAAA,OACL,qBAAsB,CAAC8jP,EAAAA,QAAsBC,EAAAA,QAAeC,EAAaC,GAAqBC,KACrGjkP,UAAU,sBAAuB4jP,IACjC5jP,UAAU,cAAe6hP,IACzB7hP,UAAU,kBAAmBqiP,IAJhC,M,gFCZe,MAAM6B,EAEnB95M,YAAYqd,EAAaloD,EAAQizG,GAC/BroH,KAAKqoH,kBAAoBA,EAEzBroH,KAAK2gD,SAAW,WAEhB,MAAMwC,EAAUnjD,KAAKmjD,QACrBvtC,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KAEjEpV,KAAKg6P,WAAah6P,KAAKg6P,WAAW36P,KAAKW,MACvCA,KAAKi6P,kBAAoBj6P,KAAKi6P,kBAAkB56P,KAAKW,MACrDA,KAAKmjD,QAAUA,EAAQ9jD,KAAKW,MAG9Bg6P,WAAWr6P,GACT,IAAIgpC,GAAO,EACPhpC,IAAQK,KAAKqW,KAAK1W,MACpBgpC,GAAQ3oC,KAAKqW,KAAKsyB,MAGpB3oC,KAAKk6P,aAAa,CAAEv6P,IAAAA,EAAKgpC,KAAAA,IAG3BsxN,kBAAkB7jP,GAChBpW,KAAKqoH,kBAAkBS,mBAAmB9oH,KAAK2gD,SAAUvqC,GACzDpW,KAAKskN,cAAcluM,GAGrB+sC,UACEnjD,KAAKkkN,iBAEL,MAAM9tM,EAAQpW,KAAKqoH,kBAAkB47F,mBAAmBjkN,KAAK2gD,UACzDvqC,GACFpW,KAAKskN,eAAeluM,I,qKClC1B,MAMa+jP,EAAwB,CACnC35M,YAPoCxrC,EAAQ,OAQ5CE,WAFmC,UAGnCH,SAAU,CACRqhE,KAAM,IACNzuB,QAAS,IACTtxC,KAAM,IACND,MAAO,IACPgkP,WAAY,IACZz4N,YAAa,IACbnsB,QAAS,IAET6kP,sBAAuB,IACvBC,gBAAiB,IACjBJ,aAAc,IAEd51C,cAAe,IACfE,aAAc,O,kHCpBH,MAAM+1C,EAEnBt6M,YAAYC,EAAQ9qC,EAAQolP,EAAqB/vO,GAC/CzqB,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EACdpV,KAAKw6P,oBAAsBA,EAC3Bx6P,KAAKyqB,cAAgBA,EAErBzqB,KAAKqoG,eAAiBptF,EAAAA,GAAAA,eACtBjb,KAAK+P,MAAQ,CACX43C,QAAS,GACT0iE,KAAM,CACJn/E,KAAM,EACN3/B,GAAI,GAEN8K,KAAM,CACJ1W,IAAK,YACLgpC,MAAM,GAERvvB,KAAM,EACNhD,MAAO,GACPgkP,WAAY,EACZhkL,KAAM,MAGRp2E,KAAKy6P,MAAQr9N,GAAAA,GAASs9N,MAAM,OAC5B16P,KAAK26P,aAAev9N,GAAAA,GAASmsC,SAAS,EAAG,KAAK7rC,QAAQ,OAEtD19B,KAAK46P,aAAe56P,KAAK46P,aAAav7P,KAAKW,MAC3CA,KAAKs6P,gBAAkBt6P,KAAKs6P,gBAAgBj7P,KAAKW,MACjDA,KAAKk6P,aAAel6P,KAAKk6P,aAAa76P,KAAKW,MAC3CA,KAAK+uL,SAAW/uL,KAAK+uL,SAAS1vL,KAAKW,MACnCA,KAAKwkN,aAAexkN,KAAKwkN,aAAanlN,KAAKW,MAC3CA,KAAKskN,cAAgBtkN,KAAKskN,cAAcjlN,KAAKW,MAG/CwkN,aAAaprM,GACXpZ,KAAK+P,MAAMqJ,KAAOA,EAClBpZ,KAAK+uL,WAGPu1B,cAAcluM,GACZpW,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMqG,MAAQA,EACnBpW,KAAK+uL,WAGPmrE,aAAa7jP,GACXrW,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMsG,KAAOA,EAClBrW,KAAK+uL,WAGPurE,gBAAgB3yM,GACd,OAAO3nD,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAM43C,QAAUA,EACrB3nD,KAAK+uL,cAIT6rE,cAAa,UAAEx0C,EAAF,QAAaC,IACxBrmN,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMs6G,KAAO,CAAE9+G,GAAI86M,EAASn7K,KAAMk7K,GACvCpmN,KAAK+uL,WAGK,eACV,OAAO/uL,KAAKkgD,QAAO2F,UACjB,UACQ7lD,KAAKw6P,oBAAoBK,cAAc76P,KAAK+P,MAAMsG,KAAMrW,KAAK+P,MAAM43C,QAAS3nD,KAAK+P,MAAMs6G,KAAMrqH,KAAK+P,MAAM+qP,eAC9G,MAAOhgP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6CAKjC,iBACZ,OAAO9a,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMqmE,KAAO,KAClB,MAAMz0E,GAAU3B,KAAK+P,MAAMqJ,KAAO,GAAKpZ,KAAK+P,MAAMqG,MAClD,IACE,MAAM,KAAEggE,EAAF,WAAQ3/D,SAAqBzW,KAAKw6P,oBAAoBpkL,KAAKz0E,EAAQ3B,KAAK+P,MAAMqG,MAAOpW,KAAK+P,MAAMsG,KAAMrW,KAAK+P,MAAM43C,QAAS3nD,KAAK+P,MAAMs6G,MAC3IrqH,KAAK+P,MAAMqmE,KAenB,SAAsBA,GACpB,OAAKA,GAASA,EAAK32E,OAIZ22E,EAAKj4E,KAAKisE,IAAD,IAAeA,EAAKtpD,QAASi6O,EAAUtgL,KAAKrQ,EAAItpD,cAHvD,GAjBek6O,CAAa5kL,GAC/Bp2E,KAAK+P,MAAMqqP,WAAa3jP,EACxB,MAAOqE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yCAK/CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+uL,eAaX,SAASgsE,EAAUrjP,GACjB,IACE,OAAOlS,KAAKwZ,MAAMtH,GAClB,MAAOhZ,GACP,OAAO,M,6KCjHX,MAIau8P,EAAmB,CAC9Bz6M,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,uFCDZ,UAAeU,IAAAA,OACL,iDAAkD,IACzDC,UAAU,wBAAyBskP,EAAAA,uBACnCtkP,UAAU,mBAAoBolP,EAAAA,kBAHjC,M,oECFA,MAAMlB,EAEJ95M,YAAYqd,EAAaloD,EAAQizG,GAC/BroH,KAAKqoH,kBAAoBA,EAEzBroH,KAAK2gD,SAAW,WAEhB3gD,KAAKk7P,oBAAsBp8P,OAAOuI,OAAOkkP,EAAAA,8BAA8BptP,KAAKwF,IAAD,CAAcA,MAAAA,EAAOiD,MAAO+kP,EAAAA,gCAAgChoP,OACvI3D,KAAKm7P,iBAAmBr8P,OAAOuI,OAAOukP,EAAAA,gCAAgCztP,KAAKwF,IAAD,CAAcA,MAAAA,EAAOiD,MAAOolP,EAAAA,kCAAkCroP,OAExI,MAAMw/C,EAAUnjD,KAAKmjD,QACrBvtC,QAAQ4nD,OAAOx9D,KAAMs9D,EAAY,6BAA8B,CAAEloD,OAAAA,KACjEpV,KAAKmjD,QAAUA,EAAQ9jD,KAAKW,MAE5BA,KAAKg6P,WAAah6P,KAAKg6P,WAAW36P,KAAKW,MACvCA,KAAKi6P,kBAAoBj6P,KAAKi6P,kBAAkB56P,KAAKW,MAGvDg6P,WAAWr6P,GACT,IAAIgpC,GAAO,EACPhpC,IAAQK,KAAKqW,KAAK1W,MACpBgpC,GAAQ3oC,KAAKqW,KAAKsyB,MAGpB3oC,KAAKk6P,aAAa,CAAEv6P,IAAAA,EAAKgpC,KAAAA,IAG3ByyN,YAAY59O,GACV,OAAMA,KAAWmuO,EAAAA,gCAGVA,EAAAA,gCAAgCnuO,GAF9B,GAKX69O,aAAatxP,GACX,OAAMA,KAAQiiP,EAAAA,kCAGPA,EAAAA,kCAAkCjiP,GAFhC,GAKXuxP,cAAcvxP,GACZ,OAAOA,IAAS6hP,EAAAA,+BAAAA,YAGlB2P,cAAcxxP,GACZ,OAAOA,IAAS6hP,EAAAA,+BAAAA,YAGlBqO,kBAAkB7jP,GAChBpW,KAAKqoH,kBAAkBS,mBAAmB9oH,KAAK2gD,SAAUvqC,GACzDpW,KAAKskN,cAAcluM,GAGrB+sC,UACEnjD,KAAKkkN,iBAEL,MAAM9tM,EAAQpW,KAAKqoH,kBAAkB47F,mBAAmBjkN,KAAK2gD,UACzDvqC,GACFpW,KAAKi6P,mBAAmB7jP,I,uDAK9B,a,yGCnEA,MAIaolP,EAAoB,CAC/Bh7M,YALoCxrC,EAAQ,OAM5CE,WAF+B,UAG/BH,SAAU,CACRqhE,KAAM,IACNzuB,QAAS,IACTtxC,KAAM,IACND,MAAO,IACPgkP,WAAY,IACZz4N,YAAa,IACbm5N,cAAe,IACfW,WAAY,IACZjmP,QAAS,IAET6kP,sBAAuB,IACvBqB,mBAAoB,IACpBpB,gBAAiB,IACjBJ,aAAc,IAEd51C,cAAe,IACfE,aAAc,O,kHCpBH,MAAMm3C,EAEnB17M,YAAYC,EAAQs6M,EAAqB/vO,GACvCzqB,KAAKkgD,OAASA,EACdlgD,KAAKw6P,oBAAsBA,EAC3Bx6P,KAAKyqB,cAAgBA,EAErBzqB,KAAKqoG,eAAiBptF,EAAAA,GAAAA,eACtBjb,KAAK+P,MAAQ,CACX43C,QAAS,GACT0iE,KAAM,CACJn/E,KAAM,EACN3/B,GAAI,GAEN8K,KAAM,CACJ1W,IAAK,YACLgpC,MAAM,GAERmyN,cAAe,CAAC,EAAG,EAAG,GACtBW,WAAY,CAAC,EAAG,EAAG,GACnBriP,KAAM,EACNhD,MAAO,GACPgkP,WAAY,EACZhkL,KAAM,MAGRp2E,KAAKy6P,MAAQr9N,GAAAA,GAASs9N,MAAM,OAC5B16P,KAAK26P,aAAev9N,GAAAA,GAASmsC,SAAS,EAAG,KAAK7rC,QAAQ,OAEtD19B,KAAK46P,aAAe56P,KAAK46P,aAAav7P,KAAKW,MAC3CA,KAAKs6P,gBAAkBt6P,KAAKs6P,gBAAgBj7P,KAAKW,MACjDA,KAAKk6P,aAAel6P,KAAKk6P,aAAa76P,KAAKW,MAC3CA,KAAKq6P,sBAAwBr6P,KAAKq6P,sBAAsBh7P,KAAKW,MAC7DA,KAAK07P,mBAAqB17P,KAAK07P,mBAAmBr8P,KAAKW,MACvDA,KAAK+uL,SAAW/uL,KAAK+uL,SAAS1vL,KAAKW,MACnCA,KAAKwkN,aAAexkN,KAAKwkN,aAAanlN,KAAKW,MAC3CA,KAAKskN,cAAgBtkN,KAAKskN,cAAcjlN,KAAKW,MAG/CwkN,aAAaprM,GACXpZ,KAAK+P,MAAMqJ,KAAOA,EAClBpZ,KAAK+uL,WAGPu1B,cAAcluM,GACZpW,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMqG,MAAQA,EACnBpW,KAAK+uL,WAGPmrE,aAAa7jP,GACXrW,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMsG,KAAOA,EAClBrW,KAAK+uL,WAGPsrE,sBAAsBjvN,EAAWwwN,GAC/B57P,KAAK+P,MAAM+qP,cAAgBc,EAC3B57P,KAAK+uL,WAGP2sE,mBAAmBtwN,EAAWwwN,GAC5B57P,KAAK+P,MAAM0rP,WAAaG,EACxB57P,KAAK+uL,WAGPurE,gBAAgB3yM,GACd,OAAO3nD,KAAKoV,OAAOE,YAAW,KAC5BtV,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAM43C,QAAUA,EACrB3nD,KAAK+uL,cAIT6rE,cAAa,UAAEx0C,EAAF,QAAaC,IACxBrmN,KAAK+P,MAAMqJ,KAAO,EAClBpZ,KAAK+P,MAAMs6G,KAAO,CAAE9+G,GAAI86M,EAASn7K,KAAMk7K,GACvCpmN,KAAK+uL,WAGK,eACV,OAAO/uL,KAAKkgD,QAAO2F,UACjB,UACQ7lD,KAAKw6P,oBAAoBqB,kBAAkB77P,KAAK+P,MAAMsG,KAAMrW,KAAK+P,MAAM43C,QAAS3nD,KAAK+P,MAAMs6G,KAAMrqH,KAAK+P,MAAM+qP,eAClH,MAAOhgP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6CAKjC,iBACZ,OAAO9a,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMqmE,KAAO,KAClB,MAAMz0E,GAAU3B,KAAK+P,MAAMqJ,KAAO,GAAKpZ,KAAK+P,MAAMqG,MAClD,IACE,MAAM,KAAEggE,EAAF,WAAQ3/D,SAAqBzW,KAAKw6P,oBAAoBsB,SAC1Dn6P,EACA3B,KAAK+P,MAAMqG,MACXpW,KAAK+P,MAAMsG,KACXrW,KAAK+P,MAAM43C,QACX3nD,KAAK+P,MAAMs6G,KACXrqH,KAAK+P,MAAM+qP,cACX96P,KAAK+P,MAAM0rP,YAEbz7P,KAAK+P,MAAMqmE,KAAoBA,EAC/Bp2E,KAAK+P,MAAMqqP,WAAa3jP,EACxB,MAAOqE,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,yCAK/CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+uL,e,+JCtHX,MAIagtE,EAAe,CAC1Bv7M,YALoCxrC,EAAQ,OAM5CE,WAAUA,EAAAA,U,uFCDZ,UAAeU,IAAAA,OAAe,6CAA8C,IAAIC,UAAU,eAAgBkmP,EAAAA,cAAclmP,UAAU,oBAAqB2lP,EAAAA,mBAAvJ,M,4GCWA,SAAS52O,EAAOoxC,GACdA,EAAuBC,SAAS,CAC9BnyD,KAAM,qBACN2C,IAAK,aACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,mBAKjBmgD,EAAuBC,SAAS,CAC9BnyD,KAAM,yBACN2C,IAAK,iBACLyvD,MAAO,CACL,WAAY,CACVrgD,UAAW,uB,qCAxBnB,UAAeD,IAAAA,OACL,8BAA+B,CAAComP,EAAAA,QAAoBC,EAAAA,UAC3Dt+O,QAAQ,eAAgBu+O,EAAAA,cACxBv+O,QAAQ,sBAAuB68O,EAAAA,qBAE/B51O,OAAOA,GALV,M,mGCLO,SAASs3O,EAAaz3M,EAAW03M,GACtC,MAAM77O,GAAW+yE,EAAAA,EAAAA,YAAa,mBAW9B,MAAO,CAAE+oK,cAETv2M,eAA6Br6C,GAC3B,OAAO2wP,EAAM,CACXv7O,OAAQ,MACRna,IAAM,GAAE6Z,iBACR9U,OAAAA,EACA05C,aAAc,OACdvuC,QAAS,CACP,eAAgB,eATE0lP,UAcxBx2M,eAAyBr6C,GACvB,OAAO2wP,EAAM,CACXv7O,OAAQ,MACRna,IAAM,GAAE6Z,aACR9U,OAAAA,EACA05C,aAAc,OACdvuC,QAAS,CACP,eAAgB,kBA9BL8tC,EACd,GAAEnkC,YACH,GACA,CACEw7O,SAAU,CAAEl7O,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,aAC7C0xE,KAAM,CAAEx1D,OAAQ,MAAOpV,OAAQ,CAAE9G,OAAQ,Y,oECVxC,SAAS81P,EAAoB/4M,EAAWy6M,GAC7C,MAAO,CAAEJ,SAET,SAAkBn6P,EAAQyU,EAAOC,EAAMsxC,EAAS0iE,EAAMiyI,EAAU36I,GAC9D,OAAOu6I,EAAaJ,SAAS,CAAEn6P,OAAAA,EAAQyU,MAAAA,EAAOuxC,QAAAA,EAAS40M,OAAQlyI,EAAK9+G,GAAIixP,MAAOnyI,EAAKn/E,KAAM/C,OAAQ9xB,EAAK1W,IAAK88P,SAAUpmP,EAAKsyB,KAAM2zN,SAAAA,EAAU36I,MAAAA,IAAS37D,UAHnI61M,kBAMnBh2M,eAAiCxvC,EAAMsxC,EAAS0iE,EAAMiyI,EAAU36I,GAC9D,MAAMjrG,QAAiBwlP,EAAaE,cAAc,CAAEz0M,QAAAA,EAAS40M,OAAQlyI,EAAK9+G,GAAIixP,MAAOnyI,EAAKn/E,KAAM/C,OAAQ9xB,EAAK1W,IAAK88P,SAAUpmP,EAAKsyB,KAAMvyB,MAAO,IAAMkmP,SAAAA,EAAU36I,MAAAA,IAC9J,OAAOlgE,EAAUyB,OAAOxsC,EAASjS,KAAM,aARH2xE,KAWtC,SAAcz0E,EAAQyU,EAAOC,EAAMsxC,EAAS0iE,GAC1C,OAAO6xI,EAAa9lL,KAAK,CAAEz0E,OAAAA,EAAQyU,MAAAA,EAAOuxC,QAAAA,EAAS40M,OAAQlyI,EAAK9+G,GAAIixP,MAAOnyI,EAAKn/E,KAAM/C,OAAQ9xB,EAAK1W,IAAK88P,SAAUpmP,EAAKsyB,OAAQqd,UAZrF60M,cAe5Ch1M,eAA6BxvC,EAAMsxC,EAAS0iE,GAC1C,MAAM3zG,QAAiBwlP,EAAaG,UAAU,CAAE10M,QAAAA,EAAS40M,OAAQlyI,EAAK9+G,GAAIixP,MAAOnyI,EAAKn/E,KAAM/C,OAAQ9xB,EAAK1W,IAAK88P,SAAUpmP,EAAKsyB,KAAMvyB,MAAO,MAC1I,OAAOqrC,EAAUyB,OAAOxsC,EAASjS,KAAM,c,kHCnB3CmR,QAAQ5W,OAAO,iBAAiBkW,WAAW,oBAAqB,CAC9D,SACA,SACA,iBACA,cACA,gBACA,kBACA,eACA,eACA,SAAUE,EAAQszC,EAAQqiB,EAAgBqoH,EAAa3oK,EAAek8C,EAAiBjlB,EAAckD,GACnGxvC,EAAOzB,WAAa,CAClBssO,gBAAiB,GACjBC,YAAa,GACbwc,gBAAiB,IAGnBtnP,EAAOmjO,eAAiB1yL,iBAEtB,SADwBnE,EAAaz5B,wBAEnC,UACQmrK,EAAYupE,mBAAmBvnP,EAAOw0O,OAAQx0O,EAAOzB,WAAWssO,gBAAiB7qO,EAAOzB,WAAWusO,aACzGz1N,EAAcF,QAAQ,UAAW,iCACjCq6B,EAAaklM,yBAAyB10O,EAAOw0O,OAAO/lP,YACpDuR,EAAOgqL,qBAAsB,EAC7B12I,EAAOr8B,GAAG,oBACV,MAAOvR,GACP2P,EAAcxc,MAAM,UAAW6M,EAAKA,EAAID,OAK9CzF,EAAOwnP,mBAAqB/2M,iBAC1B,IACMzwC,EAAOynP,gBACTj4M,EAAa+kM,yBAAyBv0O,EAAOw0O,OAAO/lP,YACpDuR,EAAOgqL,qBAAsB,EAC7B12I,EAAOr8B,GAAG,mBAEZ,MAAOvR,GACP2P,EAAcxc,MAAM,UAAW6M,EAAKA,EAAID,OAI5CzF,EAAOynP,YAAc,WACnB,OAAOznP,EAAOm0O,2BAA6B,GAG7CvpP,KAAKktG,UAAa4vJ,IAChB,GAAIA,EAAe,CACjB,GAAwB,IAApB1nP,EAAO2nP,UAA8C,sCAA5BD,EAAcvxP,KAAKzH,KAC9C,OAAO,EAET,GAAgC,qBAA5Bg5P,EAAcvxP,KAAKzH,KACrB,OAAO,EAMX,OAHIsR,EAAOgqL,qBACT19I,EAAax5B,8BAEP9S,EAAOgqL,qBAGjBhqL,EAAO83F,UAAY,IACVltG,KAAKktG,YAGd93F,EAAO2nD,aAAgBigM,IAGrBt7M,EAAap6B,gBAFD,wJAEuBX,IACjC,IAAKA,EACH,OAEF,IAAIo7C,EAAci7L,EAAev9P,OACjCu9P,EAAenlP,SAAS6+D,IACtB08G,EAAYylD,kBAAkBzjO,EAAOw0O,OAAQlzK,EAAMp4E,IAChD0d,MAAK,KACJyO,EAAcF,QAAQ,UAAW,8BACjC,IAAI4V,EAAQ/qB,EAAO2hE,OAAOlxE,QAAQ6wE,GAClCthE,EAAO2hE,OAAO9T,OAAO9iC,EAAO,MAE7B28B,OAAOhiD,IACN2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAErConD,SAAQ,OACLH,EACkB,IAAhBA,GACFrZ,EAAOxnB,mBAOnB,WACE,MAAMnxB,EAAQ60C,EAAakB,WACrBgrC,EAAc/lB,EAAegmB,iBACnC37E,EAAOw0O,OAAS94J,EAAYtmD,GAC5Bp1B,EAAO2nP,SAAWhyL,EAAegmB,iBAAiB5tF,KAClDiS,EAAOgqL,oBAAsBtuG,EAAYsuG,oBACzChqL,EAAO6nP,eAAoC,IAAnBnsK,EAAYtmD,GAEhCz6B,EAAMqsI,YAAY0sE,gBAAgBjwM,UACpCzD,EAAO8nP,WAAantP,EAAMqsI,YAAY0sE,gBAAgB78M,MAAM9G,SAASiQ,EAAOw0O,SAG9EjjL,EAAgB6B,iBACbxsD,MAAK,SAAiBvX,GACrB2Q,EAAO+tN,qBAAuB1+N,EAAK0+N,qBAE/BpzN,EAAMs5O,GAAGK,wBAA0B35O,EAAMs5O,GAAGK,yBAA2BjlP,EAAK66L,wBAC9E16I,EAAamlM,2BAGf30O,EAAOm0O,2BACLx5O,EAAMs5O,GAAGE,4BAA8Bx5O,EAAMs5O,GAAGE,2BAA2Bn0O,EAAOw0O,OAAO/lP,YACrFkM,EAAMs5O,GAAGE,2BAA2Bn0O,EAAOw0O,OAAO/lP,YAClD,EAENuR,EAAOs0O,uBAAyBjlP,EAAK66L,uBACrC16I,EAAa6kM,0BAA0BhlP,EAAK66L,2BAE7CxiI,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8CAExCs4K,EAAYwlD,gBAAgBxjO,EAAOw0O,QAChC5tO,MAAK,SAAiBvX,GACrB2Q,EAAO2hE,OAAStyE,KAEjBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,qCAI1Cs5E,O,+ECtIW,MAAM+oK,EAEnBl9M,YAAYC,EAAQkoD,EAAYr9B,EAAgBqoH,EAAa3oK,GAC3DzqB,KAAKkgD,OAASA,EACdlgD,KAAKooG,WAAaA,EAClBpoG,KAAK+qE,eAAiBA,EACtB/qE,KAAKozL,YAAcA,EACnBpzL,KAAKyqB,cAAgBA,EAErBzqB,KAAKuO,SAAWvO,KAAKuO,SAASlP,KAAKW,MACnCA,KAAK4jB,QAAU5jB,KAAK4jB,QAAQvkB,KAAKW,MAGrB,eAAC4S,GACb,MAAMi/L,QAAoB7xM,KAAKozL,YAAYulD,kBAAkB34O,KAAK+P,MAAM2hB,OAAQ9e,GAGhF,OADA5S,KAAKooG,WAAW6B,WAAW,wCAAyC,CAAEnlG,SAAU,cACzE+sM,EAGTjuL,QAAQw5O,EAASnvP,EAAOhB,GACtBjN,KAAKyqB,cAAcxc,MAAMmvP,EAASnvP,EAAOhB,GAG3Ck2C,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB,MAAMn0B,EAAS1xB,KAAK+qE,eAAegmB,iBAAiBvmD,GACpDxqC,KAAK+P,MAAQ,CACX2hB,OAAAA,O,8JC5BR,MAAM6uB,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,wBAAyB,CACjE2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,iGCHZ,MAAMmoP,EAEJp9M,YACEC,EACAkoD,EACAhzF,EACAszC,EACA4oD,EACArqD,EACA8jB,EACAqoH,EACAxuI,EACAn6B,EACAk8C,EACA22L,EACA10M,EACA41K,EACAl7M,GAEAtjB,KAAKkgD,OAASA,EACdlgD,KAAKooG,WAAaA,EAClBpoG,KAAKoV,OAASA,EACdpV,KAAK0oD,OAASA,EACd1oD,KAAKsxG,aAAeA,EACpBtxG,KAAKinD,QAAUA,EACfjnD,KAAK+qE,eAAiBA,EACtB/qE,KAAKozL,YAAcA,EACnBpzL,KAAK4kD,aAAeA,EACpB5kD,KAAKyqB,cAAgBA,EACrBzqB,KAAK2mE,gBAAkBA,EACvB3mE,KAAKs9P,UAAYA,EACjBt9P,KAAK4oD,aAAeA,EACpB5oD,KAAKw+N,cAAgBA,EACrBx+N,KAAKsjB,eAAiBA,EAEtBtjB,KAAK66M,KAAO76M,KAAK4kD,aAAakB,WAAWs2F,YAAYy+D,KACrD76M,KAAK2T,WAAa,CAChBnH,SAAU,GACVk1N,SAAU,IAEZ1hO,KAAK+P,MAAQ,CACXwtP,kBAAmB,WACnBC,gBAAgB,EAChBC,mBAAmB,EACnBC,oBAAqB,GACrBC,iBAAiB,EACjBC,cAAe,IAGjB59P,KAAK69P,uBAAyB79P,KAAK69P,uBAAuBx+P,KAAKW,MAC/DA,KAAK89P,sBAAwB99P,KAAK89P,sBAAsBz+P,KAAKW,MAC7DA,KAAK+9P,eAAiB/9P,KAAK+9P,eAAe1+P,KAAKW,MAE/CA,KAAKg+P,gBAAkBh+P,KAAKg+P,gBAAgB3+P,KAAKW,MACjDA,KAAKi+P,mBAAqBj+P,KAAKi+P,mBAAmB5+P,KAAKW,MAEvDA,KAAKk+P,sBAAwBl+P,KAAKk+P,sBAAsB7+P,KAAKW,MAE7DA,KAAKm+P,sBAAwBn+P,KAAKm+P,sBAAsB9+P,KAAKW,MAC7DA,KAAKo+P,qBAAuBp+P,KAAKo+P,qBAAqB/+P,KAAKW,MAC3DA,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAOjCq+P,qBACEr+P,KAAK+P,MAAMwtP,kBAAqD,SAAjCv9P,KAAK+P,MAAMwtP,kBAA+B,WAAa,OAIxFe,qBAAqBh2O,GACnBtoB,KAAK+P,MAAMwtP,kBAAoBj1O,EAC/Bkd,SAAS8sD,eAAe,YAAY64J,aAAa,OAAQ7iO,GAG3D8zL,OAAOnuM,GACLjO,KAAK+qE,eAAeqxI,SACpBp8M,KAAK+P,MAAM4tP,iBAAkB,EAC7B39P,KAAKu+P,wBACLv+P,KAAK4oD,aAAag/L,kBAAkB35O,GACpCjO,KAAKinD,QAAQksC,SAASjyD,SAGxBjzB,MAAM6M,EAAK7N,GACTjN,KAAK+P,MAAM2tP,oBAAsBzwP,EAC5B6N,IACHA,EAAM,IAER9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK7N,GACzCjN,KAAK+P,MAAM4tP,iBAAkB,EAG/Ba,uBAAuBC,GACrB,OAAuD,IAAnDA,EAAS54P,QAAQ,6BACZ,aAC+C,IAA7C44P,EAAS54P,QAAQ,uBACnB,UACsC,IAApC44P,EAAS54P,QAAQ,cACnB,SAEF,QAGT64P,gBACE,MAAM74D,EAAOv+C,GAAAA,GAEb,OADAtnJ,KAAK4oD,aAAas4L,oBAAoBr7C,GAC/B,UAAYA,EAGrB04D,wBACEv+P,KAAKikO,cAAgBjkO,KAAK+P,MAAMk0N,cAAgBjkO,KAAK0+P,gBAGvDC,cAAc5uP,GACZ,MAAM6uP,EAAY5+P,KAAK4oD,aAAao+L,oBACpC,OAAO4X,GAAa7uP,GAAS6uP,IAAc7uP,EAWjB,+BAC1B,IAGE,GAA+B,WAFPkG,EAAAA,EAAAA,IAAgB,CAAEG,MAAO,KAEnCzS,MAAMlE,OAClB,MAAO,mBAET,MAAOqb,GACP9a,KAAKiO,MAAM6M,EAAK,mCAElB,MAAO,iBAGkB,8BACzB,IAGE,WAFmB9a,KAAKsjB,eAAeJ,QAE7B63J,MACR,MAAO,yBAET,MAAOjgK,GACP9a,KAAKiO,MAAM6M,EAAK,qCAIA,6BACZ9a,KAAK4kD,aAAaoE,aAExB,MAAM/+C,EAAUjK,KAAK+qE,eAAe9gE,UACpCjK,KAAKooG,WAAWllG,YAAY+G,EAAU,QAAU,iBAEhD,IAAI03C,EAAO,iBACP13C,IACFjK,KAAKsjB,eAAeT,aACpB8+B,QAAa3hD,KAAK89P,wBACbn8M,IACHA,QAAa3hD,KAAK69P,2BAGlB79P,KAAK+qE,eAAegmB,iBAAiBquG,qBAAgC,2BAATz9I,IAC9DA,EAAO,qBAGT3hD,KAAK0oD,OAAOr8B,GAAGs1B,GAUI,sBAAC/iD,GACpB,UACQoB,KAAK+qE,eAAe42K,WAAW/iP,GACrCoB,KAAKs9P,UAAUuB,kBACf,MAAO/jP,GACP,GAAmB,MAAfA,EAAI5C,OAIN,OAFAlY,KAAKiO,MAAM6M,EAAKA,EAAIrW,KAAKwI,cACzBjN,KAAK4oD,aAAao/L,gCAAgCppP,GAGpDoB,KAAKiO,MAAM6M,EAAK,8BAII,yBAACqtC,EAAU0jB,SAC3B7rE,KAAK+qE,eAAeisK,MAAM7uL,EAAU0jB,SACpC7rE,KAAK+9P,iBAWc,8BACzB,IACE,IAAI51M,EAAWnoD,KAAK2T,WAAWnH,SAC3Bq/D,EAAW7rE,KAAK2T,WAAW+tN,SAC/B1hO,KAAK+P,MAAM4tP,iBAAkB,QACvB39P,KAAKi+P,mBAAmB91M,EAAU0jB,GACxC,MAAO/wD,GACP,GAAmB,MAAfA,EAAI5C,OAGN,YADAlY,KAAKiO,MAAM6M,EAAKA,EAAIrW,KAAKwI,SAG3BjN,KAAKiO,MAAM6M,EAAK,oBAIpBgkP,mBAEE,OADA9+P,KAAKs+P,qBAAqB,YACnBt+P,KAAKkgD,OAAOlgD,KAAKk+P,uBAUC,4BAACt/P,EAAMmR,GAChC,GAAI/P,KAAK2+P,cAAc5uP,SACf/P,KAAKg+P,gBAAgBp/P,OACtB,CACL,GAAIoB,KAAK4oD,aAAaq/L,8BAA8BrpP,GAElD,YADAoB,KAAKiO,MAAM,KAAM,iFAGnBjO,KAAKiO,MAAM,KAAM,oCAIK,6BACxB,UACuBjO,KAAKozL,YAAY6pB,uBAEpCj9M,KAAK0oD,OAAOr8B,GAAG,wBAEjB,MAAOvR,GACP9a,KAAKiO,MAAM6M,EAAK,qDAIpBikP,sBACE/+P,KAAK+P,MAAM0tP,mBAAqBz9P,KAAK+P,MAAM0tP,kBAGjC,eACV,IACE,MAAMn5P,QAAiBtE,KAAK2mE,gBAAgB6B,iBAC5CxoE,KAAK+P,MAAMivP,iBAAmB16P,EAAS4/N,sBACvClkO,KAAK+P,MAAMytP,eAAmD,IAAlCl5P,EAAS6+N,qBACrCnjO,KAAK+P,MAAM0tP,mBAAqBz9P,KAAK+P,MAAMytP,eAC3Cx9P,KAAK+P,MAAMk0N,cAAgB3/N,EAAS2/N,cACpCjkO,KAAK+P,MAAM6tP,cAAgB59P,KAAKw+P,uBAAuBl6P,EAAS2/N,eAEhE,MAAMrlO,EAAOoB,KAAKs9P,UAAU2B,aAAa,QACnClvP,EAAQ/P,KAAKs9P,UAAU2B,aAAa,SAC1C,GAAIrgQ,GAAQmR,EAGV,aAFM/P,KAAKm+P,sBAAsBv/P,EAAMmR,QACvC/P,KAAKu+P,wBASP,GANKv+P,KAAK66M,aACF76M,KAAK4kD,aAAaoE,aACxBhpD,KAAK66M,KAAO76M,KAAK4kD,aAAakB,WAAWs2F,YAAYy+D,MAEvD76M,KAAKu+P,wBAEDv+P,KAAKsxG,aAAa8qG,QAAUp8M,KAAKsxG,aAAarjG,MAEhD,YADAjO,KAAKo8M,OAAOp8M,KAAKsxG,aAAarjG,OAGhC,MAAMA,EAAQjO,KAAK4oD,aAAai/L,kBAC5B55O,IACFjO,KAAK+P,MAAM2tP,oBAAsBzvP,EACjCjO,KAAK4oD,aAAak/L,qBAGhB9nP,KAAK+qE,eAAe1E,yBAChBrmE,KAAK+9P,iBAEb/9P,KAAK+P,MAAM4tP,iBAAkB,EAEzB39P,KAAK+P,MAAMivP,mBAAqBh/P,KAAK+qE,eAAe1E,oBACtDrmE,KAAKinD,QAAQksC,SAASpnE,KAAO/rB,KAAKikO,qBAG9BjkO,KAAKo+P,uBACX,MAAOtjP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAI7CqoC,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,yNAQ5B,YACA9qH,IAAAA,OAAe,iBAAiBV,WAAW,2BAA4BmoP,I,8GC/TvE,MAAM6B,EAEJj/M,YAAYC,EAAQwI,EAAQzB,EAAS8jB,EAAgBrpB,EAAcg3F,EAAuBhpD,EAAejlE,EAAe4jE,EAAwBoY,EAAc7hD,GAC5J9lD,OAAOM,OAAOY,KAAM,CAClBkgD,OAAAA,EACAwI,OAAAA,EACAzB,QAAAA,EACA8jB,eAAAA,EACArpB,aAAAA,EACAg3F,sBAAAA,EACAhpD,cAAAA,EACAjlE,cAAAA,EACA4jE,uBAAAA,EACAoY,aAAAA,EACA7hD,aAAAA,IAGF5kD,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAK2T,WAAa,CAChB6wB,MAAO,GACP4lF,YAAa,GACbv8C,KAAM,KACNuiD,cAAe,GACfC,wBAAyB,GACzBE,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GACpB4C,4BAA6B,qBAC7B/wC,YAAa,GACb+nD,KAAM,GACNwO,KAAM,GACNp2D,SAAU,EACVz3E,KAAM,EACN2kF,kBAAmB,IAAIC,EAAAA,sBACvBkpD,UAAW,IAGb94I,KAAK+P,MAAQ,CACXujH,OAAQ,SACRxjC,oBAAqB,GACrBqF,kBAAkB,EAClBgqK,WAAW,EACXh+N,SAAS,EACT4uD,eAAe,EACfqvK,kBAAmB5xM,EAAAA,+BACnBorF,iBAAiB,GAGnB54I,KAAK07D,UAAY,GAEjB17D,KAAK26O,qBAAuB36O,KAAK26O,qBAAqBt7O,KAAKW,MAC3DA,KAAKq/P,0BAA4Br/P,KAAKq/P,0BAA0BhgQ,KAAKW,MACrEA,KAAK4wF,aAAe5wF,KAAK4wF,aAAavxF,KAAKW,MAC3CA,KAAKm5I,6BAA+Bn5I,KAAKm5I,6BAA6B95I,KAAKW,MAC3EA,KAAKo5I,oCAAsCp5I,KAAKo5I,oCAAoC/5I,KAAKW,MACzFA,KAAKq5I,mCAAqCr5I,KAAKq5I,mCAAmCh6I,KAAKW,MACvFA,KAAKs/P,sCAAwCt/P,KAAKs/P,sCAAsCjgQ,KAAKW,MAC7FA,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAKw0H,eAAiBx0H,KAAKw0H,eAAen1H,KAAKW,MAC/CA,KAAKg5I,kBAAoBh5I,KAAKg5I,kBAAkB35I,KAAKW,MACrDA,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAG7Cg5I,kBAAkBr1I,GAChB3D,KAAK+H,aAAa,CAAE+wI,UAAWn1I,IAGjCoE,aAAaV,GACX,OAAOrH,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,MAKTszO,uBACE,OAAO36O,KAAKkgD,OAAOlgD,KAAKq/P,2BAG1B7qI,iBACEx0H,KAAK2T,WAAWy2G,YAAc,GAC9BpqH,KAAK2T,WAAWmlI,UAAY,GAC5B94I,KAAK+zH,iBAAmB,KAGK,kCAC7B,IAAInzG,EAAS5gB,KAAK+P,MAAMujH,OAMxB,GAJe,aAAX1yG,IACFA,EAAS,UAGN5gB,KAAK4wF,aAAahwE,GAAvB,CAIA5gB,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACE,MAAM+jD,QAAuBl5I,KAAKm5I,6BAA6Bv4H,GAEzD3M,EAAoBjU,KAAK2T,WAAWg8E,kBAEpCj+D,EADc1xB,KAAK+qE,eAAegmB,iBACbvmD,SACrBxqC,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQzd,EAAmBilI,EAAe5+F,iBAEjGt6C,KAAKyqB,cAAcF,QAAQ,UAAW,wCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,2BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,gDAZ3C,QAcE9a,KAAK+P,MAAMolF,kBAAmB,IAIlCvE,aAAahwE,GAGX,GAFA5gB,KAAK+P,MAAM+/E,oBAAsB,GAElB,WAAXlvE,GAAuD,KAAhC5gB,KAAK2T,WAAWy2G,YAEzC,OADApqH,KAAK+P,MAAM+/E,oBAAsB,2CAC1B,EAGT,MAAM5hF,EAAQlO,KAAK2T,WAAW6wB,MAE9B,GADoB,IAAOxkC,KAAK07D,WAAY5mD,GAAaA,EAAS0vB,QAAUt2B,IAG1E,OADAlO,KAAK+P,MAAM+/E,oBAAsB,gDAC1B,EAGT,MAAM7lF,EAAUjK,KAAK+qE,eAAe9gE,UAC9BgK,EAAoBjU,KAAK2T,WAAWg8E,kBACpC1hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAMXkrI,6BAA6Bv4H,GAC3B,OAAQA,GACN,IAAK,SACH,OAAO5gB,KAAKo5I,sCACd,IAAK,SACH,OAAOp5I,KAAKq5I,qCACd,IAAK,aACH,OAAOr5I,KAAKs/P,yCAIlBlmH,sCACE,OAAOp5I,KAAK04I,sBAAsBU,oCAAoCp5I,KAAK2T,YAG7E0lI,qCACE,OAAOr5I,KAAK04I,sBAAsBW,mCAAmCr5I,KAAK2T,YAG5E2rP,wCACE,OAAOt/P,KAAK04I,sBAAsB4mH,sCAAsCt/P,KAAK2T,YAG/Eq8E,aAAarsF,GACX3D,KAAK2T,WAAWy2G,YAAczmH,EAC9B3D,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAKi5I,cAAct1I,GAGrBs1I,cAAcp6F,GACZ,IAAK7+C,KAAK24I,2BACR,OAGF,MAAM7qI,GAAY8wC,EAAAA,EAAAA,IAAqBC,GAEjCjwC,IAAYd,EAElB9N,KAAK+P,MAAM6oI,gBAAkBhqI,EAEzBA,GACF5O,KAAKg5I,mBAAkBh6F,EAAAA,EAAAA,IAAmBh/C,KAAK2T,WAAWmlI,UAAWhrI,IAI5D,gBACX,MAAM+8D,EAAmB7qE,KAAK4kD,aAAakB,WAE3C9lD,KAAK+P,MAAMs3F,aAAex8B,EAAiB9zD,SAASkkB,KACpD,IAAI8mL,EAAY,EACyB,sBAArC/hN,KAAK+P,MAAMs3F,aAAar8E,SAC1B+2L,EAAY,EACkC,sBAArC/hN,KAAK+P,MAAMs3F,aAAar8E,WACjC+2L,EAAY,GAEd/hN,KAAK2T,WAAW3I,KAAO+2M,EAEvB,MAAM,YAAEhmJ,EAAF,KAAehyD,GAAS/J,KAAK0oD,OAAOl9C,OAE1CxL,KAAK2T,WAAWy2G,YAAcruD,EAC1BhyD,IACF/J,KAAK2T,WAAW3I,MAAQjB,GAG1B,IACE/J,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,gBAAgB,CAAC,EAAG,IACtE,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,kBAAmB6M,EAAK,mCAGnD9a,KAAK+P,MAAMoxB,SAAU,EAErBnhC,KAAKinD,QAAQipC,eAAiB,KAC5B,GAA0B,WAAtBlwF,KAAK+P,MAAMujH,QAAuBtzH,KAAK2T,WAAWy2G,aAAepqH,KAAK+P,MAAMggF,cAC9E,MAAO,IAKb17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,EAGd,kBACb,GAA0B,WAAtB/vF,KAAK+P,MAAMujH,QAAuBtzH,KAAK2T,WAAWy2G,aAAepqH,KAAK+P,MAAMggF,cAC9E,OAAO/vF,KAAK0hD,aAAal7B,2B,uLAK/B,a,yDChPA,MAAM+5B,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,2BAA4B,CACpE2qC,YAAaD,EACbrrC,WAAYgqP,EAAAA,W,kICAd,MAAMK,EAEJt/M,YACEw4D,EACAv4D,EACAuI,EACAC,EACAqiB,EACA2tE,EACAhpD,EACAhuC,EACAopB,EACArgD,EACA4jE,EACAoY,EACA7hD,GAEA5kD,KAAKy4G,cAAgBA,EACrBz4G,KAAKkgD,OAASA,EACdlgD,KAAKyoD,WAAaA,EAClBzoD,KAAK0oD,OAASA,EACd1oD,KAAK+qE,eAAiBA,EACtB/qE,KAAK04I,sBAAwBA,EAC7B14I,KAAK0vF,cAAgBA,EACrB1vF,KAAK0hD,aAAeA,EACpB1hD,KAAK8qE,eAAiBA,EACtB9qE,KAAKyqB,cAAgBA,EACrBzqB,KAAKquF,uBAAyBA,EAC9BruF,KAAK4kD,aAAeA,EACpB5kD,KAAKymG,aAAeA,EAEpBzmG,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAKw/P,kBAAoB,oBACzBx/P,KAAKy/P,kBAAoB,oBAEzBz/P,KAAK+P,MAAQ,CACXgkH,iBAAkB,KAClB2rI,qBAAqB,EACrB5vK,oBAAqB,GACrBqF,kBAAkB,EAClBwqK,iBAAiB,EACjBC,YAAY,EACZR,kBAAmB5xM,EAAAA,+BACnB4wH,gBAAiB,IAGnBp+K,KAAK45I,YAAc,CACjB3vI,SAAS,EACT3L,GAAI,MAGN0B,KAAK2T,WAAa,CAChBs/C,QAAS,GACTnvD,KAAM,GACNi4D,YAAa,GACb4zB,kBAAmB,IAAIC,EAAAA,sBACvB9hF,UAAW,IAGb9N,KAAK85I,aAAe95I,KAAK85I,aAAaz6I,KAAKW,MAC3CA,KAAK6/P,kBAAoB7/P,KAAK6/P,kBAAkBxgQ,KAAKW,MACrDA,KAAK8/P,gBAAkB9/P,KAAK8/P,gBAAgBzgQ,KAAKW,MACjDA,KAAK+/P,qBAAuB//P,KAAK+/P,qBAAqB1gQ,KAAKW,MAC3DA,KAAK4wF,aAAe5wF,KAAK4wF,aAAavxF,KAAKW,MAC3CA,KAAKwzH,YAAcxzH,KAAKwzH,YAAYn0H,KAAKW,MACzCA,KAAKggQ,iBAAmBhgQ,KAAKggQ,iBAAiB3gQ,KAAKW,MACnDA,KAAK+5I,eAAiB/5I,KAAK+5I,eAAe16I,KAAKW,MAC/CA,KAAKigQ,oBAAsBjgQ,KAAKigQ,oBAAoB5gQ,KAAKW,MACzDA,KAAKiwN,iBAAmBjwN,KAAKiwN,iBAAiB5wN,KAAKW,MACnDA,KAAKkgQ,sBAAwBlgQ,KAAKkgQ,sBAAsB7gQ,KAAKW,MAC7DA,KAAK+wG,YAAc/wG,KAAK+wG,YAAY1xG,KAAKW,MACzCA,KAAKmgQ,iBAAmBngQ,KAAKmgQ,iBAAiB9gQ,KAAKW,MACnDA,KAAKkkD,cAAgBlkD,KAAKkkD,cAAc7kD,KAAKW,MAC7CA,KAAKogQ,mBAAqBpgQ,KAAKogQ,mBAAmB/gQ,KAAKW,MACvDA,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAK65I,cAAgB75I,KAAK65I,cAAcx6I,KAAKW,MAC7CA,KAAKy0H,mBAAqBz0H,KAAKy0H,mBAAmBp1H,KAAKW,MACvDA,KAAKk+K,0BAA4Bl+K,KAAKk+K,0BAA0B7+K,KAAKW,MAGvE65I,cAAc/kI,GACZ,OAAO9U,KAAK45I,YAAY3vI,SAAWjK,KAAK45I,YAAYt7I,KAAOwW,EAASklI,gBAGtEF,eACE,OAAO95I,KAAKkgD,OAAOlgD,KAAK6/P,mBAEH,0BACrB,IACE7/P,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,gBAAgB,CAAC,EAAG,IACtE,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,2BAA4B6M,EAAK,oCAI9DglP,gBAAgBpkM,GACd,OAAO17D,KAAKkgD,OAAOlgD,KAAK+/P,qBAAsBrkM,GAEtB,2BAACA,GACzB,IAAK,IAAI5mD,KAAY4mD,EACnB,UACQ17D,KAAK04I,sBAAsBj1H,OAAO3O,EAASxW,IACjD0B,KAAKyqB,cAAcF,QAAQ,UAAW,iCACtC,IAASvqB,KAAK07D,UAAW5mD,GACzB,MAAOgG,GACP9a,KAAKyqB,cAAcxc,MAAM,2BAA4B6M,EAAK,qCAKhEojK,0BAA0BpwK,GACxB9N,KAAKy0H,mBAAmB,CAAE3mH,UAAAA,IAE1B9N,KAAKo/C,iBAGPA,iBACE,IAAKp/C,KAAK24I,2BACR,OAGF,MAAM58E,GAAc3c,EAAAA,EAAAA,IAAep/C,KAAK+P,MAAMquK,gBAAiBp+K,KAAK2T,WAAW7F,UAAW9N,KAAK+P,MAAMgkH,iBAAiB+kB,WACtH94I,KAAKy0H,mBAAmB,CAAE14D,YAAAA,IAG5B04D,mBAAmBptH,GACjBrH,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,GAIPupF,aAAa38E,EAAmBhK,GAC9BjK,KAAK+P,MAAM+/E,oBAAsB,GACjC,MAAM7hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAKXulH,cACE,OAAOxzH,KAAKkgD,OAAOlgD,KAAKggQ,kBAEJ,yBACpB,MAAMtuO,EAAS1xB,KAAK45I,YAAYt7I,GAC1B2V,EAAoBjU,KAAK2T,WAAWg8E,kBAE1C,IAAK3vF,KAAK4wF,aAAa38E,EAAmBjU,KAAK45I,YAAY3vI,SACzD,OAEF,MAAMmD,EAAYpN,KAAK2T,WAAW7P,KAE5Bya,EAAave,KAAK+W,SAASxK,GAEjCvM,KAAK+P,MAAMolF,kBAAmB,EAE9B,IACE,MAAMrmE,EAAO9uB,KAAK2T,WAAWooD,YACvBskM,EAAoD,IAArCrgQ,KAAK+P,MAAMgkH,iBAAiB/oH,KAAahL,KAAKymG,aAAa63I,gCAAkCt+O,KAAKymG,aAAa43I,mCAC5H/jM,gBAAiBzvC,SAA0Bw1P,EAAajzP,EAAW0hB,EAAM,GAAIvQ,SAC/Eve,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,GAClF7K,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK0oD,OAAOr8B,GAAG,iBACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,mBAAoB6M,EAAK,0BARpD,QAUE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC86H,iBAAiBn7M,GAEf,OAAO9U,KAAKkgD,OAAOlgD,KAAKkgQ,sBAAuBprP,GAEtB,4BAACA,GAC1BA,EAASo/H,UAAW,EACpBl0I,KAAK+P,MAAMgkH,iBAAmB,KAE9B/zH,KAAK2T,WAAa,CAChBs/C,QAAS,GACTnvD,KAAM,GACNi4D,YAAa,GACb4zB,kBAAmB,IAAIC,EAAAA,sBACvB9hF,UAAW,IAIfisI,eAAejlI,GACb,OAAO9U,KAAKkgD,OAAOlgD,KAAKigQ,oBAAqBnrP,GAEtB,0BAACA,GACxB,IAAK9U,KAAK+qE,eAAe9gE,YAAcjK,KAAK+qE,eAAezrD,kBAAkB,CAAC,wBAAyB,yBACrG,OAGEtf,KAAK+P,MAAMgkH,wBACP/zH,KAAKiwN,iBAAiBjwN,KAAK+P,MAAMgkH,kBAGzCj/G,EAASo/H,UAAW,EAEpBl0I,KAAK2T,WAAWs/C,QAAU,IAAOjzD,KAAKi9D,mBAAmB,SAAUx+D,GACjE,MAAkB,WAAXA,EAAEoO,QAGX7M,KAAK2T,WAAW7P,KAAOgR,EAAS0vB,MAAQ1vB,EAAS0vB,MAAQ,GACzDxkC,KAAK+P,MAAMgkH,iBAAmBj/G,EAC9B,MAAM+1D,EAAmB7qE,KAAK4kD,aAAakB,WAC3C9lD,KAAK+P,MAAM6vP,WAAa5/P,KAAKsgQ,aAAaz1L,EAAiB9zD,SAAUjC,EAAS9J,MAC9EhL,KAAKy4G,cAAc,YAEnB,MAAM3pF,QAAa9uB,KAAK04I,sBAAsB0B,mBAAmBtlI,EAASvI,IAI1E,GAHAvM,KAAK+P,MAAMquK,gBAAkBtvJ,EAC7B9uB,KAAK2T,WAAWooD,YAAcjtC,EAE1Bha,EAASgkI,WAAahkI,EAASgkI,UAAUr5I,OAAS,EAAG,CACvD,MAAMqO,EAAYhP,OAAOwG,YAAYwP,EAASgkI,UAAU36I,KAAK40B,GAAa,CAACA,EAASjvB,KAAM,OAC1F9D,KAAKk+K,0BAA0BpwK,IAInCwyP,aAAavpP,EAAUwpP,GACrB,IAAIX,GAAa,EACjB,OAAQW,GACN,KAAK,EACHX,EAAa7oP,EAASkkB,KAAKjQ,WAAahrB,KAAKy/P,kBAC7C,MACF,KAAK,EACHG,EAAa7oP,EAASkkB,KAAKjQ,WAAahrB,KAAKw/P,kBAIjD,OAAOI,EAGT7uJ,YAAY/lF,EAAUogD,GACpB,OAAOprE,KAAKkgD,OAAOlgD,KAAKmgQ,iBAAkBn1O,EAAUogD,GAEhC,uBAACpgD,EAAUogD,GAC/B,IACE,MAAMzQ,QAAiB36D,KAAK8qE,eAAenQ,SAC5B,sBAAb3vC,GAAiD,sBAAbA,GACpC,EACa,sBAAbA,GAAoCogD,GAAc,MAEpDprE,KAAKi9D,kBAAoBtC,EACzB,MAAO7/C,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAI7CopC,cAAc84E,GACZ,OAAOh9H,KAAKkgD,OAAOlgD,KAAKogQ,mBAAoBpjI,GAEtB,yBAACA,GAEvB,SADwBh9H,KAAK0hD,aAAa35B,qBAAqB,uDAK/D,IACE,IAAIjT,EAAW,IAAO9U,KAAK07D,UAAW,CAAEnvD,GAAIywH,UACtCh9H,KAAK04I,sBAAsBj1H,OAAOu5G,GACxC,IAASh9H,KAAK07D,UAAW,CAAEnvD,GAAIywH,IAC/Bh9H,KAAKyqB,cAAcF,QAAQ,gCAAiCzV,GAAYA,EAAS0vB,OACjF,MAAO1pB,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAI7Ck1E,aAAarsF,GACX3D,KAAK2T,WAAWooD,YAAcp4D,EAGhCw/C,UACE,MAAM0nB,EAAmB7qE,KAAK4kD,aAAakB,YAGzC/uC,UAAYkkB,KAAMosE,GADd,WAEJj8B,GACEP,EAEJ7qE,KAAK85I,eACL95I,KAAK+wG,YAAY1J,EAAar8E,SAAUogD,GAExCprE,KAAK45I,YAAY3vI,QAAUjK,KAAK+qE,eAAe9gE,UAC/C,MAAMoC,EAAOrM,KAAK+qE,eAAegmB,iBACjC/wF,KAAK45I,YAAYt7I,GAAK+N,EAAKm+B,I,2NAI/B,a,yDC7SA,MAAM+V,EAAgCvrC,EAAQ,MAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,sBAAuB,CAC/D2qC,YAAaD,EACbrrC,WAAYqqP,EAAAA,QACZxqP,SAAU,CACRgC,SAAU,Q,8GCDd,MAAMypP,EAEJvgN,YAAYC,EAAQwI,EAAQzB,EAASvF,EAAcqpB,EAAgB2tE,EAAuBhpD,EAAejlE,EAAe4jE,GACtHvvF,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQzB,QAAAA,EAASvF,aAAAA,EAAcqpB,eAAAA,EAAgB2tE,sBAAAA,EAAuBhpD,cAAAA,EAAejlE,cAAAA,EAAe4jE,uBAAAA,IAElIruF,KAAK24I,2BAA6Bz9H,EAAAA,GAElClb,KAAK2T,WAAa,KAClB3T,KAAK+P,MAAQ,CACX+/E,oBAAqB,GACrBC,eAAe,EACf6oD,iBAAiB,GAEnB54I,KAAK07D,UAAY,GAEjB17D,KAAKk6I,YAAcl6I,KAAKk6I,YAAY76I,KAAKW,MACzCA,KAAKygQ,iBAAmBzgQ,KAAKygQ,iBAAiBphQ,KAAKW,MACnDA,KAAK2uH,aAAe3uH,KAAK2uH,aAAatvH,KAAKW,MAC3CA,KAAK0gQ,kBAAoB1gQ,KAAK0gQ,kBAAkBrhQ,KAAKW,MACrDA,KAAKgwF,aAAehwF,KAAKgwF,aAAa3wF,KAAKW,MAC3CA,KAAKg5I,kBAAoBh5I,KAAKg5I,kBAAkB35I,KAAKW,MACrDA,KAAK+H,aAAe/H,KAAK+H,aAAa1I,KAAKW,MAG7Ck6I,cACE,OAAOl6I,KAAKkgD,OAAOlgD,KAAKygQ,kBAEJ,yBACpB,IACE,MAAO3rP,EAAUga,SAAc7S,QAAQqW,IAAI,CACzCtyB,KAAK04I,sBAAsBQ,eAAel5I,KAAK0oD,OAAOl9C,OAAOlN,IAC7D0B,KAAK04I,sBAAsB0B,mBAAmBp6I,KAAK0oD,OAAOl9C,OAAOlN,MAEnEwW,EAASs1G,YAAct7F,EACvBha,EAASgkI,UAAYhkI,EAASgkI,WAAa,GAC3C94I,KAAK2T,WAAamB,EAClB9U,KAAKi5I,cAAcnkI,EAASs1G,aAE5BpqH,KAAK6yH,eAAiB7yH,KAAK2T,WAAWy2G,YAClCt1G,EAASwlC,kBACXt6C,KAAK2T,WAAW2mC,gBAAkB,IAAIlmC,EAAAA,EAAyBU,EAASwlC,kBAE1Et6C,KAAK2T,WAAWg8E,kBAAoB,IAAIC,EAAAA,sBACxC,MAAO90E,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,4CAI7Ck+H,kBAAkBr1I,GAChB3D,KAAK+H,aAAa,CAAE+wI,UAAWn1I,IAGjCoE,aAAaV,GACX,OAAOrH,KAAKkgD,QAAO2F,UACjB7lD,KAAK2T,WAAa,IACb3T,KAAK2T,cACLtM,MAKTupF,eAGE,GAFA5wF,KAAK+P,MAAM+/E,oBAAsB,IAE5B9vF,KAAK2T,WAAWy2G,YAEnB,OADApqH,KAAK+P,MAAM+/E,oBAAsB,2CAC1B,EAGT,MAAM5hF,EAAQlO,KAAK2T,WAAW6wB,MACxBlmC,EAAK0B,KAAK0oD,OAAOl9C,OAAOlN,GAE9B,GADoB,IAAO0B,KAAK07D,WAAY5mD,GAAaA,EAAS0vB,QAAUt2B,GAAS4G,EAASvI,IAAMjO,IAGlG,OADA0B,KAAK+P,MAAM+/E,oBAAuB,4BAA2B5hF,oBACtD,EAGT,MAAMjE,EAAUjK,KAAK+qE,eAAe9gE,UAC9BgK,EAAoBjU,KAAK2T,WAAWg8E,kBACpC1hF,EAAQjO,KAAK0vF,cAAcmB,sBAAsB58E,EAAmBhK,GAE1E,OAAIgE,IACFjO,KAAK+P,MAAM+/E,oBAAsB7hF,GAC1B,GAMX0gH,eACE,OAAO3uH,KAAKkgD,OAAOlgD,KAAK0gQ,mBAEH,0BACrB,GAAK1gQ,KAAK4wF,eAAV,CAIA5wF,KAAKm1F,kBAAmB,EACxB,UACQn1F,KAAK04I,sBAAsB2B,qBAAqBr6I,KAAK2T,WAAWpH,GAAIvM,KAAK2T,YAE/E,MACM+d,EADc1xB,KAAK+qE,eAAegmB,iBACbvmD,SACrBxqC,KAAKquF,uBAAuBr6E,qBAAqB0d,EAAQ1xB,KAAK2T,WAAWg8E,kBAAmB3vF,KAAK2T,WAAW2mC,iBAElHt6C,KAAKyqB,cAAcF,QAAQ,UAAW,wCACtCvqB,KAAK+P,MAAMggF,eAAgB,EAC3B/vF,KAAK0oD,OAAOr8B,GAAG,2BACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,oCAX3C,QAaE9a,KAAKm1F,kBAAmB,IAI5BnF,aAAarsF,GACP3D,KAAK2T,WAAWy2G,YAAY/uF,QAAQ,iBAAkB,MAAQ13B,EAAM03B,QAAQ,iBAAkB,MAChGr7B,KAAK2T,WAAWy2G,YAAczmH,EAC9B3D,KAAKi5I,cAAct1I,GACnB3D,KAAK+P,MAAMggF,eAAgB,GAI/BkpD,cAAcp6F,GACZ,IAAK7+C,KAAK24I,2BACR,OAGF,MAAM7qI,GAAY8wC,EAAAA,EAAAA,IAAqBC,GAEjCjwC,IAAYd,EAElB9N,KAAK+P,MAAM6oI,gBAAkBhqI,EAEzBA,GACF5O,KAAKg5I,mBAAkBh6F,EAAAA,EAAAA,IAAmBh/C,KAAK2T,WAAWmlI,UAAWhrI,IAI1D,kBACb,GAAI9N,KAAK2T,WAAWy2G,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cACpE,OAAO/vF,KAAK0hD,aAAal7B,0BAIhB,gBACXxmB,KAAKk6I,cAEL,IACEl6I,KAAK07D,gBAAkB17D,KAAK04I,sBAAsBY,gBAAgB,CAAC,EAAG,IACtE,MAAOx+H,GACP9a,KAAKyqB,cAAcxc,MAAM,kBAAmB6M,EAAK,mCAGnD9a,KAAKinD,QAAQipC,eAAiB,KAC5B,GAAIlwF,KAAK2T,WAAWy2G,cAAgBpqH,KAAK6yH,gBAAkB7yH,KAAK+P,MAAMggF,cACpE,MAAO,IAKb17D,aACEr0B,KAAK+P,MAAMggF,eAAgB,G,yJAI/B,a,yDC7KA,MAAMxvC,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,yBAA0B,CAClE2qC,YAAaD,EACbrrC,WAAYsrP,EAAAA,W,wFCDd5qP,QACG5W,OAAO,iBACPkW,WACC,yBAHJ,oIAII,SAAgCgrC,EAAQpsB,EAAI1e,EAAQszC,EAAQiR,EAAiBm4C,EAAcpL,EAAYj8E,EAAesgD,EAAgB6e,GACpIx0E,EAAOrF,MAAQ,CACbolF,kBAAkB,EAClBwrK,mBAAmB,EACnBC,kBAAkB,EAClBC,UAAW,GACXlzC,eAAgB5iJ,EAAe9gE,WAGjCmL,EAAOzB,WAAa,CAClBmtP,WAAY,GACZC,cAAe,GACfttJ,QAAS,EACTvL,OAAQ,GACR84J,aAAc,GACdC,aAAc,GACdC,OAAQ,GAGV9rP,EAAO4L,SAAW,GAElB5L,EAAO25G,aAAe,SAAsBprH,GAC1C,OAAOyR,EAAOE,YAAW,KACvBF,EAAOzB,WAAWu0F,OAASvkG,MAI/ByR,EAAO+rP,qBAAuB,WAC5B,GAAI/rP,EAAOzB,WAAWqtP,aAAavhQ,OAAS,EAC1C,OAGF2V,EAAOrF,MAAM4wP,mBAAoB,EAEjC,IAAIS,EAAUhsP,EAAOzB,WAAWqtP,aAAa7iQ,KAAKkjQ,GAAMz3K,EAAkBg9J,uBAAuBya,KAEjGvtO,EAAGxB,IAAI8uO,GACJplP,MAAK,SAAiBslP,GACrBlsP,EAAOrF,MAAM4wP,mBAAoB,EACjCvrP,EAAOrF,MAAM6wP,kBAAmB,EAChCxrP,EAAOrF,MAAM8wP,UAAYS,EAAUnjQ,KAAKo4E,GAAMA,EAAE9xE,KAAKu/G,UAEtDlnD,OAAM,SAAehiD,GACpB1F,EAAOrF,MAAM4wP,mBAAoB,EACa,IAA1CvrP,EAAOzB,WAAWqtP,aAAavhQ,OACjCgrB,EAAcxc,MAAM,UAAW6M,EAAK,0CAEpC2P,EAAcxc,MAAM,UAAW,KAAM,sEAK7CmH,EAAOmsP,iCAAmC,WACxC,OAAOrhN,GAAO2F,UACZzwC,EAAOrF,MAAMolF,kBAAmB,EAEhC,IAAIu8J,EAASt8O,EAAOzB,WAAWutP,OAE/B,IAAK,MAAMM,KAAYpsP,EAAOrF,MAAM8wP,UAAW,CAC7C,IAAI58I,EAAa7uG,EAAOzB,WAAWmtP,WAAapP,EAEhD,IACE,IAAI36O,QAAiB4iD,EAAgB8nM,qBACnCx9I,EACAk8G,EAAAA,+BAAAA,qBACA/qN,EAAOzB,WAAWstP,aAClB,GACA7rP,EAAOzB,WAAW8/F,QAClBr+F,EAAOzB,WAAWu0F,QAClB,GACA,GACA,EACA,KACA,KACA,KACA,MACA,GAEF,MAAOptF,GAGP,OAFA2P,EAAcxc,MAAM,UAAW6M,EAAK,yCACpC1F,EAAOrF,MAAMolF,kBAAmB,GAIlCu8J,IAEA,MAAM9sO,EAAS,CACb88O,OAAQ3qP,EAASyD,QAAU8sI,GAAAA,GAC3BxrG,QAAS/kC,EAAS6uL,QAClB9hM,KAAMmgH,EACN9iG,QAAS/L,EAAOzB,WAAWotP,eAG7B,UACQvgP,EAAAA,EAAAA,IAAgBghP,EAAU58O,GAChC,MAAO9J,GAEP,YADA2P,EAAcxc,MAAM,UAAW6M,EAAK,2BAHtC,QAME1F,EAAOrF,MAAMolF,kBAAmB,GAIpC1qE,EAAcF,QAAQ,UAAW,mCACjCm+B,EAAOr8B,GAAG,oBAIdw5B,iBACE,IACEzwC,EAAO4L,eAAiBD,EAAAA,EAAAA,MACxB,MAAOjG,GAEP,YADA2P,EAAcxc,MAAM,UAAW6M,EAAK,2BAItCgZ,EAAGxB,IAAI,CACLvc,OAAQ+7F,EAAa/7F,WAEpBiG,MAAK,SAAiBvX,GACrB2Q,EAAOW,OAAStR,EAAKsR,UAEtB+mD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAI1Cs5E,O,mHClIS,SAASutK,EAAqBvsP,EAAQ8qC,EAAQwI,EAAQzB,EAASvF,EAAcqpB,EAAgBtgD,GAC1GrV,EAAOzB,WAAa,CAClB7P,KAAM,GACN+c,mBAAoB,IAGtBzL,EAAOrF,MAAQ,CACb6Q,OAAQ,SACRu0E,kBAAkB,EAClBpF,eAAe,GAGjB9oC,EAAQipC,eAAiB,KACvB,GAA4B,WAAxB96E,EAAOrF,MAAM6Q,QAAuBxL,EAAOzB,WAAWkN,oBAAsBzL,EAAOrF,MAAMggF,cAC3F,MAAO,IAIX36E,EAAO49E,IAAI,YAAY,WACrB59E,EAAOrF,MAAMggF,eAAgB,KAG/B36E,EAAOq/G,mBAkCP,SAA4B/9D,GAC1BthD,EAAOzB,WAAa+iD,GAjCtBthD,EAAOwsP,mBAAqB,WAC1B,OAAO1hN,GAAO2F,UACZ,MAAMjlC,EAASxL,EAAOrF,MAAM6Q,OAEtB9c,EAAOsR,EAAOzB,WAAW7P,KACzBi4D,EAAc3mD,EAAOzB,WAAWkN,mBAEtC,GAAe,WAAXD,GAAuC,KAAhBm7C,EAA3B,CAKA3mD,EAAOrF,MAAMolF,kBAAmB,EAEhC,UACQx0E,EAAAA,EAAAA,IAAc7c,EAAM8c,EAAQm7C,GAClCtxC,EAAcF,QAAQ,UAAW,gCACjCnV,EAAOrF,MAAMggF,eAAgB,EAC7BrnC,EAAOr8B,GAAG,kCACV,MAAOvR,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,4BANtC,QAQE1F,EAAOrF,MAAMolF,kBAAmB,QAdhC//E,EAAOrF,MAAM+/E,oBAAsB,6CAmBzC16E,EAAO+3G,oBAAsB,SAA6BxpH,GACxDyR,EAAOzB,WAAWkN,mBAAqBld,EACvCyR,EAAOrF,MAAMggF,eAAgB,G,iGAvDjCn6E,IAAAA,OAAe,iBAAiBV,WAAW,uBAAwBysP,I,6ECJnE,MAAMphN,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,iBAAkB,CAC1D2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,mHCHG,SAAS2sP,EAAsBzsP,EAAQ8qC,EAAQwI,EAAQzB,EAASvF,EAAcqpB,EAAgBtgD,GAC3GrV,EAAOzB,WAAa,CAClB7P,KAAM,GACN+c,mBAAoB,IAGtBzL,EAAOrF,MAAQ,CACb+xP,UAAWp5M,EAAOl9C,OAAOlN,GACzBsiB,OAAQ,SACRu0E,kBAAkB,EAClBpF,eAAe,GAGjB9oC,EAAQipC,eAAiB,KACvB,GAA4B,WAAxB96E,EAAOrF,MAAM6Q,QAAuBxL,EAAOzB,WAAWkN,oBAAsBzL,EAAOrF,MAAMggF,cAC3F,MAAO,IAIX36E,EAAO49E,IAAI,YAAY,WACrB59E,EAAOrF,MAAMggF,eAAgB,KAG/B36E,EAAOq/G,mBAkCP,SAA4B/9D,GAC1BthD,EAAOzB,WAAa+iD,GAjCtBthD,EAAO2sP,mBAAqB,WAC1B,OAAO7hN,GAAO2F,UACZ,MAAMjlC,EAASxL,EAAOrF,MAAM6Q,OAEtB9c,EAAOsR,EAAOzB,WAAW7P,KACzBi4D,EAAc3mD,EAAOzB,WAAWkN,mBAEtC,GAAe,WAAXD,GAAuC,KAAhBm7C,EAA3B,CAKA3mD,EAAOrF,MAAMolF,kBAAmB,EAEhC,UACQ9zE,EAAAA,EAAAA,IAAcjM,EAAOrF,MAAM+xP,UAAWh+P,EAAMi4D,GAClDtxC,EAAcF,QAAQ,UAAW,gCACjCnV,EAAOrF,MAAMggF,eAAgB,EAC7BrnC,EAAOr8B,GAAG,kCACV,MAAOvR,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,4BANtC,QAQE1F,EAAOrF,MAAMolF,kBAAmB,QAdhC//E,EAAOrF,MAAM+/E,oBAAsB,6CAmBzC16E,EAAO+3G,oBAAsB,SAA6BxpH,GACxDyR,EAAOzB,WAAWkN,mBAAqBld,EACvCyR,EAAOrF,MAAMggF,eAAgB,GAO/BlqC,iBACS3F,GAAO2F,UACZ,IACE,MAAM1kC,QAAgBF,EAAAA,EAAAA,IAAW7L,EAAOrF,MAAM+xP,WAE9C1sP,EAAOzB,WAAa,CAClB7P,KAAMqd,EAAQrd,KACd+c,mBAAoBM,EAAQ46C,aAE9B3mD,EAAOrF,MAAMggF,eAAgB,EAC7B,MAAOj1E,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0CAK1Cs5E,G,iGA/EFx+E,IAAAA,OAAe,iBAAiBV,WAAW,wBAAyB2sP,I,6ECHpE,MAAMthN,EAAgCvrC,EAAQ,OAM9CY,IAAAA,OAAe,iBAAiBC,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,sBCRZ,MAAMqrC,EAAgCvrC,EAAQ,OAE9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,yBAA0B,CAClE2qC,YAAaD,EACbrrC,WAAY,+BACZH,SAAU,CACRgC,SAAU,Q,6ECHd,MAAMirP,EAEJ/hN,YAAYC,EAAQ6qB,EAAgBtgD,EAAekvC,GACjD35D,KAAKkgD,OAASA,EACdlgD,KAAK+qE,eAAiBA,EACtB/qE,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EAEvB35D,KAAKqgI,gBAAkBrgI,KAAKqgI,gBAAgBhhI,KAAKW,MACjDA,KAAKykN,UAAYzkN,KAAKykN,UAAUplN,KAAKW,MAGvCqgI,gBAAgBhsF,GACd,OAAOA,EAAKrpC,OAASu8D,EAAAA,cAAAA,WAA2BvnE,KAAK+qE,eAAezrD,kBAAkB,CAAC,kCAGzFmlM,UAAUpwK,GACR,OAAQ,IAAW,CAACkzB,EAAAA,cAAAA,UAAyBA,EAAAA,cAAAA,UAAyBA,EAAAA,cAAAA,MAAqBlzB,EAAKrpC,MAGlGs4K,gBACE,OAAOtjL,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK8mE,iBAAmB9mE,KAAK25D,gBAAgBmN,WAAW9mE,KAAKue,YAC7D,MAAOzD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,qCAK/CqoC,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAQ,CACXujG,WAAW,GAGb,IACEtzG,KAAK6mK,aAAe7mK,KAAK+W,SAAS/L,KAClChL,KAAKue,WAAave,KAAK+W,SAASxK,SAC1BvM,KAAKsjL,gBACX,MAAOxoK,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,iCAL3C,QAOE9a,KAAK+P,MAAMujG,WAAY,O,wEAM/B,YACA19F,QAAQ5W,OAAO,iBAAiBkW,WAAW,+BAAgC8sP,I,6ECjD3E,MAAMC,EAEJhiN,YAAYyI,EAAQ+mC,EAAchlE,EAAekvC,EAAiBm4C,EAAc5xD,GAC9ElgD,KAAK0oD,OAASA,EACd1oD,KAAKyvF,aAAeA,EACpBzvF,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EACvB35D,KAAK8xG,aAAeA,EACpB9xG,KAAKkgD,OAASA,EAEdlgD,KAAKqoG,eAAiBptF,EAAAA,GAAAA,WAEtBjb,KAAK4N,aAAe5N,KAAK4N,aAAavO,KAAKW,MAC3CA,KAAKkiQ,kBAAoBliQ,KAAKkiQ,kBAAkB7iQ,KAAKW,MAG1C,gBACXA,KAAK+P,MAAQ,CAAEolF,kBAAkB,GACjC,IACEn1F,KAAK+W,eAAiB/W,KAAK25D,gBAAgB5iD,SAAS/W,KAAKyvF,aAAajkF,SAASlN,IAC/E0B,KAAKwzG,YAAcxzG,KAAK8xG,aAAa0B,MAAMxzG,KAAK+W,SAAS08F,SACzD,MAAO34F,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAI7ClN,eACE,OAAO5N,KAAKkgD,OAAOlgD,KAAKkiQ,mBAGH,0BACrB,IACEliQ,KAAK+P,MAAMolF,kBAAmB,QACxBn1F,KAAK25D,gBAAgBE,eAAe75D,KAAKyvF,aAAajkF,SAASlN,GAAI0B,KAAK+W,UAC9E/W,KAAKyqB,cAAcF,QAAQ,UAAW,+BACtCvqB,KAAK0oD,OAAOxnB,OAAOlhC,KAAK0oD,OAAOvsB,SAC/B,MAAOrhB,GACP9a,KAAK+P,MAAMolF,kBAAmB,EAC9Bn1F,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+B,8FAK/C,YACAlF,IAAAA,OAAe,iBAAiBV,WAAW,2BAA4B+sP,I,iTCjCvE,SAASE,EAAmBjiN,EAAQ9qC,EAAQszC,EAAQ+mC,EAAc+E,EAASnvD,EAAWs0B,EAAiBm4C,EAAcrnF,EAAesgD,EAAgBpE,EAAiBjlB,GAsInK,SAAShzC,EAAc5K,EAAMH,GAC3B,OAAOyR,EAAOE,YAAW,KACvBF,EAAO2B,SAAW,IACb3B,EAAO2B,SACV,CAACjT,GAAOH,MAyNd,SAASy+P,EAAuBC,GAC9BjtP,EAAO2B,SAASurP,eAAhB,IAAwCD,EACxCjtP,EAAO2B,SAASurP,eAAhB,KAAyC,IACzCltP,EAAO2B,SAASurP,eAAe,gBAAkB,IACjDltP,EAAO2B,SAASurP,eAAe,gBAAkB,IACjDltP,EAAO2B,SAASurP,eAAe,cAAgB,IAvWjDltP,EAAOmtP,wBA6HP,SAAiC5+P,GAC/B+K,EAAc,sBAAuB/K,IA7HvCyR,EAAO1G,cAAgBA,EACvB0G,EAAO25G,aA+HP,SAAsBprH,GACpB+K,EAAc,SAAU/K,IA/H1ByR,EAAOotP,qBA0FP,SAA8B7+P,GAC5B+K,EAAc,OAAQ/K,IAvFxByR,EAAOrF,MAAQ,CACb0yP,aAAc,GACdzxN,WAAW,EACPwe,wBACF,OAAOp6C,EAAOrF,MAAM+5B,cAAcrqC,QAAU,GAE9CqqC,cAAe,GACfqW,kBAAkB,EAClBg1C,kBAAkB,EAClButK,eAAe,EACfnsF,oBAAoB,EACpBosF,eAAe,EACfC,cAAc,EACdC,gBAAgB,EAChB9kE,YAAahzH,EAAe9gE,UAC5B64P,iCAAkC,CAChC,CAAEnjQ,IAAK,uBAAwBgE,MAAO,GACtC,CACEhE,IAAK,YACLgE,MAAO,GAET,CACEhE,IAAK,aACLgE,MAAO,IAET,CACEhE,IAAK,aACLgE,MAAO,IAET,CAAEhE,IAAK,YAAagE,MAAO,KAC3B,CAAEhE,IAAK,SAAUgE,MAAO,MACxB,CAAEhE,IAAK,QAASgE,MAAO,QAEzBg7C,sBAAsB,EACtBokN,aAAa,EACbC,WArCW7nP,EAsCX8nP,mBAAoB,CAClBz7D,MAAO,IAAU,CAAChqJ,EAAAA,GAAAA,SAAuBA,EAAAA,GAAAA,WAAyBA,EAAAA,GAAAA,gBAAsCA,EAAAA,GAAAA,aACxGiqJ,IAAK,CAACjqJ,EAAAA,GAAAA,aAA2BA,EAAAA,GAAAA,oBAIrCpoC,EAAO47B,UAAY,WACjB57B,EAAOrF,MAAM2zM,iBAAmB,KAChC,IAAK,IAAInkN,EAAI,EAAGA,EAAI6V,EAAOrF,MAAM0wD,gBAAgBhhE,OAAQF,IAAK,CAC5D,IAAI80C,EAAOj/B,EAAOrF,MAAM0wD,gBAAgBlhE,GACpC80C,EAAK2mC,UAAY5lE,EAAOrF,MAAMihC,YAEhCqD,EAAK2mC,QAAU5lE,EAAOrF,MAAMihC,UAC5B57B,EAAOmuM,WAAWlvK,MASxBj/B,EAAOmuM,WAAa,SAAUlvK,EAAMV,GAElC,GAAIA,GAASA,EAAM6vK,cAAcC,UAAYruM,EAAOrF,MAAM2zM,iBAAkB,CAC1E,MAAMC,EAAiBvuM,EAAOrF,MAAM0wD,gBAAgB56D,QAAQuP,EAAOrF,MAAM2zM,kBACnEE,EAAgBxuM,EAAOrF,MAAM0wD,gBAAgB56D,QAAQwuC,GACrDwvK,EAAe,IAASzuM,EAAOrF,MAAM0wD,iBAAiB,CAACpsB,EAAMlU,IATvE,SAAmBx8B,EAAOykE,EAAGC,GAC3B,OAAQ1kE,GAASykE,GAAKzkE,GAAS0kE,GAAO1kE,GAAS0kE,GAAK1kE,GAASykE,EASlD07I,CAAU3jL,EAAOwjL,EAAgBC,KAEpCjgN,EAAQyR,EAAOrF,MAAM2zM,iBAAiB1oI,QAE5C,IAAU6oI,GAAetkN,IACvBA,EAAEy7E,QAAUr3E,KAEdyR,EAAOrF,MAAM2zM,iBAAmBrvK,OACvBV,IACTU,EAAK2mC,SAAW3mC,EAAK2mC,QACrB5lE,EAAOrF,MAAM2zM,iBAAmBrvK,GAElCj/B,EAAOrF,MAAM+5B,cAAgB,IAAO,IAAS10B,EAAOrF,MAAM+5B,cAAe10B,EAAOrF,MAAM0wD,kBAAkBnuD,QAAQ/S,GAAMA,EAAEy7E,UACpHrnC,GAASv+B,EAAOrF,MAAMihC,WAAa57B,EAAOrF,MAAM+5B,cAAcrqC,SAAW2V,EAAOrF,MAAM0wD,gBAAgBhhE,SACxG2V,EAAOrF,MAAMihC,WAAY,IAI7B57B,EAAOzB,WAAa,CAClBuvP,iBAAkB,IAAIx5C,EAAAA,0BAOxBt0M,EAAO+tP,iBAAmB,WACxB99N,EAAUL,SAAS5vB,EAAO2B,SAAS6uL,SACnCr8I,EAAE,4BAA4B+gB,OAAOC,QAAQ,OAG/Cn1D,EAAOguP,uBAAyBv9M,iBAC9BnE,EAAa/5B,qBAAqBhB,IAC5BA,GAMRk/B,iBACE,IAAI9uC,EAAW3B,EAAO2B,SAEtB,IACE3B,EAAOrF,MAAMolF,kBAAmB,QAC1Bx7B,EAAgB0pM,qBAAqBtsP,EAASxK,IACpDke,EAAcF,QAAQ,4BAA6BnV,EAAO2B,SAASlK,MACnE67C,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,sCANtC,QAQE1F,EAAOrF,MAAMolF,kBAAmB,GAhB9BkuK,OAqCNjuP,EAAOkuP,aAeP,SAAsB3/P,GACpB,OAAOu8C,GAAO2F,UACZzwC,EAAO2B,SAASokC,KAAOx3C,MAf3Bq8B,MAAMpgC,UAAUiG,QAAU,SAAUsW,GAClC,IAAK,IAAI5c,EAAI,EAAGA,EAAIS,KAAKP,OAAQF,IAC/B,GAAIS,KAAKT,IAAM4c,EAAK,OAAO5c,EAE7B,OAAQ,GAEVygC,MAAMpgC,UAAU6jB,OAAS,SAAUtH,GACjC,IAAIgkB,EAAQngC,KAAK6F,QAAQsW,GACrBgkB,GAAS,GACXngC,KAAKijE,OAAO9iC,EAAO,IAmBvB/qB,EAAOykD,eAAiBhU,iBACtB,IAAI9uC,EAAW3B,EAAO2B,SAClBwsP,EAAenuP,EAAOzB,WAAWuvP,iBACjC1hE,EAAM+hE,EAAa/hE,IACnBioB,EAAU85C,EAAa95C,QACvBhoB,EAAgBD,IAAoB,oBAAZioB,GAA6C,aAAZA,GACzD/nB,EAAsBF,IAAoB,WAAZioB,GAAoC,aAAZA,GAE1D,MAAInvM,EAAAA,EAAAA,IAAkBvD,EAAS/L,OAAS,IAAaoK,EAAOouP,cAAezsP,EAASmxF,QAAQzoG,OAAS,UAC7EmnB,EAAAA,EAAAA,IAAwB,CAC5C1Y,MAAO,iBACPjB,QAAS,oHACTyC,QAAS,CACPoY,OAAQ,CACNlhB,MAAO,SACP3F,UAAW,eAEb0O,QAAS,CACP/I,MAAO,UACP3F,UAAW,kBAXnB,EAjBF,WAEE,IADA,IAAI1B,GAAK6V,EAAO2B,SAASokC,MAAQ,IAAI17C,OAC9BF,KACgC,KAAjC6V,EAAO2B,SAASokC,KAAK57C,GAAGuE,MAAgD,OAAjCsR,EAAO2B,SAASokC,KAAK57C,GAAGuE,MACjEsR,EAAO2B,SAASokC,KAAK8nB,OAAO1jE,EAAG,GAkCnCkkQ,GACA,IAAI3iP,EAAU,CACZjU,KAAMkK,EAASlK,KACfkrC,UAAWhhC,EAASghC,UACpBoD,KAAMpkC,EAASokC,KACfkmJ,QAAStqL,EAAS08F,QAClBvL,OAAQnxF,EAASmxF,OACjBs5F,IAAKA,EACLC,cAAeA,EACfC,oBAAqBA,EACrB4nB,UAAW7nB,GAAiB8hE,EAAaj6C,YAAcvyM,EAASqyM,UAAUE,UAAY,KAAOi6C,EAAaj6C,UAC1GC,QAAS7nB,GAAuB6hE,EAAah6C,UAAYxyM,EAASqyM,UAAUG,QAAU,KAAOg6C,EAAah6C,QAC1GC,OAAQ9nB,GAAuB6hE,EAAa/5C,SAAWzyM,EAASqyM,UAAUI,OAAS,KAAO+5C,EAAa/5C,OACvGvnB,mBAAoBlrL,EAAS2sP,iBAAiBC,cAC9CxhE,cAAeprL,EAAS2sP,iBAAiBE,SACzCvhE,uBAAwBtrL,EAAS2sP,iBAAiBG,kBAClD7mP,oBAAqBjG,EAASiG,oBAC9BxE,KAAM,CACJ1Q,aAAciP,EAASyB,KAAK1Q,aAC5BG,iBAAkB8O,EAASyB,KAAKvQ,iBAChCC,gBAAiB6O,EAASyB,KAAKtQ,kBAI9BkN,EAAO0uP,qBACHhjP,EAAQ0gL,IAIS,UAAxBpsL,EAAOyxJ,cACP9vJ,EAAS/L,OAASs+C,EAAAA,uBAAAA,kBAClBvyC,EAAS/L,OAASs+C,EAAAA,uBAAAA,4BAClBvyC,EAAS/L,OAASs+C,EAAAA,uBAAAA,+BAElBxoC,EAAQumD,IAAM,SAAWtwD,EAASswD,KAGhCtwD,EAAS/L,OAASs+C,EAAAA,uBAAAA,+BACpBxoC,EAAQumD,IAAMtwD,EAASswD,KAGrBtwD,EAAS/L,OAASs+C,EAAAA,uBAAAA,6BACpBxoC,EAAQumD,IAAM,WAAatwD,EAASswD,KAGtCjyD,EAAOrF,MAAMolF,kBAAmB,EAChCx7B,EAAgBE,eAAe9iD,EAASxK,GAAIuU,GAAS9E,MACnD,WACEyO,EAAcF,QAAQ,sBAAuBnV,EAAO2B,SAASlK,MAC7D67C,EAAOr8B,GAAG,sBAAuB,GAAI,CAAE6U,QAAQ,OAEjD,SAAepmB,GACb2P,EAAcxc,MAAM,UAAW6M,EAAK,gCACpC1F,EAAOrF,MAAMolF,kBAAmB,KAElC,SAAgB4uK,GACVA,EAAIpvO,SACNvf,EAAOrF,MAAMowC,iBAAmB4jN,EAAIpvO,aAyC5CkxB,iBACS3F,GAAO2F,UACZ,IACE,MAAO9uC,EAAUhB,EAAQzR,SAAkB2X,QAAQqW,IAAI,CAACqnC,EAAgB5iD,SAAS04E,EAAajkF,SAASlN,IAAKwzG,EAAa/7F,SAAU4wD,EAAgBriE,aAE3G,IAApCyS,EAASswD,IAAIxhE,QAAQ,YAAyD,IAArCkR,EAASswD,IAAIxhE,QAAQ,YAChEuP,EAAOyxJ,aAAe,QAEtBzxJ,EAAOyxJ,aAAe,SAGxB9vJ,EAASswD,IAAMmtB,EAAQ,gBAARA,CAAyBz9E,EAASswD,KAG/CtwD,EAAS/L,OAASs+C,EAAAA,uBAAAA,8BAClBvyC,EAAS/L,OAASs+C,EAAAA,uBAAAA,kCAClBvyC,EAAS/L,OAASs+C,EAAAA,uBAAAA,8BAElBl0C,EAAO4uP,eArDf,SAAuBrkQ,GACrB,IAAIskQ,EAAiB,GAErB,GAAY,KAARtkQ,EACF,OAAOskQ,EAGT,IAAIC,EAAa,IAAQzpL,KAAK96E,GAAM,KAIpC,OAHAskQ,EAAeE,YAAcD,EAAW,GACxCD,EAAeG,iBAAmBF,EAAW,GAEtCD,EA0CuBI,CAActtP,EAAS6uL,SAE/CxwL,EAAOrF,MAAM8yP,iBAAmB9rP,EAASyD,OACzCzD,EAASyD,OAASzD,EAASyD,QAAU8sI,GAAAA,GAErClyI,EAAOrF,MAAM+yP,iCAAiC,GAAGnjQ,KAAQ,KAAI2E,EAASw/N,qCAGxE1uN,EAAO2B,SAAWA,EAClB3B,EAAOouP,cAAgBzsP,EAASmxF,OAAO1+F,QACvC4L,EAAOW,OAASA,EAhDpBX,EAAOrF,MAAM0yP,cAAetoP,EAAAA,EAAAA,IAAoB/E,EAAO2B,SAAS/L,MAG9DoK,EAAO2B,SAAS/L,OAASs+C,EAAAA,uBAAAA,4BACzBl0C,EAAO2B,SAAS/L,OAASs+C,EAAAA,uBAAAA,8BACzBl0C,EAAO2B,SAAS/L,OAASs+C,EAAAA,uBAAAA,mCAEzBl0C,EAAOrF,MAAMwmK,oBAAqB,IAEhCj8J,EAAAA,EAAAA,IAAkBlF,EAAO2B,SAAS/L,QACpCoK,EAAOrF,MAAM6yP,cAAe,GAE1BxtP,EAAO2B,SAAS/L,OAASs+C,EAAAA,uBAAAA,mBAC3Bl0C,EAAOrF,MAAM2yP,eAAgB,IAE3BroP,EAAAA,EAAAA,IAAmBjF,EAAO2B,SAAS/L,QACrCoK,EAAOrF,MAAM4yP,eAAgB,GAoCvB38L,EAAAA,QAAAA,iBAAgCjvD,IAAa3B,EAAOrF,MAAM8yP,iBAC5DztP,EAAOrF,MAAMgzP,YAAcz+P,GAAYA,EAASojH,sBAAwBpjH,EAASojH,qBAAqB7uG,SAExG,MAAOiC,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0CAGtC,GAAI1F,EAAOrF,MAAMgzP,YACf,IACE3tP,EAAO2B,SAASurP,eAAiB,GACjC,MAAMgC,QAAgB9iP,EAAAA,EAAAA,IAAWknC,EAAOl9C,OAAOlN,IAC/C,IACE8W,EAAO2B,SAASurP,eAAiB98P,KAAKwZ,MAAMslP,EAAQC,WACpD,MAAOzpP,GACPsnP,EAAuBkC,EAAQC,YAEjC,MAAOzpP,GACPsnP,EAAuB,kDAc/BhuK,G,+KA9WFx+E,QAAQ5W,OAAO,iBAAiB6W,UAAU,WAAYiqC,EAAAA,IAAiB5qC,WAAW,qBAAsBitP,I,wFCNxG,SAASqC,EAAoB1wO,EAAI1e,EAAQszC,EAAQxI,EAAQyZ,EAAiBm4C,EAAcpwD,EAAcj3B,EAAek6B,EAAkBC,GAoBrIiB,eAAewpC,EAAkB65B,GAC/B,IAAK,IAAInyG,KAAYmyG,EACnB,UACQvvD,EAAgBtiD,eAAeN,EAASxK,IAE9Cke,EAAcF,QAAQ,mCAAoCxT,EAASlK,MACnE,MAAOiO,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAIxC,MAAMyD,EAAaomC,EAAiBE,aAEhCqkE,EAAUv4G,MAAM0jC,GAASA,EAAK9nC,KAAOgS,MACvCqmC,EAAaolM,gBAEb50O,EAAOy1D,iBAAiB9zD,SAAW,IAGrC2xC,EAAOxnB,SAtCT9rB,EAAOrF,MAAQ,CACbs3G,eAAgB,IAGlBjyG,EAAO0vG,kBACP,SAA2B73G,GACzBmI,EAAOrF,MAAMs3G,eAAiBp6G,GAGhCmI,EAAO2nD,aACP,SAAsBmsD,GACpBxnE,EAAap6B,gBAAgB,2FAA4FX,IACvH,GAAKA,EAGL,OAAOu5B,EAAOmvC,EAAmB65B,OA0BrC9zG,EAAOugH,sBACP,SAA+Bx/G,EAAOC,EAAOyzD,GAC3C,MAAMggB,EAAW/1D,EAAGg2D,QAcpB,OAbAh2D,EAAGxB,IAAI,CACL42F,WAAWjzG,EAAAA,EAAAA,IAAgB,CAAEE,MAAAA,EAAOC,MAAAA,EAAOF,MAAO,CAAE2zD,OAAAA,KACpD9zD,OAAQ+7F,EAAa/7F,WAEpBiG,MAAK,SAAiBvX,GACrB,IAAIykH,EAAYzkH,EAAKykH,UAAUvlH,MAC3BoS,EAAStR,EAAKsR,OAClBiwD,EAAAA,QAAAA,uBAAsCkjD,EAAWnzG,GACjD8zE,EAAS9qF,QAAQ,CAAEmqH,UAAWA,EAAWzyG,WAAYhS,EAAKykH,UAAUzyG,gBAErEqmD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,iDAEjC+uE,EAAS/tE,S,8IA5DpBlG,IAAAA,OAAe,iBAAiBV,WAAW,sBAAuBsvP,I,mCCJ3D,SAAS5mN,EAAqBxlC,GACnC,MAAMqsP,EAAUrsP,EAAamjB,MAAM,KACnC,OAAOkpO,EAAQ,GAAK,IAAMA,EAAQ,G,wICEpC,MAAMC,EAEJzkN,YAAYyI,EAAQtzC,EAAQ8qC,EAAQuvC,EAAc91B,EAAiBlvC,GACjEzqB,KAAK0oD,OAASA,EACd1oD,KAAKoV,OAASA,EACdpV,KAAKkgD,OAASA,EACdlgD,KAAKyvF,aAAeA,EACpBzvF,KAAKyqB,cAAgBA,EACrBzqB,KAAK25D,gBAAkBA,EAEvB35D,KAAK0oD,OAAOi8M,WAAY,EACxB3kQ,KAAK0oD,OAAOnqC,WAAakxE,EAAajkF,SAASlN,GAC/C0B,KAAK0oD,OAAOjoC,SAAWgvE,EAAajkF,SAASiV,SAC7CzgB,KAAK0oD,OAAOu7D,WAAax0B,EAAajkF,SAASy4G,WAE/C7uG,EAAOwvP,SAAW,WAChB5kQ,KAAK0oD,OAAOi8M,WAAY,GAG1BvvP,EAAOyvP,SAAW,WAChB7kQ,KAAK0oD,OAAOi8M,WAAY,GAIf,gBACX3kQ,KAAKkgD,QAAO2F,UACV,IACE7lD,KAAK0oD,OAAO3xC,eAAiB/W,KAAK25D,gBAAgB5iD,SAAS/W,KAAK0oD,OAAOnqC,YACvE,MAAOzD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8CAG3C,IACE,MAAMO,EAAW,CACfypP,MAAM,EACNC,KAAK,EACLC,KAAK,EACLC,aAAa,EACbC,YAAa,QAETC,QAAyBnjP,EAAAA,EAAAA,IAAqBhiB,KAAK0oD,OAAOnqC,WAAYve,KAAK0oD,OAAOjoC,SAAUpF,GAElGrb,KAAK0oD,OAAOs9D,UAAYm/I,EAAiB3sD,OACzCx4M,KAAK0oD,OAAO08M,SAAWD,EAAiB5kK,MACxC,MAAO7hG,GACPsB,KAAKyqB,cAAcxc,MAAM,UAAWvP,EAAI,sC,wFAMhD,YACAkX,IAAAA,OAAe,iBAAiBV,WAAW,wBAAyBwvP,I,kGC7BvDW,GAAoB3vP,EAAAA,EAAAA,IAf1B,YAAkE,IAA5C+K,EAA4C,EAA5CA,SAAU6kP,EAAkC,EAAlCA,OAAQ5uL,EAA0B,EAA1BA,MAC7C,OAAKj2D,GAAa6kP,GAAW5uL,GAG3B,SAAC,EAAA6uL,IAAD,CACE9kP,SAAUA,EACVulG,UAAS,kBAAas/I,EAAb,iBACTE,UAAW9uL,EACX+uL,kBAAkB,MAClBC,aAAa,OACbC,YAAY,UAT2B,0CAcc,CACzD,WACA,SACA,UC1BF/vP,IAAAA,OAAe,iBAAiBC,UAAU,aAAcwvP,GAAmBvhQ,M,yDCF3E8R,QAAQ5W,OAAO,iBAAiBkW,WAAW,wBAAyB,CAClE,SACA,SACA,eACA,eACA,gBACA,SAAUE,EAAQszC,EAAQ+mC,EAAcqiB,EAAcrnF,GAgBpD,IACMtT,EAhBN/B,EAAOizF,eAAiBptF,EAAAA,GAAAA,WAExB7F,EAAOxH,aAAe,WACpBwH,EAAOrF,MAAMolF,kBAAmB,EAChC2c,EAAawf,YAAYl8G,EAAOo+F,MAAOp+F,EAAOo+F,MAAM8tH,qBACjDtlN,MAAK,KACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOxnB,YAER47B,OAAOhiD,IACN1F,EAAOrF,MAAMolF,kBAAmB,EAChC1qE,EAAcxc,MAAM,UAAW6M,EAAK,iCAKpC3D,EAAUs4E,EAAajkF,SAASlN,GAEpC8W,EAAOrF,MAAQ,CAAEolF,kBAAkB,GACnC2c,EAAa0B,MAAMr8F,GAChB6E,MAAK,SAAiBvX,GACrB2Q,EAAOo+F,MAAQ/uG,KAEhBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8B,wDC/B9ClF,QAAQ5W,OAAO,iBAAiBkW,WAAW,wBAA3C,2DAAoE,SAA+BgrC,EAAQ9qC,EAAQszC,EAAQopD,EAAcrnF,GACvIrV,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB//E,EAAOsjC,OAAS,WAId,IAHA,IAAI+K,EAAQruC,EAAOquC,MAEfgqK,EAAsB,GACjBluN,EAAI,EAAGA,EAAI6V,EAAOq4M,oBAAoBhuN,OAAQF,IAAK,CAC1D,IAAIwX,EAAW3B,EAAOq4M,oBAAoBluN,GAC1CkuN,EAAoB7pN,KAAKmT,EAASxK,IAGpC6I,EAAOrF,MAAMolF,kBAAmB,EAChC2c,EAAamf,YAAYxtE,EAAOgqK,GAC7BzxM,MAAK,WACJyO,EAAcF,QAAQ,UAAW,8BACjCm+B,EAAOr8B,GAAG,mBAAoB,GAAI,CAAE6U,QAAQ,OAE7C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAKpC//E,EAAOq4M,oBAAsB,GAC7Br4M,EAAOquC,MAAQ,IAAI09K,EAAAA,0BACnB/rN,EAAO09E,QAAS,M,gBCjCpBl9E,QAAQ5W,OAAO,iBAAiBkW,WAAW,kBAA3C,sEAA8D,SAAyB4e,EAAI1e,EAAQszC,EAAQ+mC,EAAcqiB,EAAcrnF,GAsBrI,IACMtT,EAtBN/B,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB//E,EAAOwsD,OAAS,WACd,IAAIne,EAAQruC,EAAOo+F,MAEnBp+F,EAAOrF,MAAMolF,kBAAmB,EAChC2c,EAAawf,YAAY7tE,GACtBznC,MAAK,WACJyO,EAAcF,QAAQ,UAAW,8BACjCm+B,EAAOr8B,GAAG,mBAAoB,GAAI,CAAE6U,QAAQ,OAE7C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAKhCh+E,EAAUs4E,EAAajkF,SAASlN,GAEpCw1B,EAAGxB,IAAI,CACLkhF,MAAO1B,EAAa0B,MAAMr8F,KAEzB6E,MAAK,SAAiBvX,GACrB2Q,EAAOo+F,MAAQ/uG,EAAK+uG,MACpBp+F,EAAO09E,QAAS,KAEjBh2B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,uC,sFC5B5C,SAAS8qP,EAAiBxwP,EAAQszC,EAAQxI,EAAQ4xD,EAAcrnF,GAO9Do7B,eAAewpC,EAAkBvlD,GAC/B,IAAK,IAAI0pE,KAAS1pE,EAChB,UACQgoE,EAAa+zJ,YAAYryJ,EAAMjnG,IAErCke,EAAcF,QAAQ,yCAA0CipF,EAAM3mG,MACtE,IAASuI,EAAOW,OAAQy9F,GACxB,MAAO14F,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,0BAIxC4tC,EAAOxnB,SAlBT9rB,EAAO2nD,aAEP,SAAsBjzB,GACpB,OAAOoW,EAAOmvC,EAAmBvlD,IAmBjCgoE,EAAa/7F,SACViG,MAAK,SAAiBvX,GACrB2Q,EAAOW,OAAStR,KAEjBq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCACpC1F,EAAOW,OAAS,M,sEA/BxBH,IAAAA,OAAe,iBAAiBV,WAAW,mBAAoB0wP,I,iBC8J/D,SAASE,EAAKC,EAAU,GACtB,OAAO,IAAI9pP,SAASld,GAAYof,WAAWpf,EAAmB,IAAVgnQ,KAlKtDnwP,QAAQ5W,OAAO,iBAAiBkW,WAAW,sBAAuB,CAChE,SACA,SACA,gBACA,iBACA,eACA,kBACA,cACA,gBACA,gBACA,SAAUE,EAAQszC,EAAQj+B,EAAesgD,EAAgBnmB,EAAc+hB,EAAiBysH,EAAa4yE,EAAexnC,GAqDlH,SAASvrM,EAAYnY,GACnB,GAAmB,MAAfA,EAAI5C,OAAgB,CACtB,MAAMvB,EAAUmE,EAAInE,UACdsvP,EAA0B,mBAC5BtvP,GAAWA,EAAQ,qBAAuBsvP,IAC5CliQ,OAAOovF,SAASpnE,KAAO,kBAiD7B85B,eAAeqgN,EAAkBC,GAC/B/wP,EAAOrF,MAAMq2P,kBAAmB,EAEhC,UACQD,IACN,MAAOrrP,GAKP,OAJAmY,EAAYnY,GACZ2P,EAAcxc,MAAM,UAAW6M,EAAK,qCACpC1F,EAAOrF,MAAMq2P,kBAAmB,GAKlC,UAcFvgN,iBACE,IAAK,IAAItmD,EAAI,EAAGA,EAAI,GAAIA,IAAK,OACrBumQ,EAAK,GACX,IACE,MAAM5tP,QAAesmN,EAActmN,SACnC,GAAIA,GAAUA,EAAOC,QACnB,OAEF,MAAOzZ,KAIX,MAAM,IAAIC,MAAM,4CAzBR0nQ,GACN57O,EAAcF,QAAQ,UAAW,6CACjCm+B,EAAOr8B,GAAG,kBACV,MAAOvR,GACPmY,EAAYnY,GACZ2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAC9BgrP,EAAK,GACX3yK,SAASjyD,SAGX9rB,EAAOrF,MAAMq2P,kBAAmB,EAlIlChxP,EAAOklO,aAkFPz0L,iBACEzwC,EAAOrF,MAAMq2P,kBAAmB,EAChC,MAAMt3O,EAAO1Z,EAAOzB,WAAW2yP,WACzBz6L,EAAWz2D,EAAOzB,WAAW+tN,SAEnCwkC,GAAkB,IAAMF,EAAc1rB,aAAaxrN,EAAM+8C,MAtF3Dz2D,EAAOmxP,cAyFP1gN,iBACEzwC,EAAOrF,MAAMq2P,kBAAmB,EAEhC,MAAMtlP,EAAU,CACd0lP,YAAapxP,EAAOzB,WAAW8yP,YAC/BC,SAAUtxP,EAAOzB,WAAW+yP,SAC5BhlC,SAAUtsN,EAAOzB,WAAW+tN,SAC5BilC,gBAAiBvxP,EAAOzB,WAAWgzP,gBACnC9kC,OAAQzsN,EAAOzB,WAAWkuN,OAC1B+kC,WAAYxxP,EAAOzB,WAAWizP,WAC9BC,SAAUzxP,EAAOzB,WAAWkzP,UAG9BX,GAAkB,IAAMF,EAAcO,cAAczlP,MArGtD1L,EAAOylM,KAAOj2J,EAAakB,WAAWs2F,YAAYy+D,KAClDzlM,EAAO0xP,mBAAqB,CAAEC,GAAI,KAAMC,KAAM,QAC9C5xP,EAAOzB,WAAa,CAClBnH,SAAU,QACVk1N,SAAU,GACVulC,gBAAiB,GACjBzc,iBAAiBrvO,EACjB+rP,gBAAiB9xP,EAAO0xP,mBAAmBE,MAG7C5xP,EAAOrF,MAAQ,CACbolF,kBAAkB,EAClBgyK,kBAAkB,EAClBC,sBAAsB,GAgDtBzgM,EAAgB6B,iBACbxsD,MAAK,SAAiBvX,GACrB2Q,EAAOs0O,uBAAyBjlP,EAAK66L,0BAEtCxiI,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8CAGxCs4K,EAAY6pB,sBACTjhM,MAAK,SAAiBs4J,GACjBA,GACF5rH,EAAOr8B,GAAG,uBAGbywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,uDA1D1C1F,EAAOiyP,YAAc,WACnBjyP,EAAOrF,MAAMo3P,kBAAoB/xP,EAAOrF,MAAMo3P,iBAC9C/xP,EAAOrF,MAAMq3P,sBAAwBhyP,EAAOrF,MAAMq3P,sBAGpDhyP,EAAOkyP,gBAAkB,WACvB,IAAIn/M,EAAW/yC,EAAOzB,WAAWnH,SAC7Bq/D,EAAWz2D,EAAOzB,WAAW+tN,SAEjCtsN,EAAOrF,MAAMolF,kBAAmB,EAChCi+F,EAAYm0E,kBAAkBp/M,EAAU0jB,GACrC7vD,MAAK,WACJ,OAAO+uD,EAAeisK,MAAM7uL,EAAU0jB,MAEvC7vD,MAAK,WACJ,OAAO2qD,EAAgB/E,OAAO,CAAE4oL,gBAAiBp1O,EAAOzB,WAAW62O,qBAEpExuO,MAAK,IACG4oC,EAAaoE,eAErBhtC,MAAK,WACJ,OAAO0sC,EAAOr8B,GAAG,6BAElBywC,OAAM,SAAehiD,GACpBmY,EAAYnY,GACZ2P,EAAcxc,MAAM,UAAW6M,EAAK,0CAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,U,yGCtD1CngF,EAAQ,OACRA,EAAQ,MACRA,EAAQ,OAER,MAAMwyP,EAEJvnN,YAAYC,EAAQ9qC,EAAQszC,EAAQiR,EAAiB/U,EAAcn6B,GACjEzqB,KAAKkgD,OAASA,EACdlgD,KAAKoV,OAASA,EACdpV,KAAK0oD,OAASA,EACd1oD,KAAK25D,gBAAkBA,EACvB35D,KAAK4kD,aAAeA,EACpB5kD,KAAKyqB,cAAgBA,EAErBzqB,KAAKynQ,yBAA2BznQ,KAAKynQ,yBAAyBpoQ,KAAKW,MACnEA,KAAK0nQ,mCAAqC1nQ,KAAK0nQ,mCAAmCroQ,KAAKW,MACvFA,KAAK2nQ,yBAA2B3nQ,KAAK2nQ,yBAAyBtoQ,KAAKW,MAGrEmjD,UACO,IAAUnjD,KAAKoV,OAAOy1D,iBAAiB9zD,WAC1C/W,KAAK0oD,OAAOr8B,GAAG,kBAEjBrsB,KAAK66M,KAAO76M,KAAK4kD,aAAakB,WAAWs2F,YAAYy+D,KAErD76M,KAAK+P,MAAQ,CACXowC,kBAAkB,EAClBg1C,kBAAkB,GAGpBn1F,KAAK2T,WAAa,IAAIwrN,EAAAA,gCACtBn/N,KAAK4nQ,iBAAmBloC,EAAAA,+CACxB1/N,KAAKo/N,iCAAmCA,EAAAA,iCAG1CyoC,0BACE,OAAQ7nQ,KAAK2T,WAAW+kL,gBACtB,KAAK0mC,EAAAA,iCAAAA,aAEL,KAAKA,EAAAA,iCAAAA,iBACH,OAAOp/N,KAAK+P,MAAMolF,iBACpB,KAAKiqI,EAAAA,iCAAAA,MACH,OAAOp/N,KAAK+P,MAAMolF,mBAAqBn1F,KAAK2T,WAAW9G,OAAS7M,KAAK2T,WAAW0zD,KAMtF2zK,iBACE,OAAQh7O,KAAK2T,WAAW+kL,gBACtB,KAAK0mC,EAAAA,iCAAAA,aACH,OAAOp/N,KAAK8nQ,sBACd,KAAK1oC,EAAAA,iCAAAA,iBACH,OAAOp/N,KAAK+nQ,gCACd,KAAK3oC,EAAAA,iCAAAA,MACH,OAAOp/N,KAAKgoQ,sBACd,QACEhoQ,KAAKyqB,cAAcxc,MAAM,UAAW,KAAM,iEAIhDg6P,uBACEjoQ,KAAK0oD,OAAOr8B,GAAG,kBAMa,iCAC5B,IACErsB,KAAK+P,MAAMolF,kBAAmB,QACxBn1F,KAAK25D,gBAAgBmuM,sBAC3B9nQ,KAAK0oD,OAAOr8B,GAAG,kBACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAL3C,QAOE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC2yK,sBACE,OAAO9nQ,KAAKkgD,OAAOlgD,KAAKynQ,0BAMc,2CACtC,IACEznQ,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAMp+E,QAAiB/W,KAAK25D,gBAAgBouM,gCAC5C/nQ,KAAK0oD,OAAOr8B,GAAG,2BAA4B,CAAE9N,WAAYxH,EAASxK,KAClE,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mDAL3C,QAOE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC4yK,gCACE,OAAO/nQ,KAAKkgD,OAAOlgD,KAAK0nQ,oCAMI,iCAC5B,IACE1nQ,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAMrxF,EAAO9D,KAAK2T,WAAW9G,KACvBw6D,EAAMrnE,KAAK2T,WAAW0zD,IACtBtvB,EAAYsvB,EAAI9rC,MAAM,KAAK,GAE3BxkB,QAAiB/W,KAAK25D,gBAAgB8nM,qBAC1C39P,EACAq8N,EAAAA,+BAAAA,iBACA94J,EACAtvB,EACA,EACA,IACA,GACA,GACA,EACA,KACA,KACA,MAEImwN,EAAYnxP,EAAS/L,OAASs+C,EAAAA,uBAAAA,6BAAsD,2BAA6B,iBACvHtpD,KAAK0oD,OAAOr8B,GAAG67O,EAAW,CAAE3pP,WAAYxH,EAASxK,KACjD,MAAOuO,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+CAvB3C,QAyBE9a,KAAK+P,MAAMolF,kBAAmB,GAIlC6yK,sBACE,OAAOhoQ,KAAKkgD,OAAOlgD,KAAK2nQ,2B,wFAI5B,YACA/xP,IAAAA,OAAe,iBAAiBV,WAAW,yBAA0BsyP,I,yDCnJrE,MAAMjnN,EAAgCvrC,EAAQ,OAI9CY,QAAQ5W,OAAO,iBAAiB6W,UAAU,kBAAmB,CAC3D2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,gFCNG,MAAMizP,EAEnBloN,YAAYC,EAAQwI,EAAQplC,EAAgBmH,EAAesgD,GACzD/qE,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKsjB,eAAiBA,EACtBtjB,KAAKyqB,cAAgBA,EACrBzqB,KAAK+qE,eAAiBA,EAEtB/qE,KAAK++N,QAAU,GACf/+N,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB2oI,UAAW,IAGb99N,KAAKi+N,OAASj+N,KAAKi+N,OAAO5+N,KAAKW,MAGjCkuH,cACE,QAASluH,KAAK++N,QAGJ,eACV,OAAO/+N,KAAKkgD,QAAO2F,UAEjB,GADA7lD,KAAK+P,MAAM+tN,UAAY,GAClB99N,KAAKkuH,cAAV,CAKAluH,KAAK+P,MAAMolF,kBAAmB,EAE9B,IACE,MAAM,WAAEzyE,SAAqB1iB,KAAKsjB,eAAeE,OAAO,CAACxjB,KAAK++N,UAE9D,GAAIr8M,EAAW1iB,KAAK++N,SAClB,MAAM,IAAIpgO,MAAM+jB,EAAW1iB,KAAK++N,UAGlC,IAAIp9K,EAAO,mBACP3hD,KAAK+qE,eAAegmB,iBAAiBquG,sBACvCz9I,EAAO,qBAET3hD,KAAK0oD,OAAOr8B,GAAGs1B,GACf,MAAO7mC,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,8BAb3C,QAeE9a,KAAK+P,MAAMolF,kBAAmB,QArB9Bn1F,KAAK+P,MAAM+tN,UAAY,sB,8JCvB/B,MAAMsqC,EAEJnoN,YAAYC,EAAQkoD,EAAYhzF,EAAQszC,EAAQ4oD,EAAcrqD,EAAS8jB,EAAgBqoH,EAAaxuI,EAAcn6B,EAAem+B,EAAc41K,EAAel7M,GAC5JtjB,KAAKkgD,OAASA,EACdlgD,KAAKooG,WAAaA,EAClBpoG,KAAKoV,OAASA,EACdpV,KAAK0oD,OAASA,EACd1oD,KAAKsxG,aAAeA,EACpBtxG,KAAKinD,QAAUA,EACfjnD,KAAK+qE,eAAiBA,EACtB/qE,KAAKozL,YAAcA,EACnBpzL,KAAK4kD,aAAeA,EACpB5kD,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAKw+N,cAAgBA,EACrBx+N,KAAKsjB,eAAiBA,EACtBtjB,KAAK66M,KAAO76M,KAAK4kD,aAAakB,WAAWs2F,YAAYy+D,KACrD76M,KAAK2T,WAAa,CAChBnH,SAAU,GACVk1N,SAAU,IAEZ1hO,KAAK+P,MAAQ,CACX2tP,oBAAqB,GACrBC,iBAAiB,GAGnB39P,KAAK69P,uBAAyB79P,KAAK69P,uBAAuBx+P,KAAKW,MAC/DA,KAAK89P,sBAAwB99P,KAAK89P,sBAAsBz+P,KAAKW,MAC7DA,KAAK+9P,eAAiB/9P,KAAK+9P,eAAe1+P,KAAKW,MAC/CA,KAAKi+P,mBAAqBj+P,KAAKi+P,mBAAmB5+P,KAAKW,MACvDA,KAAKk+P,sBAAwBl+P,KAAKk+P,sBAAsB7+P,KAAKW,MAC7DA,KAAKo+P,qBAAuBp+P,KAAKo+P,qBAAqB/+P,KAAKW,MAC3DA,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAOjCo8M,OAAOnuM,GACLjO,KAAK+qE,eAAeqxI,SACpBp8M,KAAK+P,MAAM4tP,iBAAkB,EAC7B39P,KAAK4oD,aAAag/L,kBAAkB35O,GACpCjO,KAAKinD,QAAQksC,SAASjyD,SAGxBjzB,MAAM6M,EAAK7N,GACTjN,KAAK+P,MAAM2tP,oBAAsBzwP,EAC5B6N,IACHA,EAAM,IAER9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK7N,GACzCjN,KAAK+P,MAAM4tP,iBAAkB,EAWH,+BAC1B,IAGE,GAA+B,WAFP1nP,EAAAA,EAAAA,IAAgB,CAAEG,MAAO,KAEnCzS,MAAMlE,OAClB,MAAO,0BAET,MAAOqb,GACP9a,KAAKiO,MAAM6M,EAAK,mCAElB,MAAO,iBAGkB,8BACzB,IAGE,WAFmB9a,KAAKsjB,eAAeJ,QAE7B63J,MACR,MAAO,yBAET,MAAOjgK,GACP9a,KAAKiO,MAAM6M,EAAK,qCAIA,6BACZ9a,KAAK4kD,aAAaoE,aAExB,MAAM/+C,EAAUjK,KAAK+qE,eAAe9gE,UACpCjK,KAAKooG,WAAWllG,YAAY+G,EAAU,QAAU,iBAEhD,IAAI03C,EAAO,iBACP3hD,KAAK+qE,eAAegmB,iBAAiBquG,sBACvCz9I,EAAO,qBAEL13C,IACF03C,QAAa3hD,KAAK89P,wBACbn8M,IACHA,QAAa3hD,KAAK69P,2BAGtB79P,KAAK0oD,OAAOr8B,GAAGs1B,GAUO,yBAACwG,EAAU0jB,SAC3B7rE,KAAK+qE,eAAeisK,MAAM7uL,EAAU0jB,SACpC7rE,KAAK+9P,iBAWc,8BACzB,IACE,IAAI51M,EAAWnoD,KAAK2T,WAAWnH,SAC3Bq/D,EAAW7rE,KAAK2T,WAAW+tN,SAC/B1hO,KAAK+P,MAAM4tP,iBAAkB,QACvB39P,KAAKi+P,mBAAmB91M,EAAU0jB,GACxC,MAAO/wD,GACP,GAAmB,MAAfA,EAAI5C,OAGN,YADAlY,KAAKiO,MAAM6M,EAAKA,EAAIrW,KAAKwI,SAG3BjN,KAAKiO,MAAM6M,EAAK,oBAIpBgkP,mBACE,OAAO9+P,KAAKkgD,OAAOlgD,KAAKk+P,uBAWA,6BACxB,UACuBl+P,KAAKozL,YAAY6pB,uBAEpCj9M,KAAK0oD,OAAOr8B,GAAG,wBAEjB,MAAOvR,GACP9a,KAAKiO,MAAM6M,EAAK,qDAIR,eACV,GAAI9a,KAAKsxG,aAAa8qG,QAAUp8M,KAAKsxG,aAAarjG,MAEhD,YADAjO,KAAKo8M,OAAOp8M,KAAKsxG,aAAarjG,OAIhC,MAAMA,EAAQjO,KAAK4oD,aAAai/L,kBAC5B55O,IACFjO,KAAK+P,MAAM2tP,oBAAsBzvP,EACjCjO,KAAK4oD,aAAak/L,qBAGpB9nP,KAAK+P,MAAM4tP,iBAAkB,QAEvB39P,KAAKo+P,uBAGbj7M,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,2LAQ5B,YACA9qH,IAAAA,OAAe,iBAAiBV,WAAW,mCAAoCkzP,I,kEClM/E,MAAMC,EAEJpoN,YAAYC,EAAQwI,EAAQ+mC,EAAcxoC,EAAS8jB,EAAgBnmB,EAAcn6B,EAAem+B,EAAc+d,GAC5G3mE,KAAKkgD,OAASA,EACdlgD,KAAK0oD,OAASA,EACd1oD,KAAKyvF,aAAeA,EACpBzvF,KAAKinD,QAAUA,EAEfjnD,KAAK+qE,eAAiBA,EACtB/qE,KAAK4kD,aAAeA,EACpB5kD,KAAKyqB,cAAgBA,EACrBzqB,KAAK4oD,aAAeA,EACpB5oD,KAAK2mE,gBAAkBA,EAEvB3mE,KAAK66M,KAAO76M,KAAK4kD,aAAakB,WAAWs2F,YAAYy+D,KACrD76M,KAAK8gP,YAAc9gP,KAAK8gP,YAAYzhP,KAAKW,MAEzCA,KAAK0gI,OAAS1gI,KAAK0gI,OAAOrhI,KAAKW,MAMhB,oBACf,MAAMiO,EAAQjO,KAAKyvF,aAAajkF,SAASyC,MACnC0yB,EAAmB3gC,KAAKyvF,aAAajkF,SAASm1B,iBAC9Cr8B,QAAiBtE,KAAK2mE,gBAAgB6B,iBAE5C,UACQxoE,KAAK+qE,eAAeqxI,OAAOz7K,GADnC,QAGE3gC,KAAK4oD,aAAag/L,kBAAkB35O,GAChC3J,EAAS6/N,gBAA8D,IAA5CnkO,KAAK+qE,eAAegmB,iBAAiBvmD,GAClExqC,KAAKinD,QAAQksC,SAASpnE,KAAOznB,EAAS6/N,eAEtCnkO,KAAK0oD,OAAOr8B,GAAG,iBAAkB,CAAE6U,QAAQ,KAKjDk7K,SACE,OAAOp8M,KAAKkgD,OAAOlgD,KAAK8gP,aAOd,eACV,UACQ9gP,KAAKo8M,SACX,MAAOthM,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,mCAI7CqoC,UACE,OAAOnjD,KAAKkgD,OAAOlgD,KAAK0gI,S,wIAQ5B,YACA9qH,IAAAA,OAAe,iBAAiBV,WAAW,mBAAoBmzP,I,iBCjE/D,SAASC,EAAelzP,EAAQwvC,EAAcsxK,EAAc9kI,GAK1Dh8E,EAAOy1D,iBAAmBjmB,EAAakB,WAEvC1wC,EAAOs9E,cAAgBtB,EAAesB,cAEtCwjI,EAAaG,Y,oEAZfzgN,QAAQ5W,OAAO,iBAAiBkW,WAAW,iBAAkBozP,I,6ECA7D,MAAM/nN,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,iBAAkB,CAC1D2qC,YAAaD,EACbrrC,WAAYqzP,EAAAA,QACZxzP,SAAU,CACR06E,aAAc,Q,oPCEL9oF,EAAU,CACrB,CACErI,GAAI,qBACJgT,KAAMk3P,EAAAA,EACN5hQ,MAAO,YACPgM,YAAa,kCACbjP,MAAO,KAET,CACErF,GAAI,mBACJgT,KAAMqwN,EAAAA,EACN/6N,MAAO,UACPgM,YAAa,oCACbjP,MAAO,KAET,CACErF,GAAI,gBACJgT,KAAMyhE,EAAAA,EACNnsE,MAAO,UACPgM,YAAa,0BACbjP,MAAO,KAET,CACErF,GAAI,kBACJgT,KAAMm3P,EAAAA,EACN7hQ,MAAO,SACPgM,YAAa,4BACbjP,MAAO,KAET,CACErF,GAAI,iBACJgT,KAAM63L,EAAAA,EACNviM,MAAO,QACPgM,YAAa,2BACbjP,MAAO,KAET,CACErF,GAAI,kBACJgT,KAAMk2D,EAAAA,EACN5gE,MAAO,SACPgM,YAAa,4BACbjP,MAAO,KAET,CACErF,GAAI,kBACJgT,MAAM,SAACuB,EAAA,EAAD,CAAWvB,KAAMojB,EAAAA,IACvB9tB,MAAO,kBACPgM,YAAa,2BACbjP,MAAO,MCtDX,MAAM4kQ,EAEJtoN,YAAYC,EAAQwI,EAAQj+B,EAAeg8C,EAAiBoqK,GAC1D/xO,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQj+B,cAAAA,EAAeg8C,gBAAAA,EAAiBoqK,sBAAAA,IAEtE7wO,KAAKunE,cAAgBA,EAAAA,cACrBvnE,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClB20E,uBAAuB,EACvBzvI,OAAQ,CACFm1B,wBACF,OAAOxvD,KAAK8pC,cAAcrqC,QAAU,GAEtCqqC,cAAe,IAEjB4+N,oBAAqB,uBACrBC,mBAAoB,MAGtB3oQ,KAAK87O,eAAiB97O,KAAK87O,eAAez8O,KAAKW,MAC/CA,KAAKsjL,cAAgBtjL,KAAKsjL,cAAcjkL,KAAKW,MAC7CA,KAAKkvN,WAAalvN,KAAKkvN,WAAW7vN,KAAKW,MACvCA,KAAK4oQ,yBAA2B5oQ,KAAK4oQ,yBAAyBvpQ,KAAKW,MACnEA,KAAK+7O,uBAAyB/7O,KAAK+7O,uBAAuB18O,KAAKW,MAE/DA,KAAK6oQ,gBAAkB7oQ,KAAK6oQ,gBAAgBxpQ,KAAKW,MACjDA,KAAK8oQ,UAAY9oQ,KAAK8oQ,UAAUzpQ,KAAKW,MACrCA,KAAK+oQ,mBAAqB/oQ,KAAK+oQ,mBAAmB1pQ,KAAKW,MACvDA,KAAKgpQ,qBAAuBhpQ,KAAKgpQ,qBAAqB3pQ,KAAKW,MAC3DA,KAAKipQ,oBAAsBjpQ,KAAKipQ,oBAAoB5pQ,KAAKW,MACzDA,KAAKkpQ,qBAAuBlpQ,KAAKkpQ,qBAAqB7pQ,KAAKW,MAC3DA,KAAKmpQ,qBAAuBnpQ,KAAKmpQ,qBAAqB9pQ,KAAKW,MAE3DA,KAAKopQ,YAAcppQ,KAAKopQ,YAAY/pQ,KAAKW,MAG3CqpQ,8BACErpQ,KAAKyjD,MAAMsvB,KAAKg9I,iBAAkB,EAClC/vN,KAAKyjD,MAAMsvB,KAAKmvJ,iBAAmB,GAGrC6mC,qBACE/oQ,KAAKyjD,MAAM52C,KAAO,OAClB7M,KAAKyjD,MAAM4jB,IAAM,UACjBrnE,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMsvB,KAAO,GAClB/yE,KAAKqpQ,8BACLrpQ,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,KAGpB+hM,gCACEtpQ,KAAKyjD,MAAM4jB,IAAM,8BACjBrnE,KAAKyjD,MAAM+jB,OAAOy6J,YAAc,qBAGlCinC,uBACElpQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAM+jB,OAAS,GACpBxnE,KAAKspQ,gCACLtpQ,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,OAGpB0hM,sBACEjpQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAM4jB,IAAM,GACjBrnE,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,MAGpByhM,uBACEhpQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAM4jB,IAAM,GACjBrnE,KAAKyjD,MAAMg+K,QAAU,GACrBzhO,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,OAGpBshM,kBACE7oQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAM4jB,IAAM,YACjBrnE,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,UAGpB4hM,uBACEnpQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAM4jB,IAAM,GACjBrnE,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,OAGpBgiM,6BACEvpQ,KAAKyjD,MAAMk+K,IAAIE,OAAS,GAG1BinC,YACE9oQ,KAAKyjD,MAAM52C,KAAO,GAClB7M,KAAKyjD,MAAM4jB,IAAM,GACjBrnE,KAAKyjD,MAAMsnB,gBAAiB,EAC5B/qE,KAAKyjD,MAAMk+K,IAAM,GACjB3hO,KAAKupQ,6BACLvpQ,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,IAGpBqhM,2BACE,OAAO5oQ,KAAKkgD,QAAO2F,UACjB7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,IACEn1F,KAAKwpQ,qBAAuBxpQ,KAAK6wO,sBAAsBnhB,SAAS1vN,KAAKyjD,MAAM+jB,OAAOy6J,YAAajiO,KAAKyjD,MAAM88C,OAC1G,MAAOzlF,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BAH3C,QAKE9a,KAAK+P,MAAMolF,kBAAmB,MAKpC4mJ,yBACE,OAAO/7O,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMolF,kBAAmB,QACxBn1F,KAAKymE,gBAAgBs1K,uBAAuB/7O,KAAKyjD,MAAOzjD,KAAK+P,MAAMsqB,OAAOyP,eAChF9pC,KAAKyqB,cAAcF,QAAQ,UAAW,mCACtCvqB,KAAK0oD,OAAOr8B,GAAGrsB,KAAK+P,MAAM24P,oBAAqB,CAAEnqP,WAAYve,KAAK+P,MAAM44P,qBACxE,MAAO7tP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,+BACzC9a,KAAK+P,MAAMolF,kBAAmB,MAKpC2mJ,iBACE,OAAO97O,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMolF,kBAAmB,QACxBn1F,KAAKymE,gBAAgBq1K,eAAe97O,KAAKyjD,OAC/CzjD,KAAKyqB,cAAcF,QAAQ,UAAW,iCACtCvqB,KAAK0oD,OAAOr8B,GAAGrsB,KAAK+P,MAAM24P,oBAAqB,CAAEnqP,WAAYve,KAAK+P,MAAM44P,qBACxE,MAAO7tP,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BACzC9a,KAAK+P,MAAMolF,kBAAmB,MAKpC+5H,WAAWprN,GACT,OAAO,IAAW9D,KAAKypQ,gBAAiB3lQ,GAG1Cw/K,gBACE,OAAOtjL,KAAKkgD,QAAO2F,UACjB,IACE,MAAMihB,QAAmB9mE,KAAKymE,gBAAgBK,aAC9C9mE,KAAKypQ,gBAAkB,IAAM3iM,EAAY,QACzC,MAAOhsD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,2CAK/CsuP,YAAYhiM,GAGV,OAFApnE,KAAK+P,MAAM25P,cAAgBtiM,EAEnBA,GACN,IAAK,IACHpnE,KAAK6oQ,kBACL,MACF,IAAK,IACH7oQ,KAAK8oQ,YACL,MACF,IAAK,IACH9oQ,KAAK+oQ,qBACL,MACF,IAAK,IACH/oQ,KAAKgpQ,uBACL,MACF,IAAK,IACHhpQ,KAAKipQ,sBACL,MACF,IAAK,IACHjpQ,KAAKkpQ,uBACL,MACF,IAAK,IACHlpQ,KAAKmpQ,wBAKXhmN,UACE,OAAOnjD,KAAKkgD,QAAO2F,UACjB7lD,KAAKyjD,MAAQ,IAAIq+K,EAAAA,yBACjB9hO,KAAKyjD,MAAMz4C,KAAOu8D,EAAAA,cAAAA,UAClBvnE,KAAK6oQ,kBACL7oQ,KAAK+P,MAAM45P,kBAAoBhjQ,EAE/B3G,KAAK+P,MAAM25P,cAAgB,IAE3B,MAAMx+N,EAAOlrC,KAAKyvF,aAAavkD,OACzB1/B,EAASxL,KAAKyvF,aAAajkF,OAAO,QAEpC0/B,EAAKpnC,MAAQ,uBAAuB2G,KAAKygC,EAAKpnC,QAChD9D,KAAK+P,MAAM24P,oBAAsBx9N,EACjClrC,KAAK+P,MAAM44P,mBAAqBn9P,EAAO+S,YAAc,YAEjDve,KAAKsjL,oB,wFAKjB,S,6ECvNA,MAAM/iI,EAAgCvrC,EAAQ,MAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,eAAgB,CACxD2qC,YAAaD,EACbrrC,WAFwD,UAGxDH,SAAU,CACR06E,aAAc,Q,2JCNH,MAAMm6K,EAEnB3pN,YAAY7qC,EAAQ8qC,EAAQwI,EAAQ+d,EAAiBh8C,GACnDzqB,KAAKoV,OAASA,EACdtW,OAAOM,OAAOY,KAAM,CAAEkgD,OAAAA,EAAQwI,OAAAA,EAAQ+d,gBAAAA,EAAiBh8C,cAAAA,IAEvDzqB,KAAKunE,cAAgBA,EAAAA,cAErBvnE,KAAK+P,MAAQ,CACXolF,kBAAkB,EAClBh0D,SAAS,GAGXnhC,KAAK0hO,SAAW,GAEhB1hO,KAAK8uN,qBAAuB9uN,KAAK8uN,qBAAqBzvN,KAAKW,MAC3DA,KAAK6pQ,0BAA4B7pQ,KAAK6pQ,0BAA0BxqQ,KAAKW,MAGvE8uN,qBAAqBr4J,GACnBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKonE,SAAS2D,eAAiBtU,KAInCozM,0BAA0BpzM,GACxBz2D,KAAKoV,OAAOE,YAAW,KACrBtV,KAAKonE,SAAS2L,KAAKC,gBAAkBvc,KAIzCqzM,gBAEE,OADa9pQ,KAAKonE,SAASp8D,MAEzB,KAAKu8D,EAAAA,cAAAA,IACH,MAAO,wBACT,KAAKA,EAAAA,cAAAA,UACH,MAAO,eACT,KAAKA,EAAAA,cAAAA,OACH,MAAO,wBACT,QACE,MAAO,YAIbq0K,iBACE,OAAO57O,KAAKkgD,QAAO2F,UACjB,IACE7lD,KAAK+P,MAAMolF,kBAAmB,EAC9B,MAAM/tB,EAAWpnE,KAAKonE,SACtBA,EAASs6J,SAAW1hO,KAAK0hO,eAEnB1hO,KAAKymE,gBAAgBm1K,eAAex0K,GAC1CpnE,KAAKyqB,cAAcF,QAAQ,UAAW,iCACtCvqB,KAAK0oD,OAAOr8B,GAAG,wBACf,MAAOvR,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,6BAT3C,QAWE9a,KAAK+P,MAAMolF,kBAAmB,MAKpCq0E,eACExpK,KAAK+P,MAAMg6P,kBAAoB,IAAW/pQ,KAAKypQ,gBAAiBzpQ,KAAKonE,SAASv6D,MAGhFu3K,yBACE,OACEpkL,KAAK+P,MAAMolF,kBACXn1F,KAAK+P,MAAMg6P,oBACV/pQ,KAAKonE,SAASv6D,OACd7M,KAAKonE,SAASC,KACdrnE,KAAKonE,SAASp8D,MAAQhL,KAAKunE,cAAcg7J,MAAQviO,KAAKonE,SAAS2L,KAAKC,kBAAoBhzE,KAAKonE,SAAS2L,KAAKE,iBAIhH+2L,oBAAoBC,GAClB,OAAQA,GACN,KAAK1iM,EAAAA,cAAAA,KACH,MAAO,UACT,KAAKA,EAAAA,cAAAA,MACH,MAAO,QACT,KAAKA,EAAAA,cAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,cAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,cAAAA,OACH,MAAO,SACT,KAAKA,EAAAA,cAAAA,UACH,MAAO,aACT,KAAKA,EAAAA,cAAAA,IACH,MAAO,UACT,QACE,MAAO,IAGA,gBACX,IACEvnE,KAAK+P,MAAMoxB,SAAU,EAErB,MAAM2kC,EAAa9lE,KAAK0oD,OAAOl9C,OAAOlN,GAChC8oE,QAAiBpnE,KAAKymE,gBAAgBW,SAAStB,GACrD9lE,KAAKonE,SAAWA,EAChBpnE,KAAKgrB,SAAWhrB,KAAKgqQ,oBAAoB5iM,EAASp8D,MAElD,MAAM87D,QAAmB9mE,KAAKymE,gBAAgBK,aAC9C,IAAYA,EAAY,CAACM,GAAW,MACpCpnE,KAAKypQ,gBAAkB,IAAM3iM,EAAY,QACzC,MAAOhsD,GACP9a,KAAKyqB,cAAcxc,MAAM,UAAW6M,EAAK,uCAZ3C,QAcE9a,KAAK+P,MAAMoxB,SAAU,I,sJChH3BvrB,QAAQ5W,OAAO,iBAAiBkW,WAAW,uBAAwB,CACjE,KACA,SACA,SACA,kBACA,eACA,gBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ+d,EAAiB/kB,EAAcj3B,GAC3DrV,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB,MAAM+0K,EAAoB,CAAC3iM,EAAAA,cAAAA,UAAyBA,EAAAA,cAAAA,UAAyBA,EAAAA,cAAAA,MAE7EnyD,EAAOqvM,UAAY,SAAUpwK,GAC3B,OAAQ,IAAW61N,EAAmB71N,EAAKrpC,OAG7CoK,EAAO2nD,aAAe,SAAUjzB,GAC9B,MAAMqgO,EAAargO,EAAcrqC,OAAS,EAAI,OAAS,MACjD2qQ,EAAgBtgO,EAAcrqC,OAAS,EAAI,aAAe,WAC1Dob,EAAO,IAAGsvP,KAAcC,iFAA6FA,sEAAkFD,KAAcC,yCAAqDA,KAEhR1oN,EAAap6B,gBAAgBzM,GAAK,SAAmB8L,GAC9CA,GAOT,SAAkCmjB,GAChC,IAAIi4B,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAUs9B,GACvCX,EAAgBk1K,eAAev0K,EAAS76D,IACrCyP,MAAK,WACJyO,EAAcF,QAAQ,gCAAiC68C,EAASv6D,MAChE,IAAIszB,EAAQ/qB,EAAO0xD,WAAWjhE,QAAQuhE,GACtChyD,EAAO0xD,WAAW7D,OAAO9iC,EAAO,MAEjC28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,eAnBbmpO,CAAyBvgO,OA0B3BhW,EAAGxB,IAAI,CACLw0C,WAAYL,EAAgBK,eAE3B9qD,MAAK,SAAiBvX,GACrB2Q,EAAO0xD,WAAariE,EAAKqiE,cAE1BhK,OAAM,SAAehiD,GACpB1F,EAAO0xD,WAAa,GACpBr8C,EAAcxc,MAAM,UAAW6M,EAAK,wC,8CChE1C5b,EAAOsB,E,8HAEX,SAASrB,IAAiS,OAApRA,EAAWL,OAAOM,OAASN,OAAOM,OAAOC,OAAS,SAAUC,GAAU,IAAK,IAAIC,EAAI,EAAGA,EAAIC,UAAUC,OAAQF,IAAK,CAAE,IAAIG,EAASF,UAAUD,GAAI,IAAK,IAAII,KAAOD,EAAcZ,OAAOc,UAAUC,eAAeC,KAAKJ,EAAQC,KAAQL,EAAOK,GAAOD,EAAOC,IAAY,OAAOL,GAAkBH,EAASY,MAAMC,KAAMR,WAItU,I,WCGamH,EAAU,CACrB,CACErI,GAAI,gBACJgT,MAAM,E,QAAA,KAACuB,EAAA,EAAD,CAAWvB,KAAMg5P,EAAAA,IACvB1jQ,MAAO,WACPgM,YAAa,oCACbjP,MAAO,GAET,CACErF,GAAI,YACJgT,KAAMi5P,EAAAA,EACN3jQ,MAAO,OACPgM,YAAa,sBACbjP,MAAO,GAET,CACErF,GAAI,UACJgT,KAAMo3N,EAAAA,EACN9hO,MAAO,6BACPgM,YAAa,oBACbjP,MAAO,EACP6R,QAASyF,EAAAA,GAAAA,oBAEX,CACE3c,GAAI,aACJgT,KD5BW,SAAkBrR,GAC/B,OAAoB,gBAAoB,MAAOd,EAAS,CACtDe,MAAO,MACPC,OAAQ,MACRC,QAAS,YACTC,KAAM,OACNC,MAAO,8BACNL,GAAQf,IAAUA,EAAqB,gBAAoB,OAAQ,CACpEqB,EAAG,oKACHF,KAAM,aACHG,IAAWA,EAAsB,gBAAoB,OAAQ,CAChED,EAAG,gIACHF,KAAM,YCiBNuG,MAAO,QACPgM,YAAa,uBACbjP,MAAO,IC7BX,SAAS6mQ,EAAiC12O,EAAI1e,EAAQszC,EAAQj+B,EAAek8C,EAAiBijB,EAAmBk0H,EAAa0vC,GAkJ5H,SAASid,IACP,MAAMnc,EAAYl5O,EAAOzB,WAAW21M,UAE9BohD,EAAYpc,IAAcl5O,EAAO9Q,SAAS++N,aAAaja,UAAUE,UAAYglC,EAAY,KAEzFqc,EAAmD,IAAtCv1P,EAAOzB,WAAWmlB,KAAKy7N,WAEpCjwP,EAAWqmQ,EAAav1P,EAAOzB,WAAWmlB,KAAK81N,WAAax5O,EAAOzB,WAAWmlB,KAAKk2N,aAErF1qP,EAASmvP,gBAAkBkX,IAC7BrmQ,EAASggO,SAAW,GACpBhgO,EAASo9N,SAAW,IAGlBipC,IACFrmQ,EAASmvP,eAAgB,GAG3BnvP,EAASkqP,KAAOlqP,EAASkqP,KAAKrwP,KAAKsI,GAC7BA,EAAItB,SAAS,KACRsB,EAEFA,GAAOnC,EAAS8kN,UAAU5nB,IAAM,OAAS,UAGlD,MAAMopE,GAAkBtmQ,EAAS8kN,UAAU5nB,KAAOl9L,EAASqvP,YAAcrvP,EAAS8kN,UAAU3nB,cAY5F,OAVIn9L,EAASumO,mBAAqBz1N,EAAOzB,WAAWy6O,oBAAoB3uP,OAAS,EAC/E6E,EAAS6pP,YAAc,IAAM/4O,EAAOzB,WAAWy6O,qBAAsBxhP,GAASA,EAAK9I,OAEnFQ,EAAS6pP,YAAc,GAG4B,IAAjD/4O,EAAOzB,WAAWy6O,oBAAoB3uP,SACxC6E,EAASumO,mBAAoB,GAGxB,CAAEvmO,SAAAA,EAAUsmQ,eAAAA,EAAgBF,UAAAA,GAtLrCt1P,EAAOy1P,WAAa,EAEpBz1P,EAAOrF,MAAQ,CACbowC,kBAAkB,EAClBg1C,kBAAkB,EAClB21K,mCAAoC,CAClC,CACEnrQ,IAAK,SACLgE,MAAO,MAET,CACEhE,IAAK,UACLgE,MAAO,MAET,CACEhE,IAAK,UACLgE,MAAO,MAET,CACEhE,IAAK,WACLgE,MAAO,OAET,CAAEhE,IAAK,SAAUgE,MAAQ,QACzB,CAAEhE,IAAK,UAAWgE,MAAQ,QAC1B,CAAEhE,IAAK,WAAYgE,MAAQ,SAC3B,CAAEhE,IAAK,SAAUgE,MAAQ,WAI7ByR,EAAOzB,WAAa,CAClB+vN,mBAAoBtuN,EAAOrF,MAAM+6P,mCAAmC,GACpExhD,UAAW,GACXxwL,KAAM,CACJy7N,WAAY,EACZ3F,YAAYgF,EAAAA,EAAAA,wBACZ5E,cAAcwE,EAAAA,EAAAA,2BAEhBpF,oBAAqB,IAGvBh5O,EAAO21P,YAAcpkQ,EAErByO,EAAO41P,mBAAqB,SAA4BrnQ,GAGtD,OAFAyR,EAAOy1P,WAAalnQ,EAEN,IAAVA,GACFyR,EAAO9Q,SAAS6+N,qBAAuB,OACvC/tN,EAAOzB,WAAWmlB,KAAKy7N,WAAa,IAIxB,IAAV5wP,GACFyR,EAAO9Q,SAAS6+N,qBAAuB,OACvC/tN,EAAOzB,WAAWmlB,KAAKy7N,WAAan/O,EAAOzB,WAAWmlB,KAAKk2N,aAAa0E,kBAI1Et+O,EAAO9Q,SAAS6+N,qBAAuBx/N,IAGzCyR,EAAO61P,uBAAyB,SAAgCtnQ,GAC9DyR,EAAOE,YAAW,KAChBF,EAAO9Q,SAAS8+N,qBAAuB,CAAE9jC,uBAAwB37L,OAIrEyR,EAAO81P,6BAA+B,SAAsCvnQ,GAC1E,QAAKyR,EAAO9Q,WAIE,IAAVX,EAC8C,IAAzCyR,EAAO9Q,SAAS6+N,sBAAoE,IAAtC/tN,EAAOzB,WAAWmlB,KAAKy7N,WAGhE,IAAV5wP,EAC8C,IAAzCyR,EAAO9Q,SAAS6+N,sBAAoE,IAAtC/tN,EAAOzB,WAAWmlB,KAAKy7N,WAGvEn/O,EAAO9Q,SAAS6+N,uBAAyBx/N,IAGlDyR,EAAO+1P,eAAiB,WACtB,OAAO/1P,EAAO9Q,UAAqD,IAAzC8Q,EAAO9Q,SAAS6+N,sBAG5C/tN,EAAOg2P,sBACP,WACE,MAAM9mQ,EAAWsR,IAAAA,KAAaR,EAAO9Q,WAE7BA,SAAU0qP,EAAZ,eAA0B4b,EAA1B,UAA0CF,GAAcD,IAC9DnmQ,EAAS++N,aAAe2rB,EACxB55O,EAAOrF,MAAMowC,iBAAmByqN,EAEhCx1P,EAAOrF,MAAMs7P,6BAA8B,EAE3Cv3O,EAAGupB,MAAMutN,GAAkBhhL,EAAkB88J,mBAAmBgkB,EAAW,KAAM,OAC9E1uP,MAAK,WACJ,OAAOwxO,EAAYwH,MAAM1wP,EAAS++N,iBAEnCrnN,MAAK,WACJ5G,EAAOrF,MAAMu7P,yBAA0B,EACvCl2P,EAAOrF,MAAMw7P,6BAA8B,EAC3C9gP,EAAcF,QAAQ,UAAW,oCAElCuyC,OAAM,SAAehiD,GACpB1F,EAAOrF,MAAMu7P,yBAA0B,EACvCl2P,EAAOrF,MAAMw7P,6BAA8B,EAC3C9gP,EAAcxc,MAAM,UAAW6M,EAAK,gCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMowC,kBAAmB,EAChC/qC,EAAOrF,MAAMs7P,6BAA8B,MAIjDj2P,EAAOo2P,aAAe,WACpB,MAAMlnQ,EAAWsR,IAAAA,KAAaR,EAAO9Q,UAEhCA,EAASg/N,cAAcuH,0BACnBvmO,EAASg/N,cAAckH,0BAGhC,MAAQlmO,SAAU0qP,EAAZ,eAA0B4b,EAA1B,UAA0CF,GAAcD,IAC9DnmQ,EAAS++N,aAAe2rB,EACxB55O,EAAOrF,MAAMowC,iBAAmByqN,EAEhCx1P,EAAOrF,MAAMolF,kBAAmB,EAEhCrhE,EAAGupB,MAAMutN,GAAkBhhL,EAAkB88J,mBAAmBgkB,EAAW,KAAM,OAC9E1uP,MAAK,WACJ,OAAO2qD,EAAgB/E,OAAOt9D,MAE/B0X,MAAK,WACJyO,EAAcF,QAAQ,UAAW,sCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,+CAErConD,SAAQ,WACP9sD,EAAOrF,MAAMowC,kBAAmB,EAChC/qC,EAAOrF,MAAMolF,kBAAmB,MA4CtC//E,EAAOq2P,gBACP,WACE,MAAMzc,EAAqD,IAAtC55O,EAAOzB,WAAWmlB,KAAKy7N,WAAmBn/O,EAAOzB,WAAWmlB,KAAK81N,WAAax5O,EAAOzB,WAAWmlB,KAAKk2N,aACpH0c,EAAY1c,EAAa5lC,UAAU5nB,KAAOwtD,EAAa2E,SAE7D,OACE,IAAU3E,EAAaR,MAAM/uP,SAC5BuvP,EAAayE,eAAkBzE,EAAa1qB,UAAY0qB,EAAattB,aACpEgqC,GAAcA,GAAat2P,EAAOzB,WAAW21M,WAAc0lC,EAAa5lC,UAAU3nB,kBAClFrsL,EAAO9Q,SAAS++N,aAAawH,mBAAsBz1N,EAAO9Q,SAAS++N,aAAawH,mBAAqBz1N,EAAOzB,WAAWy6O,oBAAoB3uP,OAAS,IAI1J2V,EAAOq1N,+BACP,WACE,GAAIr1N,EAAO9Q,UAAY8Q,EAAO9Q,SAASg/N,cAAcqC,6BAA+BvwN,EAAO9Q,SAASg/N,cAAcsC,gBAAiB,CACjI,IAAKxwN,EAAO9Q,SAASg/N,cAAcsC,gBAAgB8E,eACjD,OAAO,EAIT,GAD0Bt1N,EAAO9Q,SAASg/N,cAAcsC,gBAAgByE,mBAAmB15N,MAAMg6N,KAAQA,EAAEL,eAAiBK,EAAEJ,QAE5H,OAAO,EAGX,OAAO,GAGTn1N,EAAOw1N,6BACP,WACE,QAAIx1N,EAAO9Q,UAAY8Q,EAAO9Q,SAASg/N,cAAcuH,mBAAqBz1N,EAAO9Q,SAASg/N,cAAckH,4BAEjC,IAAnEp1N,EAAO9Q,SAASg/N,cAAckH,0BAA0B/qO,SAAgB2V,EAAO9Q,SAASg/N,cAAckH,0BAA0B75N,MAAMjS,GAAY,KAANA,KAUhJo1B,EAAGxB,IAAI,CACLhuB,SAAUqiE,EAAgBriE,WAC1BmI,MAAOqxM,EAAYrxM,UAElBuP,MAAK,SAAiBvX,GACrB,IAAIH,EAAWG,EAAKH,SACpB8Q,EAAO3I,MAAQhI,EAAKgI,MACpB2I,EAAO9Q,SAAWA,EAElB8Q,EAAOkuN,cAAgBh/N,EAASg/N,cAChCluN,EAAOy1P,WAAavmQ,EAAS6+N,qBACS,IAAlC7+N,EAAS6+N,sBAAmE,IAArC7+N,EAAS++N,aAAaqwB,aAC/Dt+O,EAAOy1P,WAAa,GAGtBz1P,EAAOzB,WAAWmlB,KAAKy7N,WAAajwP,EAAS++N,aAAaqwB,WACjB,IAArCpvP,EAAS++N,aAAaqwB,WACxBt+O,EAAOzB,WAAWmlB,KAAK81N,WAAatqP,EAAS++N,aAE7CjuN,EAAOzB,WAAWmlB,KAAKk2N,aAAe1qP,EAAS++N,aAG5C/+N,EAAS++N,aAAamrB,KAAK/uP,QAC9B6E,EAAS++N,aAAamrB,KAAK5qP,KAAK,OAGnCk5D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8C,qHAjQ5ClF,IAAAA,OAAe,iBAAiBV,WAAW,mCAAoCs1P,I,6ECN/E,MAAMjqN,EAAgCvrC,EAAQ,OAK9CY,IAAAA,OAAe,iBAAiBC,UAAU,0BAA2B,CACnE2qC,YAAaD,EACbrrC,WAAUA,EAAAA,W,8HCCG,SAASy2P,EAA8B73O,EAAIosB,EAAQwI,EAAQj+B,EAAek8C,EAAiB/hB,GACxG,IAAI4X,EAAOx8D,KAEXA,KAAK4rQ,oBAAsB/lN,eAAgBvhD,GACzC,UACQqiE,EAAgB/E,OAAOt9D,GAC7BmmB,EAAcF,QAAQ,UAAW,oBACjCq6B,EAAaylM,gCAAgC/lP,EAASijH,2BACtD7+D,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,+BAIxC9a,KAAK6rQ,gBAAkBhmN,eAAgBlyC,GACrC,UACQ4N,EAAAA,EAAAA,IAAa5N,GACnB8W,EAAcF,QAAQ,UAAY,yBAAuB5W,EAAWkF,QAAU,UAAY,aAC1F6vC,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAIxC9a,KAAK8rQ,YAAcjmN,eAAgBlyC,GACjC,UACQ4M,EAAAA,EAAAA,IAAa5M,GACnB8W,EAAcF,QAAQ,UAAY,qBAAmB5W,EAAWkF,QAAU,UAAY,aACtF6vC,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAKtColC,GAAO2F,UACL,IACE2W,EAAKl4D,eAAiBqiE,EAAgBriE,WACtC,MAAOwW,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,+C,oFA1C5ClF,IAAAA,OAAe,iBAAiBV,WAAW,gCAAiCy2P,I,wHCC/DhlQ,EAAU,CACrB,CACErI,GAAI,cACJgT,MAAM,SAACuB,EAAA,EAAD,CAAWvB,KAAMy6P,EAAAA,IACvBx6P,aAAa,EACb3K,MAAO,uBACPjD,MAAO,QAET,CACErF,GAAI,YACJgT,MAAM,SAACuB,EAAA,EAAD,CAAWvB,KAAM06P,EAAAA,IACvBz6P,aAAa,EACb3K,MAAO,cACPgM,YAAa,yBACbjP,MAAO,KACP6R,QAASyF,EAAAA,GAAAA,oBChBbrF,IAAAA,OAAe,iBAAiBV,WAAW,qBAAsB,CAC/D,SACA,SACA,gBACA,kBACA,eACA,gBACA,YACA,SAAUE,EAAQszC,EAAQj+B,EAAek8C,EAAiB/hB,EAAcohN,EAAevkN,GA4JrF,SAASwqN,IACP,MAAO,CACLvqC,SAAUtsN,EAAOzB,WAAWu4P,kBAAoB92P,EAAOzB,WAAWw4P,WAAa,GAC/EzF,SAAUtxP,EAAOzB,WAAWy4P,yBAA2Bh3P,EAAOzB,WAAW04P,SAAW,GACpF7F,YAAapxP,EAAOzB,WAAW4a,YAC/Bo4O,gBAAiBvxP,EAAOzB,WAAW6a,gBACnCqzM,OAAQzsN,EAAOzB,WAAW22L,OAC1Bs8D,WAAYxxP,EAAOzB,WAAW24P,YAIlC,SAASr7O,EAAe3sB,GAKtBA,EAASioQ,kBAAe16P,EACxB80D,EAAgB/E,OAAOt9D,GACpB0X,MAAK,WACJyO,EAAcF,QAAQ,UAAW,oBACjCq6B,EAAaqlM,WAAW3lP,EAAS62M,SACjCv2J,EAAaulM,uBAAuB7lP,EAAS2D,kBAC7C28C,EAAa2lM,sBAAsBjmP,EAASC,iBAC5CmkD,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KAxLtC//E,EAAOo3P,kBAAoBvxP,EAAAA,GAAAA,kBAE3B7F,EAAOq3P,cAAgB9lQ,EAEvByO,EAAOrF,MAAQ,CACb84M,QAAQ,EACR1zH,kBAAkB,EAClBu3K,iCAAkC,CAChC,CACE/sQ,IAAK,QACLgE,MAAO,OAET,CACEhE,IAAK,SACLgE,MAAQ,QAEV,CACEhE,IAAK,UACLgE,MAAQ,QAEV,CACEhE,IAAK,SACLgE,MAAQ,SAEV,CACEhE,IAAK,YACLgE,MAAO,MAGXyiQ,kBAAkB,EAClBuG,gBAAgB,GAGlBv3P,EAAOw3P,kBAAoB,CAAE7F,GAAI,KAAMC,KAAM,QAE7C5xP,EAAOzB,WAAa,CAClBinM,YAAY,EACZxqH,UAAW,GACXC,WAAY,GACZm6J,iBAAiB,EACjBqiB,iBAAiB,EACjBhhM,SAAU,GACVugM,0BAA0B,EAC1BC,SAAU,GACV99O,YAAa,GACbC,gBAAiB,GACjB87K,OAAQ,GACRgiE,WAAY,GACZQ,eAAgB13P,EAAOw3P,kBAAkB5F,MAG3C5xP,EAAO23P,wBAA0B,SAAiCr3O,GAChEtgB,EAAOE,YAAW,KAChBF,EAAOzB,WAAW62O,gBAAkB90N,MAIxCtgB,EAAO43P,mBAAqB,SAA4Bt3O,GACtDtgB,EAAOE,YAAW,KAChBF,EAAOzB,WAAWinM,WAAallL,MAInCtgB,EAAO63P,oBAAsB,SAA6Bv3O,GACxDtgB,EAAOE,YAAW,KAChBF,EAAOzB,WAAWy4P,yBAA2B12O,MAIjDtgB,EAAO83P,sBAAwB,SAAUnjQ,EAAMgsB,GAC7C3gB,EAAOzB,WAAWm5P,eAAiB/iQ,EACnCqL,EAAOrF,MAAM48P,eAAiB52O,GAGhC3gB,EAAO+3P,6BAA+B,SAAUhtO,GAC9C,IAAI77B,EAAW8Q,EAAO9Q,SACtBA,EAAS4+N,kBAAkBjgK,OAAO9iC,EAAO,GAEzClP,EAAe3sB,IAGjB8Q,EAAOg4P,0BAA4B,WACjC,IAAI9oQ,EAAW8Q,EAAO9Q,SAClBsC,EAAQ,CACV9C,KAAMsR,EAAOzB,WAAWy8E,UACxBzsF,MAAOyR,EAAOzB,WAAW08E,YAE3B/rF,EAAS4+N,kBAAkBt/N,KAAKgD,GAEhCqqB,EAAe3sB,IAGjB8Q,EAAOi4P,eAAiB,WACtB,MAAMvsP,EAAU,GACZ1L,EAAOzB,WAAWk5P,kBACpB/rP,EAAQ+qD,SAAWz2D,EAAOzB,WAAWk4D,UAGvCz2D,EAAOrF,MAAMq2P,kBAAmB,EAEhCJ,EAAcqH,eAAevsP,GAC1B9E,MAAK,SAAiBvX,GACrB,MAAMu+C,EAAe,IAAIC,KAAK,CAACx+C,EAAKqqB,MAAO,CAAE/kB,KAAM,qBACnD03C,EAAUyB,OAAOF,EAAcv+C,EAAKX,MACpC2mB,EAAcF,QAAQ,UAAW,qCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMq2P,kBAAmB,MAItChxP,EAAOk4P,wBAA0B,WAC/B,IAAIhpQ,EAAW8Q,EAAO9Q,SAEjB8Q,EAAOzB,WAAWinM,aACrBt2M,EAAS62M,QAAU,IAGrB72M,EAASC,gBAAkB6Q,EAAOzB,WAAW62O,gBAE7Cp1O,EAAOrF,MAAMolF,kBAAmB,EAChClkE,EAAe3sB,IAGjB8Q,EAAOm4P,qBAAuB,WAC5B,MAAMzsP,EAAUmrP,IAChBjG,EAAc7uB,eAAer2N,GAC1B9E,MAAK,WACJyO,EAAcF,QAAQ,UAAW,4CAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,wCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMq2P,kBAAmB,MAItChxP,EAAOo4P,aAAe,WACpB,MAAM1sP,EAAUmrP,IAChBjG,EAAcwH,aAAa1sP,GACxB9E,MAAK,WACJyO,EAAcF,QAAQ,UAAW,yCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAErConD,SAAQ,WACP9sD,EAAOrF,MAAMq2P,kBAAmB,MAqCtC,WACE,MAAMr2P,EAAQ60C,EAAakB,WAC3B1wC,EAAOrF,MAAM84M,OAAS94M,EAAMqsI,YAAY0sE,gBAAgBjwM,QAExDmtP,EAAc9uB,gBACXl7N,MAAK,SAAiBvX,GACrB2Q,EAAOzB,WAAWw4P,WAAa1nQ,EAAKi9N,SACpCtsN,EAAOzB,WAAW04P,SAAW5nQ,EAAKiiQ,SAClCtxP,EAAOzB,WAAW4a,YAAc9pB,EAAK+hQ,YACrCpxP,EAAOzB,WAAW6a,gBAAkB/pB,EAAKkiQ,gBACzCvxP,EAAOzB,WAAW22L,OAAS7lM,EAAKo9N,OAChCzsN,EAAOzB,WAAW24P,WAAa7nQ,EAAKmiQ,WAEpCxxP,EAAOzB,WAAWy4P,2BAA2Bh3P,EAAOzB,WAAW04P,SAC/Dj3P,EAAOzB,WAAWu4P,oBAAoB92P,EAAOzB,WAAWw4P,cAEzDrvM,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4CAGxC6rD,EAAgBriE,WACb0X,MAAK,SAAiBvX,GACrB,IAAIH,EAAWG,EACf2Q,EAAO9Q,SAAWA,EAEO,KAArBA,EAAS62M,UACX/lM,EAAOzB,WAAWinM,YAAa,GAEjCxlM,EAAOzB,WAAW62O,gBAAkBlmP,EAASC,mBAE9Cu4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8CAI1Cs5E,O,sJCpOJx+E,IAAAA,OACU,iBACPV,WACC,wBAHJ,6QAII,SACEE,EACAszC,EACAxI,EACA+G,EACAvF,EACA+kD,EACA17B,EACAtgD,EACAilE,EACArB,EACAgiI,EACAwsB,EACA3rJ,EACAwnD,EACA/sD,EACA50E,EACAsoF,EACAh6D,GAgIA,SAAS+4M,EAAiBt6O,EAAM8c,GAC9B,IAAI5H,EAAMq3M,EAAWW,qBAAqB57M,EAAOzB,WAAWguE,KAC5D,MAAMpjE,GAAcmqC,EAAOl9C,OAAO+S,WAC5BijF,EAAUpsF,EAAOzB,WAAWiiF,cAAgBxgF,EAAOzB,WAAW+pK,qBAAqBniJ,MAAM,KAAK+iC,UAAU,GAAK,GACnH,GAAe,aAAX19C,GAAoC,WAAXA,EAAqB,CAChD,IAAIyoJ,EAAmBj0J,EAAOzB,WAAWk6G,iBACzC,OAAOpnB,EAAa63I,gCAAgCx6O,EAAMulK,EAAkBrwJ,EAAKuF,EAAYijF,GAG/F,GAAe,WAAX5gF,EAAqB,CACvB,IAAIkwG,EAAY17G,EAAOzB,WAAWy/G,UAClC,OAAO3sB,EAAa03I,+BAA+Br6O,EAAMgtH,EAAW93G,EAAKuF,EAAYijF,GAGvF,GAAe,eAAX5gF,EAAyB,CAC3B,IAAIuvG,EAAoB,CACtBktD,gBAAiBjoK,EAAOzB,WAAW0pK,gBACnCjtD,cAAeh7G,EAAOzB,WAAWy8G,cACjCC,wBAAyBj7G,EAAOzB,WAAW08G,wBAC3CgD,4BAA6Bj+G,EAAOzB,WAAW0/G,4BAC/C9C,yBAA0Bn7G,EAAOzB,WAAW48G,yBAC5CC,mBAAoBp7G,EAAOzB,WAAW68G,mBACtCC,mBAAoBr7G,EAAOzB,WAAW88G,mBACtC+/F,eAAgBp7M,EAAOzB,WAAW68M,gBAKpC,OAFAi9C,EAAuBt9I,GAEhB1pB,EAAag4I,kCAAkC36O,EAAMqsH,EAAmBn3G,EAAKuF,IAIxF,SAASkvP,EAAuBt9I,GAC1B/6G,EAAOzB,WAAW2pK,6BACpBntD,EAAkBwvD,WAAa,CAC7BC,YAAaxqK,EAAOzB,WAAW4pK,gCAC/BizC,eAAgBp7M,EAAOzB,WAAW68M,gBAEhCp7M,EAAOzB,WAAW6pK,sBAAwB9rB,EAAAA,yBAAAA,SAC5CvhC,EAAkBwvD,WAAWE,SAAWzqK,EAAOzB,WAAW8pK,wBACjDroK,EAAOzB,WAAW6pK,sBAAwB9rB,EAAAA,yBAAAA,UACnDvhC,EAAkBwvD,WAAW9qE,QAAUz/F,EAAOzB,WAAW+pK,qBAAqBniJ,MAAM,KAAK+iC,UAAU,KAKzG,SAAS4/K,EAAmBp6O,EAAM8c,GAChC,IAAI5H,EAAMq3M,EAAWW,qBAAqB57M,EAAOzB,WAAWguE,KAC5D,MAAMpjE,GAAcmqC,EAAOl9C,OAAO+S,WAC5BijF,EAAUpsF,EAAOzB,WAAWiiF,cAAgBxgF,EAAOzB,WAAW+pK,qBAAqBniJ,MAAM,KAAK+iC,UAAU,GAAK,GAEnH,GAAe,WAAX19C,GAAkC,aAAXA,EAAuB,CAChD,IAAIyoJ,EAAmBj0J,EAAOzB,WAAWk6G,iBACzC,OAAOpnB,EAAa43I,kCAAkCv6O,EAAMulK,EAAkBrwJ,EAAKuF,EAAYijF,GAC1F,GAAe,WAAX5gF,EAAqB,CAC9B,IAAIkwG,EAAY17G,EAAOzB,WAAWy/G,UAClC,OAAO3sB,EAAaw3I,iCAAiCn6O,EAAMgtH,EAAW93G,EAAKuF,EAAYijF,GAClF,GAAe,eAAX5gF,EAAyB,CAClC,IAAIuvG,EAAoB,CACtBktD,gBAAiBjoK,EAAOzB,WAAW0pK,gBACnCjtD,cAAeh7G,EAAOzB,WAAWy8G,cACjCC,wBAAyBj7G,EAAOzB,WAAW08G,wBAC3CgD,4BAA6Bj+G,EAAOzB,WAAW0/G,4BAC/C9C,yBAA0Bn7G,EAAOzB,WAAW48G,yBAC5CC,mBAAoBp7G,EAAOzB,WAAW68G,mBACtCC,mBAAoBr7G,EAAOzB,WAAW88G,mBACtC+/F,eAAgBp7M,EAAOzB,WAAW68M,gBAKpC,OAFAi9C,EAAuBt9I,GAEhB1pB,EAAa83I,oCAAoCz6O,EAAMqsH,EAAmBn3G,EAAKuF,IA4D1F,SAAS4uG,EAAoBxpH,GAC3ByR,EAAOzB,WAAWk6G,iBAAmBlqH,EACrCyR,EAAOrF,MAAM29P,0BAA4B7wB,EAAY3gB,aAAa9mN,EAAOzB,WAAWk6G,iBAAkBz4G,EAAO+mN,gBAC7G/mN,EAAOrF,MAAMggF,eAAgB,EAG/BlqC,eAAemhF,EAAgBrzF,GAC7Bv+B,EAAOrF,MAAM49P,0BAA4B9wB,EAAY3gB,aAAavoL,EAAMr0C,OAAO+oB,OAAQjT,EAAO+mN,gBAGhG,SAASp1F,EAAWpzF,GAClB,OAAOuM,EAAO8mF,EAAiBrzF,GAsCjC,SAASuqI,EAA0Bv6K,GACjC8wH,EAAmB,CAAEqkB,UAAWn1I,IAE3ByR,EAAOujI,4BAIZlkB,EAAmB,CAAE5G,kBADJzuE,EAAAA,EAAAA,IAAehqC,EAAOrF,MAAMquK,gBAAiBhpK,EAAOzB,WAAWmlI,UAAW1jI,EAAOrF,MAAMgkH,iBAAiB+kB,aA4B3H,SAASrkB,EAAmBptH,GAC1B+N,EAAOzB,WAAa,IACfyB,EAAOzB,cACPtM,GAvVP+N,EAAO0oK,mBA0RP,SAA4B9gD,EAAYloH,GACtC,OAAOorC,GAAO2F,UACZ,GAAK/wC,IAAaM,EAAOrF,MAAM69P,qBAAuB5wI,GAAc5nH,EAAOrF,MAAMgkH,mBAAqBj/G,GAItG,IACEM,EAAOrF,MAAM69P,mBAAqB5wI,EAClC5nH,EAAOrF,MAAMgkH,iBAAmBj/G,EAEhC,MAAMinD,QAAoB28E,EAAsB0B,mBAAmBpd,GACnE5nH,EAAOrF,MAAMquK,gBAAkBriH,EAC/BoxD,EAAoBpxD,GAEhBjnD,EAASgkI,WAAahkI,EAASgkI,UAAUr5I,OAAS,GAEpDy+K,EADkBp/K,OAAOwG,YAAYwP,EAASgkI,UAAU36I,KAAK40B,GAAa,CAACA,EAASjvB,KAAM,QAG5F,MAAOgX,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,gDA5S1C1F,EAAO8oK,0BAA4BA,EACnC9oK,EAAOujI,2BAA6Bz9H,EAAAA,GACpC9F,EAAOw+G,yBAsEP,WACE,MAAMhvH,EAAW,CAAEmF,KAgBnB,SAAqB6W,GACnB,OAAQA,GACN,IAAK,SACH,MAAO,aACT,IAAK,aACH,MAAO,MACT,IAAK,SACH,MAAO,cACT,IAAK,WACH,MAAO,mBAzBYizG,CAAYz+G,EAAOrF,MAAMujH,SAclD,MAZ4B,eAAxBl+G,EAAOrF,MAAMujH,SACf1uH,EAAS+rN,iBAAmB,MACxBv7M,EAAOzB,WAAW2pK,6BACpB14K,EAAS+rN,iBAwBb,SAAuB5mN,GACrB,OAAQA,GACN,KAAK2nJ,EAAAA,yBAAAA,SACH,MAAO,UACT,KAAKA,EAAAA,yBAAAA,QACH,MAAO,UAEX,MAAO,MA/BuBk/D,CAAcx7M,EAAOzB,WAAW6pK,sBAE9D54K,EAAS4kF,KAAOp0E,EAAOzB,WAAW48G,0BAGR,aAAxBn7G,EAAOrF,MAAMujH,SACf1uH,EAASkvH,aAAe1+G,EAAOrF,MAAMgkH,iBAAiBvvF,OAGjD,CAAE5/B,SAAAA,IAnFXwQ,EAAOm4C,4BAA8BA,EAAAA,4BACrCn4C,EAAOnL,QAAU8gE,EAAe9gE,UAEhCmL,EAAOzB,WAAa,CAClB9G,KAAM,GACNghH,iBAAkB,GAClBuF,UAAW,KACXhD,cAAe,GACfC,wBAAyB,GACzBE,0BAA0B,EAC1BC,mBAAoB,GACpBC,mBAAoB,GACpB9uC,IAAK,GACL07F,gBAAiB,GACjBhqD,4BAA6B,qBAC7B1jC,kBAAmB,IAAIC,EAAAA,sBACvB0tF,4BAA4B,EAC5BC,iCAAiC,EACjCC,oBAAqB9rB,EAAAA,yBAAAA,SACrB+rB,wBAAyB,KACzBC,qBAAsBr+E,EAAcs+E,sBAAsBr2B,GAAAA,IAC1DkpE,gBAAgB,EAChB56H,eAAe,EACfkjD,UAAW,IAGb1jI,EAAOrF,MAAQ,CACbujH,OAAQ,SACRxjC,oBAAqB,GACrBqF,kBAAkB,EAClBo+B,UAAW,KACXm6I,0BAA2B,GAC3BC,0BAA2B,GAC3B59K,eAAe,EACfgkC,iBAAkB,KAClB65I,mBAAoB,MAGtB3mN,EAAQipC,eAAiB,KACvB,GAA4B,WAAxB96E,EAAOrF,MAAMujH,QAAuBl+G,EAAOzB,WAAWk6G,kBAAoBz4G,EAAOrF,MAAMggF,cACzF,MAAO,IAIX36E,EAAO49E,IAAI,YAAY,WACrB59E,EAAOrF,MAAMggF,eAAgB,KAG/B36E,EAAOq/G,mBAAqBA,EAE5Br/G,EAAO0lF,sBAAwB,SAAUyV,GACvCn7F,EAAOE,YAAW,KAChBF,EAAOzB,WAAWiiF,cAAgB2a,MAItCn7F,EAAOy4P,mBAAqB,WAC1Bz4P,EAAOzB,WAAW0pK,gBAAgBz5K,KAAK,KAGzCwR,EAAO04P,sBAAwB,SAAU3tO,GACvC/qB,EAAOzB,WAAW0pK,gBAAgBp6G,OAAO9iC,EAAO,IAGlD/qB,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAmI5DhK,EAAOirF,YAAc,WACnBh7D,EAAUL,SAAS5vB,EAAOzB,WAAW+pK,sBACrCn0H,EAAE,qBAAqB+gB,OACvB/gB,EAAE,qBAAqBghB,QAAQ,MAEjCn1D,EAAO2lF,mBACP,SAA4Bp3F,GAC1ByR,EAAOzB,WAAWguE,IAAMh+E,GAG1ByR,EAAOqgH,YAAc,WACnB,IAAI3xH,EAAOsR,EAAOzB,WAAW9G,KACzB+T,EAASxL,EAAOrF,MAAMujH,OAEtBr/G,EAAoBmB,EAAOzB,WAAWg8E,kBACtCmB,EAAc/lB,EAAegmB,iBAC7B9mF,EAAU8gE,EAAe9gE,UAE7B,GAAe,WAAX2W,GAA8D,KAAvCxL,EAAOzB,WAAWk6G,kBAK7C,GA9GF,SAAsB55G,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,GAuGJ2iF,CAAa38E,EAAmBhK,GAArC,CAIA,IACIvF,EAAS05O,EACA,IAFFhpO,EAAOrF,MAAMwjH,YAGtB7uH,EAASw5O,GAEX9oO,EAAOrF,MAAMolF,kBAAmB,EAChCzwF,EAAOZ,EAAM8c,GACV5E,MAAK,SAAiBvX,GACjBA,EAAKA,OACPA,EAAOA,EAAKA,MAEd,MAAMitB,EAASo/D,EAAYtmD,GACrB3/B,EAAkBpG,EAAK61C,gBAC7B,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCnV,EAAOrF,MAAMggF,eAAgB,EAC7BrnC,EAAOr8B,GAAG,oBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,mBAAoB6M,EAAK,6BAE9ConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,WAhClC//E,EAAOrF,MAAM+/E,oBAAsB,wCAoCvC16E,EAAO+3G,oBAAsBA,EAe7B/3G,EAAOkrC,WAAa,SAAUxxB,GAG5B,GAFA1Z,EAAOzB,WAAWy/G,UAAYtkG,EAE1BA,EAAM,CACR,MAAMs5G,EAAsB,IAAIn5G,WAChCm5G,EAAoBrlF,SAAWj0B,EAAKhrB,KACpCskI,EAAoBj5G,OAAS43G,EAC7BqB,EAAoBsiF,WAAW57L,KAsDnC9uB,KAAKktG,UAAYrnD,iBACf,GAA4B,WAAxBzwC,EAAOrF,MAAMujH,QAAuBl+G,EAAOzB,WAAWk6G,kBAAoBz4G,EAAOrF,MAAMggF,cACzF,OAAOruC,EAAal7B,2BAlBxBq/B,iBACE,IAAIwhD,EAAejyF,EAAOy1D,iBAAiB9zD,SAASkkB,KACpD7lB,EAAOrF,MAAMwjH,UAAY,EACK,sBAA1BlsB,EAAar8E,UAA0D,YAAtBq8E,EAAalkG,OAChEiS,EAAOrF,MAAMwjH,UAAY,GAG3Bn+G,EAAO24P,wBAA0Bh3P,EAASi3P,wBAC1C,IACE,MAAM1yN,QAAmBqwC,EAAiBrwC,YAAW,GACrDlmC,EAAO+mN,eAAiBjrI,EAAgB+8K,kBAAkB3yN,GAC1D,MAAOxgC,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAUxCs5E,O,8CCnXMm/B,EAmBA26I,E,+DAnBA36I,GAAAA,EAAAA,EAAAA,YAAAA,GAAAA,cAAAA,EAAAA,EAAAA,cAAAA,GAAAA,gBAAAA,EAAAA,EAAAA,WAAAA,GAAAA,aAAAA,EAAAA,EAAAA,MAAAA,GAAAA,Q,CAAAA,IAAAA,EAAAA,K,SAmBA26I,GAAAA,EAAAA,EAAAA,OAAAA,GAAAA,SAAAA,EAAAA,EAAAA,SAAAA,GAAAA,W,CAAAA,IAAAA,EAAAA,K,eCbZt4P,QAAQ5W,OAAO,iBAAiBkW,WAAW,kBAAmB,CAC5D,SACA,KACA,SACA,SACA,UACA,eACA,YACA,eACA,cACA,iBACA,cACA,mBACA,gBACA,aACA,gBACA,aACA,mBACA,eACA,eACA,cACA,WACA,iBACA,kBACA,yBACA,gBACA,SACEgrC,EACApsB,EACA1e,EACAszC,EACAzB,EACAwoC,EACApqD,EACAohE,EACA3hC,EACA3D,EACAitB,EACAzC,EACAvqB,EACAs3C,EACAjuF,EACA4lM,EACA1rK,EACAmtD,EACApwD,EACAm7L,EACA9lO,EACAg0D,EACAmmB,EACA7C,EACAgR,GA8PAx5C,eAAesoN,IAMb,SALwBzsN,EAAajyC,aAAa,CAChDvB,MAAO,gBACPjB,QAAS,4CACTyC,QAAS,CAAEC,QAAS,CAAE/I,MAAO,OAAQ3F,UAAW,iBAElD,CAIAmU,EAAOrF,MAAMolF,kBAAmB,EAChC,IACE,MAAM52E,GAAcmqC,EAAOl9C,OAAO+S,iBAC5BkoF,EAAa9E,KAAKvsF,EAAOmzC,MAAMh8C,GAAIgS,GACzCmqC,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,wBAEtC1F,EAAOrF,MAAMolF,kBAAmB,GAOlCtvC,eAAeuoN,IACbh5P,EAAOrF,MAAMolF,kBAAmB,EAChC,MAAM72F,EAAK8W,EAAOmzC,MAAMh8C,GACxB,UACQk6F,EAAatwF,MAAM7X,GACzBoqD,EAAOxnB,SACP,MAAOpmB,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,yBAEtC1F,EAAOrF,MAAMolF,kBAAmB,EA6DlC,SAASk5K,EAA4BjhQ,EAAWuzD,GAC9C,IAAI2tM,EAAc,CAChB1nQ,MAAO,CAAC,8BAAgCwG,IAG1C,OAAO0mB,EAAGxB,IAAI,CACZ0oC,SAAUmG,EAAenG,SAASszM,GAClCrhM,MAAOmhB,EAAYnhB,MAAMqhM,GACzBhzN,WAAYqlB,EAAagrB,EAAiBrwC,WAAW,GAAK,GAC1Dj3B,MAAOygD,EAAYzgD,UAIvB,SAASkqP,EAA0Bx1I,EAAWp4D,GAC5C,IAAI3F,EAAW+9D,EAAU/9D,SACrBiS,EAAQ8rD,EAAU9rD,MAEtB,GAAItM,EAEF,IADA,IAAIrlB,EAAay9E,EAAUz9E,WAClBu+B,EAAI,EAAGA,EAAI5M,EAAMxtE,OAAQo6E,IAAK,CACrC,IAAIre,EAAOyR,EAAM4M,GACjB6+B,EAAWmC,yBAAyBr/C,EAAMlgB,GAI9C,IAAK,IAAI/7C,EAAI,EAAGA,EAAIy7D,EAASv7D,OAAQF,IAAK,CACxC,IAAIoe,EAAUq9C,EAASz7D,GACvB6hE,EAAc05C,wBAAwBn9F,EAASsvD,GAGjD73D,EAAOiP,MAAQ00G,EAAU10G,MACzBjP,EAAO63D,MAAQA,EACf73D,EAAO4lD,SAAWA,EA3XpB5lD,EAAOo5P,YAAcj7I,EAErBn+G,EAAOrK,aAAeK,EAAAA,EAAAA,MAEtBgK,EAAO47E,+BAAiC,WACtCtoC,EAAOxnB,UAGT9rB,EAAO2B,SAAWA,EAClB3B,EAAOnL,QAAU8gE,EAAe9gE,UAChCmL,EAAOrF,MAAQ,CACbolF,kBAAkB,EAClBy+H,qBAAqB,EACrB/hG,eAAe,EACfiiG,WAAW,EACX/jI,eAAe,GAGjB36E,EAAOzB,WAAa,CAClB28M,OAAO,EACPlqI,SAAU,KACVzE,IAAK,GACLgO,kBAAmB,IAAIC,EAAAA,sBACvB8P,WAAYL,EAAcs+E,sBAAsBr2B,GAAAA,IAChD1xD,eAAe,GAGjBxgF,EAAO2lF,mBACP,SAA4Bp3F,GAC1ByR,EAAOzB,WAAWguE,IAAMh+E,GAG1ByR,EAAO0lF,sBAAwB,SAAUyV,GACvCn7F,EAAOE,YAAW,KAChBF,EAAOzB,WAAWiiF,cAAgB2a,MAItCn7F,EAAOq5P,cAAgB,SAAUl+J,GAC/Bn7F,EAAOE,YAAW,KAChBF,EAAOzB,WAAW28M,MAAQ//G,MAI9BtpD,EAAQipC,eAAiB,KACvB,GAAI96E,EAAOi0J,kBAAoBj0J,EAAOrF,MAAMggF,cAC1C,MAAO,IAIX36E,EAAO49E,IAAI,YAAY,WACrB59E,EAAOrF,MAAMggF,eAAgB,KAG/B36E,EAAO2+M,eAAiB,SAAwBjwN,EAAMo5O,GACpD,IAAI30L,EAAQnzC,EAAOmzC,MACfvvC,EAAMq3M,EAAWW,qBAAqB57M,EAAOzB,WAAWguE,KAI5D,OAFAh9B,EAAiBoV,cAAcmjL,GAExBz2I,EAAastH,eAAejwN,EAAMsR,EAAOi0J,iBAAkBrwJ,EAAKkkO,EAAkB30L,EAAMv9C,MAAMgR,MAErG,WACEyO,EAAcF,QAAQ,UAAW,iCACjCnV,EAAOrF,MAAMggF,eAAgB,EAC7BrnC,EAAOr8B,GAAG,gBAAiB,GAAI,CAAE6U,QAAQ,IAEzCyjB,EAAiBoV,cAAcxR,EAAMmqE,eAPyF51D,OAUhI,SAAuBhiD,GACrB2P,EAAcxc,MAAM,UAAW6M,EAAK,iCAIxC1F,EAAOg9G,WAAa,WAClBh9G,EAAOrF,MAAM8hH,eAAgB,GAG/Bz8G,EAAO6+M,aAAe,SAAUnwN,EAAMya,GACpC,OAAOuV,GAAG,SAAU/0B,GAClB2iD,EAAax6B,YAAY,CACvBhZ,MAAO,gBACPjB,QACE,oMACFyC,QAAS,CACPC,QAAS,CACP/I,MAAO,UACP3F,UAAW,eAGfylB,SAAU,SAAmBC,GAC3B,OAAKA,EAGE5nB,EAuBf,SAAsB+E,EAAMo5O,GAC1B,MAAM30L,EAAQnzC,EAAOmzC,MAErB,IAAImmN,EAAiBjoK,EAAaw2I,kBAclC,OAbmB,IAAf10L,EAAMv9C,OACR0jQ,EAAiBjoK,EAAa22I,qBAOP,IAArB70L,EAAMmqE,aACRnqE,EAAMmqE,WAAa37G,EAASxK,IAG9B6I,EAAOrF,MAAM6jN,qBAAsB,EAC5B86C,EAAenmN,EAAO20L,EAAkBp5O,GAC5CkY,MAAK,WACJyO,EAAcF,QAAQ,8BAA+Bg+B,EAAM17C,MAC3D67C,EAAOr8B,GAAG,gBAAiB,GAAI,CAAE6U,QAAQ,OAE1C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8BAErConD,SAAQ,WACP9sD,EAAOrF,MAAM6jN,qBAAsB,KAjDlBK,CAAanwN,EAAMya,IAFzBxf,WAQjBqW,EAAOu5P,YAAc,WACnBjtN,EAAap6B,gBAAgB,iFAAiF,SAAmBX,GA8CnI,IACMpI,EACAgqC,EA/CG5hC,IA8CHpI,GAAcmqC,EAAOl9C,OAAO+S,WAC5BgqC,EAAQnzC,EAAOmzC,MAEnBk+C,EAAahjF,OAAO8kC,EAAOknC,EAAajkF,SAAS2sO,SAAU55N,GACxDvC,MAAK,WACJyO,EAAcF,QAAQ,6BAA8Bg+B,EAAM17C,MAC1D67C,EAAOr8B,GAAG,oBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,0BAA4BytC,EAAM17C,cAjD5EuI,EAAOw5P,mBAAqB,WAC1BltN,EAAah6B,kBAAkB,6CAA6C,SAAmBf,GACxFA,GAGLvR,EAAOqgH,kBAgDXrgH,EAAOy5P,eAAiB,WACtB,IAAItwP,GAAcmqC,EAAOl9C,OAAO+S,WAC5BgqC,EAAQnzC,EAAOmzC,MACft0C,EAAoBmB,EAAOzB,WAAWg8E,kBAC1Cv6E,EAAOrF,MAAMolF,kBAAmB,EAEhCsR,EAAauxI,UAAUzvL,EAAOhqC,EAAYnJ,EAAO8iO,iBAC9Cl8N,MAAK,SAAiBvX,GACrB,MAAMoG,EAAkBpG,EAAK61C,gBAEvB5oB,EADcq5C,EAAegmB,iBACRvmD,GAC3B,OAAO6jD,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,gCAAiCg+B,EAAM17C,MAC7D67C,EAAOr8B,GAAG,oBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAA+BytC,EAAM17C,SAE1Eq1D,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAItC//E,EAAOkK,kBAAoB,SAAUF,GACnC,OAAOhK,EAAOnL,SAAW8gE,EAAezrD,kBAAkBF,IAG5DhK,EAAO4qF,sBAAwB,SAAUC,GACvC,OAAIA,GACM7qF,EAAOkK,kBAAkB,CAAC,4BAE5BlK,EAAOkK,kBAAkB,CAAC,4BAGpClK,EAAOqgH,YAAc,WACnB,MAAMltE,EAAQnzC,EAAOmzC,MACfsoK,EAA8B,IAAftoK,EAAMv9C,KAC3B02C,EAAat4B,mBAAmB,+CAAgDynM,EAAc,MAAM,SAAUxoM,GAC5G,IAAKA,EACH,OAGF,IAAIyoG,EAAY17G,EAAOi0J,iBACnBrwJ,EAAMq3M,EAAWW,qBAAqB57M,EAAOzB,WAAWguE,KACxDyG,EAAQhzE,EAAOzB,WAAW28M,MAE9B,MAAM9uH,EAAUpsF,EAAOzB,WAAWiiF,cAAgBxgF,EAAOzB,WAAW+rF,WAAWnkE,MAAM,KAAK+iC,UAAU,GAAK,KAKhF,IAArB/V,EAAMmqE,aACRnqE,EAAMmqE,WAAa37G,EAASxK,IAG9B6I,EAAOrF,MAAMolF,kBAAmB,EAChCsR,EAAauvB,YAAYztE,EAAOuoE,EAAW93G,EAAKovE,EAAOoZ,IAAWn5E,EAAO,IACtErM,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCnV,EAAOrF,MAAMggF,eAAgB,EAC7BrnC,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,6BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,SAKxC//E,EAAOirF,YAAc,WACnBh7D,EAAUL,SAAS5vB,EAAOzB,WAAW+rF,YACrCn2C,EAAE,qBAAqB+gB,OACvB/gB,EAAE,qBAAqBghB,QAAQ,MAEjCn1D,EAAO46E,aAAe,SAAUgd,GAC1B53F,EAAOi0J,iBAAiBhuI,QAAQ,iBAAkB,MAAQ2xE,EAAGC,WAAW5xE,QAAQ,iBAAkB,MACpGjmB,EAAOrF,MAAMggF,eAAgB,EAC7B36E,EAAOi0J,iBAAmBr8D,EAAGC,WAC7B73F,EAAOrF,MAAM+jN,UAAY+oB,EAAY3gB,aAAa9mN,EAAOi0J,iBAAkBj0J,EAAO+mN,kBAItF/mN,EAAO05P,UACP,WACE,OAAO5uN,EAAOiuN,IAuBhB/4P,EAAO25P,WACP,WACE,OAAO7uN,EAAOkuN,IA6IhBpuQ,KAAKktG,UAAYrnD,iBACf,GAAIzwC,EAAOi0J,kBAAoBj0J,EAAOrF,MAAMggF,cAC1C,OAAOruC,EAAal7B,2BAQxBq/B,iBAEEzwC,EAAO6vM,oBANTp/J,iBACE,OAAO9uC,EAASulF,iBAAiBgL,qCAAuCv8B,EAAe9gE,UAK1D+kQ,GACxB55P,EAAO6vM,eACVv8J,EAAOr8B,GAAG,oBAGZ,IAAIjf,EAAYqiF,EAAajkF,SAAS1H,KACtCsR,EAAOhI,UAAYA,EAEnB,MAAM6hQ,EAA2C,QAAjCx/K,EAAajkF,SAASyjQ,QACtC75P,EAAO65P,QAAUA,EAEjB,IAAI92B,EAA6C,QAAlC1oJ,EAAajkF,SAAS2sO,SACrC/iO,EAAO+iO,SAAWA,EAElB,MAAM+2B,EAA6C,QAAlCz/K,EAAajkF,SAAS0jQ,SACvC95P,EAAO85P,SAAWA,EAElB,MAAMh3B,EAA2D,QAAzCzoJ,EAAajkF,SAAS0sO,gBA5JhD,IAAmB55O,EA6JjB8W,EAAO8iO,gBAAkBA,EAEzB9iO,EAAO2sM,UAAY/8M,SAASyqF,EAAajkF,SAASzB,KAAM,KAEpDouO,GAAa+2B,GAAYh3B,IA1D/B,SAA2Bp0O,GACzB,MAAMi+M,EAAY3sM,EAAO2sM,WACpBA,GAAcA,IAAcxuF,EAAU47I,aAAeptD,IAAcxuF,EAAUp+F,cAChF1K,EAAcxc,MAAM,UAAW,KAAM,+BAInC8zM,IAAcxuF,EAAU47I,aAK9B,SAAgCrrQ,GAC9B,IAAI68D,EAAavrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,WAEvD0tM,EAA4BvqQ,EAAM68D,GAC/B3kD,MAAK,SAAiBvX,GACrB8pQ,EAA0B9pQ,EAAMk8D,MAEjC7D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,uCAZtCs0P,CAAuBtrQ,GAmDvBurQ,CAAkBjiQ,IAGhB6hQ,GAAWC,KArKE5wQ,EAsKCmxF,EAAajkF,SAASlN,GArKjC4hD,GAAO2F,UACZ,IAAI8a,EAAavrD,EAAOy1D,iBAAiB9zD,SAASkkB,KAAK0lC,YAEvD1qD,EAAAA,EAAAA,MACG+F,MAAK,SAAiBvX,GACrB2Q,EAAO8zG,UAAYzkH,EAAKd,SAEzBm5D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,sCAGxCgZ,EAAGxB,IAAI,CACLi2B,MAAOk+C,EAAal+C,MAAMjqD,GAC1ByX,OAAQ+7F,EAAa/7F,SACrBulC,WAAYqwC,EAAiBrwC,YAAW,KAEvCt/B,MAAK,SAAiBvX,GACrB,IAAI8jD,EAAQ9jD,EAAK8jD,MACjBnzC,EAAOW,OAAStR,EAAKsR,OACrBX,EAAOmzC,MAAQA,EACfnzC,EAAO+mN,eAAiBjrI,EAAgB+8K,kBAAkBxpQ,EAAK62C,YAE/DlmC,EAAOzB,WAAWguE,IAAMvsE,EAAOmzC,MAAMo5B,IACrCvsE,EAAOzB,WAAWiiF,gBAAkBxgF,EAAOmzC,MAAMssD,QAC7Cz/F,EAAOzB,WAAWiiF,gBACpBxgF,EAAOzB,WAAW+rF,WAAaL,EAAcs+E,sBAAsBvoK,EAAOmzC,MAAMssD,UAGlF,IAAIy6J,EAAmBrzP,QAAQld,QAAQ,IAgE/C,IACMuvQ,EA5DE,OAJK/lN,EAAMtvC,QAA2B,IAAjBsvC,EAAMtvC,SACzBq2P,EAAkC,IAAf/mN,EAAMv9C,KAAaqjQ,EAA4B9lN,EAAM17C,KAAM8zD,IA+DlF2tM,EAAc,CAChB1nQ,MAAO,CAAC,8BAhEwH2hD,EAAM17C,OAmEjIinB,EAAGxB,IAAI,CACZgpB,WAAYqwC,EAAiBrwC,WAAW,EAAGgzN,OAjEhCx6O,EAAGxB,IAAI,CACZw+F,UAAWrqB,EAAawrE,aAAa3zK,GACrCy6H,UAAWu2I,OAGdtzP,MAAK,SAAiBvX,GACrB,MAAM8qQ,EAAUn6P,EAAOmzC,MAAMv9C,OAASuoH,EAAU47I,YAChD/5P,EAAOi0J,iBAAmB5kK,EAAKqsH,UAE1B17G,EAAOmzC,MAAMtvC,SAChB7D,EAAOmzC,MAAMtvC,OAASxU,EAAKs0H,YAAew2I,GAAW9qQ,EAAKs0H,UAAU/9D,SAASv7D,QAAWgF,EAAKs0H,UAAUz9E,WAAW77C,QAAU,EAAI,GAG9H8vQ,GAAWn6P,EAAOmzC,MAAMtvC,SAAWi1P,EAAYsB,QACjDjB,EAA0B9pQ,EAAKs0H,UAAWp4D,GAE5CvrD,EAAOrF,MAAM+jN,UAAY+oB,EAAY3gB,aAAa9mN,EAAOi0J,iBAAkBj0J,EAAO+mN,mBAEnFr/J,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,2CAqH1C1F,EAAO24P,wBAA0Bh3P,EAASi3P,wBAE1C54P,EAAOq6P,gBAAkB1kM,EAAezrD,kBAAkB,CAAC,yBAG7D80E,O,yDCtgBJ,SAASs7K,EAAiBt6P,EAAQszC,EAAQj+B,EAAeg8E,EAAc/kD,EAAcqpB,EAAgBh0D,GAqCnG,SAASu+G,IACP,MAAMjuB,EAAejyF,EAAOy1D,iBAAiB9zD,SAASkkB,KAChD1c,EAAaxH,EAASxK,GAEtB8wO,EAAwBtyK,EAAe9gE,WAAa8gE,EAAezrD,kBAAkB,CAAC,4BAC5FmnF,EAAatrC,QAAO,EAAgC,sBAA1BksC,EAAar8E,UAA0D,YAAtBq8E,EAAalkG,KAAoBob,EAAY8+N,GACrHrhO,MAAK,SAAiBm/C,GACrB/lD,EAAO+lD,OAASA,EAChB/lD,EAAOq5C,aAAc7W,EAAAA,EAAAA,mBAAkB7gC,MAExC+lD,OAAM,SAAehiD,GACpB1F,EAAO+lD,OAAS,GAChB1wC,EAAcxc,MAAM,UAAW6M,EAAK,gCAhD1C1F,EAAO2nD,aAAe,SAAUjzB,GAC9B4X,EAAap6B,gBAAgB,6FAA6F,SAAmBX,GACtIA,GAOT,SAA8Bw0C,GAC5B,MAAM58C,EAAaxH,EAASxK,GAC5B,IAAIw1D,EAAc5G,EAAO17D,OACzBmW,QAAQiC,QAAQsjD,GAAQ,SAAU5S,GAChCk+C,EAAahjF,OAAO8kC,EAAOA,EAAM68J,SAAU7mM,GACxCvC,MAAK,WACJyO,EAAcF,QAAQ,6BAA8Bg+B,EAAM17C,MAC1D,IAAIszB,EAAQ/qB,EAAO+lD,OAAOt1D,QAAQ0iD,GAClCnzC,EAAO+lD,OAAO8H,OAAO9iC,EAAO,MAE7B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,0BAA4BytC,EAAM17C,SAEvEq1D,SAAQ,aACLH,EACkB,IAAhBA,GACFrZ,EAAOxnB,eApBbyuO,CAAqB7lO,OA0BzB10B,EAAOq5C,aAAc,EACrBr5C,EAAO6vM,eAAgB,EAEvB7vM,EAAOkgH,UAAYA,EAsBnBzvE,iBACEzwC,EAAO6vM,oBALTp/J,iBACE,OAAO9uC,EAASulF,iBAAiBgL,qCAAuCv8B,EAAe9gE,WAAa8gE,EAAezrD,kBAAkB,CAAC,4BAIzG0vP,GACxB55P,EAAO6vM,eACVv8J,EAAOr8B,GAAG,oBAEZipG,IAGFlhC,G,wGApEFx+E,QAAQ5W,OAAO,iBAAiBkW,WAAW,mBAAoBw6P,I,sFCG/D,SAASE,EAAex6P,EAAQszC,EAAQxI,EAAQwmD,EAAYj8E,GA0B1Do7B,eAAewpC,EAAkBmY,GAC/B,IAAK,IAAI7tE,KAAO6tE,EACd,UACQd,EAAWm4I,UAAUllN,EAAIptB,IAE/Bke,EAAcF,QAAQ,2BAA4BoP,EAAI9sB,MACtD,IAASuI,EAAOoyF,KAAM7tE,GACtB,MAAO7e,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,wBAIxC4tC,EAAOxnB,SArCT9rB,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB//E,EAAOzB,WAAa,CAClB9G,KAAM,IAGRuI,EAAOy6P,kBAAoB,SAAU7mM,GAEnC,IADA,IAAI+xG,GAAQ,EACHx7K,EAAI,EAAGA,EAAI6V,EAAOoyF,KAAK/nG,OAAQF,IACtC,GAAI6V,EAAOzB,WAAW9G,OAASuI,EAAOoyF,KAAKjoG,GAAGsN,KAAM,CAClDkuK,GAAQ,EACR,MAGJ/xG,EAAKllE,KAAKyR,aAAa,YAAawlK,IAGtC3lK,EAAO2nD,aAEP,SAAsByqC,GACpB,OAAOtnD,EAAOmvC,EAAmBmY,IAkBnCpyF,EAAO6+K,UAAY,WACjB,IAAIg5C,EAAU73N,EAAOzB,WAAW9G,KAChC65F,EAAWutF,UAAUg5C,GAClBjxN,MAAK,WACJyO,EAAcF,QAAQ,2BAA4B0iN,GAClDvkL,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAKxC4rF,EAAWc,OACRxrF,MAAK,SAAiBvX,GACrB2Q,EAAOoyF,KAAO/iG,KAEfq4D,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,2BACpC1F,EAAOoyF,KAAO,M,oEA9DtB5xF,IAAAA,OAAe,iBAAiBV,WAAW,iBAAkB06P,I,iBCH7Dh6P,QAAQ5W,OAAO,iBAAiBkW,WAAW,iBAAkB,CAC3D,KACA,SACA,SACA,eACA,cACA,cACA,wBACA,eACA,gBACA,oBACA,iBACA,kBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ+mC,EAAcquH,EAAa1qB,EAAag4C,EAAuB1pL,EAAcj3B,EAAe49F,EAAmBt9C,EAAgBpE,GAiJ3J,SAASmpM,EAAoBxxQ,EAAI2N,GAC/B,IAAK,IAAI1M,EAAI,EAAGo+F,EAAI1xF,EAAMxM,OAAQF,EAAIo+F,EAAGp+F,IACvC,GAAI0M,EAAM1M,GAAGgN,KAAOjO,EAElB,YADA2N,EAAMg3D,OAAO1jE,EAAG,GAnJtB6V,EAAOrF,MAAQ,CACbggQ,uBAAwB1nJ,EAAkB47F,mBAAmB,wBAC7D+rD,yBAA0B3nJ,EAAkB47F,mBAAmB,iBAGjE7uM,EAAO66P,cAAgB,WACvB76P,EAAO86P,kBAAmB,EAC1B96P,EAAOnJ,MAAQ,GACfmJ,EAAO+6P,YAAc,GACrB/6P,EAAOg7P,YAAc,EAErBh7P,EAAOi7P,WAAa,SAAUn5N,GAC5B9hC,EAAO86P,iBAAmB96P,EAAO66P,gBAAkB/4N,IAAY9hC,EAAO86P,iBACtE96P,EAAO66P,cAAgB/4N,GAGzB9hC,EAAOk7P,2BAA6B,WAClCjoJ,EAAkBS,mBAAmB,uBAAwB1zG,EAAOrF,MAAMggQ,yBAG5E36P,EAAOm7P,qBAAuB,WAC9Bn7P,EAAOo7P,yBAA0B,EAEjCp7P,EAAOq7P,kBAAoB,SAAUv5N,GACnC9hC,EAAOo7P,wBAA0Bp7P,EAAOm7P,uBAAyBr5N,IAAY9hC,EAAOo7P,wBACpFp7P,EAAOm7P,qBAAuBr5N,GAGhC9hC,EAAOs7P,kCAAoC,WACzCroJ,EAAkBS,mBAAmB,eAAgB1zG,EAAOrF,MAAMigQ,2BAGpE56P,EAAOu7P,WAAa,WAClBjvN,EAAap6B,gBAAgB,4EAA4E,SAAmBX,GACrHA,GAoGPm3L,EAAY6yD,WAAWv7P,EAAOxI,KAAKL,IAChCyP,MAAK,WACJyO,EAAcF,QAAQ,4BAA6BnV,EAAOxI,KAAKC,MAC/D67C,EAAOr8B,GAAG,sBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCAnG1C1F,EAAOw7P,gBAAkB,SAAUvkQ,GACjC++N,EAAsBylC,iBAAiBxkQ,EAAKykQ,aAAczkQ,EAAKE,GAAI6I,EAAOxI,KAAKL,GAAI,GAChFyP,MAAK,WACJ5G,EAAOg7P,cACP/jQ,EAAKwlB,SAAW,SAChBpH,EAAcF,QAAQ,0BAA2Ble,EAAKG,aAEvDswD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAI1C1F,EAAO27P,eAAiB,SAAU1kQ,GAChC++N,EAAsBylC,iBAAiBxkQ,EAAKykQ,aAAczkQ,EAAKE,GAAI6I,EAAOxI,KAAKL,GAAI,GAChFyP,MAAK,WACJ3P,EAAKwlB,SAAW,SAChBzc,EAAOg7P,cACP3lP,EAAcF,QAAQ,0BAA2Ble,EAAKG,aAEvDswD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,kCAI1C1F,EAAO47P,YAAc,WACnB,IAAIjxB,EAAwB,GAC5BnqO,QAAQiC,QAAQzC,EAAOnJ,OAAO,SAAUI,GACtC0zO,EAAsBn8O,KAAKwnO,EAAsB4U,iBAAiB3zO,EAAKE,GAAI6I,EAAOxI,KAAKL,GAAI,OAE7FunB,EAAGxB,IAAIytN,GACJ/jO,MAAK,SAAiBvX,GAErB,IADA,IAAIwH,EAAQmJ,EAAOnJ,MACV1M,EAAI,EAAGA,EAAI0M,EAAMxM,OAAQF,IAAK,CACrC,IAAI8M,EAAOJ,EAAM1M,GACjB8M,EAAKykQ,aAAersQ,EAAKlF,GAAGgN,GAC5BF,EAAKwlB,SAAW,SAElBzc,EAAO+6P,YAAc/6P,EAAO+6P,YAAYzxN,OAAOzyC,GAC/CmJ,EAAOnJ,MAAQ,GACfwe,EAAcF,QAAQ,UAAW,mCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,qCAI1C1F,EAAO67P,QAAU,SAAU5kQ,GACzB++N,EAAsB4U,iBAAiB3zO,EAAKE,GAAI6I,EAAOxI,KAAKL,GAAI,GAC7DyP,MAAK,SAAiBvX,GACrBqrQ,EAAoBzjQ,EAAKE,GAAI6I,EAAOnJ,OACpCI,EAAKwlB,SAAW,SAChBxlB,EAAKykQ,aAAersQ,EAAK8H,GACzB6I,EAAO+6P,YAAYvsQ,KAAKyI,GACxBoe,EAAcF,QAAQ,qBAAsBle,EAAKG,aAElDswD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,qCAI1C1F,EAAO87P,eAAiB,WACtB,IAAInxB,EAAwB,GAC5BnqO,QAAQiC,QAAQzC,EAAO+6P,aAAa,SAAU9jQ,GAC5C0zO,EAAsBn8O,KAAKwnO,EAAsB+lC,iBAAiB9kQ,EAAKykQ,kBAEzEh9O,EAAGxB,IAAIytN,GACJ/jO,MAAK,WACJ5G,EAAOnJ,MAAQmJ,EAAOnJ,MAAMyyC,OAAOtpC,EAAO+6P,aAC1C/6P,EAAO+6P,YAAc,GACrB/6P,EAAOg7P,YAAc,EACrB3lP,EAAcF,QAAQ,UAAW,qCAElCuyC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,qCAI1C1F,EAAOg8P,WAAa,SAAU/kQ,GAC5B++N,EAAsB+lC,iBAAiB9kQ,EAAKykQ,cACzC90P,MAAK,WACJ8zP,EAAoBzjQ,EAAKE,GAAI6I,EAAO+6P,aACd,WAAlB9jQ,EAAKwlB,UACPzc,EAAOg7P,cAETh7P,EAAOnJ,MAAMrI,KAAKyI,GAClBoe,EAAcF,QAAQ,yBAA0Ble,EAAKG,aAEtDswD,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,qCAiD1C+qC,iBACEzwC,EAAOnL,QAAU8gE,EAAe9gE,UAEhC,IACEmL,EAAO9Q,eAAiBqiE,EAAgB6B,iBAExC,MAAM/jE,QAAaqvB,EAAGxB,IAAI,CACxB1lB,KAAMkxM,EAAYlxM,KAAK6iF,EAAajkF,SAASlN,IAC7C2N,MAAOmnL,EAAYnnL,MAAMmJ,EAAOnL,SAAWmL,EAAO9Q,SAAS20M,UAC3D1oM,YAAautM,EAAY/sM,gBAAgB0+E,EAAajkF,SAASlN,MAGjE8W,EAAOxI,KAAOnI,EAAKmI,KArCvB,SAA+BX,EAAOsE,GACpC,IAAK,IAAIhR,EAAI,EAAGA,EAAI0M,EAAMxM,OAAQF,IAAK,CAGrC,IAFA,IAAI8M,EAAOJ,EAAM1M,GACbu1P,GAAS,EACJj7K,EAAI,EAAGA,EAAItpE,EAAY9Q,OAAQo6E,IAAK,CAC3C,IAAI7oE,EAAaT,EAAYspE,GAC7B,GAAIxtE,EAAKE,KAAOyE,EAAW7E,OAAQ,CACjC2oP,GAAS,EACe,IAApB9jP,EAAWC,MACb5E,EAAKwlB,SAAW,SAChBzc,EAAOg7P,eAEP/jQ,EAAKwlB,SAAW,SAElBxlB,EAAKykQ,aAAe9/P,EAAWzE,GAC/B6I,EAAO+6P,YAAYvsQ,KAAKyI,GACxB,OAGCyoP,GACH1/O,EAAOnJ,MAAMrI,KAAKyI,IAkBpBglQ,CAAsB5sQ,EAAKwH,MAAOxH,EAAK8L,aACvC,MAAOuK,GACP2P,EAAcxc,MAAM,UAAW6M,EAAK,oCAIxCs5E,O,kECjNJx+E,QAAQ5W,OAAO,iBAAiBkW,WAAW,kBAAmB,CAC5D,KACA,SACA,SACA,cACA,cACA,eACA,gBACA,iBACA,SAAU4e,EAAI1e,EAAQszC,EAAQo1J,EAAa1qB,EAAa1xI,EAAcj3B,EAAesgD,GAoEnF,IACM+lB,EACA7mF,EArENmL,EAAOrF,MAAQ,CACbolF,kBAAkB,GAGpB//E,EAAOzB,WAAa,CAClB9G,KAAM,GACNykQ,QAAS,IAGXl8P,EAAOy6P,kBAAoB,SAAU7mM,GAEnC,IADA,IAAI+xG,GAAQ,EACHx7K,EAAI,EAAGA,EAAI6V,EAAO3I,MAAMhN,OAAQF,IACvC,GAAI6V,EAAOzB,WAAW9G,OAASuI,EAAO3I,MAAMlN,GAAGsN,KAAM,CACnDkuK,GAAQ,EACR,MAGJ/xG,EAAKuoM,UAAUh8P,aAAa,YAAawlK,IAG3C3lK,EAAOo8P,QAAU,SAAU79P,GACzB,MAAM89P,EAAW99P,EAAW7P,KAE5BsR,EAAOrF,MAAMolF,kBAAmB,EAChC2oH,EAAY4zD,WAAWD,EAAU99P,EAAW+/K,SACzC13K,MAAK,WACJyO,EAAcF,QAAQ,4BAA6BknP,GACnD/oN,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAItC//E,EAAO2nD,aAAe,SAAUjzB,GAC9B4X,EAAap6B,gBAAgB,yFAAyF,SAAmBX,GAClIA,GAOT,SAA6BmjB,GAC3B,IAAIi4B,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAUl9B,GACvCkxM,EAAY6yD,WAAW/jQ,EAAKL,IACzByP,MAAK,WACJyO,EAAcF,QAAQ,4BAA6B3d,EAAKC,MACxD,IAAIszB,EAAQ/qB,EAAO3I,MAAM5G,QAAQ+G,GACjCwI,EAAO3I,MAAMw2D,OAAO9iC,EAAO,MAE5B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,eAnBbywO,CAAoB7nO,OA0BlBgnD,EAAc/lB,EAAegmB,iBAC7B9mF,EAAU8gE,EAAe9gE,UAC7BmL,EAAOnL,QAAUA,EACjB6pB,EAAGxB,IAAI,CACLrmB,MAAOmnL,EAAYnnL,OAAM,GACzBQ,MAAOxC,EAAU6zM,EAAYrxM,QAAU2mL,EAAYk5C,iBAAiBx7I,EAAYtmD,MAE/ExuB,MAAK,SAAiBvX,GACrB,IAAIgI,EAAQhI,EAAKgI,MACjB2I,EAAO3I,MAAQA,EACf2I,EAAOnJ,MAAQ,IAAUxH,EAAKwH,MAAO,WAAY,OACjDmJ,EAAOvE,eAAiBpE,EAAMhN,UAE/Bq9D,OAAM,SAAehiD,GACpB1F,EAAO3I,MAAQ,GACf2I,EAAOnJ,MAAQ,GACfwe,EAAcxc,MAAM,UAAW6M,EAAK,mC,yIC7F9ClF,QAAQ5W,OAAO,iBAAiBkW,WAAW,sBAAuB,CAChE,SACA,KACA,SACA,gBACA,mBACA,eACA,iBACA,kBACA,iBACA,gBACA,gBACA,yBACA,iBACA,gBACA,eACA,WACA,SACEE,EACA0e,EACA40B,EACA+vD,EACA9sB,EACAjlB,EACAoE,EACA0pJ,EACA0qB,EACA14I,EACA/7E,EACA4jE,EACAtjB,EACA2kB,EACA+W,EACA1vF,GAEA,MACM0oP,EAAoB,oBAE1BrqP,EAAOrF,MAAQ,CACbgkH,iBAAkB,KAClB2rI,qBAAqB,EACrB5vK,oBAAqB,GACrBqF,kBAAkB,GAGpB//E,EAAOzB,WAAa,CAClBs/C,QAAS,GACTnvD,KAAM,GACN6rF,kBAAmB,IAAIC,EAAAA,uBAGzBx6E,EAAOimF,UAAY,WACjBjmF,EAAOrF,MAAMgkH,iBAAiB7iD,QAAQttE,KAAK,CAAEktE,cAAe,GAAIzxE,KAAM,GAAIkI,UAAU,EAAOwC,KAAM,UAGnGqL,EAAOkmF,aAAe,SAAUn7D,GAC9B/qB,EAAOrF,MAAMgkH,iBAAiB7iD,QAAQjO,OAAO9iC,EAAO,IAGtD/qB,EAAOmmF,eAAiB,WACtBnmF,EAAOrF,MAAMgkH,iBAAiBj5E,MAAMl3C,KAAK,CAAE0tE,SAAU,GAAID,cAAe,GAAIQ,SAAU,SAGxFz8D,EAAOomF,kBAAoB,SAAUr7D,GACnC/qB,EAAOrF,MAAMgkH,iBAAiBj5E,MAAMmoB,OAAO9iC,EAAO,IAGpD/qB,EAAOqmF,aAAe,WACpBrmF,EAAOrF,MAAMgkH,iBAAiB/tC,MAAMpiF,KAAK,KAG3CwR,EAAOsmF,gBAAkB,SAAUv7D,GACjC/qB,EAAOrF,MAAMgkH,iBAAiB/tC,MAAM/iB,OAAO9iC,EAAO,IAGpD/qB,EAAO4/B,SAAW,WAChB5/B,EAAOrF,MAAMgkH,iBAAiBn5E,OAAOh3C,KAAK,CAAEE,KAAM,GAAIH,MAAO,MAG/DyR,EAAOsvD,YAAc,SAAUvkC,GAC7B/qB,EAAOrF,MAAMgkH,iBAAiBn5E,OAAOqoB,OAAO9iC,EAAO,IAwHrD/qB,EAAO46M,eAAiB,WACtB,IACIt+L,EADcq5C,EAAegmB,iBACRvmD,GACrBv2B,EAAoBmB,EAAOzB,WAAWg8E,kBAE1C,GA1HF,SAAsB17E,EAAmBhK,GAEvC,IAAIgE,EAGJ,OAJAmH,EAAOrF,MAAM+/E,oBAAsB,KAEnC7hF,EAAQyhF,EAAcmB,sBAAsB58E,EAAmBhK,MAG7DmL,EAAOrF,MAAM+/E,oBAAsB7hF,GAC5B,GAmHJ2iF,CAAa38E,EAAmBmB,EAAOnL,SAA5C,CAIA,IAAI6K,EAAWM,EAAOrF,MAAMgkH,iBAE5B3+G,EAAOrF,MAAMolF,kBAAmB,EACV,IAAlBrgF,EAAS9J,KAnDf,SAAiC8J,EAAU4c,EAAQzd,GACjD,IAAI7G,EAAYgI,EAAOzB,WAAW7P,KAC9BkV,EAAM,IACR,IAAMlE,EAAS6sE,KAAK,SAAyBw5I,GAC3C,MAAO,CACLr3N,KAAMq3N,EAAOr3N,KACbH,MAAOw3N,EAAOuM,SAAWvM,EAAOx3N,MAAQw3N,EAAO59K,QAAU49K,EAAOx3N,WAGpE,SAA6Bw3N,GAC3B,OAAOA,EAAOx3N,OAASw3N,EAAOr3N,QAI9BqsH,EAAoB,CACtBC,cAAet7G,EAAS2rE,WAAWh6E,IACnC4sH,4BAA6Bv+G,EAAS2rE,WAAW+0I,UACjD+Q,iBAAiB,GAGnB,MAAMhoN,GAAcmqC,EAAOl9C,OAAO+S,WAElCkoF,EAAag4I,kCAAkCrxO,EAAW+iH,EAAmBn3G,EAAKuF,GAC/EvC,MAAK,SAAiBvX,GACrB,MAAMoG,EAAkBpG,EAAK61C,gBAC7B,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOr8B,GAAG,oBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,mBAAoB6M,MAEzConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KAiBlCy8K,CAAwB98P,EAAU4c,EAAQzd,GACf,IAAlBa,EAAS9J,KAvFtB,SAAwC8J,EAAU4c,EAAQzd,GAGxD,IAFA,IAAI7G,EAAYgI,EAAOzB,WAAW7P,KAEzBvE,EAAI,EAAGA,EAAIuV,EAAS6sE,IAAIliF,OAAQF,IAAK,CAC5C,IAAI47N,EAASrmN,EAAS6sE,IAAIpiF,GACtB47N,EAAOuM,SACTvM,EAAOx3N,MAAQw3N,EAAO59K,SAI1B,IAAI4yE,EAAoB,CACtBC,cAAet7G,EAAS2rE,WAAWh6E,IACnC4sH,4BAA6Bv+G,EAAS2rE,WAAW+0I,UACjD+Q,iBAAiB,GAGnB,MAAMhoN,GAAcmqC,EAAOl9C,OAAO+S,WAClCkoF,EAAa83I,oCAAoCnxO,EAAW+iH,EAAmBr7G,EAAS6sE,IAAKpjE,GAC1FvC,MAAK,SAAiBvX,GACrB,MAAMoG,EAAkBpG,EAAK61C,gBAC7B,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,MAE/EmR,MAAK,WACJyO,EAAcF,QAAQ,UAAW,+BACjCm+B,EAAOr8B,GAAG,oBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,mBAAoB6M,MAEzConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KA0DlC08K,CAA+B/8P,EAAU4c,EAAQzd,GAxHrD,SAAqCa,EAAU4c,EAAQzd,GACrD,IAAI69P,EA6KN,SAAqCh9P,GACnC,IAAIm+C,EAAU79C,EAAOzB,WAAWs/C,QAC5BnvD,EAAOsR,EAAOzB,WAAW7P,KAC7B,OAAO0wN,EAAgBu9C,4BAA4Bj9P,EAAUhR,EAAMmvD,GAhLvC8+M,CAA4Bj9P,GACpDk9P,EAAuB9yB,EAAe+yB,sCAAsCn9P,EAASo8D,SACrFghM,EAAqB,GACzB1rK,EAAc2rK,iCAAiCH,GAC5Ch2P,MAAK,SAAiBvX,GAMrB,OALAmR,QAAQiC,QAAQpT,GAAM,SAAUm3D,GAC9B,IAAI/X,EAAW+X,EAAOrvD,GACtB2lQ,EAAmBtuQ,KAAKigD,MAE1B2wK,EAAgB49C,wCAAwCN,EAAuBh9P,EAAUrQ,GAClFiiE,EAAatE,UAAUttD,EAASugF,eAAe,MAEvDr5E,MAAK,WACJ,OAAO2vE,EAAiBiO,wBAAwBk4K,MAEjD91P,MAAK,SAAiBvX,GACrB,MAAMoG,EAAkBpG,EAAK41C,UAAUC,gBACvC,OAAO+zC,EAAuBr6E,qBAAqB0d,EAAQzd,EAAmBpJ,EAAiBqnQ,MAEhGl2P,MAAK,WACJyO,EAAcF,QAAQ,UAAW,kCACjCm+B,EAAOr8B,GAAG,oBAAqB,GAAI,CAAE6U,QAAQ,OAE9C47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAKA,EAAID,QAEzCqnD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,KA8FlCk9K,CAA4Bv9P,EAAU4c,EAAQzd,KAIlDmB,EAAO66M,iBAAmB,SAAUn7M,GAClCA,EAASo/H,UAAW,EACpB9+H,EAAOrF,MAAMgkH,iBAAmB,MAGlC3+G,EAAO2kI,eAAiB,SAAUjlI,IAC3Bi2D,EAAe9gE,WAAc8gE,EAAezrD,kBAAkB,CAAC,wBAAyB,4BAIzFlK,EAAOrF,MAAMgkH,kBACf3+G,EAAO66M,iBAAiB76M,EAAOrF,MAAMgkH,kBAGvCj/G,EAASo/H,UAAW,EAChBp/H,EAAS03E,QACXp3E,EAAOzB,WAAWs/C,QAAU,IAAO79C,EAAO6nD,mBAAmB,SAAUx+D,GACrE,OAAOA,EAAEoO,OAASiI,EAAS03E,WAG7Bp3E,EAAOzB,WAAWs/C,QAAU,IAAO79C,EAAO6nD,mBAAmB,SAAUx+D,GACrE,MAAkB,WAAXA,EAAEoO,QAIbuI,EAAOzB,WAAW7P,KAAOgR,EAASjI,KAAOiI,EAASjI,KAAO,GACzDuI,EAAOrF,MAAMgkH,iBAAmBj/G,EAChCM,EAAOrF,MAAM6vP,WAIf,SAAsB7oP,EAAUwpP,GAC9B,IAAIX,GAAa,EACjB,OAAQW,GACN,KAAK,EAML,KAAK,EACHX,EAAa7oP,EAASkkB,KAAKjQ,WAAay0O,GAnOpB,sBAmOyC1oP,EAASkkB,KAAKjQ,SAC3E,MALF,KAAK,EACH40O,EAAa7oP,EAASkkB,KAAKjQ,WAAay0O,EAO5C,OAAOG,EAlBmBU,CAAalrP,EAAOy1D,iBAAiB9zD,SAAUjC,EAAS9J,MAClFytG,EAAc,cA0BhB,WACErjG,EAAOnL,QAAU8gE,EAAe9gE,UAEhC,IAAIo9F,EAAejyF,EAAOy1D,iBAAiB9zD,SAASkkB,KAChDmwC,EAAah2D,EAAOy1D,iBAAiB9zD,SAASq0D,WAClD,MAAM7sD,GAAcmqC,EAAOl9C,OAAO+S,WAElCuV,EAAGxB,IAAI,CACLopC,UAAW84J,EAAgB94J,UAAUn9C,GACrCo9C,QAAS6qC,EAAcia,aACvB9lD,SAAUmQ,EAAenQ,SACG,sBAA1B0sC,EAAar8E,UAA8D,sBAA1Bq8E,EAAar8E,UAC9D,EAC0B,sBAA1Bq8E,EAAar8E,UAAoCogD,GAAc,QAGhEpvD,MAAK,SAAiBvX,GACrB,IAAIi3D,EAAYj3D,EAAKi3D,UACrBtmD,EAAOsmD,UAAYA,EACnBtmD,EAAOsnF,iBAAmB,IAAUj4F,EAAKk3D,QAAQuV,QAAS,CAAEtV,GAAWA,EAAO/uD,KAAKnH,eAAgB,CAAC,QACpG,IAAIi1D,EAAWl2D,EAAKk2D,SACpBvlD,EAAO6nD,kBAAoBtC,EAC3BvlD,EAAOwpF,gBAAkB7nF,EAASulF,iBAAiBuC,kCAEpD/hC,OAAM,SAAehiD,GACpB1F,EAAOsmD,UAAY,GACnBjxC,EAAcxc,MAAM,UAAW6M,EAAK,oDAI1Cs5E,O,iBCpTJx+E,QAAQ5W,OAAO,iBAAiBkW,WAAW,iBAAkB,CAC3D,KACA,SACA,SACA,eACA,cACA,eACA,gBACA,kBACA,iBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ+mC,EAAc2jG,EAAa1xI,EAAcj3B,EAAek8C,EAAiBoE,GACrG31D,EAAOrF,MAAQ,CACbuiQ,oBAAqB,IAGvBl9P,EAAOzB,WAAa,CAClBw0C,SAAU,GACV+3L,YAAa,GACbwc,gBAAiB,GACjB6V,eAAe,GAGjBn9P,EAAOo9P,0BAA4B,SAAU98O,GAC3C,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAW4+P,cAAgB78O,MAItCtgB,EAAOq9P,WAAa,WAClB/wN,EAAap6B,gBAAgB,gGAAgG,SAAmBX,GACzIA,GA8DPysK,EAAYq/E,WAAWr9P,EAAO/I,KAAKE,IAChCyP,MAAK,WACJyO,EAAcF,QAAQ,4BAA6BnV,EAAO/I,KAAKG,UAC/Dk8C,EAAOr8B,GAAG,sBAEXywC,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,gCA7D1C1F,EAAOs9P,WAAa7sN,iBAClB,MAAM1iD,EAAOiS,EAAOzB,WAAW4+P,cAAgB,EAAI,EAC7CI,EAAcv9P,EAAO/I,KAAKG,SAC1B27C,EAAW/yC,EAAOzB,WAAWw0C,SACnC,IAAIrsC,EAAUG,QAAQld,SAAQ,GAC1BopD,GAAYwqN,IACd72P,EAAU,IAAIG,SAASld,GACrB2iD,EAAax6B,YAAY,CACvBhZ,MAAO,gBACPjB,QAAU,4CAA2C0lQ,QAAkBxqN,KACvEz4C,QAAS,CACPC,QAAS,CACP/I,MAAO,SACP3F,UAAW,gBAGfylB,SAAU3nB,aAIQ+c,GAIxBs3K,EAAYs/E,WAAWt9P,EAAO/I,KAAKE,GAAI,CAAEpJ,KAAAA,EAAMglD,SAAAA,IAC5CnsC,MAAK,WACJyO,EAAcF,QAAQ,UAAW,6BACjCm+B,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,yCAI1C1F,EAAOmjO,eAAiB1yL,iBACtB,MAAM+sN,EAAgB7nM,EAAegmB,iBAAiBvmD,KAAOp1B,EAAO/I,KAAKE,KACtDqmQ,SAAwBlxN,EAAaz5B,0BAIxDmrK,EAAYs/E,WAAWt9P,EAAO/I,KAAKE,GAAI,CAAEs/D,SAAUz2D,EAAOzB,WAAWusO,cAClElkO,MAAK,WACJyO,EAAcF,QAAQ,UAAW,iCAC7BqoP,EACFlqN,EAAOr8B,GAAG,oBAEVq8B,EAAOxnB,YAGV47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,sCAe1C1F,EAAOy9P,gBACP,WACE,MAAM,KAAExmQ,EAAF,WAAQsH,GAAeyB,EAC7B,OAAO/I,IAASA,EAAKG,WAAamH,EAAWw0C,UAAax0C,EAAW4+P,eAA+B,IAAdlmQ,EAAK4E,OAAiB0C,EAAW4+P,eAA+B,IAAdlmQ,EAAK4E,OAG/ImE,EAAO09P,iBACP,WACE,MAAM,KAAEzmQ,GAAS+I,EACjB,OAAO/I,GAAoB,IAAZA,EAAKE,IAIpB6I,EAAOnL,QAAU8gE,EAAe9gE,UAEhC6pB,EAAGxB,IAAI,CACLjmB,KAAM+mL,EAAY/mL,KAAKojF,EAAajkF,SAASlN,IAC7CgG,SAAUqiE,EAAgB6B,mBAEzBxsD,MAAK,SAAiBvX,GACrB,IAAI4H,EAAO5H,EAAK4H,KAChB+I,EAAO/I,KAAOA,EACd+I,EAAOzB,WAAW4+P,cAA8B,IAAdlmQ,EAAK4E,KACvCmE,EAAOzB,WAAWw0C,SAAW97C,EAAKG,SAClC4I,EAAO+tN,qBAAuB1+N,EAAKH,SAAS6+N,qBAC5C/tN,EAAOs0O,uBAAyBjlP,EAAKH,SAASg7L,0BAE/CxiI,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,8C,kEChI9ClF,QAAQ5W,OAAO,iBAAiBkW,WAAW,kBAAmB,CAC5D,KACA,SACA,SACA,cACA,cACA,wBACA,eACA,gBACA,iBACA,kBACA,SAAU4e,EAAI1e,EAAQszC,EAAQ0qI,EAAa0qB,EAAastB,EAAuB1pL,EAAcj3B,EAAesgD,EAAgBpE,GAqG1H,IACMmqB,EACA7mF,EAtGNmL,EAAOrF,MAAQ,CACbgjQ,kBAAmB,GACnBC,eAAe,EACf79K,kBAAkB,GAGpB//E,EAAOzB,WAAa,CAClBnH,SAAU,GACVk1N,SAAU,GACVulC,gBAAiB,GACjBsL,eAAe,EACfxvC,MAAO,IAGT3tN,EAAOo9P,0BAA4B,SAAU98O,GAC3C,OAAOtgB,EAAOE,YAAW,KACvBF,EAAOzB,WAAW4+P,cAAgB78O,MAItCtgB,EAAO69P,sBAAwB,WAE7B,IADA,IAAIl4F,GAAQ,EACHx7K,EAAI,EAAGA,EAAI6V,EAAOnJ,MAAMxM,OAAQF,IACvC,GAAI6V,EAAOzB,WAAWnH,SAAS0mQ,sBAAwB99P,EAAOnJ,MAAM1M,GAAGiN,SAAS0mQ,oBAAqB,CACnGn4F,GAAQ,EACR,MAGJ3lK,EAAOrF,MAAMijQ,cAAgBj4F,EAC7B3lK,EAAOrF,MAAMgjQ,kBAAoBh4F,EAAQ,GAAK,0BAGhD3lK,EAAO67P,QAAU,WACf77P,EAAOrF,MAAMolF,kBAAmB,EAChC//E,EAAOrF,MAAMgjQ,kBAAoB,GACjC,IAAI5qN,EAAW/yC,EAAOzB,WAAWnH,SAC7Bq/D,EAAWz2D,EAAOzB,WAAW+tN,SAC7Bv+N,EAAOiS,EAAOzB,WAAW4+P,cAAgB,EAAI,EAC7CzyB,EAAU,GACdlqO,QAAQiC,QAAQzC,EAAOzB,WAAWovN,OAAO,SAAUn2N,GACjDkzO,EAAQl8O,KAAKgJ,EAAKL,OAEpB6mL,EAAY+/E,WAAWhrN,EAAU0jB,EAAU1oE,EAAM28O,GAC9C9jO,MAAK,WACJyO,EAAcF,QAAQ,4BAA6B49B,GACnDO,EAAOxnB,YAER47B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAErConD,SAAQ,WACP9sD,EAAOrF,MAAMolF,kBAAmB,MAyBtC//E,EAAO2nD,aAAe,SAAUjzB,GAC9B4X,EAAap6B,gBAAgB,oGAAoG,SAAmBX,GAC7IA,GAvBT,SAA6BmjB,GAC3B,IAAIi4B,EAAcj4B,EAAcrqC,OAChCmW,QAAQiC,QAAQiyB,GAAe,SAAUz9B,GACvC+mL,EAAYq/E,WAAWpmQ,EAAKE,IACzByP,MAAK,WACJyO,EAAcF,QAAQ,4BAA6Ble,EAAKG,UACxD,IAAI2zB,EAAQ/qB,EAAOnJ,MAAMpG,QAAQwG,GACjC+I,EAAOnJ,MAAMg3D,OAAO9iC,EAAO,MAE5B28B,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,4BAErConD,SAAQ,WAEa,KADlBH,GAEArZ,EAAOxnB,eAWbkyO,CAAoBtpO,OAoBlBgnD,EAAc/lB,EAAegmB,iBAC7B9mF,EAAU8gE,EAAe9gE,UAC7BmL,EAAOnL,QAAUA,EACjB6pB,EAAGxB,IAAI,CACLrmB,MAAOmnL,EAAYnnL,OAAM,GACzBQ,MAAOxC,EAAU6zM,EAAYrxM,QAAU2mL,EAAYk5C,iBAAiBx7I,EAAYtmD,IAChFj6B,YAAa66N,EAAsB76N,cACnCjM,SAAUqiE,EAAgB6B,mBAEzBxsD,MAAK,SAAiBvX,GACrB,IAAIwH,EAAQxH,EAAKwH,OA1BvB,SAA2BA,EAAOsE,GAChC,IAAK,IAAIhR,EAAI,EAAGA,EAAI0M,EAAMxM,OAAQF,IAAK,CACrC,IAAI8M,EAAOJ,EAAM1M,GACjB8M,EAAKwE,cAAe,EACpB,IAAK,IAAIgpE,EAAI,EAAGA,EAAItpE,EAAY9Q,OAAQo6E,IAAK,CAC3C,IAAI7oE,EAAaT,EAAYspE,GAC7B,GAAIxtE,EAAKE,KAAOyE,EAAW7E,QAA8B,IAApB6E,EAAWC,KAAY,CAC1D5E,EAAKwE,cAAe,EACpBxE,EAAK87N,SAAW,cAChB,SAkBFkrC,CAAkBpnQ,EAAOxH,EAAK8L,aAC9B6E,EAAOnJ,MAAQA,EACfmJ,EAAO3I,MAAQ,IAAUhI,EAAKgI,MAAO,OAAQ,OAC7C2I,EAAO+tN,qBAAuB1+N,EAAKH,SAAS6+N,qBAC5C/tN,EAAOs0O,uBAAyBjlP,EAAKH,SAASg7L,0BAE/CxiI,OAAM,SAAehiD,GACpB2P,EAAcxc,MAAM,UAAW6M,EAAK,sCACpC1F,EAAOnJ,MAAQ,GACfmJ,EAAO3I,MAAQ,U,igBClIlB,WACL1G,EACAH,GAFK,iHAKoBI,EAAAA,GAAAA,KAAA,kBACVD,EADU,kBAErB,CACEutQ,UAAW1tQ,IARZ,uBAKKnB,EALL,EAKKA,KALL,kBAWIA,GAXJ,yDAaI,CACLwU,OAAQ,UACRw4C,QAAS,mDAAF,OAAqD7rD,KAf3D,0D,+CCOA,SAASmoD,EAAT,GAA0D,IAAnCnoD,EAAmC,EAAnCA,UAAWG,EAAwB,EAAxBA,cACvC,GAA4BK,EAAAA,EAAAA,UAC1B,CAAC,eAAgBL,EAAe,SAAU,SAAUH,EAAW,WAC/D,kBDVG,SAAP,oCCUU2tQ,CAAgBxtQ,EAAeH,MAF/BnB,EAAR,EAAQA,KAAM2K,EAAd,EAAcA,UAId,OAAO,iBAAMnO,WAAW6L,EAAAA,EAAAA,IAAK4pC,EAAAA,EAAAA,GAAYjyC,EAAM2K,GAAY,mB,mCCf9C,SAASokQ,K,oTCqBxBzvQ,OAAO6R,QAAUA,K,kBCvBjB,IACI+rC,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,iWAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0yKAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mgBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2SAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8eAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0kBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2+BAGtB3iD,EAAOC,QAAU0iD,G,gBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8sBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ovQAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+hLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qsFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,y9HAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,y5ZAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mmLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,k5DAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,6EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qsXAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0+JAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,u2RAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,2EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ovQAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,oyJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0qCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,y9aAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2vMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kxZAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,40BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6gCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q/BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,knDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+1CAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uUAGtB3iD,EAAOC,QAAU0iD,G,gBCHjB,IACIA,EAAO,kFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m7BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,isFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wpEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mqIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,u5KAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2/KAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+rIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,usHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0bAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gkHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wwFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,kDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qnEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,23IAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mj9CAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,kDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,41jBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2qCAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wjBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,k9IAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m0KAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kvQAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kUAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2SAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4aAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q/aAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+0XAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ssFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wrGAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,07bAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,0CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wqBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,scAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8nBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2lBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+nIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m/DAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,wCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,saAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uv5BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m0DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wxLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,imFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+0LAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,snGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,46HAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,osDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,k5GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o6DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ymGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ynDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ukHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4+JAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wtGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wzGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ukJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+sIAGtB3iD,EAAOC,QAAU0iD,G,gBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,msIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,26GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4wGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,odAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,omKAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gvaAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wjBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,0CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qxBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,orDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+rLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qwEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,soBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ieAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,msMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,68GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4sBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qkHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8nBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2wUAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4kHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+pJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o2IAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4WAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wkOAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uxIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6wLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,i+KAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wkBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+VAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8nBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+nBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,01DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0oBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kpKAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,8FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,khFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kVAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ykCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8jCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+cAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,k1DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,s9TAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0GACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gUAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,iTAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0yiBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+/bAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,u2VAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6oVAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,spMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8GACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,oqMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uuQAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,60RAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mHACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,63OAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+3VAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,orWAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g+EAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,2HACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g/DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,syEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6jSAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6haAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+lJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,quNAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+8EAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8QAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+mCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0gHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,koBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4tFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,88FAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,05EAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2lGAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,yumFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gt5BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,62BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,28SAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+rFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ojEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g8GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,irJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sjFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q+gBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8tHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mpBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6lRAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2uPAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0lqBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qlFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g8VAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4zIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6ZAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ml8BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4pOAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uloCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8sBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,02nDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g6GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,68CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,46NAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0mUAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0uDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2BACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8SAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qkNAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gSAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qlBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,k8OAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ksGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o5MAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2HACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wxBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+vGAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,0FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,i7DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+QAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8YAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,krHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,grCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,w7EAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,u7LAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,s7BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ypQAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,swCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,giKAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,irBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,21NAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qOAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+3dAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,stGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wgIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+nIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gRAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mvMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uXAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,mEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gaAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6sLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wtDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4KACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6sFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,gIACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+1DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sdAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2yEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2IACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,84CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+GACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,svBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kiEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2GACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,63KAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,uGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o0CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,seAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g8BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2oBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,okCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,iuJAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8vEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sqFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,61NAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mkJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uyLAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+gIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6GACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mvJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m8NAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ygMAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o5JAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,opIAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8jGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,yjGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sxBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0tBAGtB3iD,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,oUAAuU,EAAQ,OAAmC,wGAAgH,EAAQ,MAAmC,uxBAC/hB9xN,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,yDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4dAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uvBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4PAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mgBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6iGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ghFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,s5GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sqBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,wEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,koBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mnFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g/CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8TAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,82CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g5DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2+BAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+8LAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,snBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6MAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4smBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8qIAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q2CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,67HAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0WAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oHACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q+GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2HACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g0MAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8lVAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,mcAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qqNAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+nOAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0mEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0hBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g4MAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,inCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,0oKAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+sGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,kGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+qGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8yGAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,q7CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,koGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+4KAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ovFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gHACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,smCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,46NAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,gGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,2rGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+5DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,y8DAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,siHAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,oFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g/CAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,g7FAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wpBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6jJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,sGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,o5IAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sjEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wxJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,iyEAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4oJAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qbAGtB3iD,EAAOC,QAAU0iD,G,qBCHjB,IAAI8xN,EAAkB,qRAAwR,EAAQ,KAAkC,wnMACpV9xN,EAAO,qCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iGACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,i4NAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,sFACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ytFAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6FACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qtGAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ygVAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,m2FAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,y4FAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,sjBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6gDAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,mDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,kxdAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+lBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ozCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6gCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6vBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6uBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,yCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8aAGtB3iD,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,iVAAwV,EAAQ,KAAkC,wteACpZ9xN,EAAO,gDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,wDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ksCAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,8DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,wwBAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,kEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uRAGtB3iD,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,uTAA8T,EAAQ,KAAkC,k/GAC1X9xN,EAAO,sDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,iVAAwV,EAAQ,KAAkC,8vEACpZ9xN,EAAO,oEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,gPAAiP,EAAQ,KAAkC,mqFAC7S9xN,EAAO,uDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,sBCHjB,IAAI8xN,EAAkB,yQAA0Q,EAAQ,KAAkC,yTACtU9xN,EAAO,yCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAAM8xN,MAC7Ez0Q,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,4DACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,szGAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,oDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,4/YAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,iDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,ynBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,0EACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,62GAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qEACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,8tBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,iktBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qDACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gwVAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,6CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,uhcAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,yCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,yjBAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,qCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,qrFAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,2CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,slUAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,uCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,6fAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,+CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,+sfAGtB3iD,EAAOC,QAAU0iD,G,kBCHjB,IACIA,EAAO,2CACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,gjJAGtB3iD,EAAOC,QAAU0iD,G,iBCHjB,IACIA,EAAO,uCACX59C,OAAO6R,QAAQ5W,OAAO,MAAM09H,IAAI,CAAC,iBAAkB,SAAS5wG,GAAKA,EAAEi/B,IAAIpJ,EAFjD,koQAGtB3iD,EAAOC,QAAU0iD,G","sources":["webpack://portainer/./app|sync|/^(.*\\.(js$))[^.]*$/im","webpack://portainer/./app/assets/ico/git.svg","webpack://portainer/./app/assets/ico/ldap.svg","webpack://portainer/./app/assets/ico/theme/auto.svg","webpack://portainer/./app/assets/ico/theme/darkmode.svg","webpack://portainer/./app/assets/ico/theme/highcontrastmode.svg","webpack://portainer/./app/assets/ico/theme/lightmode.svg","webpack://portainer/./app/assets/ico/vendor/aws.svg","webpack://portainer/./app/assets/ico/vendor/azure.svg","webpack://portainer/./app/assets/ico/vendor/civo.svg","webpack://portainer/./app/assets/ico/vendor/digitalocean.svg","webpack://portainer/./app/assets/ico/vendor/docker-compose.svg","webpack://portainer/./app/assets/ico/vendor/docker.svg","webpack://portainer/./app/assets/ico/vendor/ecr.svg","webpack://portainer/./app/assets/ico/vendor/github.svg","webpack://portainer/./app/assets/ico/vendor/gitlab.svg","webpack://portainer/./app/assets/ico/vendor/google.svg","webpack://portainer/./app/assets/ico/vendor/googlecloud.svg","webpack://portainer/./app/assets/ico/vendor/helm.svg","webpack://portainer/./app/assets/ico/vendor/kubernetes.svg","webpack://portainer/./app/assets/ico/vendor/linode.svg","webpack://portainer/./app/assets/ico/vendor/microsoft.svg","webpack://portainer/./app/assets/ico/vendor/nomad.svg","webpack://portainer/./app/assets/ico/vendor/openldap.svg","webpack://portainer/./app/assets/ico/vendor/proget.svg","webpack://portainer/./app/assets/ico/vendor/quay.svg","webpack://portainer/./app/angulartics.matomo/analytics-services.ts","webpack://portainer/./app/docker/filters/utils.ts","webpack://portainer/./app/docker/services/system.service.ts","webpack://portainer/./app/edge/components/EdgeAsyncIntervalsForm.tsx","webpack://portainer/./app/edge/components/EdgeCheckInIntervalField.tsx","webpack://portainer/./app/edge/components/useIntervalOptions.ts","webpack://portainer/./app/edge/types.ts","webpack://portainer/./app/edge/utils.ts","webpack://portainer/./app/portainer/access-control/AccessControlForm/AccessControlForm.validation.ts","webpack://portainer/./app/portainer/access-control/AccessControlPanel/AccessControlPanelDetails.tsx","webpack://portainer/./app/portainer/access-control/AccessControlPanel/AccessControlPanelForm.tsx","webpack://portainer/./app/portainer/access-control/AccessControlPanel/AccessControlPanelForm.module.css?8cf4","webpack://portainer/./app/portainer/access-control/AccessControlPanel/AccessControlPanel.tsx","webpack://portainer/./app/portainer/access-control/EditDetails/UsersField.tsx","webpack://portainer/./app/react/components/TeamsSelector/TeamsSelector.tsx","webpack://portainer/./app/portainer/access-control/EditDetails/TeamsField.tsx","webpack://portainer/./app/portainer/access-control/EditDetails/useOptions.tsx","webpack://portainer/./app/portainer/access-control/EditDetails/EditDetails.tsx","webpack://portainer/./app/portainer/access-control/EditDetails/useLoadState.ts","webpack://portainer/./app/portainer/access-control/access-control.service.ts","webpack://portainer/./app/portainer/access-control/models/ResourceControlViewModel.ts","webpack://portainer/./app/portainer/access-control/types.ts","webpack://portainer/./app/portainer/access-control/utils.ts","webpack://portainer/./app/portainer/components/BoxSelector/BoxSelectorAngular.tsx","webpack://portainer/./app/portainer/components/BoxSelector/utils.ts","webpack://portainer/./app/portainer/components/BoxSelector/index.ts","webpack://portainer/./app/portainer/environment-groups/environment-groups.service.ts","webpack://portainer/./app/portainer/environment-groups/queries.ts","webpack://portainer/./app/portainer/environments/environment.service/index.ts","webpack://portainer/./app/portainer/environments/environment.service/utils.ts","webpack://portainer/./app/portainer/environments/queries/useAgentDetails.ts","webpack://portainer/./app/portainer/environments/queries/useEnvironment.ts","webpack://portainer/./app/portainer/environments/queries/useEnvironmentList.tsx","webpack://portainer/./app/portainer/environments/types.ts","webpack://portainer/./app/portainer/environments/utils.ts","webpack://portainer/./app/portainer/error.ts","webpack://portainer/./app/portainer/feature-flags/enums.ts","webpack://portainer/./app/portainer/feature-flags/feature-flags.service.ts","webpack://portainer/./app/portainer/helpers/promise-utils.ts","webpack://portainer/./app/portainer/helpers/strings.ts","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EdgeIndicator.tsx","webpack://portainer/./app/portainer/hooks/UIStateProvider.tsx","webpack://portainer/./app/portainer/hooks/useDebounce.ts","webpack://portainer/./app/portainer/hooks/useEnvironmentId.ts","webpack://portainer/./app/portainer/hooks/useLocalStorage.ts","webpack://portainer/./app/portainer/hooks/useUser.tsx","webpack://portainer/./app/portainer/hostmanagement/fdo/fdo.service.ts","webpack://portainer/./app/portainer/hostmanagement/open-amt/open-amt.service.ts","webpack://portainer/./app/portainer/license-management/license.service.ts","webpack://portainer/./app/portainer/license-management/types.ts","webpack://portainer/./app/portainer/license-management/use-license.service.ts","webpack://portainer/./app/portainer/services/api/status.service.ts","webpack://portainer/./app/portainer/services/axios.ts","webpack://portainer/./app/portainer/services/http-request.helper.ts","webpack://portainer/./app/portainer/services/modal.service/confirm.ts","webpack://portainer/./app/portainer/services/modal.service/prompt.ts","webpack://portainer/./app/portainer/services/modal.service/utils.ts","webpack://portainer/./app/portainer/services/notifications.ts","webpack://portainer/./app/portainer/settings/cloud/CreateCredentialsView/CredentialsForm.tsx","webpack://portainer/./app/portainer/settings/cloud/cloudSettings.service.ts","webpack://portainer/./app/portainer/settings/cloud/components/APICredentialsForm.tsx","webpack://portainer/./app/portainer/settings/cloud/components/APICredentialsForm.validation.ts","webpack://portainer/./app/portainer/settings/cloud/components/AWSCredentialsForm.tsx","webpack://portainer/./app/portainer/settings/cloud/components/AWSCredentialsForm.validation.ts","webpack://portainer/./app/portainer/settings/cloud/components/AzureCredentialsForm.tsx","webpack://portainer/./app/portainer/settings/cloud/components/AzureCredentialsForm.validation.ts","webpack://portainer/./app/portainer/services/fileUploadReact.ts","webpack://portainer/./app/portainer/settings/cloud/components/GCPCredentialsForm.tsx","webpack://portainer/./app/portainer/settings/cloud/components/GCPCredentialsForm.validation.ts","webpack://portainer/./app/portainer/settings/cloud/types.ts","webpack://portainer/./app/portainer/settings/cloud/utils.ts","webpack://portainer/./app/portainer/settings/settings.service.ts","webpack://portainer/./app/portainer/settings/queries.ts","webpack://portainer/./app/portainer/teams/teams.service.ts","webpack://portainer/./app/portainer/teams/queries.ts","webpack://portainer/./app/portainer/teams/types.ts","webpack://portainer/./app/portainer/users/queries.ts","webpack://portainer/./app/portainer/users/types.ts","webpack://portainer/./app/portainer/users/user.helpers.ts","webpack://portainer/./app/portainer/users/user.service.ts","webpack://portainer/./app/react-tools/react-query.ts","webpack://portainer/./app/react-tools/RootProvider.tsx","webpack://portainer/./app/react-tools/react2angular.tsx","webpack://portainer/./app/react/components/BEFeatureIndicator/BEFeatureIndicator.tsx","webpack://portainer/./app/react/components/BEFeatureIndicator/utils.ts","webpack://portainer/./app/react/components/BoxSelector/BadgeIcon.tsx","webpack://portainer/./app/react/components/BoxSelector/common-options/build-methods.tsx","webpack://portainer/./app/react/components/BoxSelector/common-options/deployment-methods.tsx","webpack://portainer/./app/react/components/BoxSelector/LimitedToBeIndicator.tsx","webpack://portainer/./app/react/components/BoxSelector/BoxOption.tsx","webpack://portainer/./app/react/components/BoxSelector/BoxSelectorItem.tsx","webpack://portainer/./app/react/components/BoxSelector/BoxSelector.tsx","webpack://portainer/./app/react/components/BoxSelector/BoxSelector.module.css?5efb","webpack://portainer/./app/react/components/Code/Code.tsx","webpack://portainer/./app/react/components/Code/Code.module.css?c26c","webpack://portainer/./app/react/components/DashboardItem/DashboardGrid.tsx","webpack://portainer/./app/react/components/DashboardItem/DashboardItem.tsx","webpack://portainer/./app/react/components/DetailsTable/DetailsRow.tsx","webpack://portainer/./app/react/components/DetailsTable/index.tsx","webpack://portainer/./app/react/components/DetailsTable/DetailsTable.tsx","webpack://portainer/./app/assets/ico/wizard/agent.svg","webpack://portainer/./app/assets/ico/wizard/api.svg","webpack://portainer/./app/assets/ico/wizard/edge-agent.svg","webpack://portainer/./app/assets/ico/wizard/import.svg","webpack://portainer/./app/assets/ico/wizard/socket.svg","webpack://portainer/./app/assets/ico/arrows-updown.svg","webpack://portainer/./app/assets/ico/arrow-right-long.svg","webpack://portainer/./app/assets/ico/bomb.svg","webpack://portainer/./app/assets/ico/checked.svg","webpack://portainer/./app/assets/ico/circle-notch.svg","webpack://portainer/./app/assets/ico/clock-rewind.svg","webpack://portainer/./app/assets/ico/compress.svg","webpack://portainer/./app/assets/ico/cubes.svg","webpack://portainer/./app/assets/ico/custom.svg","webpack://portainer/./app/assets/ico/dataflow-1.svg","webpack://portainer/./app/assets/ico/dataflow-2.svg","webpack://portainer/./app/assets/ico/expand.svg","webpack://portainer/./app/assets/ico/file-code.svg","webpack://portainer/./app/assets/ico/file-signature.svg","webpack://portainer/./app/assets/ico/file-upload.svg","webpack://portainer/./app/assets/ico/flask.svg","webpack://portainer/./app/assets/ico/hacker.svg","webpack://portainer/./app/assets/ico/heartbeat.svg","webpack://portainer/./app/assets/ico/laptop.svg","webpack://portainer/./app/assets/ico/laptop-code.svg","webpack://portainer/./app/assets/ico/magic.svg","webpack://portainer/./app/assets/ico/magic-wand.svg","webpack://portainer/./app/assets/ico/memory.svg","webpack://portainer/./app/assets/ico/object-group.svg","webpack://portainer/./app/assets/ico/palette.svg","webpack://portainer/./app/assets/ico/plug.svg","webpack://portainer/./app/assets/ico/restore.svg","webpack://portainer/./app/assets/ico/restore-window.svg","webpack://portainer/./app/assets/ico/rocket.svg","webpack://portainer/./app/assets/ico/route.svg","webpack://portainer/./app/assets/ico/share.svg","webpack://portainer/./app/assets/ico/sort.svg","webpack://portainer/./app/assets/ico/tachometer.svg","webpack://portainer/./app/assets/ico/template.svg","webpack://portainer/./app/assets/ico/tag-2.svg","webpack://portainer/./app/assets/ico/tags.svg","webpack://portainer/./app/assets/ico/tools.svg","webpack://portainer/./app/assets/ico/upload.svg","webpack://portainer/./app/assets/ico/url.svg","webpack://portainer/./app/assets/ico/user-circle.svg","webpack://portainer/./app/assets/ico/user-lock.svg","webpack://portainer/./app/assets/ico/kubernetes-2.svg","webpack://portainer/./app/assets/ico/placeholder.svg","webpack://portainer/./app/assets/ico/vendor/internal.svg","webpack://portainer/./app/react/components/Svg.tsx","webpack://portainer/./app/react/components/Icon.tsx","webpack://portainer/./app/react/components/InformationPanel.tsx","webpack://portainer/./app/react/components/ProgressBar/ProgressBar.tsx","webpack://portainer/./app/react/components/ProgressBar/ProgressBar.module.css?083d","webpack://portainer/./app/react/components/LicenseInfoPanel/utils.ts","webpack://portainer/./app/react/components/LicenseInfoPanel/LicenseInfoPanel.module.css?c291","webpack://portainer/./app/react/components/LicenseInfoPanel/LicenseInfoPanel.tsx","webpack://portainer/./app/react/components/Link.tsx","webpack://portainer/./app/react/components/NavTabs/NavTabs.tsx","webpack://portainer/./app/react/components/NavTabs/NavTabs.module.css?76f4","webpack://portainer/./app/react/components/PageHeader/LicenseExpirationPanel.tsx","webpack://portainer/./app/react/components/PageHeader/LicenseExpirationPanel.module.css?3d13","webpack://portainer/./app/react/components/PageHeader/Breadcrumbs/Breadcrumbs.tsx","webpack://portainer/./app/react/components/PageHeader/HeaderContainer.tsx","webpack://portainer/./app/react/components/PageHeader/HeaderContainer.module.css?63f1","webpack://portainer/./app/react/components/PageHeader/UserMenu.tsx","webpack://portainer/./app/react/components/PageHeader/HeaderTitle.module.css?dde6","webpack://portainer/./app/react/components/PageHeader/HeaderTitle.tsx","webpack://portainer/./app/react/components/PageHeader/PageHeader.tsx","webpack://portainer/./app/react/components/PageHeader/PageHeader.module.css?f07f","webpack://portainer/./app/react/components/PaginationControls/ItemsPerPageSelector.tsx","webpack://portainer/./app/react/components/PaginationControls/calculatePageNumber.ts","webpack://portainer/./app/react/components/PaginationControls/PageButton.tsx","webpack://portainer/./app/react/components/PaginationControls/PageInput.tsx","webpack://portainer/./app/react/components/PaginationControls/PageSelector.tsx","webpack://portainer/./app/react/components/PaginationControls/generatePagesArray.ts","webpack://portainer/./app/react/components/PaginationControls/PaginationControls.tsx","webpack://portainer/./app/react/components/Tip/TextTip/TextTip.tsx","webpack://portainer/./app/react/components/Tip/Tooltip/Tooltip.tsx","webpack://portainer/./app/react/components/Tip/Tooltip/Tooltip.module.css?4657","webpack://portainer/./app/react/components/UsersSelector/UsersSelector.tsx","webpack://portainer/./app/react/components/ViewLoading/ViewLoading.tsx","webpack://portainer/./app/react/components/ViewLoading/ViewLoading.module.css?8d2c","webpack://portainer/./app/react/components/Widget/Loading.tsx","webpack://portainer/./app/react/components/Widget/Widget.tsx","webpack://portainer/./app/react/components/Widget/WidgetBody.tsx","webpack://portainer/./app/react/components/Widget/WidgetTitle.tsx","webpack://portainer/./app/react/components/Widget/index.ts","webpack://portainer/./app/react/components/Widget/WidgetFooter.tsx","webpack://portainer/./app/react/components/Widget/WidgetTaskbar.tsx","webpack://portainer/./app/react/components/buttons/Button.tsx","webpack://portainer/./app/react/components/buttons/ButtonGroup.tsx","webpack://portainer/./app/react/components/buttons/CopyButton/CopyButton.tsx","webpack://portainer/./app/react/components/buttons/CopyButton/CopyButton.module.css?9c40","webpack://portainer/./app/react/components/buttons/CopyButton/useCopy.ts","webpack://portainer/./app/react/components/buttons/LoadingButton.tsx","webpack://portainer/./app/react/components/buttons/AddButton.tsx","webpack://portainer/./app/react/components/buttons/AddButton.module.css?4ae9","webpack://portainer/./app/react/components/datatables/ColumnVisibilityMenu.tsx","webpack://portainer/./app/react/components/datatables/Datatable.tsx","webpack://portainer/./app/react/components/datatables/ExpandingCell.tsx","webpack://portainer/./app/react/components/datatables/ExpandingCell.module.css?7b90","webpack://portainer/./app/react/components/datatables/Filter.tsx","webpack://portainer/./app/react/components/datatables/InnerDatatable.tsx","webpack://portainer/./app/react/components/datatables/RowContext.tsx","webpack://portainer/./app/react/components/datatables/SearchBar.tsx","webpack://portainer/./app/react/components/datatables/SelectedRowsCount.tsx","webpack://portainer/./app/react/components/datatables/Table.tsx","webpack://portainer/./app/react/components/datatables/TableActions.tsx","webpack://portainer/./app/react/components/datatables/TableContainer.tsx","webpack://portainer/./app/react/components/datatables/TableContent.tsx","webpack://portainer/./app/react/components/datatables/TableFooter.tsx","webpack://portainer/./app/react/components/datatables/sort-arrow-down.svg","webpack://portainer/./app/react/components/datatables/sort-arrow-up.svg","webpack://portainer/./app/react/components/datatables/TableHeaderSortIcons.module.css?aefe","webpack://portainer/./app/react/components/datatables/TableHeaderSortIcons.tsx","webpack://portainer/./app/react/components/datatables/TableHeaderCell.tsx","webpack://portainer/./app/react/components/datatables/TableHeaderCell.module.css?0e74","webpack://portainer/./app/react/components/datatables/TableHeaderRow.tsx","webpack://portainer/./app/react/components/datatables/TableRow.tsx","webpack://portainer/./app/react/components/datatables/TableSettingsMenu.tsx","webpack://portainer/./app/react/components/datatables/TableSettingsMenuAutoRefresh.module.css?1e3f","webpack://portainer/./app/react/components/datatables/TableSettingsMenuAutoRefresh.tsx","webpack://portainer/./app/react/components/datatables/TableTitle.tsx","webpack://portainer/./app/react/components/datatables/TableTitleActions.tsx","webpack://portainer/./app/react/components/datatables/filter-types.ts","webpack://portainer/./app/react/components/datatables/useRowSelect.ts","webpack://portainer/./app/react/components/datatables/useTableSettings.tsx","webpack://portainer/./app/react/components/datatables/useZustandTableSettings.tsx","webpack://portainer/./app/react/components/form-components/ButtonSelector/ButtonSelector.tsx","webpack://portainer/./app/react/components/form-components/ButtonSelector/ButtonSelector.module.css?de7d","webpack://portainer/./app/react/components/form-components/Checkbox.tsx","webpack://portainer/./app/react/components/form-components/FileUpload/FileUploadField.tsx","webpack://portainer/./app/react/components/form-components/FileUpload/FileUploadField.module.css?3d41","webpack://portainer/./app/react/components/form-components/FormControl/FormControl.module.css","webpack://portainer/./app/react/components/form-components/FormControl/FormControl.tsx","webpack://portainer/./app/react/components/form-components/FormError.tsx","webpack://portainer/./app/react/components/form-components/FormSection/FormSection.tsx","webpack://portainer/./app/react/components/form-components/FormSectionTitle/FormSectionTitle.tsx","webpack://portainer/./app/react/components/form-components/Input/Select.tsx","webpack://portainer/./app/react/components/form-components/Input/Input.tsx","webpack://portainer/./app/react/components/form-components/InputGroup/InputGroup.tsx","webpack://portainer/./app/react/components/form-components/InputGroup/index.ts","webpack://portainer/./app/react/components/form-components/InputGroup/InputGroupAddon.tsx","webpack://portainer/./app/react/components/form-components/InputGroup/InputGroupButtonWrapper.tsx","webpack://portainer/./app/react/components/form-components/InputList/InputList.module.css?b1ab","webpack://portainer/./app/react/components/form-components/InputList/InputList.tsx","webpack://portainer/./app/react/components/form-components/InputList/utils.ts","webpack://portainer/./app/react/components/form-components/ReactSelect.module.css?f356","webpack://portainer/./app/react/components/form-components/ReactSelect.tsx","webpack://portainer/./app/react/components/form-components/SwitchField/Switch.tsx","webpack://portainer/./app/react/components/form-components/SwitchField/Switch.module.css?3a17","webpack://portainer/./app/react/components/form-components/SwitchField/SwitchField.tsx","webpack://portainer/./app/react/components/form-components/SwitchField/SwitchField.module.css?fb34","webpack://portainer/./app/react/docker/components/ImageStatus/helpers.ts","webpack://portainer/./app/react/docker/components/ImageStatus/ImageStatus.module.css?44df","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/RowContext.ts","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/created.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/host.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/ip.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/name.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/ports.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/state.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/datatable-store.ts","webpack://portainer/./app/react/components/datatables/types.ts","webpack://portainer/./app/react/docker/containers/containers.service.ts","webpack://portainer/./app/react/docker/containers/types.ts","webpack://portainer/./app/react/docker/containers/utils.ts","webpack://portainer/./app/react/docker/queries/utils.ts","webpack://portainer/./app/react/edge/components/EdgeScriptForm/OsSelector.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/ScriptTabs.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/NomadTokenField.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/EdgeScriptSettingsFieldset.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/EdgeScriptForm.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/EdgeScriptForm.validation.tsx","webpack://portainer/./app/react/edge/components/EdgeScriptForm/scripts.ts","webpack://portainer/./app/react/portainer/custom-templates/components/utils.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList.tsx","webpack://portainer/./app/__mocks__/fileMock.js","webpack://portainer/./app/__mocks__/styleMock.js","webpack://portainer/./app/__mocks__/svg.js","webpack://portainer/./app/agent/components/file-uploader/fileUploaderController.js","webpack://portainer/./app/agent/components/file-uploader/index.js","webpack://portainer/./app/agent/components/files-datatable/index.js","webpack://portainer/./app/agent/components/host-browser/hostBrowserController.js","webpack://portainer/./app/agent/components/host-browser/index.js","webpack://portainer/./app/agent/components/node-selector/index.js","webpack://portainer/./app/agent/components/node-selector/nodeSelectorController.js","webpack://portainer/./app/agent/components/volume-browser/index.js","webpack://portainer/./app/agent/components/volume-browser/volumeBrowserController.js","webpack://portainer/./app/agent/index.js","webpack://portainer/./app/agent/models/agent.js","webpack://portainer/./app/agent/rest/agent.js","webpack://portainer/./app/agent/rest/browse.js","webpack://portainer/./app/agent/rest/dockerhub.js","webpack://portainer/./app/agent/rest/host.js","webpack://portainer/./app/agent/rest/ping.js","webpack://portainer/./app/agent/rest/response/browse.js","webpack://portainer/./app/agent/rest/v1/agent.js","webpack://portainer/./app/agent/rest/v1/browse.js","webpack://portainer/./app/agent/services/agentService.js","webpack://portainer/./app/agent/services/hostBrowserService.js","webpack://portainer/./app/agent/services/pingService.js","webpack://portainer/./app/agent/services/volumeBrowserService.js","webpack://portainer/./app/angulartics.matomo/index.js","webpack://portainer/./app/app.js","webpack://portainer/./app/assets/css/colors.ts","webpack://portainer/./app/config.js","webpack://portainer/./app/constants.js","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/image.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/ownership.tsx","webpack://portainer/./app/react/docker/containers/components/ContainerQuickActions/ContainerQuickActions.module.css?9085","webpack://portainer/./app/react/docker/containers/components/ContainerQuickActions/ContainerQuickActions.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/quick-actions.tsx","webpack://portainer/./app/portainer/hooks/useCurrentEnvironment.ts","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/stack.tsx","webpack://portainer/./app/react/docker/containers/queries/query-keys.ts","webpack://portainer/./app/react/docker/containers/queries/gpus.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/gpus.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/columns/index.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/ContainersDatatableActions.tsx","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/ContainersDatatableSettings.tsx","webpack://portainer/./app/react/components/datatables/QuickActionsSettings.tsx","webpack://portainer/./app/react/docker/containers/queries/containers.ts","webpack://portainer/./app/react/docker/stacks/ItemView/StackContainersDatatable.tsx","webpack://portainer/./app/portainer/services/api/stack.service.ts","webpack://portainer/./app/react/docker/app-templates/TemplateListDropdown/TemplateListDropdown.tsx","webpack://portainer/./app/react/docker/app-templates/TemplateListDropdown/index.ts","webpack://portainer/./app/react/docker/app-templates/TemplateListSort/TemplateListSort.module.css?0a6e","webpack://portainer/./app/react/docker/app-templates/TemplateListSort/index.ts","webpack://portainer/./app/react/docker/app-templates/TemplateListSort/TemplateListSort.tsx","webpack://portainer/./app/docker/react/components/index.ts","webpack://portainer/./app/react/docker/stacks/ListView/StackImageStatus.tsx","webpack://portainer/./app/docker/react/views/gpu.tsx","webpack://portainer/./app/react/docker/networks/network.service.ts","webpack://portainer/./app/react/docker/networks/network.helper.ts","webpack://portainer/./app/react/docker/networks/ItemView/NetworkDetailsTable.tsx","webpack://portainer/./app/react/docker/networks/ItemView/NetworkOptionsTable.tsx","webpack://portainer/./app/react/docker/networks/ItemView/NetworkContainersTable.tsx","webpack://portainer/./app/react/docker/networks/queries.ts","webpack://portainer/./app/react/docker/containers/ListView/ContainersDatatable/ContainersDatatable.tsx","webpack://portainer/./app/docker/react/views/containers.ts","webpack://portainer/./app/react/docker/containers/ListView/ListView.tsx","webpack://portainer/./app/docker/react/views/index.ts","webpack://portainer/./app/react/docker/networks/ItemView/ItemView.tsx","webpack://portainer/./app/docker/react/index.ts","webpack://portainer/./app/docker/__module.js","webpack://portainer/./app/docker/components/container-capabilities/container-capabilities.controller.js","webpack://portainer/./app/docker/components/container-capabilities/container-capabilities.js","webpack://portainer/./app/docker/components/container-restart-policy/container-restart-policy-controller.js","webpack://portainer/./app/docker/components/container-restart-policy/container-restart-policy.js","webpack://portainer/./app/docker/components/dashboard-cluster-agent-info/dashboard-cluster-agent-info.js","webpack://portainer/./app/docker/components/dashboard-cluster-agent-info/dashboardClusterAgentInfoController.js","webpack://portainer/./app/docker/components/datatables/configs-datatable/configsDatatable.js","webpack://portainer/./app/docker/components/datatables/container-networks-datatable/containerNetworksDatatable.js","webpack://portainer/./app/docker/components/datatables/container-networks-datatable/containerNetworksDatatableController.js","webpack://portainer/./app/docker/components/datatables/container-processes-datatable/containerProcessesDatatable.js","webpack://portainer/./app/docker/components/datatables/events-datatable/eventsDatatable.js","webpack://portainer/./app/docker/components/datatables/images-datatable/imagesDatatable.js","webpack://portainer/./app/docker/components/datatables/images-datatable/imagesDatatableController.js","webpack://portainer/./app/docker/components/datatables/macvlan-nodes-datatable/macvlanNodesDatatable.js","webpack://portainer/./app/docker/components/datatables/networks-datatable/network-row-content/networkRowContent.js","webpack://portainer/./app/docker/components/datatables/networks-datatable/networksDatatable.js","webpack://portainer/./app/docker/components/datatables/networks-datatable/networksDatatableController.js","webpack://portainer/./app/docker/components/datatables/node-tasks-datatable/nodeTasksDatatable.js","webpack://portainer/./app/docker/components/datatables/nodes-datatable/nodesDatatable.js","webpack://portainer/./app/docker/components/datatables/secrets-datatable/secretsDatatable.js","webpack://portainer/./app/docker/components/datatables/service-tasks-datatable/serviceTasksDatatable.js","webpack://portainer/./app/docker/components/datatables/service-tasks-datatable/serviceTasksDatatableController.js","webpack://portainer/./app/docker/components/datatables/services-datatable/actions/servicesDatatableActions.js","webpack://portainer/./app/docker/components/datatables/services-datatable/actions/servicesDatatableActionsController.js","webpack://portainer/./app/docker/components/datatables/services-datatable/servicesDatatable.js","webpack://portainer/./app/docker/components/datatables/services-datatable/servicesDatatableController.js","webpack://portainer/./app/docker/components/datatables/tasks-datatable/tasksDatatable.js","webpack://portainer/./app/docker/components/datatables/tasks-datatable/tasksDatatableController.js","webpack://portainer/./app/docker/components/datatables/volumes-datatable/volumesDatatable.js","webpack://portainer/./app/docker/components/datatables/volumes-datatable/volumesDatatableController.js","webpack://portainer/./app/docker/components/host-overview/host-overview.js","webpack://portainer/./app/docker/components/host-view-panels/devices-panel/devices-panel.js","webpack://portainer/./app/docker/components/host-view-panels/disks-panel/disks-panel.js","webpack://portainer/./app/docker/components/host-view-panels/engine-details-panel/engine-details-panel.js","webpack://portainer/./app/docker/components/host-view-panels/host-details-panel/host-details-panel.js","webpack://portainer/./app/docker/components/host-view-panels/node-availability-select/node-availability-select-controller.js","webpack://portainer/./app/docker/components/host-view-panels/node-availability-select/node-availability-select.js","webpack://portainer/./app/docker/components/host-view-panels/node-labels-table/node-labels-table-controller.js","webpack://portainer/./app/docker/components/host-view-panels/node-labels-table/node-labels-table.js","webpack://portainer/./app/docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel-controller.js","webpack://portainer/./app/docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel.js","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry-rate-limits.controller.js","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry-rate-limits.js","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry.controller.js","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry.js","webpack://portainer/./app/docker/components/log-viewer/log-viewer.js","webpack://portainer/./app/docker/components/log-viewer/logViewerController.js","webpack://portainer/./app/docker/components/network-macvlan-form/network-macvlan-form.js","webpack://portainer/./app/docker/components/network-macvlan-form/networkMacvlanFormController.js","webpack://portainer/./app/docker/components/network-macvlan-form/networkMacvlanFormModel.js","webpack://portainer/./app/docker/components/volumesCIFSForm/volumesCifsForm.js","webpack://portainer/./app/docker/components/volumesCIFSForm/volumesCifsFormModel.js","webpack://portainer/./app/docker/components/volumesNFSForm/volumes-nfs-form.js","webpack://portainer/./app/docker/components/volumesNFSForm/volumesNFSFormModel.js","webpack://portainer/./app/docker/filters/filters.js","webpack://portainer/./app/docker/helpers/configHelper.js","webpack://portainer/./app/docker/helpers/constraintsHelper.js","webpack://portainer/./app/docker/helpers/containerHelper.js","webpack://portainer/./app/docker/helpers/imageHelper.js","webpack://portainer/./app/docker/helpers/infoHelper.js","webpack://portainer/./app/docker/helpers/labelHelper.js","webpack://portainer/./app/docker/helpers/logHelper.js","webpack://portainer/./app/docker/helpers/networkHelper.js","webpack://portainer/./app/docker/helpers/nodeHelper.js","webpack://portainer/./app/docker/helpers/secretHelper.js","webpack://portainer/./app/docker/helpers/serviceHelper.js","webpack://portainer/./app/docker/helpers/taskHelper.js","webpack://portainer/./app/docker/helpers/volumeHelper.js","webpack://portainer/./app/docker/interceptors/containersInterceptor.js","webpack://portainer/./app/docker/interceptors/imagesInterceptor.js","webpack://portainer/./app/docker/interceptors/infoInterceptor.js","webpack://portainer/./app/docker/interceptors/networksInterceptor.js","webpack://portainer/./app/docker/interceptors/versionInterceptor.js","webpack://portainer/./app/docker/interceptors/volumesInterceptor.js","webpack://portainer/./app/docker/models/config.js","webpack://portainer/./app/docker/models/container.js","webpack://portainer/./app/docker/models/containerCapabilities.js","webpack://portainer/./app/docker/models/event.js","webpack://portainer/./app/docker/models/image.js","webpack://portainer/./app/docker/models/imageDetails.js","webpack://portainer/./app/docker/models/imageLayer.js","webpack://portainer/./app/docker/models/network.js","webpack://portainer/./app/docker/models/node.js","webpack://portainer/./app/docker/models/plugin.js","webpack://portainer/./app/docker/models/porImageRegistry.js","webpack://portainer/./app/docker/models/secret.js","webpack://portainer/./app/docker/models/service.js","webpack://portainer/./app/docker/models/swarm.js","webpack://portainer/./app/docker/models/task.js","webpack://portainer/./app/docker/models/volume.js","webpack://portainer/./app/docker/rest/build.js","webpack://portainer/./app/docker/rest/commit.js","webpack://portainer/./app/docker/rest/config.js","webpack://portainer/./app/docker/rest/container.js","webpack://portainer/./app/docker/rest/exec.js","webpack://portainer/./app/docker/rest/image.js","webpack://portainer/./app/docker/rest/network.js","webpack://portainer/./app/docker/rest/node.js","webpack://portainer/./app/docker/rest/plugin.js","webpack://portainer/./app/docker/rest/response/handlers.js","webpack://portainer/./app/docker/rest/response/image.js","webpack://portainer/./app/docker/rest/secret.js","webpack://portainer/./app/docker/rest/service.js","webpack://portainer/./app/docker/rest/swarm.js","webpack://portainer/./app/docker/rest/system.js","webpack://portainer/./app/docker/rest/systemEndpoint.js","webpack://portainer/./app/docker/rest/task.js","webpack://portainer/./app/docker/rest/volume.js","webpack://portainer/./app/docker/services/buildService.js","webpack://portainer/./app/docker/services/configService.js","webpack://portainer/./app/docker/services/containerService.js","webpack://portainer/./app/docker/services/execService.js","webpack://portainer/./app/docker/services/imageService.js","webpack://portainer/./app/docker/services/networkService.js","webpack://portainer/./app/docker/services/nodeService.js","webpack://portainer/./app/docker/services/pluginService.js","webpack://portainer/./app/docker/services/secretService.js","webpack://portainer/./app/docker/services/serviceService.js","webpack://portainer/./app/docker/services/swarmService.js","webpack://portainer/./app/docker/services/systemService.js","webpack://portainer/./app/docker/services/taskService.js","webpack://portainer/./app/docker/services/volumeService.js","webpack://portainer/./app/docker/views/configs/configsController.js","webpack://portainer/./app/docker/views/configs/create/createConfigController.js","webpack://portainer/./app/docker/views/configs/edit/configController.js","webpack://portainer/./app/docker/views/containers/console/containerConsoleController.js","webpack://portainer/./app/docker/views/containers/create/createContainerController.js","webpack://portainer/./app/docker/views/containers/edit/containerController.js","webpack://portainer/./app/docker/views/containers/inspect/containerInspectController.js","webpack://portainer/./app/docker/views/containers/logs/containerLogsController.js","webpack://portainer/./app/docker/views/containers/stats/containerStatsController.js","webpack://portainer/./app/react/docker/DashboardView/ContainerStatus.tsx","webpack://portainer/./app/react/docker/DashboardView/ImagesTotalSize.tsx","webpack://portainer/./app/docker/views/dashboard/dashboardController.js","webpack://portainer/./app/docker/views/docker-features-configuration/docker-features-configuration.controller.js","webpack://portainer/./app/docker/views/docker-features-configuration/index.js","webpack://portainer/./app/docker/views/events/eventsController.js","webpack://portainer/./app/docker/views/host/host-browser-view/host-browser-view-controller.js","webpack://portainer/./app/docker/views/host/host-browser-view/host-browser-view.js","webpack://portainer/./app/docker/views/host/host-view-controller.js","webpack://portainer/./app/docker/views/host/host-view.js","webpack://portainer/./app/docker/views/images/build/buildImageController.js","webpack://portainer/./app/docker/views/images/edit/imageController.js","webpack://portainer/./app/docker/views/images/imagesController.js","webpack://portainer/./app/docker/views/images/import/importImageController.js","webpack://portainer/./app/docker/views/networks/create/createNetworkController.js","webpack://portainer/./app/docker/views/networks/networksController.js","webpack://portainer/./app/docker/views/nodes/node-browser/node-browser-controller.js","webpack://portainer/./app/docker/views/nodes/node-browser/node-browser.js","webpack://portainer/./app/docker/views/nodes/node-details/node-details-view-controller.js","webpack://portainer/./app/docker/views/nodes/node-details/node-details-view.js","webpack://portainer/./app/docker/views/registries/access/registryAccess.js","webpack://portainer/./app/docker/views/registries/access/registryAccessController.js","webpack://portainer/./app/docker/views/secrets/create/createSecretController.js","webpack://portainer/./app/docker/views/secrets/edit/secretController.js","webpack://portainer/./app/docker/views/secrets/secretsController.js","webpack://portainer/./app/docker/views/services/create/createServiceController.js","webpack://portainer/./app/docker/views/services/edit/serviceController.js","webpack://portainer/./app/docker/views/services/logs/serviceLogsController.js","webpack://portainer/./app/docker/views/services/servicesController.js","webpack://portainer/./app/docker/views/swarm/swarmController.js","webpack://portainer/./app/docker/views/swarm/visualizer/swarmVisualizerController.js","webpack://portainer/./app/docker/views/tasks/edit/taskController.js","webpack://portainer/./app/docker/views/tasks/logs/taskLogsController.js","webpack://portainer/./app/docker/views/volumes/browse/browseVolumeController.js","webpack://portainer/./app/docker/views/volumes/create/createVolumeController.js","webpack://portainer/./app/docker/views/volumes/edit/volumeController.js","webpack://portainer/./app/docker/views/volumes/volumesController.js","webpack://portainer/./app/edge/components/index.ts","webpack://portainer/./app/edge/EdgeDevices/WaitingRoomView/queries.ts","webpack://portainer/./app/edge/EdgeDevices/WaitingRoomView/Datatable/Datatable.tsx","webpack://portainer/./app/edge/EdgeDevices/WaitingRoomView/WaitingRoomView.tsx","webpack://portainer/./app/react/edge/edge-stacks/queries/query-keys.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/useCollectLogsMutation.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/useDeleteLogsMutation.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/useDownloadLogsMutation.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/useLogsStatus.ts","webpack://portainer/./app/react/edge/edge-stacks/ItemView/LogsActions.tsx","webpack://portainer/./app/react/edge/edge-stacks/ItemView/ActionStatus.tsx","webpack://portainer/./app/edge/react/components/index.ts","webpack://portainer/./app/react/edge/edge-stacks/ItemView/EnvironmentActions.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/RowContext.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/hostname.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/power-state.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/status.tsx","webpack://portainer/./app/react/components/datatables/ActionsMenuTitle.tsx","webpack://portainer/./app/react/components/datatables/ActionsMenuTitle.module.css?c973","webpack://portainer/./app/react/components/datatables/ActionsMenu.module.css?4068","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/actions.tsx","webpack://portainer/./app/react/components/datatables/ActionsMenu.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/AMTDevicesDatatable.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/columns/index.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/AMTDevicesDatatable/useAMTDevices.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/EdgeDevicesDatatableActions.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/EdgeDevicesDatatableSettings.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/RowContext.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/name.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/heartbeat.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/group.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/actions.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/EdgeDevicesDatatable.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/columns/index.tsx","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/EdgeDevicesDatatable.module.css?4939","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesDatatable/EdgeDevicesDatatableContainer.tsx","webpack://portainer/./app/react/docker/queries/useDockerSnapshotContainers.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/buildUrl.ts","webpack://portainer/./app/react/edge/edge-stacks/queries/useEdgeStack.ts","webpack://portainer/./app/react/edge/edge-devices/ContainersView/image-column.tsx","webpack://portainer/./app/react/edge/edge-devices/ContainersView/ContainersView.tsx","webpack://portainer/./app/react/docker/queries/useDockerSnapshotContainer.ts","webpack://portainer/./app/react/edge/edge-devices/ContainerView/NetworksTable.tsx","webpack://portainer/./app/react/edge/edge-devices/ContainerView/VolumesTable.tsx","webpack://portainer/./app/react/edge/edge-devices/ContainerView/LabelsRow.tsx","webpack://portainer/./app/react/edge/edge-devices/ContainerView/StatusBadge.tsx","webpack://portainer/./app/edge/react/views/index.ts","webpack://portainer/./app/react/edge/edge-devices/ListView/EdgeDevicesView.tsx","webpack://portainer/./app/react/edge/edge-devices/ContainerView/ContainerView.tsx","webpack://portainer/./app/edge/react/index.ts","webpack://portainer/./app/edge/__module.js","webpack://portainer/./app/edge/components/associated-endpoints-datatable/associatedEndpointsDatatableController.js","webpack://portainer/./app/edge/components/associated-endpoints-datatable/index.js","webpack://portainer/./app/edge/components/edge-groups-selector/index.js","webpack://portainer/./app/edge/components/edge-job-form/edgeJobFormController.js","webpack://portainer/./app/edge/components/edge-job-form/index.js","webpack://portainer/./app/edge/components/edge-job-results-datatable/edgeJobResultsDatatableController.js","webpack://portainer/./app/edge/components/edge-job-results-datatable/index.js","webpack://portainer/./app/edge/components/edge-jobs-datatable/index.js","webpack://portainer/./app/edge/components/edge-stack-deployment-type-selector/edgeStackDeploymentTypeSelector.tsx","webpack://portainer/./app/edge/components/edge-stack-deployment-type-selector/index.js","webpack://portainer/./app/edge/components/edge-stack-endpoints-datatable/edgeStackEndpointsDatatableController.js","webpack://portainer/./app/edge/components/edge-stack-endpoints-datatable/index.js","webpack://portainer/./app/edge/components/edge-stack-status/edgeStackStatusController.js","webpack://portainer/./app/edge/components/edge-stack-status/index.js","webpack://portainer/./app/edge/components/edge-stacks-datatable/index.js","webpack://portainer/./app/edge/components/edit-edge-stack-form/editEdgeStackFormController.js","webpack://portainer/./app/edge/components/edit-edge-stack-form/index.js","webpack://portainer/./app/edge/components/group-form/groupFormController.js","webpack://portainer/./app/edge/components/group-form/index.js","webpack://portainer/./app/edge/components/groups-datatable/groupsDatatableController.js","webpack://portainer/./app/edge/components/groups-datatable/index.js","webpack://portainer/./app/edge/rest/edge-groups.js","webpack://portainer/./app/edge/rest/edge-job-results.js","webpack://portainer/./app/edge/rest/edge-jobs.js","webpack://portainer/./app/edge/rest/edge-stacks.js","webpack://portainer/./app/edge/rest/edge-templates.js","webpack://portainer/./app/edge/services/edge-group.js","webpack://portainer/./app/edge/services/edge-job.js","webpack://portainer/./app/edge/services/edge-stack.js","webpack://portainer/./app/edge/services/edge-template.js","webpack://portainer/./app/edge/views/edge-groups/createEdgeGroupView/createEdgeGroupViewController.js","webpack://portainer/./app/edge/views/edge-groups/createEdgeGroupView/index.js","webpack://portainer/./app/edge/views/edge-groups/edgeGroupsView/edgeGroupsViewController.js","webpack://portainer/./app/edge/views/edge-groups/edgeGroupsView/index.js","webpack://portainer/./app/edge/views/edge-groups/editEdgeGroupView/editEdgeGroupViewController.js","webpack://portainer/./app/edge/views/edge-groups/editEdgeGroupView/index.js","webpack://portainer/./app/edge/views/edge-jobs/createEdgeJobView/createEdgeJobViewController.js","webpack://portainer/./app/edge/views/edge-jobs/createEdgeJobView/index.js","webpack://portainer/./app/edge/views/edge-jobs/edgeJob/edgeJobController.js","webpack://portainer/./app/edge/views/edge-jobs/edgeJob/index.js","webpack://portainer/./app/edge/views/edge-jobs/edgeJobsView/edgeJobsViewController.js","webpack://portainer/./app/edge/views/edge-jobs/edgeJobsView/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.controller.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/docker-compose-form/docker-compose-form.controller.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/docker-compose-form/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/private-registry-view/index.ts","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/private-registry-view/PrivateRegistryView.tsx","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/kube-deploy-description/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/kube-manifest-form.controller.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/index.js","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/nomad-hcl-form.controller.js","webpack://portainer/./app/edge/views/edge-stacks/edgeStacksView/edgeStacksViewController.js","webpack://portainer/./app/edge/views/edge-stacks/edgeStacksView/index.js","webpack://portainer/./app/edge/views/edge-stacks/editEdgeStackView/editEdgeStackViewController.js","webpack://portainer/./app/edge/views/edge-stacks/editEdgeStackView/index.js","webpack://portainer/./app/edge/views/edge-stacks/index.js","webpack://portainer/./app/i18n.ts","webpack://portainer/./app/azure/react/components/index.ts","webpack://portainer/./app/portainer/access-control/AccessControlForm/AccessControlForm.tsx","webpack://portainer/./app/react/azure/container-instances/CreateView/PortsMappingField.tsx","webpack://portainer/./app/react/azure/container-instances/CreateView/PortsMappingField.module.css?a1c2","webpack://portainer/./app/react/azure/services/utils.ts","webpack://portainer/./app/react/azure/queries/query-keys.ts","webpack://portainer/./app/react/azure/queries/useProvider.ts","webpack://portainer/./app/react/azure/queries/utils.ts","webpack://portainer/./app/react/azure/queries/useResourceGroups.ts","webpack://portainer/./app/react/azure/queries/useSubscriptions.ts","webpack://portainer/./app/react/azure/container-instances/CreateView/utils.ts","webpack://portainer/./app/react/azure/services/container-groups.service.ts","webpack://portainer/./app/react/azure/container-instances/CreateView/CreateContainerInstanceForm.tsx","webpack://portainer/./app/react/azure/container-instances/CreateView/useLoadFormState.ts","webpack://portainer/./app/react/azure/container-instances/CreateView/useCreateInstanceMutation.tsx","webpack://portainer/./app/react/azure/container-instances/CreateView/CreateContainerInstanceForm.validation.ts","webpack://portainer/./app/react/azure/container-instances/CreateView/PortsMappingField.validation.ts","webpack://portainer/./app/react/azure/queries/useContainerGroup.ts","webpack://portainer/./app/react/azure/queries/useResourceGroup.ts","webpack://portainer/./app/react/azure/queries/useSubscription.ts","webpack://portainer/./app/react/azure/queries/useContainerGroups.ts","webpack://portainer/./app/react/azure/container-instances/ListView/columns/name.tsx","webpack://portainer/./app/react/azure/container-instances/ListView/columns/location.ts","webpack://portainer/./app/react/azure/container-instances/ListView/columns/ports.tsx","webpack://portainer/./app/react/azure/utils.ts","webpack://portainer/./app/react/azure/container-instances/ListView/columns/ownership.tsx","webpack://portainer/./app/react/azure/container-instances/ListView/ContainersDatatable.tsx","webpack://portainer/./app/react/azure/container-instances/ListView/columns/index.ts","webpack://portainer/./app/react/azure/DashboardView/icon-subscription.svg","webpack://portainer/./app/azure/react/views/index.ts","webpack://portainer/./app/react/azure/container-instances/ItemView/ItemView.tsx","webpack://portainer/./app/react/azure/container-instances/CreateView/CreateView.tsx","webpack://portainer/./app/react/azure/container-instances/ListView/ListView.tsx","webpack://portainer/./app/react/azure/DashboardView/DashboardView.tsx","webpack://portainer/./app/azure/react/index.ts","webpack://portainer/./app/azure/index.ts","webpack://portainer/./app/index.js","webpack://portainer/./app/kubernetes/react/components/index.ts","webpack://portainer/./app/kubernetes/react/views/index.ts","webpack://portainer/./app/kubernetes/react/index.ts","webpack://portainer/./app/kubernetes/__module.js","webpack://portainer/./app/kubernetes/components/datatables/application/containers-datatable/containersDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.controller.js","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.js","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable-url/applications-datatable-url.js","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable/applicationsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable/applicationsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/configurations-datatable/configurationsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/configurations-datatable/configurationsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/events-datatable/eventsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/integrated-applications-datatable/integratedApplicationsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/nodes-datatable/nodesDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatableController.js","webpack://portainer/./app/kubernetes/components/datatables/volumes-datatable/volumesDatatable.js","webpack://portainer/./app/kubernetes/components/datatables/volumes-datatable/volumesDatatableController.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.controller.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list-item/helm-templates-list-item.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.controller.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates.controller.js","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates.js","webpack://portainer/./app/kubernetes/components/kube-services/kube-services-item/kube-services-item.controller.js","webpack://portainer/./app/kubernetes/components/kube-services/kube-services-item/kube-services-item.js","webpack://portainer/./app/kubernetes/components/kube-services/kube-services.controller.js","webpack://portainer/./app/kubernetes/components/kube-services/kube-services.js","webpack://portainer/./app/kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationData.js","webpack://portainer/./app/kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationDataController.js","webpack://portainer/./app/kubernetes/components/resource-reservation/resourceReservation.js","webpack://portainer/./app/kubernetes/components/resource-reservation/resourceReservationController.js","webpack://portainer/./app/kubernetes/components/view-loading/viewLoading.js","webpack://portainer/./app/kubernetes/components/yaml-inspector/yamlInspector.js","webpack://portainer/./app/kubernetes/components/yaml-inspector/yamlInspectorController.js","webpack://portainer/./app/kubernetes/converters/application.js","webpack://portainer/./app/kubernetes/converters/configMap.js","webpack://portainer/./app/kubernetes/converters/configuration.js","webpack://portainer/./app/kubernetes/converters/daemonSet.js","webpack://portainer/./app/kubernetes/converters/deployment.js","webpack://portainer/./app/kubernetes/converters/event.js","webpack://portainer/./app/kubernetes/converters/namespace.js","webpack://portainer/./app/kubernetes/converters/persistentVolumeClaim.js","webpack://portainer/./app/kubernetes/converters/resourcePool.js","webpack://portainer/./app/kubernetes/converters/resourceQuota.js","webpack://portainer/./app/kubernetes/converters/secret.js","webpack://portainer/./app/kubernetes/converters/service.js","webpack://portainer/./app/kubernetes/converters/statefulSet.js","webpack://portainer/./app/kubernetes/converters/storageClass.js","webpack://portainer/./app/kubernetes/converters/volume.js","webpack://portainer/./app/kubernetes/custom-templates/index.js","webpack://portainer/./app/kubernetes/custom-templates/kube-create-custom-template-view/index.js","webpack://portainer/./app/kubernetes/custom-templates/kube-create-custom-template-view/kube-create-custom-template-view.controller.js","webpack://portainer/./app/kubernetes/custom-templates/kube-custom-templates-view/index.js","webpack://portainer/./app/kubernetes/custom-templates/kube-custom-templates-view/kube-custom-templates-view.controller.js","webpack://portainer/./app/kubernetes/custom-templates/kube-edit-custom-template-view/index.js","webpack://portainer/./app/kubernetes/custom-templates/kube-edit-custom-template-view/kube-edit-custom-template-view.controller.js","webpack://portainer/./app/kubernetes/endpoint/converter.js","webpack://portainer/./app/kubernetes/endpoint/models.js","webpack://portainer/./app/kubernetes/endpoint/rest.js","webpack://portainer/./app/kubernetes/endpoint/service.js","webpack://portainer/./app/kubernetes/filters/applicationFilters.js","webpack://portainer/./app/kubernetes/filters/configurationFilters.js","webpack://portainer/./app/kubernetes/filters/eventFilters.js","webpack://portainer/./app/kubernetes/filters/filters.js","webpack://portainer/./app/kubernetes/helm/rest.js","webpack://portainer/./app/kubernetes/helm/service.js","webpack://portainer/./app/kubernetes/helpers/application/index.js","webpack://portainer/./app/kubernetes/helpers/application/rollback.js","webpack://portainer/./app/kubernetes/helpers/commonHelper.js","webpack://portainer/./app/kubernetes/helpers/configMapHelper.js","webpack://portainer/./app/kubernetes/helpers/configurationHelper.js","webpack://portainer/./app/kubernetes/helpers/eventHelper.js","webpack://portainer/./app/kubernetes/helpers/formValidationHelper.js","webpack://portainer/./app/kubernetes/helpers/history/daemonset.js","webpack://portainer/./app/kubernetes/helpers/history/deployment.js","webpack://portainer/./app/kubernetes/helpers/history/index.js","webpack://portainer/./app/kubernetes/helpers/history/statefulset.js","webpack://portainer/./app/kubernetes/helpers/namespaceHelper.js","webpack://portainer/./app/kubernetes/helpers/resourceQuotaHelper.js","webpack://portainer/./app/kubernetes/helpers/resourceReservationHelper.js","webpack://portainer/./app/kubernetes/helpers/serviceHelper.js","webpack://portainer/./app/kubernetes/helpers/stackHelper.js","webpack://portainer/./app/kubernetes/helpers/stackHelper.test.js","webpack://portainer/./app/kubernetes/helpers/volumeHelper.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/converter.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/helper.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/models.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/payload.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/rest.js","webpack://portainer/./app/kubernetes/horizontal-pod-auto-scaler/service.js","webpack://portainer/./app/kubernetes/ingress/constants.js","webpack://portainer/./app/kubernetes/ingress/converter.js","webpack://portainer/./app/kubernetes/ingress/helper.js","webpack://portainer/./app/kubernetes/ingress/models.js","webpack://portainer/./app/kubernetes/ingress/payloads.js","webpack://portainer/./app/kubernetes/ingress/rest.js","webpack://portainer/./app/kubernetes/ingress/service.js","webpack://portainer/./app/kubernetes/metrics/metrics.js","webpack://portainer/./app/kubernetes/metrics/rest.js","webpack://portainer/./app/kubernetes/models/application/formValues.js","webpack://portainer/./app/kubernetes/models/application/models/constants.js","webpack://portainer/./app/kubernetes/models/application/models/index.js","webpack://portainer/./app/kubernetes/models/application/payloads.js","webpack://portainer/./app/kubernetes/models/common/params.js","webpack://portainer/./app/kubernetes/models/common/payloads.js","webpack://portainer/./app/kubernetes/models/config-map/models.js","webpack://portainer/./app/kubernetes/models/config-map/payloads.js","webpack://portainer/./app/kubernetes/models/configuration/formvalues.js","webpack://portainer/./app/kubernetes/models/configuration/models.js","webpack://portainer/./app/kubernetes/models/daemon-set/models.js","webpack://portainer/./app/kubernetes/models/daemon-set/payloads.js","webpack://portainer/./app/kubernetes/models/deploy.js","webpack://portainer/./app/kubernetes/models/deployment/models.js","webpack://portainer/./app/kubernetes/models/deployment/payloads.js","webpack://portainer/./app/kubernetes/models/event/models.js","webpack://portainer/./app/kubernetes/models/history/models.js","webpack://portainer/./app/kubernetes/models/namespace/models.js","webpack://portainer/./app/kubernetes/models/namespace/payloads.js","webpack://portainer/./app/kubernetes/models/nodes-limits/models.js","webpack://portainer/./app/kubernetes/models/port/models.js","webpack://portainer/./app/kubernetes/models/resource-pool/formValues.js","webpack://portainer/./app/kubernetes/models/resource-pool/models.js","webpack://portainer/./app/kubernetes/models/resource-quota/models.js","webpack://portainer/./app/kubernetes/models/resource-quota/payloads.js","webpack://portainer/./app/kubernetes/models/resource-reservation/models.js","webpack://portainer/./app/kubernetes/models/resource-types/models.js","webpack://portainer/./app/kubernetes/models/secret/models.js","webpack://portainer/./app/kubernetes/models/secret/payloads.js","webpack://portainer/./app/kubernetes/models/service/models.js","webpack://portainer/./app/kubernetes/models/service/payloads.js","webpack://portainer/./app/kubernetes/models/stack/models.js","webpack://portainer/./app/kubernetes/models/stateful-set/models.js","webpack://portainer/./app/kubernetes/models/stateful-set/payloads.js","webpack://portainer/./app/kubernetes/models/storage-class/models.js","webpack://portainer/./app/kubernetes/models/storage-class/payload.js","webpack://portainer/./app/kubernetes/models/volume/models.js","webpack://portainer/./app/kubernetes/models/volume/payloads.js","webpack://portainer/./app/kubernetes/node/converter.js","webpack://portainer/./app/kubernetes/node/filters.js","webpack://portainer/./app/kubernetes/node/formValues.js","webpack://portainer/./app/kubernetes/node/helper.js","webpack://portainer/./app/kubernetes/node/models.js","webpack://portainer/./app/kubernetes/node/payload.js","webpack://portainer/./app/kubernetes/node/rest.js","webpack://portainer/./app/kubernetes/node/service.js","webpack://portainer/./app/kubernetes/pod/converter.js","webpack://portainer/./app/kubernetes/pod/filters.js","webpack://portainer/./app/kubernetes/pod/models/affinities.js","webpack://portainer/./app/kubernetes/pod/models/index.js","webpack://portainer/./app/kubernetes/pod/payloads/affinities.js","webpack://portainer/./app/kubernetes/pod/payloads/create.js","webpack://portainer/./app/kubernetes/pod/service.js","webpack://portainer/./app/kubernetes/registries/index.js","webpack://portainer/./app/kubernetes/registries/kube-registry-access-view/index.js","webpack://portainer/./app/kubernetes/registries/kube-registry-access-view/kube-registry-access-view.controller.js","webpack://portainer/./app/kubernetes/rest/configMap.js","webpack://portainer/./app/kubernetes/rest/controllerRevision.js","webpack://portainer/./app/kubernetes/rest/daemonSet.js","webpack://portainer/./app/kubernetes/rest/deployment.js","webpack://portainer/./app/kubernetes/rest/endpoint.js","webpack://portainer/./app/kubernetes/rest/event.js","webpack://portainer/./app/kubernetes/rest/health.js","webpack://portainer/./app/kubernetes/rest/namespace.js","webpack://portainer/./app/kubernetes/rest/nodesLimits.js","webpack://portainer/./app/kubernetes/rest/opa.js","webpack://portainer/./app/kubernetes/rest/persistentVolumeClaim.js","webpack://portainer/./app/kubernetes/rest/pod.js","webpack://portainer/./app/kubernetes/rest/portainer-namespace.js","webpack://portainer/./app/kubernetes/rest/replicaSet.js","webpack://portainer/./app/kubernetes/rest/resourceQuota.js","webpack://portainer/./app/kubernetes/rest/response/transform.js","webpack://portainer/./app/kubernetes/rest/secret.js","webpack://portainer/./app/kubernetes/rest/service.js","webpack://portainer/./app/kubernetes/rest/statefulSet.js","webpack://portainer/./app/kubernetes/rest/storage.js","webpack://portainer/./app/kubernetes/services/applicationService.js","webpack://portainer/./app/kubernetes/services/configMapService.js","webpack://portainer/./app/kubernetes/services/configurationService.js","webpack://portainer/./app/kubernetes/services/controllerRevisionService.js","webpack://portainer/./app/kubernetes/services/daemonSetService.js","webpack://portainer/./app/kubernetes/services/deploymentService.js","webpack://portainer/./app/kubernetes/services/eventService.js","webpack://portainer/./app/kubernetes/services/healthService.js","webpack://portainer/./app/kubernetes/services/historyService.js","webpack://portainer/./app/kubernetes/services/namespaceService.js","webpack://portainer/./app/kubernetes/services/nodesLimitsService.js","webpack://portainer/./app/kubernetes/services/opaService.js","webpack://portainer/./app/kubernetes/services/persistentVolumeClaimService.js","webpack://portainer/./app/kubernetes/services/replicaSetService.js","webpack://portainer/./app/kubernetes/services/resourcePoolService.js","webpack://portainer/./app/kubernetes/services/resourceQuotaService.js","webpack://portainer/./app/kubernetes/services/secretService.js","webpack://portainer/./app/kubernetes/services/serviceService.js","webpack://portainer/./app/kubernetes/services/stackService.js","webpack://portainer/./app/kubernetes/services/statefulSetService.js","webpack://portainer/./app/kubernetes/services/storageService.js","webpack://portainer/./app/kubernetes/services/volumeService.js","webpack://portainer/./app/kubernetes/store/namespace.js","webpack://portainer/./app/kubernetes/views/applications/applications.js","webpack://portainer/./app/kubernetes/views/applications/applicationsController.js","webpack://portainer/./app/kubernetes/views/applications/console/console.js","webpack://portainer/./app/kubernetes/views/applications/console/consoleController.js","webpack://portainer/./app/kubernetes/views/applications/create/createApplication.js","webpack://portainer/./app/kubernetes/views/applications/create/createApplicationController.js","webpack://portainer/./app/kubernetes/views/applications/edit/application.js","webpack://portainer/./app/kubernetes/views/applications/edit/applicationController.js","webpack://portainer/./app/kubernetes/views/applications/edit/components/ingress-table/ingress-table.controller.js","webpack://portainer/./app/kubernetes/views/applications/edit/components/ingress-table/ingress-table.js","webpack://portainer/./app/kubernetes/views/applications/edit/components/placements-datatable/controller.js","webpack://portainer/./app/kubernetes/views/applications/edit/components/placements-datatable/index.js","webpack://portainer/./app/kubernetes/views/applications/edit/components/services-table/services-table.js","webpack://portainer/./app/kubernetes/views/applications/helm/helm.controller.js","webpack://portainer/./app/kubernetes/views/applications/helm/index.js","webpack://portainer/./app/kubernetes/views/applications/logs/logs.js","webpack://portainer/./app/kubernetes/views/applications/logs/logsController.js","webpack://portainer/./app/kubernetes/views/applications/stats/stats.js","webpack://portainer/./app/kubernetes/views/applications/stats/statsController.js","webpack://portainer/./app/kubernetes/views/cluster/cluster.js","webpack://portainer/./app/kubernetes/views/cluster/clusterController.js","webpack://portainer/./app/kubernetes/views/cluster/node/node.js","webpack://portainer/./app/kubernetes/views/cluster/node/nodeController.js","webpack://portainer/./app/kubernetes/views/cluster/node/stats/stats.js","webpack://portainer/./app/kubernetes/views/cluster/node/stats/statsController.js","webpack://portainer/./app/kubernetes/views/configurations/configurations.js","webpack://portainer/./app/kubernetes/views/configurations/configurationsController.js","webpack://portainer/./app/kubernetes/views/configurations/create/createConfiguration.js","webpack://portainer/./app/kubernetes/views/configurations/create/createConfigurationController.js","webpack://portainer/./app/kubernetes/views/configurations/edit/configuration.js","webpack://portainer/./app/kubernetes/views/configurations/edit/configurationController.js","webpack://portainer/./app/kubernetes/views/configure/configureController.js","webpack://portainer/./app/kubernetes/views/dashboard/dashboard.js","webpack://portainer/./app/kubernetes/views/dashboard/dashboardController.js","webpack://portainer/./app/kubernetes/views/deploy/deploy.js","webpack://portainer/./app/kubernetes/views/deploy/deployController.js","webpack://portainer/./app/kubernetes/views/resource-pools/access/resourcePoolAccess.js","webpack://portainer/./app/kubernetes/views/resource-pools/access/resourcePoolAccessController.js","webpack://portainer/./app/kubernetes/views/resource-pools/components/storage-class-switch/index.js","webpack://portainer/./app/kubernetes/views/resource-pools/components/storage-class-switch/storage-class-switch.controller.js","webpack://portainer/./app/kubernetes/views/resource-pools/create/createResourcePool.js","webpack://portainer/./app/kubernetes/views/resource-pools/create/createResourcePoolController.js","webpack://portainer/./app/kubernetes/views/resource-pools/edit/components/ingresses-datatable/controller.js","webpack://portainer/./app/kubernetes/views/resource-pools/edit/components/ingresses-datatable/index.js","webpack://portainer/./app/kubernetes/views/resource-pools/edit/resourcePool.js","webpack://portainer/./app/kubernetes/views/resource-pools/edit/resourcePoolController.js","webpack://portainer/./app/kubernetes/views/resource-pools/resourcePools.js","webpack://portainer/./app/kubernetes/views/resource-pools/resourcePoolsController.js","webpack://portainer/./app/kubernetes/views/security-constraint/constraint-controller.js","webpack://portainer/./app/kubernetes/views/security-constraint/constraint.js","webpack://portainer/./app/kubernetes/views/stacks/logs/logs.js","webpack://portainer/./app/kubernetes/views/stacks/logs/logsController.js","webpack://portainer/./app/kubernetes/views/summary/resources/applicationResources.js","webpack://portainer/./app/kubernetes/views/summary/resources/configurationResources.js","webpack://portainer/./app/kubernetes/views/summary/resources/helpers.js","webpack://portainer/./app/kubernetes/views/summary/resources/namespaceResources.js","webpack://portainer/./app/kubernetes/views/summary/summary.js","webpack://portainer/./app/kubernetes/views/summary/summaryController.js","webpack://portainer/./app/kubernetes/views/volumes/components/volumes-storages-datatable/controller.js","webpack://portainer/./app/kubernetes/views/volumes/components/volumes-storages-datatable/index.js","webpack://portainer/./app/kubernetes/views/volumes/edit/volume.js","webpack://portainer/./app/kubernetes/views/volumes/edit/volumeController.js","webpack://portainer/./app/kubernetes/views/volumes/volumes.js","webpack://portainer/./app/kubernetes/views/volumes/volumesController.js","webpack://portainer/./app/matomo-setup.js","webpack://portainer/./app/nomad/Logs/logs.js","webpack://portainer/./app/nomad/Logs/logsController.js","webpack://portainer/./app/nomad/Logs/nomad-log-viewer/nomad-log-viewer.js","webpack://portainer/./app/nomad/Logs/nomad-log-viewer/nomadLogViewerController.js","webpack://portainer/./app/nomad/rest/getLeader.ts","webpack://portainer/./app/nomad/rest/ping.ts","webpack://portainer/./app/nomad/rest/getDashboard.ts","webpack://portainer/./app/nomad/Dashboard/RunningStatus.tsx","webpack://portainer/./app/nomad/Dashboard/DashboardView.tsx","webpack://portainer/./app/nomad/hooks/useDashboard.ts","webpack://portainer/./app/nomad/jobs.service.ts","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/taskStatus.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/taskName.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/taskGroup.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/allocationID.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/started.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/actions.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/TasksDatatable.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/TasksDatatable/columns/index.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/name.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/status.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/created.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/actions.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/namespace.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/JobsDatatableSettings.tsx","webpack://portainer/./app/nomad/Jobs/JobsDatatable/JobsDatatable.tsx","webpack://portainer/./app/react/components/datatables/useRepeater.ts","webpack://portainer/./app/nomad/Jobs/JobsDatatable/columns/index.tsx","webpack://portainer/./app/nomad/Jobs/JobsView.tsx","webpack://portainer/./app/nomad/hooks/useJobs.ts","webpack://portainer/./app/nomad/rest/getTaskEvents.ts","webpack://portainer/./app/nomad/Events/datatable/columns/date.tsx","webpack://portainer/./app/nomad/Events/datatable/columns/type.tsx","webpack://portainer/./app/nomad/Events/datatable/columns/message.tsx","webpack://portainer/./app/nomad/Events/datatable/EventsDatatable.tsx","webpack://portainer/./app/nomad/Events/datatable/columns/index.tsx","webpack://portainer/./app/nomad/Events/Events.tsx","webpack://portainer/./app/nomad/hooks/useEvents.ts","webpack://portainer/./app/nomad/react/components/index.ts","webpack://portainer/./app/nomad/react/views/index.ts","webpack://portainer/./app/nomad/react/index.ts","webpack://portainer/./app/nomad/index.js","webpack://portainer/./app/portainer/feature-flags/limited-feature.directive.ts","webpack://portainer/./app/portainer/feature-flags/index.ts","webpack://portainer/./app/portainer/services/api/index.ts","webpack://portainer/./app/portainer/services/modal.service/index.ts","webpack://portainer/./app/portainer/services/index.ts","webpack://portainer/./app/portainer/teams/CreateTeamForm/index.ts","webpack://portainer/./app/portainer/teams/CreateTeamForm/CreateTeamForm.tsx","webpack://portainer/./app/portainer/teams/CreateTeamForm/CreateTeamForm.validation.ts","webpack://portainer/./app/portainer/teams/index.ts","webpack://portainer/./app/portainer/hooks/usePaginationLimitState.ts","webpack://portainer/./app/portainer/home/HomepageFilter.tsx","webpack://portainer/./app/portainer/tags/tags.service.ts","webpack://portainer/./app/portainer/tags/queries.ts","webpack://portainer/./app/react/components/datatables/FilterSearchBar.tsx","webpack://portainer/./app/react/components/datatables/SortbySelector.module.css?ecfb","webpack://portainer/./app/react/components/datatables/SortbySelector.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentIcon.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/AgentVersionTag.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStatsItem.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStatsDocker.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStatsKubernetes.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStatsNomad.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStats.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentStatusBadge.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentItem.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentItem/EnvironmentItem.module.css?de55","webpack://portainer/./app/kubernetes/services/kubeconfig.service.ts","webpack://portainer/./app/portainer/home/EnvironmentList/KubeconfigButton/KubeconfigSelection.ts","webpack://portainer/./app/portainer/home/EnvironmentList/KubeconfigButton/KubeconfigPrompt.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/KubeconfigButton/KubeconfigPrompt.module.css?8484","webpack://portainer/./app/portainer/home/EnvironmentList/KubeconfigButton/KubeconfigButton.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/NoEnvironmentsInfoPanel.tsx","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentList.module.css?e8a4","webpack://portainer/./app/portainer/home/EnvironmentList/EnvironmentList.tsx","webpack://portainer/./app/portainer/environments/queries/useAgentVersionsList.ts","webpack://portainer/./app/portainer/home/EnvironmentList/index.ts","webpack://portainer/./app/portainer/home/EdgeLoadingSpinner.tsx","webpack://portainer/./app/portainer/home/EdgeLoadingSpinner.module.css?2c07","webpack://portainer/./app/portainer/home/home.service.ts","webpack://portainer/./app/portainer/home/MotdPanel.tsx","webpack://portainer/./app/portainer/home/LicenseNodePanel.tsx","webpack://portainer/./app/portainer/services/api/backup.service.ts","webpack://portainer/./app/portainer/home/BackupFailedPanel.tsx","webpack://portainer/./app/portainer/home/HomeView.tsx","webpack://portainer/./app/portainer/home/index.ts","webpack://portainer/./app/portainer/access-control/index.ts","webpack://portainer/./app/react/components/TagSelector/TagSelector.tsx","webpack://portainer/./app/react/components/TagSelector/TagSelector.module.css?dce8","webpack://portainer/./app/portainer/react/components/file-upload-field.ts","webpack://portainer/./app/portainer/react/components/switch-field.ts","webpack://portainer/./app/react/portainer/custom-templates/components/CustomTemplatesVariablesDefinitionField/CustomTemplatesVariablesDefinitionField.tsx","webpack://portainer/./app/portainer/react/components/custom-templates/variables-field.ts","webpack://portainer/./app/portainer/react/components/custom-templates/index.ts","webpack://portainer/./app/react/portainer/custom-templates/components/CustomTemplatesVariablesField/CustomTemplatesVariablesField.tsx","webpack://portainer/./app/portainer/react/components/index.ts","webpack://portainer/./app/react/components/PasswordCheckHint.tsx","webpack://portainer/./app/react/components/FallbackImage.tsx","webpack://portainer/./app/react/components/ReactQueryDevtoolsWrapper.tsx","webpack://portainer/./app/react/portainer/environments/wizard/components/Option/Option.tsx","webpack://portainer/./app/react/portainer/environments/wizard/components/Option/Option.module.css?6843","webpack://portainer/./app/portainer/environments/environment.service/create.ts","webpack://portainer/./app/react/portainer/environments/wizard/HomeView/useFetchOrCreateLocalEnvironment.ts","webpack://portainer/./app/react/portainer/environments/wizard/HomeView/HomeView.module.css?3029","webpack://portainer/./app/react/portainer/environments/wizard/HomeView/HomeView.tsx","webpack://portainer/./app/react/portainer/environments/wizard/hooks/useCreateEdgeDeviceParam.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentTypeSelectView/kaas-icon.svg","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentTypeSelectView/environment-types.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentTypeSelectView/EnvironmentSelector.tsx","webpack://portainer/./app/react/components/Stepper/Stepper.tsx","webpack://portainer/./app/react/components/Stepper/Stepper.module.css?ee23","webpack://portainer/./app/portainer/environments/queries/useCreateEnvironmentMutation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/MetadataFieldset/GroupsField.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/MetadataFieldset/MetadataFieldset.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/MoreSettingsSection.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/Hardware.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/NameField.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/EdgeAgentTab/EdgeAgentForm/PortainerUrlField.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/EdgeAgentTab/EdgeAgentForm/EdgeAgentFieldset.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/MetadataFieldset/validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/EdgeAgentTab/EdgeAgentForm/EdgeAgentForm.validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/EdgeAgentTab/EdgeAgentForm/EdgeAgentForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/EdgeAgentTab/EdgeAgentTab.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/useOnlyEdgeOptions.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/AgentForm/EnvironmentUrlField.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/AgentForm/AgentForm.validation.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/shared/AgentForm/AgentForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/AgentTab/DeploymentScripts.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/AgentTab/AgentTab.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/APITab/TLSFieldset.tsx","webpack://portainer/./app/portainer/helpers/yup-file-validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/APITab/APIForm.validation.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/APITab/APIForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/APITab/DeploymentScripts.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/APITab/APITab.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/SocketTab/SocketForm.validation.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/SocketTab/SocketForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/SocketTab/SocketTab.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardDocker/WizardDocker.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardAzure/WizardAzure.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKubernetes/DeploymentScripts.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKubernetes/AgentPanel.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKubernetes/KubeConfig/KubeConfig.validation.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKubernetes/KubeConfig/KubeConfigForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKubernetes/WizardKubernetes.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardNomad/WizardNomad.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardEndpointsList/WizardEndpointsList.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardEndpointsList/WizardEndpointsList.module.css?db60","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/types.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/KaasProvidersSelector.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/utils.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/converter.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/kaas.service.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/queries.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/GKECreateClusterForm/validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/useSetAvailableOption.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/shared/CredentialsField.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/shared/ActionsSection.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/shared/KaaSInfoText.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/GKECreateClusterForm/GKECreateClusterForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/ApiCreateClusterForm/ApiCreateClusterForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/AzureCreateClusterForm/AzureCreateClusterForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/EKSCreateClusterForm/EKSCreateClusterForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/ProviderForm.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/WizardKaaS.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/WizardKaaS.validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/ApiCreateClusterForm/validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/AzureCreateClusterForm/validation.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/WizardKaaS/EKSCreateClusterForm/validation.ts","webpack://portainer/./app/portainer/react/views/wizard.ts","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/EnvironmentsCreationView.tsx","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentsCreationView/EnvironmentsCreationView.module.css?2094","webpack://portainer/./app/react/portainer/environments/wizard/EnvironmentTypeSelectView/EndpointTypeView.tsx","webpack://portainer/./app/portainer/react/views/index.ts","webpack://portainer/./app/react/portainer/registries/ListView/DefaultRegistry/DefaultRegistryName.tsx","webpack://portainer/./app/react/portainer/registries/ListView/DefaultRegistry/DefaultRegistryAction.tsx","webpack://portainer/./app/react/portainer/registries/ListView/DefaultRegistry/DefaultRegistryDomain.tsx","webpack://portainer/./app/react/portainer/account/CreateAccessTokenView/CreateAccessToken.tsx","webpack://portainer/./app/portainer/react/index.ts","webpack://portainer/./app/react/sidebar/useSidebarState.tsx","webpack://portainer/./app/react/sidebar/SidebarItem/Wrapper.tsx","webpack://portainer/./app/react/sidebar/SidebarItem/utils.ts","webpack://portainer/./app/react/sidebar/SidebarItem/Menu.tsx","webpack://portainer/./app/react/sidebar/SidebarItem/Head.tsx","webpack://portainer/./app/react/sidebar/SidebarItem/index.ts","webpack://portainer/./app/react/sidebar/SidebarItem/SidebarItem.tsx","webpack://portainer/./app/react/sidebar/SidebarSection.tsx","webpack://portainer/./app/react/sidebar/EdgeComputeSidebar.tsx","webpack://portainer/./app/react/portainer/environments/utils/docker.svg","webpack://portainer/./app/react/portainer/environments/utils/azure.svg","webpack://portainer/./app/react/portainer/environments/utils/kubernetes.svg","webpack://portainer/./app/react/portainer/environments/utils/nomad.svg","webpack://portainer/./app/react/portainer/environments/utils/get-platform-icon.ts","webpack://portainer/./app/react/sidebar/items/DashboardLink.tsx","webpack://portainer/./app/react/sidebar/AzureSidebar/AzureSidebar.tsx","webpack://portainer/./app/react/sidebar/items/VolumesLink.tsx","webpack://portainer/./app/react/sidebar/DockerSidebar.tsx","webpack://portainer/./app/portainer/services/terminal-window.ts","webpack://portainer/./app/react/sidebar/KubernetesSidebar/KubectlShell/KubectlShell.tsx","webpack://portainer/./app/react/sidebar/KubernetesSidebar/KubectlShell/KubectlShell.module.css?3135","webpack://portainer/./app/react/sidebar/KubernetesSidebar/KubectlShell/KubectlShellButton.tsx","webpack://portainer/./app/react/sidebar/KubernetesSidebar/KubectlShell/KubectlShellButton.module.css?8d5d","webpack://portainer/./app/react/sidebar/KubernetesSidebar/KubernetesSidebar.tsx","webpack://portainer/./app/react/sidebar/NomadSidebar/NomadSidebar.tsx","webpack://portainer/./app/react/sidebar/EnvironmentSidebar.tsx","webpack://portainer/./app/react/sidebar/EnvironmentSidebar.module.css?43f4","webpack://portainer/./app/react/sidebar/SettingsSidebar.tsx","webpack://portainer/./app/react/sidebar/Footer/UpdateNotifications.tsx","webpack://portainer/./app/react/sidebar/Footer/UpdateNotifications.module.css?f05e","webpack://portainer/./app/react/sidebar/Footer/portainer_logo.svg","webpack://portainer/./app/react/sidebar/Footer/Footer.module.css?214d","webpack://portainer/./app/react/sidebar/Footer/BuildInfoModal.tsx","webpack://portainer/./app/react/sidebar/Footer/Footer.tsx","webpack://portainer/./app/react/sidebar/Header.tsx","webpack://portainer/./app/react/sidebar/Header.module.css?1fea","webpack://portainer/./app/portainer/react/views/sidebar.ts","webpack://portainer/./app/react/sidebar/Sidebar.tsx","webpack://portainer/./app/react/sidebar/Sidebar.module.css?f14d","webpack://portainer/./app/portainer/__module.js","webpack://portainer/./app/portainer/components/InformationPanel/InformationPanelAngular.js","webpack://portainer/./app/portainer/components/access-datatable/accessDatatable.js","webpack://portainer/./app/portainer/components/access-datatable/accessDatatableController.js","webpack://portainer/./app/portainer/components/access-table/access-table.js","webpack://portainer/./app/portainer/components/accessControlForm/por-access-control-form.js","webpack://portainer/./app/portainer/components/accessControlForm/porAccessControlFormController.js","webpack://portainer/./app/portainer/components/accessControlForm/porAccessControlFormModel.js","webpack://portainer/./app/portainer/components/accessManagement/index.js","webpack://portainer/./app/portainer/components/accessManagement/por-access-management-users-selector/index.js","webpack://portainer/./app/portainer/components/accessManagement/por-access-management.js","webpack://portainer/./app/portainer/components/accessManagement/porAccessManagementController.js","webpack://portainer/./app/portainer/components/associated-endpoints-selector/associatedEndpointsSelector.js","webpack://portainer/./app/portainer/components/associated-endpoints-selector/associatedEndpointsSelectorController.js","webpack://portainer/./app/portainer/components/autofocus.js","webpack://portainer/./app/portainer/components/beta-panel/betaPanel.js","webpack://portainer/./app/portainer/components/buttonSpinner.js","webpack://portainer/./app/portainer/components/code-editor/code-editor.js","webpack://portainer/./app/portainer/components/code-editor/codeEditorController.js","webpack://portainer/./app/portainer/components/copy-button/copy-button.controller.js","webpack://portainer/./app/portainer/components/copy-button/copy-button.js","webpack://portainer/./app/portainer/components/cronRule.js","webpack://portainer/./app/portainer/components/custom-template-common-fields/customTemplateCommonFieldsController.js","webpack://portainer/./app/portainer/components/custom-template-common-fields/index.js","webpack://portainer/./app/portainer/components/custom-template-selector/custom-template-selector.controller.js","webpack://portainer/./app/portainer/components/custom-template-selector/index.js","webpack://portainer/./app/portainer/components/custom-templates-list/customTemplatesListController.js","webpack://portainer/./app/portainer/components/custom-templates-list/index.js","webpack://portainer/./app/portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.controller.js","webpack://portainer/./app/portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.js","webpack://portainer/./app/portainer/components/datatables/datatable-columns-visibility/datatable-columns-visibility.controller.js","webpack://portainer/./app/portainer/components/datatables/datatable-columns-visibility/index.js","webpack://portainer/./app/portainer/components/datatables/endpoints-datatable/endpointsDatatable.js","webpack://portainer/./app/portainer/components/datatables/endpoints-datatable/endpointsDatatableController.js","webpack://portainer/./app/portainer/components/datatables/filter/datatable-filter.controller.js","webpack://portainer/./app/portainer/components/datatables/filter/index.js","webpack://portainer/./app/portainer/components/datatables/genericDatatableController.js","webpack://portainer/./app/portainer/components/datatables/groups-datatable/groupsDatatable.js","webpack://portainer/./app/portainer/components/datatables/index.js","webpack://portainer/./app/portainer/components/datatables/pagination/index.js","webpack://portainer/./app/portainer/components/datatables/registries-datatable/registriesDatatable.js","webpack://portainer/./app/portainer/components/datatables/registries-datatable/registriesDatatableController.js","webpack://portainer/./app/portainer/components/datatables/sort-icon/datatable-sort-icon.controller.js","webpack://portainer/./app/portainer/components/datatables/sort-icon/index.js","webpack://portainer/./app/portainer/components/datatables/stacks-datatable/stacksDatatable.js","webpack://portainer/./app/portainer/components/datatables/stacks-datatable/stacksDatatableController.js","webpack://portainer/./app/portainer/components/datatables/strings-datatable/index.js","webpack://portainer/./app/portainer/components/datatables/tags-datatable/tagsDatatable.js","webpack://portainer/./app/portainer/components/datatables/teams-datatable/teamsDatatable.js","webpack://portainer/./app/portainer/components/datatables/titlebar/index.js","webpack://portainer/./app/portainer/components/datatables/users-datatable/usersDatatable.js","webpack://portainer/./app/portainer/components/datatables/users-datatable/usersDatatableController.js","webpack://portainer/./app/portainer/components/date-range-picker/date-range-picker-api.js","webpack://portainer/./app/portainer/components/date-range-picker/date-range-picker.js","webpack://portainer/./app/portainer/components/date-range-picker/index.js","webpack://portainer/./app/portainer/components/demo-feature-indicator/demo-feature-indicator.controller.js","webpack://portainer/./app/portainer/components/demo-feature-indicator/index.js","webpack://portainer/./app/portainer/components/endpoint-selector/endpoint-selector.js","webpack://portainer/./app/portainer/components/endpoint-selector/endpointSelectorController.js","webpack://portainer/./app/portainer/components/endpointSecurity/por-endpoint-security.js","webpack://portainer/./app/portainer/components/endpointSecurity/porEndpointSecurityController.js","webpack://portainer/./app/portainer/components/endpointSecurity/porEndpointSecurityModel.js","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-panel.controller.js","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/environment-variables-simple-mode-item.controller.js","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/index.js","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode.controller.js","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/index.js","webpack://portainer/./app/portainer/components/environment-variables-panel/index.js","webpack://portainer/./app/portainer/components/focusIf.js","webpack://portainer/./app/portainer/components/form-components/file-upload-form/index.js","webpack://portainer/./app/portainer/components/form-components/index.js","webpack://portainer/./app/portainer/components/form-components/web-editor-form/index.js","webpack://portainer/./app/portainer/components/form-components/web-editor-form/web-editor-form.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/git-form-additional-file-item.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-files-panel.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auth-fieldset/git-form-auth-fieldset.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auth-fieldset/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auto-update-fieldset/git-form-auto-update-fieldset.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auto-update-fieldset/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-compose-path-field/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-info-panel/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-ref-field/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form-url-field/index.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form.controller.js","webpack://portainer/./app/portainer/components/forms/git-form/git-form.js","webpack://portainer/./app/portainer/components/forms/git-form/index.js","webpack://portainer/./app/portainer/components/forms/group-form/group-form.js","webpack://portainer/./app/portainer/components/forms/group-form/groupFormController.js","webpack://portainer/./app/portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.controller.js","webpack://portainer/./app/portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.js","webpack://portainer/./app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js","webpack://portainer/./app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.js","webpack://portainer/./app/portainer/components/forms/registry-form-aws-ecr/registry-form-ecr.js","webpack://portainer/./app/portainer/components/forms/registry-form-azure/registry-form-azure.js","webpack://portainer/./app/portainer/components/forms/registry-form-custom/registry-form-custom.js","webpack://portainer/./app/portainer/components/forms/registry-form-dockerhub/registry-form-dockerhub.js","webpack://portainer/./app/portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatable.js","webpack://portainer/./app/portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatableController.js","webpack://portainer/./app/portainer/components/forms/registry-form-gitlab/registry-form-gitlab.js","webpack://portainer/./app/portainer/components/forms/registry-form-proget/registry-form-proget.js","webpack://portainer/./app/portainer/components/forms/registry-form-quay/registry-form-quay.js","webpack://portainer/./app/portainer/components/forms/stack-from-template-form/index.js","webpack://portainer/./app/portainer/components/forms/stack-redeploy-git-form/index.js","webpack://portainer/./app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js","webpack://portainer/./app/portainer/components/group-association-table/group-association-table.js","webpack://portainer/./app/portainer/components/widget/index.ts","webpack://portainer/./app/portainer/components/widget/rd-widget.ts","webpack://portainer/./app/portainer/components/widget/rd-widget-body.ts","webpack://portainer/./app/portainer/components/widget/rd-widget-custom-header.ts","webpack://portainer/./app/portainer/components/widget/rd-widget-footer.ts","webpack://portainer/./app/portainer/components/widget/rd-widget-title.ts","webpack://portainer/./app/portainer/components/widget/rd-widget-taskbar.ts","webpack://portainer/./app/portainer/components/BEFeatureIndicator/BEFeatureIndicator.controller.ts","webpack://portainer/./app/portainer/components/BEFeatureIndicator/index.ts","webpack://portainer/./app/portainer/components/index.js","webpack://portainer/./app/portainer/components/information-panel-offline/informationPanelOffline.js","webpack://portainer/./app/portainer/components/information-panel-offline/informationPanelOfflineController.js","webpack://portainer/./app/portainer/components/intervalFormat.js","webpack://portainer/./app/portainer/components/onEnterKey.js","webpack://portainer/./app/portainer/components/option-panel/index.js","webpack://portainer/./app/portainer/components/option-panel/option-panel.controller.js","webpack://portainer/./app/portainer/components/product-list/product-item/product-item.js","webpack://portainer/./app/portainer/components/product-list/product-list.js","webpack://portainer/./app/portainer/components/registry-details/index.js","webpack://portainer/./app/portainer/components/sensitive-details/sensitive-details.js","webpack://portainer/./app/portainer/components/show-hide/show-hide.js","webpack://portainer/./app/portainer/components/slider/slider.js","webpack://portainer/./app/portainer/components/slider/sliderController.js","webpack://portainer/./app/portainer/components/stack-duplication-form/stack-duplication-form-controller.js","webpack://portainer/./app/portainer/components/stack-duplication-form/stack-duplication-form.js","webpack://portainer/./app/portainer/components/status-indicator/index.js","webpack://portainer/./app/portainer/components/template-list/template-item/template-item.js","webpack://portainer/./app/portainer/components/template-list/template-list-controller.js","webpack://portainer/./app/portainer/components/template-list/template-list.js","webpack://portainer/./app/portainer/components/template-widget.js","webpack://portainer/./app/portainer/components/theme/options.tsx","webpack://portainer/./app/portainer/components/theme/theme-settings.controller.js","webpack://portainer/./app/portainer/components/theme/theme-settings.js","webpack://portainer/./app/portainer/components/time-window-display/index.js","webpack://portainer/./app/portainer/components/time-window-display/time-window-display.controller.js","webpack://portainer/./app/portainer/components/time-window-picker/index.js","webpack://portainer/./app/portainer/components/time-window-picker/time-window-picker.controller.js","webpack://portainer/./app/portainer/environments/azure-endpoint-config/azure-endpoint-config.js","webpack://portainer/./app/portainer/filters/filters.js","webpack://portainer/./app/portainer/filters/index.js","webpack://portainer/./app/portainer/helpers/endpointHelper.js","webpack://portainer/./app/portainer/helpers/env-vars.js","webpack://portainer/./app/portainer/helpers/formHelper.js","webpack://portainer/./app/portainer/helpers/genericHelper.js","webpack://portainer/./app/portainer/helpers/networkHelper.js","webpack://portainer/./app/portainer/helpers/pathHelper.js","webpack://portainer/./app/portainer/helpers/resourceControlHelper.js","webpack://portainer/./app/portainer/helpers/stackHelper.js","webpack://portainer/./app/portainer/helpers/tagHelper.js","webpack://portainer/./app/portainer/helpers/templateHelper.js","webpack://portainer/./app/portainer/helpers/urlHelper.js","webpack://portainer/./app/portainer/helpers/webhookHelper.js","webpack://portainer/./app/portainer/interceptors/endpointStatusInterceptor.js","webpack://portainer/./app/portainer/license-management/add-license.view/add-license.view.controller.js","webpack://portainer/./app/portainer/license-management/add-license.view/add-license.view.js","webpack://portainer/./app/portainer/license-management/add-license.view/index.js","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/index.js","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/license-item/index.js","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/license-item/license-item.controller.js","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/licenses-form.controller.js","webpack://portainer/./app/portainer/license-management/index.js","webpack://portainer/./app/portainer/license-management/licenses.view/index.js","webpack://portainer/./app/portainer/license-management/licenses.view/license-info/index.js","webpack://portainer/./app/portainer/license-management/licenses.view/license-info/license-info.controller.js","webpack://portainer/./app/portainer/license-management/licenses.view/licenses-datatable/index.js","webpack://portainer/./app/portainer/license-management/licenses.view/licenses.view.controller.js","webpack://portainer/./app/portainer/license-management/licenses.view/licenses.view.js","webpack://portainer/./app/portainer/models/access.js","webpack://portainer/./app/portainer/models/dockerhub.js","webpack://portainer/./app/portainer/models/endpoint/formValues.js","webpack://portainer/./app/portainer/models/endpoint/models.js","webpack://portainer/./app/portainer/models/gitlabRegistry.js","webpack://portainer/./app/portainer/models/group.js","webpack://portainer/./app/portainer/models/registry.js","webpack://portainer/./app/portainer/models/registryRepository.js","webpack://portainer/./app/portainer/models/registryTypes.js","webpack://portainer/./app/portainer/models/resourceControl/resourceControlCreatePayload.js","webpack://portainer/./app/portainer/models/resourceControl/resourceControlOwnershipParameters.js","webpack://portainer/./app/portainer/models/schedule.js","webpack://portainer/./app/portainer/models/settings.js","webpack://portainer/./app/portainer/models/stack.js","webpack://portainer/./app/portainer/models/status.js","webpack://portainer/./app/portainer/models/tag.js","webpack://portainer/./app/portainer/models/team.js","webpack://portainer/./app/portainer/models/teamMembership.js","webpack://portainer/./app/portainer/models/template.js","webpack://portainer/./app/portainer/models/user.js","webpack://portainer/./app/portainer/models/webhook.js","webpack://portainer/./app/portainer/oauth/__module.js","webpack://portainer/./app/portainer/oauth/components/oauth-providers-selector/index.js","webpack://portainer/./app/portainer/oauth/components/oauth-providers-selector/oauth-options.tsx","webpack://portainer/./app/portainer/oauth/components/oauth-providers-selector/oauth-provider-selector.controller.js","webpack://portainer/./app/portainer/oauth/components/oauth-settings/index.js","webpack://portainer/./app/portainer/oauth/components/oauth-settings/oauth-settings.controller.js","webpack://portainer/./app/portainer/oauth/components/oauth-settings/providers.js","webpack://portainer/./app/portainer/oauth/services/rest/oauth.js","webpack://portainer/./app/portainer/rbac/components/access-viewer/access-viewer-datatable/index.js","webpack://portainer/./app/portainer/rbac/components/access-viewer/access-viewer.controller.js","webpack://portainer/./app/portainer/rbac/components/access-viewer/index.js","webpack://portainer/./app/portainer/rbac/components/roles-datatable/index.js","webpack://portainer/./app/portainer/rbac/components/roles-datatable/roles-datatable.controller.js","webpack://portainer/./app/portainer/rbac/directives/authorization.js","webpack://portainer/./app/portainer/rbac/directives/disable-authorization.js","webpack://portainer/./app/portainer/rbac/directives/excludeAuthorization.js","webpack://portainer/./app/portainer/rbac/index.js","webpack://portainer/./app/portainer/rbac/models/access.js","webpack://portainer/./app/portainer/rbac/models/role.js","webpack://portainer/./app/portainer/rbac/rest/role.js","webpack://portainer/./app/portainer/rbac/services/role.rest.js","webpack://portainer/./app/portainer/rbac/services/role.service.js","webpack://portainer/./app/portainer/rbac/views/roles/index.js","webpack://portainer/./app/portainer/rbac/views/roles/roles.controller.js","webpack://portainer/./app/portainer/rbac/views/roles/rolesController.js","webpack://portainer/./app/portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatable.js","webpack://portainer/./app/portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatableController.js","webpack://portainer/./app/portainer/registry-management/components/registries-repository-tags-datatable/registriesRepositoryTagsDatatable.js","webpack://portainer/./app/portainer/registry-management/components/registries-repository-tags-datatable/registryRepositoriesTagsDatatableController.js","webpack://portainer/./app/portainer/registry-management/helpers/localRegistryHelper.js","webpack://portainer/./app/portainer/registry-management/index.js","webpack://portainer/./app/portainer/registry-management/models/gitlabRegistry.js","webpack://portainer/./app/portainer/registry-management/models/registryImageDetails.js","webpack://portainer/./app/portainer/registry-management/models/registryImageLayer.js","webpack://portainer/./app/portainer/registry-management/models/registryRepository.js","webpack://portainer/./app/portainer/registry-management/models/repositoryTag.js","webpack://portainer/./app/portainer/registry-management/rest/catalog.js","webpack://portainer/./app/portainer/registry-management/rest/manifestJquery.js","webpack://portainer/./app/portainer/registry-management/rest/tags.js","webpack://portainer/./app/portainer/registry-management/rest/transform/gitlabResponseGetLink.js","webpack://portainer/./app/portainer/registry-management/rest/transform/linkGetResponse.js","webpack://portainer/./app/portainer/registry-management/services/genericAsyncGenerator.js","webpack://portainer/./app/portainer/registry-management/services/registryServiceSelector.js","webpack://portainer/./app/portainer/registry-management/services/registryV2Service.js","webpack://portainer/./app/portainer/registry-management/views/configure/controller.js","webpack://portainer/./app/portainer/registry-management/views/configure/index.js","webpack://portainer/./app/portainer/registry-management/views/repositories/controller.js","webpack://portainer/./app/portainer/registry-management/views/repositories/edit/controller.js","webpack://portainer/./app/portainer/registry-management/views/repositories/edit/progression-modal/index.js","webpack://portainer/./app/portainer/registry-management/views/repositories/index.js","webpack://portainer/./app/portainer/registry-management/views/repositories/tag/controller.js","webpack://portainer/./app/portainer/registry-management/views/repositories/tag/index.js","webpack://portainer/./app/portainer/rest/auth.js","webpack://portainer/./app/portainer/rest/backup.js","webpack://portainer/./app/portainer/rest/customTemplate.js","webpack://portainer/./app/portainer/rest/ecr.js","webpack://portainer/./app/portainer/rest/endpoint.js","webpack://portainer/./app/portainer/rest/gitlab.js","webpack://portainer/./app/portainer/rest/group.js","webpack://portainer/./app/portainer/rest/registry.js","webpack://portainer/./app/portainer/rest/resourceControl.js","webpack://portainer/./app/portainer/rest/settings.js","webpack://portainer/./app/portainer/rest/ssl.js","webpack://portainer/./app/portainer/rest/stack.js","webpack://portainer/./app/portainer/rest/status.js","webpack://portainer/./app/portainer/rest/support.js","webpack://portainer/./app/portainer/rest/tag.js","webpack://portainer/./app/portainer/rest/team.js","webpack://portainer/./app/portainer/rest/teamMembership.js","webpack://portainer/./app/portainer/rest/template.js","webpack://portainer/./app/portainer/rest/transform/getEndpointsTotalCount.js","webpack://portainer/./app/portainer/rest/transform/gitlabResponseGetLink.js","webpack://portainer/./app/portainer/rest/user.js","webpack://portainer/./app/portainer/rest/webhooks.js","webpack://portainer/./app/portainer/services/allSettled.js","webpack://portainer/./app/portainer/services/api/accessService.js","webpack://portainer/./app/portainer/services/api/backupService.js","webpack://portainer/./app/portainer/services/api/customTemplate.js","webpack://portainer/./app/portainer/services/api/dockerhubService.js","webpack://portainer/./app/portainer/services/api/endpointService.js","webpack://portainer/./app/portainer/services/api/groupService.js","webpack://portainer/./app/portainer/services/api/registryService.js","webpack://portainer/./app/portainer/services/api/resourceControlService.js","webpack://portainer/./app/portainer/services/api/settingsService.js","webpack://portainer/./app/portainer/services/api/sslService.js","webpack://portainer/./app/portainer/services/api/stackService.js","webpack://portainer/./app/portainer/services/api/statusService.js","webpack://portainer/./app/portainer/services/api/supportService.js","webpack://portainer/./app/portainer/services/api/tagService.js","webpack://portainer/./app/portainer/services/api/teamMembershipService.js","webpack://portainer/./app/portainer/services/api/teamService.js","webpack://portainer/./app/portainer/services/api/templateService.js","webpack://portainer/./app/portainer/services/api/userService.js","webpack://portainer/./app/portainer/services/api/webhookService.js","webpack://portainer/./app/portainer/services/async.js","webpack://portainer/./app/portainer/services/authentication.js","webpack://portainer/./app/portainer/services/chartService.js","webpack://portainer/./app/portainer/services/codeMirror.js","webpack://portainer/./app/portainer/services/datatableService.js","webpack://portainer/./app/portainer/services/endpointProvider.js","webpack://portainer/./app/portainer/services/fileUpload.js","webpack://portainer/./app/portainer/services/formValidator.js","webpack://portainer/./app/portainer/services/localStorage.js","webpack://portainer/./app/portainer/services/nameValidator.js","webpack://portainer/./app/portainer/services/pagination.js","webpack://portainer/./app/portainer/services/registryEcrService.js","webpack://portainer/./app/portainer/services/registryGitlabService.js","webpack://portainer/./app/portainer/services/registryModalService.js","webpack://portainer/./app/portainer/services/session-storage.js","webpack://portainer/./app/portainer/services/stateManager.js","webpack://portainer/./app/portainer/services/themeManager.js","webpack://portainer/./app/portainer/settings/authentication/auth-method-constants.js","webpack://portainer/./app/portainer/settings/authentication/auth-type-constants.js","webpack://portainer/./app/portainer/settings/authentication/auto-user-provision-toggle/index.js","webpack://portainer/./app/portainer/settings/authentication/components/SaveAuthSettingsButton.tsx","webpack://portainer/./app/portainer/settings/authentication/internal-auth/components/Badge.tsx","webpack://portainer/./app/portainer/settings/authentication/internal-auth/components/PasswordLengthSlider/PasswordLengthSlider.module.css?b3be","webpack://portainer/./app/portainer/settings/authentication/internal-auth/components/PasswordLengthSlider/PasswordLengthSlider.tsx","webpack://portainer/./app/portainer/settings/authentication/internal-auth/InternalAuth.tsx","webpack://portainer/./app/portainer/settings/authentication/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ad-settings/ad-settings.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ad-settings/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-connectivity-check/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-admin-group/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-admin-group/ldap-custom-admin-group.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-group-search/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-group-search/ldap-custom-group-search.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-user-search/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-user-search/ldap-custom-user-search.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search-item/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search-item/ldap-group-search-item.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search/ldap-group-search.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-groups-datatable/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-custom/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-custom/ldap-settings-custom.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-dn-builder/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-dn-builder/ldap-settings-dn-builder.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/ldap-settings-group-dn-builder.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-openldap/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-openldap/ldap-settings-openldap.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-security/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-test-login/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-test-login/ldap-settings-test-login.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings.model.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings/ldap-options.tsx","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings/ldap-settings.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search-item/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search-item/ldap-user-search-item.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search/ldap-user-search.controller.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-users-datatable/index.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap.rest.js","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap.service.js","webpack://portainer/./app/portainer/settings/authentication/save-auth-settings-button/index.js","webpack://portainer/./app/portainer/settings/general/index.js","webpack://portainer/./app/portainer/settings/general/ssl-certificate/index.js","webpack://portainer/./app/portainer/settings/general/ssl-certificate/ssl-certificate.controller.js","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/CredentialsDatatableActions.tsx","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/columns/name.tsx","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/columns/provider.tsx","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/CredentialsDatatable.tsx","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/columns/index.ts","webpack://portainer/./app/portainer/settings/cloud/CloudCredentialsDatatable/CredentialsDatatableContainer.tsx","webpack://portainer/./app/portainer/settings/cloud/CloudView.tsx","webpack://portainer/./app/portainer/settings/cloud/index.ts","webpack://portainer/./app/portainer/settings/cloud/components/CloudProviderSelector.tsx","webpack://portainer/./app/portainer/settings/cloud/CreateCredentialsView/CreateCredentialView.tsx","webpack://portainer/./app/portainer/settings/cloud/EditCredentialView/EditCredentialForm.tsx","webpack://portainer/./app/portainer/settings/cloud/CreateCredentialsView/index.ts","webpack://portainer/./app/portainer/settings/cloud/EditCredentialView/EditCredentialView.tsx","webpack://portainer/./app/portainer/settings/cloud/EditCredentialView/index.ts","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/FDOProfilesDatatableActions.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/columns/created.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/columns/name.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/FDOProfilesDatatable.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/columns/index.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/useFDOProfiles.tsx","webpack://portainer/./app/portainer/settings/edge-compute/FDOProfilesDatatable/FDOProfilesDatatableContainer.tsx","webpack://portainer/./app/portainer/settings/edge-compute/SettingsFDO/index.ts","webpack://portainer/./app/portainer/settings/edge-compute/SettingsFDO/SettingsFDO.tsx","webpack://portainer/./app/portainer/settings/edge-compute/SettingsFDO/SettingsFDO.validation.ts","webpack://portainer/./app/portainer/settings/edge-compute/SettingsFDO/SettingsFDO.module.css?f08e","webpack://portainer/./app/portainer/settings/edge-compute/SettingsOpenAMT/index.ts","webpack://portainer/./app/portainer/settings/edge-compute/SettingsOpenAMT/SettingsOpenAMT.tsx","webpack://portainer/./app/portainer/settings/edge-compute/SettingsOpenAMT/SettingsOpenAMT.validation.ts","webpack://portainer/./app/portainer/settings/edge-compute/EdgeComputeSettings/EdgeComputeSettings.tsx","webpack://portainer/./app/portainer/settings/edge-compute/EdgeComputeSettings/EdgeComputeSettings.validation.ts","webpack://portainer/./app/portainer/environments/environment.service/edge.ts","webpack://portainer/./app/portainer/settings/edge-compute/AutomaticEdgeEnvCreation/EnableWaitingRoomSwitch.tsx","webpack://portainer/./app/portainer/settings/edge-compute/AutomaticEdgeEnvCreation/AutoEnvCreationSettingsForm.tsx","webpack://portainer/./app/portainer/settings/edge-compute/AutomaticEdgeEnvCreation/AutomaticEdgeEnvCreation.tsx","webpack://portainer/./app/portainer/settings/edge-compute/DeploymentSyncOptions/DeploymentSyncOptions.tsx","webpack://portainer/./app/portainer/settings/edge-compute/EdgeComputeSettingsView.tsx","webpack://portainer/./app/portainer/settings/index.js","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-datatable/activity-logs-datatable.controller.js","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-datatable/index.js","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-view.controller.js","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-view.js","webpack://portainer/./app/portainer/user-activity/activity-logs-view/index.js","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-datatable/auth-logs-datatable.controller.js","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-datatable/index.js","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-view.controller.js","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-view.js","webpack://portainer/./app/portainer/user-activity/auth-logs-view/index.js","webpack://portainer/./app/portainer/user-activity/index.js","webpack://portainer/./app/portainer/user-activity/user-activity.rest.js","webpack://portainer/./app/portainer/user-activity/user-activity.service.js","webpack://portainer/./app/portainer/views/account/accountController.js","webpack://portainer/./app/portainer/views/account/create-user-access-token/create-user-access-token.controller.js","webpack://portainer/./app/portainer/views/account/create-user-access-token/index.js","webpack://portainer/./app/portainer/views/auth/authController.js","webpack://portainer/./app/portainer/views/custom-templates/create-custom-template-view/createCustomTemplateViewController.js","webpack://portainer/./app/portainer/views/custom-templates/create-custom-template-view/index.js","webpack://portainer/./app/portainer/views/custom-templates/custom-templates-view/customTemplatesViewController.js","webpack://portainer/./app/portainer/views/custom-templates/custom-templates-view/index.js","webpack://portainer/./app/portainer/views/custom-templates/edit-custom-template-view/editCustomTemplateViewController.js","webpack://portainer/./app/portainer/views/custom-templates/edit-custom-template-view/index.js","webpack://portainer/./app/portainer/views/devices/import/importDeviceController.js","webpack://portainer/./app/portainer/views/devices/profiles/add/addProfileController.js","webpack://portainer/./app/portainer/views/devices/profiles/add/index.js","webpack://portainer/./app/portainer/views/devices/profiles/edit/editProfileController.js","webpack://portainer/./app/portainer/views/devices/profiles/edit/index.js","webpack://portainer/./app/portainer/views/endpoint-registries/registries.js","webpack://portainer/./app/portainer/views/endpoint-registries/registriesController.js","webpack://portainer/./app/portainer/views/endpoints/access/endpointAccessController.js","webpack://portainer/./app/portainer/views/endpoints/edit/endpointController.js","webpack://portainer/./app/portainer/views/endpoints/endpointsController.js","webpack://portainer/./app/portainer/views/endpoints/helpers.js","webpack://portainer/./app/portainer/views/endpoints/kvm/endpointKVMController.js","webpack://portainer/./app/portainer/views/endpoints/kvm/KVMControl.tsx","webpack://portainer/./app/portainer/views/endpoints/kvm/index.js","webpack://portainer/./app/portainer/views/groups/access/groupAccessController.js","webpack://portainer/./app/portainer/views/groups/create/createGroupController.js","webpack://portainer/./app/portainer/views/groups/edit/groupController.js","webpack://portainer/./app/portainer/views/groups/groupsController.js","webpack://portainer/./app/portainer/views/init/admin/initAdminController.js","webpack://portainer/./app/portainer/views/init/endpoint/initEndpointController.js","webpack://portainer/./app/portainer/views/init/init-license.view/index.js","webpack://portainer/./app/portainer/views/init/init-license.view/init-license.view.controller.js","webpack://portainer/./app/portainer/views/internal-auth/internalAuthController.js","webpack://portainer/./app/portainer/views/logout/logoutController.js","webpack://portainer/./app/portainer/views/main/mainController.js","webpack://portainer/./app/portainer/views/registries/create/createRegistry.js","webpack://portainer/./app/portainer/views/registries/create/options.tsx","webpack://portainer/./app/portainer/views/registries/create/createRegistryController.js","webpack://portainer/./app/portainer/views/registries/edit/registry.js","webpack://portainer/./app/portainer/views/registries/edit/registryController.js","webpack://portainer/./app/portainer/views/registries/registriesController.js","webpack://portainer/./app/assets/ico/oauth.svg","webpack://portainer/./app/portainer/views/settings/authentication/options.tsx","webpack://portainer/./app/portainer/views/settings/authentication/settingsAuthenticationController.js","webpack://portainer/./app/portainer/views/settings/edge-compute/index.js","webpack://portainer/./app/portainer/views/settings/edge-compute/settingsEdgeComputeController.js","webpack://portainer/./app/portainer/views/settings/options.tsx","webpack://portainer/./app/portainer/views/settings/settingsController.js","webpack://portainer/./app/portainer/views/stacks/create/createStackController.js","webpack://portainer/./app/react/docker/stacks/types.ts","webpack://portainer/./app/portainer/views/stacks/edit/stackController.js","webpack://portainer/./app/portainer/views/stacks/stacksController.js","webpack://portainer/./app/portainer/views/tags/tagsController.js","webpack://portainer/./app/portainer/views/teams/edit/teamController.js","webpack://portainer/./app/portainer/views/teams/teamsController.js","webpack://portainer/./app/portainer/views/templates/templatesController.js","webpack://portainer/./app/portainer/views/users/edit/userController.js","webpack://portainer/./app/portainer/views/users/usersController.js","webpack://portainer/./app/react/docker/images/image.service.ts","webpack://portainer/./app/react/docker/components/ImageStatus/ImageStatus.tsx","webpack://portainer/./app/setup-tests/global-setup.js","webpack://portainer/./app/vendors.js","webpack://portainer/./app/agent/components/file-uploader/fileUploader.html","webpack://portainer/./app/agent/components/files-datatable/filesDatatable.html","webpack://portainer/./app/agent/components/host-browser/hostBrowser.html","webpack://portainer/./app/agent/components/node-selector/nodeSelector.html","webpack://portainer/./app/agent/components/volume-browser/volumeBrowser.html","webpack://portainer/./app/docker/components/container-capabilities/containerCapabilities.html","webpack://portainer/./app/docker/components/container-restart-policy/container-restart-policy.html","webpack://portainer/./app/docker/components/dashboard-cluster-agent-info/dashboardClusterAgentInfo.html","webpack://portainer/./app/docker/components/datatables/configs-datatable/configsDatatable.html","webpack://portainer/./app/docker/components/datatables/container-networks-datatable/containerNetworksDatatable.html","webpack://portainer/./app/docker/components/datatables/container-processes-datatable/containerProcessesDatatable.html","webpack://portainer/./app/docker/components/datatables/events-datatable/eventsDatatable.html","webpack://portainer/./app/docker/components/datatables/images-datatable/imagesDatatable.html","webpack://portainer/./app/docker/components/datatables/macvlan-nodes-datatable/macvlanNodesDatatable.html","webpack://portainer/./app/docker/components/datatables/networks-datatable/network-row-content/networkRowContent.html","webpack://portainer/./app/docker/components/datatables/networks-datatable/networksDatatable.html","webpack://portainer/./app/docker/components/datatables/node-tasks-datatable/nodeTasksDatatable.html","webpack://portainer/./app/docker/components/datatables/nodes-datatable/nodesDatatable.html","webpack://portainer/./app/docker/components/datatables/secrets-datatable/secretsDatatable.html","webpack://portainer/./app/docker/components/datatables/service-tasks-datatable/serviceTasksDatatable.html","webpack://portainer/./app/docker/components/datatables/services-datatable/actions/servicesDatatableActions.html","webpack://portainer/./app/docker/components/datatables/services-datatable/servicesDatatable.html","webpack://portainer/./app/docker/components/datatables/tasks-datatable/tasksDatatable.html","webpack://portainer/./app/docker/components/datatables/volumes-datatable/volumesDatatable.html","webpack://portainer/./app/docker/components/host-overview/host-overview.html","webpack://portainer/./app/docker/components/host-view-panels/devices-panel/devices-panel.html","webpack://portainer/./app/docker/components/host-view-panels/disks-panel/disks-panel.html","webpack://portainer/./app/docker/components/host-view-panels/engine-details-panel/engine-details-panel.html","webpack://portainer/./app/docker/components/host-view-panels/host-details-panel/host-details-panel.html","webpack://portainer/./app/docker/components/host-view-panels/node-availability-select/node-availability-select.html","webpack://portainer/./app/docker/components/host-view-panels/node-labels-table/node-labels-table.html","webpack://portainer/./app/docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel.html","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry-rate-limits.html","webpack://portainer/./app/docker/components/imageRegistry/por-image-registry.html","webpack://portainer/./app/docker/components/log-viewer/logViewer.html","webpack://portainer/./app/docker/components/network-macvlan-form/networkMacvlanForm.html","webpack://portainer/./app/docker/components/volumesCIFSForm/volumesCifsForm.html","webpack://portainer/./app/docker/components/volumesNFSForm/volumesnfsForm.html","webpack://portainer/./app/docker/views/configs/configs.html","webpack://portainer/./app/docker/views/configs/create/createconfig.html","webpack://portainer/./app/docker/views/configs/edit/config.html","webpack://portainer/./app/docker/views/containers/console/attach.html","webpack://portainer/./app/docker/views/containers/console/exec.html","webpack://portainer/./app/docker/views/containers/create/createcontainer.html","webpack://portainer/./app/docker/views/containers/edit/container.html","webpack://portainer/./app/docker/views/containers/inspect/containerinspect.html","webpack://portainer/./app/docker/views/containers/logs/containerlogs.html","webpack://portainer/./app/docker/views/containers/stats/containerstats.html","webpack://portainer/./app/docker/views/dashboard/dashboard.html","webpack://portainer/./app/docker/views/docker-features-configuration/docker-features-configuration.html","webpack://portainer/./app/docker/views/events/events.html","webpack://portainer/./app/docker/views/host/host-browser-view/host-browser-view.html","webpack://portainer/./app/docker/views/host/host-view.html","webpack://portainer/./app/docker/views/images/build/buildimage.html","webpack://portainer/./app/docker/views/images/edit/image.html","webpack://portainer/./app/docker/views/images/images.html","webpack://portainer/./app/docker/views/images/import/importimage.html","webpack://portainer/./app/docker/views/networks/create/createnetwork.html","webpack://portainer/./app/docker/views/networks/networks.html","webpack://portainer/./app/docker/views/nodes/node-browser/node-browser.html","webpack://portainer/./app/docker/views/nodes/node-details/node-details-view.html","webpack://portainer/./app/docker/views/registries/access/registryAccess.html","webpack://portainer/./app/docker/views/secrets/create/createsecret.html","webpack://portainer/./app/docker/views/secrets/edit/secret.html","webpack://portainer/./app/docker/views/secrets/secrets.html","webpack://portainer/./app/docker/views/services/create/createservice.html","webpack://portainer/./app/docker/views/services/create/includes/config.html","webpack://portainer/./app/docker/views/services/create/includes/resources-placement.html","webpack://portainer/./app/docker/views/services/create/includes/secret.html","webpack://portainer/./app/docker/views/services/create/includes/update-restart.html","webpack://portainer/./app/docker/views/services/edit/includes/configs.html","webpack://portainer/./app/docker/views/services/edit/includes/constraints.html","webpack://portainer/./app/docker/views/services/edit/includes/container-specs.html","webpack://portainer/./app/docker/views/services/edit/includes/containerlabels.html","webpack://portainer/./app/docker/views/services/edit/includes/environmentvariables.html","webpack://portainer/./app/docker/views/services/edit/includes/hosts.html","webpack://portainer/./app/docker/views/services/edit/includes/image.html","webpack://portainer/./app/docker/views/services/edit/includes/logging.html","webpack://portainer/./app/docker/views/services/edit/includes/mounts.html","webpack://portainer/./app/docker/views/services/edit/includes/networks.html","webpack://portainer/./app/docker/views/services/edit/includes/placementPreferences.html","webpack://portainer/./app/docker/views/services/edit/includes/ports.html","webpack://portainer/./app/docker/views/services/edit/includes/resources.html","webpack://portainer/./app/docker/views/services/edit/includes/restart.html","webpack://portainer/./app/docker/views/services/edit/includes/secrets.html","webpack://portainer/./app/docker/views/services/edit/includes/servicelabels.html","webpack://portainer/./app/docker/views/services/edit/includes/tasks.html","webpack://portainer/./app/docker/views/services/edit/includes/updateconfig.html","webpack://portainer/./app/docker/views/services/edit/service.html","webpack://portainer/./app/docker/views/services/logs/servicelogs.html","webpack://portainer/./app/docker/views/services/services.html","webpack://portainer/./app/docker/views/swarm/swarm.html","webpack://portainer/./app/docker/views/swarm/visualizer/swarmvisualizer.html","webpack://portainer/./app/docker/views/tasks/edit/task.html","webpack://portainer/./app/docker/views/tasks/logs/tasklogs.html","webpack://portainer/./app/docker/views/volumes/browse/browsevolume.html","webpack://portainer/./app/docker/views/volumes/create/createvolume.html","webpack://portainer/./app/docker/views/volumes/edit/volume.html","webpack://portainer/./app/docker/views/volumes/volumes.html","webpack://portainer/./app/edge/components/associated-endpoints-datatable/associatedEndpointsDatatable.html","webpack://portainer/./app/edge/components/edge-groups-selector/edgeGroupsSelector.html","webpack://portainer/./app/edge/components/edge-job-form/edgeJobForm.html","webpack://portainer/./app/edge/components/edge-job-results-datatable/edgeJobResultsDatatable.html","webpack://portainer/./app/edge/components/edge-jobs-datatable/edgeJobsDatatable.html","webpack://portainer/./app/edge/components/edge-stack-endpoints-datatable/edgeStackEndpointsDatatable.html","webpack://portainer/./app/edge/components/edge-stack-status/edgeStackStatus.html","webpack://portainer/./app/edge/components/edge-stacks-datatable/edgeStacksDatatable.html","webpack://portainer/./app/edge/components/edit-edge-stack-form/editEdgeStackForm.html","webpack://portainer/./app/edge/components/group-form/groupForm.html","webpack://portainer/./app/edge/components/groups-datatable/groupsDatatable.html","webpack://portainer/./app/edge/views/edge-groups/createEdgeGroupView/createEdgeGroupView.html","webpack://portainer/./app/edge/views/edge-groups/edgeGroupsView/edgeGroupsView.html","webpack://portainer/./app/edge/views/edge-groups/editEdgeGroupView/editEdgeGroupView.html","webpack://portainer/./app/edge/views/edge-jobs/createEdgeJobView/createEdgeJobView.html","webpack://portainer/./app/edge/views/edge-jobs/edgeJob/edgeJob.html","webpack://portainer/./app/edge/views/edge-jobs/edgeJobsView/edgeJobsView.html","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.html","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/docker-compose-form/docker-compose-form.html","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/kube-deploy-description/kube-deploy-description.html","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/kube-manifest-form.html","webpack://portainer/./app/edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/nomad-hcl-form.html","webpack://portainer/./app/edge/views/edge-stacks/edgeStacksView/edgeStacksView.html","webpack://portainer/./app/edge/views/edge-stacks/editEdgeStackView/editEdgeStackView.html","webpack://portainer/./app/kubernetes/components/datatables/application/containers-datatable/containersDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.html","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable-url/applications-datatable-url.html","webpack://portainer/./app/kubernetes/components/datatables/applications-datatable/applicationsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/configurations-datatable/configurationsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/events-datatable/eventsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/integrated-applications-datatable/integratedApplicationsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/nodes-datatable/nodesDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatable.html","webpack://portainer/./app/kubernetes/components/datatables/volumes-datatable/volumesDatatable.html","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.html","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list-item/helm-templates-list-item.html","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.html","webpack://portainer/./app/kubernetes/components/helm/helm-templates/helm-templates.html","webpack://portainer/./app/kubernetes/components/kube-services/kube-services-item/kube-services-item.html","webpack://portainer/./app/kubernetes/components/kube-services/kube-services.html","webpack://portainer/./app/kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationData.html","webpack://portainer/./app/kubernetes/components/resource-reservation/resourceReservation.html","webpack://portainer/./app/kubernetes/components/view-loading/viewLoading.html","webpack://portainer/./app/kubernetes/components/yaml-inspector/yamlInspector.html","webpack://portainer/./app/kubernetes/custom-templates/kube-create-custom-template-view/kube-create-custom-template-view.html","webpack://portainer/./app/kubernetes/custom-templates/kube-custom-templates-view/kube-custom-templates-view.html","webpack://portainer/./app/kubernetes/custom-templates/kube-edit-custom-template-view/kube-edit-custom-template-view.html","webpack://portainer/./app/kubernetes/registries/kube-registry-access-view/kube-registry-access-view.html","webpack://portainer/./app/kubernetes/views/applications/applications.html","webpack://portainer/./app/kubernetes/views/applications/console/console.html","webpack://portainer/./app/kubernetes/views/applications/create/createApplication.html","webpack://portainer/./app/kubernetes/views/applications/edit/application.html","webpack://portainer/./app/kubernetes/views/applications/edit/components/ingress-table/ingress-table.html","webpack://portainer/./app/kubernetes/views/applications/edit/components/placements-datatable/template.html","webpack://portainer/./app/kubernetes/views/applications/edit/components/services-table/services-table.html","webpack://portainer/./app/kubernetes/views/applications/helm/helm.html","webpack://portainer/./app/kubernetes/views/applications/logs/logs.html","webpack://portainer/./app/kubernetes/views/applications/stats/stats.html","webpack://portainer/./app/kubernetes/views/cluster/cluster.html","webpack://portainer/./app/kubernetes/views/cluster/node/node.html","webpack://portainer/./app/kubernetes/views/cluster/node/stats/stats.html","webpack://portainer/./app/kubernetes/views/configurations/configurations.html","webpack://portainer/./app/kubernetes/views/configurations/create/createConfiguration.html","webpack://portainer/./app/kubernetes/views/configurations/edit/configuration.html","webpack://portainer/./app/kubernetes/views/configure/configure.html","webpack://portainer/./app/kubernetes/views/dashboard/dashboard.html","webpack://portainer/./app/kubernetes/views/deploy/deploy.html","webpack://portainer/./app/kubernetes/views/resource-pools/access/resourcePoolAccess.html","webpack://portainer/./app/kubernetes/views/resource-pools/components/storage-class-switch/storage-class-switch.html","webpack://portainer/./app/kubernetes/views/resource-pools/create/createResourcePool.html","webpack://portainer/./app/kubernetes/views/resource-pools/edit/components/ingresses-datatable/template.html","webpack://portainer/./app/kubernetes/views/resource-pools/edit/resourcePool.html","webpack://portainer/./app/kubernetes/views/resource-pools/resourcePools.html","webpack://portainer/./app/kubernetes/views/security-constraint/constraint.html","webpack://portainer/./app/kubernetes/views/stacks/logs/logs.html","webpack://portainer/./app/kubernetes/views/summary/summary.html","webpack://portainer/./app/kubernetes/views/volumes/components/volumes-storages-datatable/template.html","webpack://portainer/./app/kubernetes/views/volumes/edit/volume.html","webpack://portainer/./app/kubernetes/views/volumes/volumes.html","webpack://portainer/./app/nomad/Logs/logs.html","webpack://portainer/./app/nomad/Logs/nomad-log-viewer/nomadLogViewer.html","webpack://portainer/./app/portainer/components/BEFeatureIndicator/BEFeatureIndicator.html","webpack://portainer/./app/portainer/components/InformationPanel/InformationPanelAngular.html","webpack://portainer/./app/portainer/components/access-datatable/accessDatatable.html","webpack://portainer/./app/portainer/components/access-table/accessTable.html","webpack://portainer/./app/portainer/components/accessControlForm/porAccessControlForm.html","webpack://portainer/./app/portainer/components/accessManagement/por-access-management-users-selector/por-access-management-users-selector.html","webpack://portainer/./app/portainer/components/accessManagement/porAccessManagement.html","webpack://portainer/./app/portainer/components/associated-endpoints-selector/associatedEndpointsSelector.html","webpack://portainer/./app/portainer/components/beta-panel/betaPanel.html","webpack://portainer/./app/portainer/components/code-editor/codeEditor.html","webpack://portainer/./app/portainer/components/copy-button/copy-button.html","webpack://portainer/./app/portainer/components/custom-template-common-fields/customTemplateCommonFields.html","webpack://portainer/./app/portainer/components/custom-template-selector/custom-template-selector.html","webpack://portainer/./app/portainer/components/custom-templates-list/customTemplatesList.html","webpack://portainer/./app/portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.html","webpack://portainer/./app/portainer/components/datatables/datatable-columns-visibility/datatable-columns-visibility.html","webpack://portainer/./app/portainer/components/datatables/endpoints-datatable/endpointsDatatable.html","webpack://portainer/./app/portainer/components/datatables/filter/datatable-filter.html","webpack://portainer/./app/portainer/components/datatables/groups-datatable/groupsDatatable.html","webpack://portainer/./app/portainer/components/datatables/pagination/pagination.html","webpack://portainer/./app/portainer/components/datatables/registries-datatable/registriesDatatable.html","webpack://portainer/./app/portainer/components/datatables/sort-icon/datatable-sort-icon.html","webpack://portainer/./app/portainer/components/datatables/stacks-datatable/stacksDatatable.html","webpack://portainer/./app/portainer/components/datatables/strings-datatable/strings-datatable.html","webpack://portainer/./app/portainer/components/datatables/tags-datatable/tagsDatatable.html","webpack://portainer/./app/portainer/components/datatables/teams-datatable/teamsDatatable.html","webpack://portainer/./app/portainer/components/datatables/titlebar/datatable-titlebar.html","webpack://portainer/./app/portainer/components/datatables/users-datatable/usersDatatable.html","webpack://portainer/./app/portainer/components/date-range-picker/date-range-picker.html","webpack://portainer/./app/portainer/components/demo-feature-indicator/demo-feature-indicator.html","webpack://portainer/./app/portainer/components/endpoint-selector/endpointSelector.html","webpack://portainer/./app/portainer/components/endpointSecurity/porEndpointSecurity.html","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-panel.html","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/environment-variables-simple-mode-item.html","webpack://portainer/./app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode.html","webpack://portainer/./app/portainer/components/form-components/file-upload-form/file-upload-form.html","webpack://portainer/./app/portainer/components/form-components/web-editor-form/web-editor-form.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/git-form-additional-file-item.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-files-panel.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auth-fieldset/git-form-auth-fieldset.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-auto-update-fieldset/git-form-auto-update-fieldset.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-compose-path-field/git-form-compose-path-field.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-info-panel/git-form-info-panel.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-ref-field/git-form-ref-field.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form-url-field/git-form-url-field.html","webpack://portainer/./app/portainer/components/forms/git-form/git-form.html","webpack://portainer/./app/portainer/components/forms/group-form/groupForm.html","webpack://portainer/./app/portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.html","webpack://portainer/./app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.html","webpack://portainer/./app/portainer/components/forms/registry-form-aws-ecr/registry-form-ecr.html","webpack://portainer/./app/portainer/components/forms/registry-form-azure/registry-form-azure.html","webpack://portainer/./app/portainer/components/forms/registry-form-custom/registry-form-custom.html","webpack://portainer/./app/portainer/components/forms/registry-form-dockerhub/registry-form-dockerhub.html","webpack://portainer/./app/portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatable.html","webpack://portainer/./app/portainer/components/forms/registry-form-gitlab/registry-form-gitlab.html","webpack://portainer/./app/portainer/components/forms/registry-form-proget/registry-form-proget.html","webpack://portainer/./app/portainer/components/forms/registry-form-quay/registry-form-quay.html","webpack://portainer/./app/portainer/components/forms/stack-from-template-form/stackFromTemplateForm.html","webpack://portainer/./app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.html","webpack://portainer/./app/portainer/components/group-association-table/groupAssociationTable.html","webpack://portainer/./app/portainer/components/information-panel-offline/informationPanelOffline.html","webpack://portainer/./app/portainer/components/option-panel/option-panel.html","webpack://portainer/./app/portainer/components/product-list/product-item/productItem.html","webpack://portainer/./app/portainer/components/product-list/productList.html","webpack://portainer/./app/portainer/components/registry-details/registry-details.html","webpack://portainer/./app/portainer/components/sensitive-details/sensitive-details.html","webpack://portainer/./app/portainer/components/show-hide/show-hide.html","webpack://portainer/./app/portainer/components/slider/slider.html","webpack://portainer/./app/portainer/components/stack-duplication-form/stack-duplication-form.html","webpack://portainer/./app/portainer/components/status-indicator/status-indicator.html","webpack://portainer/./app/portainer/components/template-list/template-item/templateItem.html","webpack://portainer/./app/portainer/components/template-list/templateList.html","webpack://portainer/./app/portainer/components/theme/theme-settings.html","webpack://portainer/./app/portainer/components/time-window-display/time-window-display.html","webpack://portainer/./app/portainer/components/time-window-picker/time-window-picker.html","webpack://portainer/./app/portainer/environments/azure-endpoint-config/azureEndpointConfig.html","webpack://portainer/./app/portainer/license-management/add-license.view/add-license.view.html","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/license-item/license-item.html","webpack://portainer/./app/portainer/license-management/add-license.view/licenses-form/licenses-form.html","webpack://portainer/./app/portainer/license-management/licenses.view/license-info/license-info.html","webpack://portainer/./app/portainer/license-management/licenses.view/licenses-datatable/licenses-datatable.html","webpack://portainer/./app/portainer/license-management/licenses.view/licenses.view.html","webpack://portainer/./app/portainer/oauth/components/oauth-providers-selector/oauth-providers-selector.html","webpack://portainer/./app/portainer/oauth/components/oauth-settings/oauth-settings.html","webpack://portainer/./app/portainer/rbac/components/access-viewer/access-viewer-datatable/access-viewer-datatable.html","webpack://portainer/./app/portainer/rbac/components/access-viewer/access-viewer.html","webpack://portainer/./app/portainer/rbac/components/roles-datatable/roles-datatable.html","webpack://portainer/./app/portainer/rbac/views/roles/roles.html","webpack://portainer/./app/portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatable.html","webpack://portainer/./app/portainer/registry-management/components/registries-repository-tags-datatable/registriesRepositoryTagsDatatable.html","webpack://portainer/./app/portainer/registry-management/views/configure/template.html","webpack://portainer/./app/portainer/registry-management/views/repositories/edit/progression-modal/template.html","webpack://portainer/./app/portainer/registry-management/views/repositories/edit/template.html","webpack://portainer/./app/portainer/registry-management/views/repositories/tag/template.html","webpack://portainer/./app/portainer/registry-management/views/repositories/template.html","webpack://portainer/./app/portainer/settings/authentication/auto-user-provision-toggle/auto-user-provision-toggle.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ad-settings/ad-settings.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-connectivity-check/ldap-connectivity-check.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-admin-group/ldap-custom-admin-group.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-group-search/ldap-custom-group-search.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-custom-user-search/ldap-custom-user-search.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search-item/ldap-group-search-item.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-group-search/ldap-group-search.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-groups-datatable/ldap-groups-datatable.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-custom/ldap-settings-custom.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-dn-builder/ldap-settings-dn-builder.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/ldap-settings-group-dn-builder.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-openldap/ldap-settings-openldap.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-security/ldap-settings-security.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings-test-login/ldap-settings-test-login.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-settings/ldap-settings.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search-item/ldap-user-search-item.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-user-search/ldap-user-search.html","webpack://portainer/./app/portainer/settings/authentication/ldap/ldap-users-datatable/ldap-users-datatable.html","webpack://portainer/./app/portainer/settings/authentication/save-auth-settings-button/save-auth-settings-button.html","webpack://portainer/./app/portainer/settings/general/ssl-certificate/ssl-certificate.html","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-datatable/activity-logs-datatable.html","webpack://portainer/./app/portainer/user-activity/activity-logs-view/activity-logs-view.html","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-datatable/auth-logs-datatable.html","webpack://portainer/./app/portainer/user-activity/auth-logs-view/auth-logs-view.html","webpack://portainer/./app/portainer/views/account/account.html","webpack://portainer/./app/portainer/views/account/create-user-access-token/create-user-access-token.html","webpack://portainer/./app/portainer/views/auth/auth.html","webpack://portainer/./app/portainer/views/custom-templates/create-custom-template-view/createCustomTemplateView.html","webpack://portainer/./app/portainer/views/custom-templates/custom-templates-view/customTemplatesView.html","webpack://portainer/./app/portainer/views/custom-templates/edit-custom-template-view/editCustomTemplateView.html","webpack://portainer/./app/portainer/views/devices/import/importDevice.html","webpack://portainer/./app/portainer/views/devices/profiles/add/addProfile.html","webpack://portainer/./app/portainer/views/devices/profiles/edit/editProfile.html","webpack://portainer/./app/portainer/views/endpoint-registries/registries.html","webpack://portainer/./app/portainer/views/endpoints/access/endpointAccess.html","webpack://portainer/./app/portainer/views/endpoints/edit/endpoint.html","webpack://portainer/./app/portainer/views/endpoints/endpoints.html","webpack://portainer/./app/portainer/views/endpoints/kvm/endpointKVM.html","webpack://portainer/./app/portainer/views/groups/access/groupAccess.html","webpack://portainer/./app/portainer/views/groups/create/creategroup.html","webpack://portainer/./app/portainer/views/groups/edit/group.html","webpack://portainer/./app/portainer/views/groups/groups.html","webpack://portainer/./app/portainer/views/init/admin/initAdmin.html","webpack://portainer/./app/portainer/views/init/endpoint/includes/agent.html","webpack://portainer/./app/portainer/views/init/endpoint/includes/localDocker.html","webpack://portainer/./app/portainer/views/init/endpoint/includes/localKubernetes.html","webpack://portainer/./app/portainer/views/init/endpoint/initEndpoint.html","webpack://portainer/./app/portainer/views/init/init-license.view/init-license.view.html","webpack://portainer/./app/portainer/views/internal-auth/internal-auth.html","webpack://portainer/./app/portainer/views/logout/logout.html","webpack://portainer/./app/portainer/views/registries/create/createRegistry.html","webpack://portainer/./app/portainer/views/registries/edit/registry.html","webpack://portainer/./app/portainer/views/registries/registries.html","webpack://portainer/./app/portainer/views/settings/authentication/settingsAuthentication.html","webpack://portainer/./app/portainer/views/settings/edge-compute/settingsEdgeCompute.html","webpack://portainer/./app/portainer/views/settings/settings.html","webpack://portainer/./app/portainer/views/stacks/create/createstack.html","webpack://portainer/./app/portainer/views/stacks/edit/stack.html","webpack://portainer/./app/portainer/views/stacks/stacks.html","webpack://portainer/./app/portainer/views/tags/tags.html","webpack://portainer/./app/portainer/views/teams/edit/team.html","webpack://portainer/./app/portainer/views/teams/teams.html","webpack://portainer/./app/portainer/views/templates/templates.html","webpack://portainer/./app/portainer/views/users/edit/user.html","webpack://portainer/./app/portainer/views/users/users.html"],"sourcesContent":["var map = {\n\t\"./__mocks__/fileMock.js\": 14691,\n\t\"./__mocks__/styleMock.js\": 12534,\n\t\"./__mocks__/svg.js\": 38541,\n\t\"./agent/components/file-uploader/fileUploaderController.js\": 75947,\n\t\"./agent/components/file-uploader/index.js\": 38123,\n\t\"./agent/components/files-datatable/index.js\": 46161,\n\t\"./agent/components/host-browser/hostBrowserController.js\": 10822,\n\t\"./agent/components/host-browser/index.js\": 70627,\n\t\"./agent/components/node-selector/index.js\": 60744,\n\t\"./agent/components/node-selector/nodeSelectorController.js\": 42102,\n\t\"./agent/components/volume-browser/index.js\": 41775,\n\t\"./agent/components/volume-browser/volumeBrowserController.js\": 14087,\n\t\"./agent/index.js\": 26317,\n\t\"./agent/models/agent.js\": 99662,\n\t\"./agent/rest/agent.js\": 21249,\n\t\"./agent/rest/browse.js\": 56192,\n\t\"./agent/rest/dockerhub.js\": 26084,\n\t\"./agent/rest/host.js\": 74298,\n\t\"./agent/rest/ping.js\": 79688,\n\t\"./agent/rest/response/browse.js\": 94477,\n\t\"./agent/rest/v1/agent.js\": 40941,\n\t\"./agent/rest/v1/browse.js\": 91130,\n\t\"./agent/services/agentService.js\": 78548,\n\t\"./agent/services/hostBrowserService.js\": 77884,\n\t\"./agent/services/pingService.js\": 38918,\n\t\"./agent/services/volumeBrowserService.js\": 45824,\n\t\"./angulartics.matomo/index.js\": 14916,\n\t\"./app.js\": 54905,\n\t\"./assets/css/index.js\": 92502,\n\t\"./config.js\": 98767,\n\t\"./constants.js\": 71541,\n\t\"./docker/__module.js\": 13481,\n\t\"./docker/components/container-capabilities/container-capabilities.controller.js\": 99831,\n\t\"./docker/components/container-capabilities/container-capabilities.js\": 83088,\n\t\"./docker/components/container-restart-policy/container-restart-policy-controller.js\": 17592,\n\t\"./docker/components/container-restart-policy/container-restart-policy.js\": 8270,\n\t\"./docker/components/dashboard-cluster-agent-info/dashboard-cluster-agent-info.js\": 15772,\n\t\"./docker/components/dashboard-cluster-agent-info/dashboardClusterAgentInfoController.js\": 26419,\n\t\"./docker/components/datatables/configs-datatable/configsDatatable.js\": 62135,\n\t\"./docker/components/datatables/container-networks-datatable/containerNetworksDatatable.js\": 65532,\n\t\"./docker/components/datatables/container-networks-datatable/containerNetworksDatatableController.js\": 50015,\n\t\"./docker/components/datatables/container-processes-datatable/containerProcessesDatatable.js\": 67723,\n\t\"./docker/components/datatables/events-datatable/eventsDatatable.js\": 3716,\n\t\"./docker/components/datatables/images-datatable/imagesDatatable.js\": 61389,\n\t\"./docker/components/datatables/images-datatable/imagesDatatableController.js\": 40650,\n\t\"./docker/components/datatables/macvlan-nodes-datatable/macvlanNodesDatatable.js\": 78570,\n\t\"./docker/components/datatables/networks-datatable/network-row-content/networkRowContent.js\": 24342,\n\t\"./docker/components/datatables/networks-datatable/networksDatatable.js\": 21035,\n\t\"./docker/components/datatables/networks-datatable/networksDatatableController.js\": 22821,\n\t\"./docker/components/datatables/node-tasks-datatable/nodeTasksDatatable.js\": 90712,\n\t\"./docker/components/datatables/nodes-datatable/nodesDatatable.js\": 66951,\n\t\"./docker/components/datatables/secrets-datatable/secretsDatatable.js\": 1087,\n\t\"./docker/components/datatables/service-tasks-datatable/serviceTasksDatatable.js\": 30700,\n\t\"./docker/components/datatables/service-tasks-datatable/serviceTasksDatatableController.js\": 83076,\n\t\"./docker/components/datatables/services-datatable/actions/servicesDatatableActions.js\": 88840,\n\t\"./docker/components/datatables/services-datatable/actions/servicesDatatableActionsController.js\": 3474,\n\t\"./docker/components/datatables/services-datatable/servicesDatatable.js\": 22601,\n\t\"./docker/components/datatables/services-datatable/servicesDatatableController.js\": 46311,\n\t\"./docker/components/datatables/tasks-datatable/tasksDatatable.js\": 77886,\n\t\"./docker/components/datatables/tasks-datatable/tasksDatatableController.js\": 33740,\n\t\"./docker/components/datatables/volumes-datatable/volumesDatatable.js\": 75198,\n\t\"./docker/components/datatables/volumes-datatable/volumesDatatableController.js\": 72091,\n\t\"./docker/components/host-overview/host-overview.js\": 37610,\n\t\"./docker/components/host-view-panels/devices-panel/devices-panel.js\": 85943,\n\t\"./docker/components/host-view-panels/disks-panel/disks-panel.js\": 40210,\n\t\"./docker/components/host-view-panels/engine-details-panel/engine-details-panel.js\": 25203,\n\t\"./docker/components/host-view-panels/host-details-panel/host-details-panel.js\": 68181,\n\t\"./docker/components/host-view-panels/node-availability-select/node-availability-select-controller.js\": 44162,\n\t\"./docker/components/host-view-panels/node-availability-select/node-availability-select.js\": 28031,\n\t\"./docker/components/host-view-panels/node-labels-table/node-labels-table-controller.js\": 55024,\n\t\"./docker/components/host-view-panels/node-labels-table/node-labels-table.js\": 96399,\n\t\"./docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel-controller.js\": 70395,\n\t\"./docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel.js\": 98186,\n\t\"./docker/components/imageRegistry/por-image-registry-rate-limits.controller.js\": 72749,\n\t\"./docker/components/imageRegistry/por-image-registry-rate-limits.js\": 64906,\n\t\"./docker/components/imageRegistry/por-image-registry.controller.js\": 22429,\n\t\"./docker/components/imageRegistry/por-image-registry.js\": 91653,\n\t\"./docker/components/log-viewer/log-viewer.js\": 69760,\n\t\"./docker/components/log-viewer/logViewerController.js\": 89410,\n\t\"./docker/components/network-macvlan-form/network-macvlan-form.js\": 22852,\n\t\"./docker/components/network-macvlan-form/networkMacvlanFormController.js\": 3476,\n\t\"./docker/components/network-macvlan-form/networkMacvlanFormModel.js\": 50373,\n\t\"./docker/components/volumesCIFSForm/volumesCifsForm.js\": 8470,\n\t\"./docker/components/volumesCIFSForm/volumesCifsFormModel.js\": 86668,\n\t\"./docker/components/volumesNFSForm/volumes-nfs-form.js\": 87959,\n\t\"./docker/components/volumesNFSForm/volumesNFSFormModel.js\": 4819,\n\t\"./docker/filters/filters.js\": 50352,\n\t\"./docker/helpers/configHelper.js\": 52161,\n\t\"./docker/helpers/constraintsHelper.js\": 82556,\n\t\"./docker/helpers/containerHelper.js\": 5204,\n\t\"./docker/helpers/imageHelper.js\": 20886,\n\t\"./docker/helpers/infoHelper.js\": 46313,\n\t\"./docker/helpers/labelHelper.js\": 6264,\n\t\"./docker/helpers/logHelper.js\": 9954,\n\t\"./docker/helpers/networkHelper.js\": 69452,\n\t\"./docker/helpers/nodeHelper.js\": 80677,\n\t\"./docker/helpers/secretHelper.js\": 45665,\n\t\"./docker/helpers/serviceHelper.js\": 18743,\n\t\"./docker/helpers/taskHelper.js\": 22588,\n\t\"./docker/helpers/volumeHelper.js\": 60069,\n\t\"./docker/interceptors/containersInterceptor.js\": 8691,\n\t\"./docker/interceptors/imagesInterceptor.js\": 18872,\n\t\"./docker/interceptors/infoInterceptor.js\": 84395,\n\t\"./docker/interceptors/networksInterceptor.js\": 2630,\n\t\"./docker/interceptors/versionInterceptor.js\": 73166,\n\t\"./docker/interceptors/volumesInterceptor.js\": 33022,\n\t\"./docker/models/config.js\": 66807,\n\t\"./docker/models/container.js\": 12064,\n\t\"./docker/models/containerCapabilities.js\": 66328,\n\t\"./docker/models/event.js\": 44333,\n\t\"./docker/models/image.js\": 84647,\n\t\"./docker/models/imageDetails.js\": 56946,\n\t\"./docker/models/imageLayer.js\": 75208,\n\t\"./docker/models/network.js\": 70983,\n\t\"./docker/models/node.js\": 11339,\n\t\"./docker/models/plugin.js\": 34161,\n\t\"./docker/models/porImageRegistry.js\": 76939,\n\t\"./docker/models/secret.js\": 89638,\n\t\"./docker/models/service.js\": 7456,\n\t\"./docker/models/swarm.js\": 90906,\n\t\"./docker/models/task.js\": 59146,\n\t\"./docker/models/volume.js\": 80682,\n\t\"./docker/rest/build.js\": 27401,\n\t\"./docker/rest/commit.js\": 66055,\n\t\"./docker/rest/config.js\": 12477,\n\t\"./docker/rest/container.js\": 82791,\n\t\"./docker/rest/exec.js\": 6396,\n\t\"./docker/rest/image.js\": 10679,\n\t\"./docker/rest/network.js\": 96452,\n\t\"./docker/rest/node.js\": 71989,\n\t\"./docker/rest/plugin.js\": 357,\n\t\"./docker/rest/response/handlers.js\": 12944,\n\t\"./docker/rest/response/image.js\": 89615,\n\t\"./docker/rest/secret.js\": 64522,\n\t\"./docker/rest/service.js\": 49449,\n\t\"./docker/rest/swarm.js\": 52358,\n\t\"./docker/rest/system.js\": 61489,\n\t\"./docker/rest/systemEndpoint.js\": 86666,\n\t\"./docker/rest/task.js\": 3446,\n\t\"./docker/rest/volume.js\": 28192,\n\t\"./docker/services/buildService.js\": 90544,\n\t\"./docker/services/configService.js\": 81287,\n\t\"./docker/services/containerService.js\": 40725,\n\t\"./docker/services/execService.js\": 9401,\n\t\"./docker/services/imageService.js\": 45203,\n\t\"./docker/services/networkService.js\": 23116,\n\t\"./docker/services/nodeService.js\": 39272,\n\t\"./docker/services/pluginService.js\": 52589,\n\t\"./docker/services/secretService.js\": 50225,\n\t\"./docker/services/serviceService.js\": 52550,\n\t\"./docker/services/swarmService.js\": 15268,\n\t\"./docker/services/systemService.js\": 39983,\n\t\"./docker/services/taskService.js\": 98585,\n\t\"./docker/services/volumeService.js\": 31746,\n\t\"./docker/views/configs/configsController.js\": 42177,\n\t\"./docker/views/configs/create/createConfigController.js\": 96068,\n\t\"./docker/views/configs/edit/configController.js\": 63301,\n\t\"./docker/views/containers/console/containerConsoleController.js\": 85196,\n\t\"./docker/views/containers/create/createContainerController.js\": 51079,\n\t\"./docker/views/containers/edit/containerController.js\": 94518,\n\t\"./docker/views/containers/inspect/containerInspectController.js\": 62897,\n\t\"./docker/views/containers/logs/containerLogsController.js\": 47381,\n\t\"./docker/views/containers/stats/containerStatsController.js\": 19393,\n\t\"./docker/views/dashboard/dashboardController.js\": 89402,\n\t\"./docker/views/docker-features-configuration/docker-features-configuration.controller.js\": 25006,\n\t\"./docker/views/docker-features-configuration/index.js\": 68958,\n\t\"./docker/views/events/eventsController.js\": 63181,\n\t\"./docker/views/host/host-browser-view/host-browser-view-controller.js\": 34776,\n\t\"./docker/views/host/host-browser-view/host-browser-view.js\": 24233,\n\t\"./docker/views/host/host-view-controller.js\": 43279,\n\t\"./docker/views/host/host-view.js\": 15906,\n\t\"./docker/views/images/build/buildImageController.js\": 88741,\n\t\"./docker/views/images/edit/imageController.js\": 37391,\n\t\"./docker/views/images/imagesController.js\": 12107,\n\t\"./docker/views/images/import/importImageController.js\": 14521,\n\t\"./docker/views/networks/create/createNetworkController.js\": 543,\n\t\"./docker/views/networks/networksController.js\": 74225,\n\t\"./docker/views/nodes/node-browser/node-browser-controller.js\": 50451,\n\t\"./docker/views/nodes/node-browser/node-browser.js\": 83602,\n\t\"./docker/views/nodes/node-details/node-details-view-controller.js\": 29978,\n\t\"./docker/views/nodes/node-details/node-details-view.js\": 74275,\n\t\"./docker/views/registries/access/registryAccess.js\": 77152,\n\t\"./docker/views/registries/access/registryAccessController.js\": 40106,\n\t\"./docker/views/secrets/create/createSecretController.js\": 65968,\n\t\"./docker/views/secrets/edit/secretController.js\": 20842,\n\t\"./docker/views/secrets/secretsController.js\": 69654,\n\t\"./docker/views/services/create/createServiceController.js\": 91188,\n\t\"./docker/views/services/edit/serviceController.js\": 1816,\n\t\"./docker/views/services/logs/serviceLogsController.js\": 59139,\n\t\"./docker/views/services/servicesController.js\": 48566,\n\t\"./docker/views/swarm/swarmController.js\": 9104,\n\t\"./docker/views/swarm/visualizer/swarmVisualizerController.js\": 83456,\n\t\"./docker/views/tasks/edit/taskController.js\": 75349,\n\t\"./docker/views/tasks/logs/taskLogsController.js\": 93356,\n\t\"./docker/views/volumes/browse/browseVolumeController.js\": 63137,\n\t\"./docker/views/volumes/create/createVolumeController.js\": 61362,\n\t\"./docker/views/volumes/edit/volumeController.js\": 28862,\n\t\"./docker/views/volumes/volumesController.js\": 6002,\n\t\"./edge/__module.js\": 90609,\n\t\"./edge/components/associated-endpoints-datatable/associatedEndpointsDatatableController.js\": 24381,\n\t\"./edge/components/associated-endpoints-datatable/index.js\": 34139,\n\t\"./edge/components/edge-groups-selector/index.js\": 72155,\n\t\"./edge/components/edge-job-form/edgeJobFormController.js\": 267,\n\t\"./edge/components/edge-job-form/index.js\": 59788,\n\t\"./edge/components/edge-job-results-datatable/edgeJobResultsDatatableController.js\": 11314,\n\t\"./edge/components/edge-job-results-datatable/index.js\": 46642,\n\t\"./edge/components/edge-jobs-datatable/index.js\": 25758,\n\t\"./edge/components/edge-stack-deployment-type-selector/index.js\": 95,\n\t\"./edge/components/edge-stack-endpoints-datatable/edgeStackEndpointsDatatableController.js\": 67383,\n\t\"./edge/components/edge-stack-endpoints-datatable/index.js\": 91505,\n\t\"./edge/components/edge-stack-status/edgeStackStatusController.js\": 794,\n\t\"./edge/components/edge-stack-status/index.js\": 26342,\n\t\"./edge/components/edge-stacks-datatable/index.js\": 70018,\n\t\"./edge/components/edit-edge-stack-form/editEdgeStackFormController.js\": 83205,\n\t\"./edge/components/edit-edge-stack-form/index.js\": 56037,\n\t\"./edge/components/group-form/groupFormController.js\": 88633,\n\t\"./edge/components/group-form/index.js\": 36906,\n\t\"./edge/components/groups-datatable/groupsDatatableController.js\": 9868,\n\t\"./edge/components/groups-datatable/index.js\": 36267,\n\t\"./edge/rest/edge-groups.js\": 65658,\n\t\"./edge/rest/edge-job-results.js\": 96791,\n\t\"./edge/rest/edge-jobs.js\": 2056,\n\t\"./edge/rest/edge-stacks.js\": 86796,\n\t\"./edge/rest/edge-templates.js\": 42163,\n\t\"./edge/services/edge-group.js\": 800,\n\t\"./edge/services/edge-job.js\": 30221,\n\t\"./edge/services/edge-stack.js\": 27527,\n\t\"./edge/services/edge-template.js\": 10993,\n\t\"./edge/views/edge-groups/createEdgeGroupView/createEdgeGroupViewController.js\": 44932,\n\t\"./edge/views/edge-groups/createEdgeGroupView/index.js\": 35146,\n\t\"./edge/views/edge-groups/edgeGroupsView/edgeGroupsViewController.js\": 62044,\n\t\"./edge/views/edge-groups/edgeGroupsView/index.js\": 45359,\n\t\"./edge/views/edge-groups/editEdgeGroupView/editEdgeGroupViewController.js\": 23794,\n\t\"./edge/views/edge-groups/editEdgeGroupView/index.js\": 58188,\n\t\"./edge/views/edge-jobs/createEdgeJobView/createEdgeJobViewController.js\": 8039,\n\t\"./edge/views/edge-jobs/createEdgeJobView/index.js\": 47994,\n\t\"./edge/views/edge-jobs/edgeJob/edgeJobController.js\": 87609,\n\t\"./edge/views/edge-jobs/edgeJob/index.js\": 6300,\n\t\"./edge/views/edge-jobs/edgeJobsView/edgeJobsViewController.js\": 54223,\n\t\"./edge/views/edge-jobs/edgeJobsView/index.js\": 30190,\n\t\"./edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.controller.js\": 32884,\n\t\"./edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.js\": 96478,\n\t\"./edge/views/edge-stacks/createEdgeStackView/docker-compose-form/docker-compose-form.controller.js\": 83615,\n\t\"./edge/views/edge-stacks/createEdgeStackView/docker-compose-form/index.js\": 32878,\n\t\"./edge/views/edge-stacks/createEdgeStackView/index.js\": 67169,\n\t\"./edge/views/edge-stacks/createEdgeStackView/kube-deploy-description/index.js\": 82456,\n\t\"./edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/index.js\": 56799,\n\t\"./edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/kube-manifest-form.controller.js\": 23836,\n\t\"./edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/index.js\": 69911,\n\t\"./edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/nomad-hcl-form.controller.js\": 97656,\n\t\"./edge/views/edge-stacks/edgeStacksView/edgeStacksViewController.js\": 33661,\n\t\"./edge/views/edge-stacks/edgeStacksView/index.js\": 82138,\n\t\"./edge/views/edge-stacks/editEdgeStackView/editEdgeStackViewController.js\": 66514,\n\t\"./edge/views/edge-stacks/editEdgeStackView/index.js\": 36237,\n\t\"./edge/views/edge-stacks/index.js\": 6142,\n\t\"./index.js\": 343,\n\t\"./kubernetes/__module.js\": 94734,\n\t\"./kubernetes/components/datatables/application/containers-datatable/containersDatatable.js\": 28953,\n\t\"./kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.controller.js\": 41727,\n\t\"./kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.js\": 3962,\n\t\"./kubernetes/components/datatables/applications-datatable-url/applications-datatable-url.js\": 87082,\n\t\"./kubernetes/components/datatables/applications-datatable/applicationsDatatable.js\": 42270,\n\t\"./kubernetes/components/datatables/applications-datatable/applicationsDatatableController.js\": 45941,\n\t\"./kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatable.js\": 50195,\n\t\"./kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatableController.js\": 77106,\n\t\"./kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatable.js\": 21266,\n\t\"./kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatableController.js\": 89107,\n\t\"./kubernetes/components/datatables/configurations-datatable/configurationsDatatable.js\": 95240,\n\t\"./kubernetes/components/datatables/configurations-datatable/configurationsDatatableController.js\": 63507,\n\t\"./kubernetes/components/datatables/events-datatable/eventsDatatable.js\": 39564,\n\t\"./kubernetes/components/datatables/integrated-applications-datatable/integratedApplicationsDatatable.js\": 78458,\n\t\"./kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatable.js\": 56531,\n\t\"./kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatableController.js\": 8122,\n\t\"./kubernetes/components/datatables/nodes-datatable/nodesDatatable.js\": 60810,\n\t\"./kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatable.js\": 56975,\n\t\"./kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatableController.js\": 94817,\n\t\"./kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatable.js\": 22158,\n\t\"./kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatableController.js\": 51329,\n\t\"./kubernetes/components/datatables/volumes-datatable/volumesDatatable.js\": 62925,\n\t\"./kubernetes/components/datatables/volumes-datatable/volumesDatatableController.js\": 63651,\n\t\"./kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.controller.js\": 41399,\n\t\"./kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.js\": 79553,\n\t\"./kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list-item/helm-templates-list-item.js\": 43579,\n\t\"./kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.controller.js\": 88416,\n\t\"./kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.js\": 15778,\n\t\"./kubernetes/components/helm/helm-templates/helm-templates.controller.js\": 67316,\n\t\"./kubernetes/components/helm/helm-templates/helm-templates.js\": 71228,\n\t\"./kubernetes/components/kube-services/kube-services-item/kube-services-item.controller.js\": 65473,\n\t\"./kubernetes/components/kube-services/kube-services-item/kube-services-item.js\": 1542,\n\t\"./kubernetes/components/kube-services/kube-services.controller.js\": 54466,\n\t\"./kubernetes/components/kube-services/kube-services.js\": 14957,\n\t\"./kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationData.js\": 4546,\n\t\"./kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationDataController.js\": 16591,\n\t\"./kubernetes/components/resource-reservation/resourceReservation.js\": 42718,\n\t\"./kubernetes/components/resource-reservation/resourceReservationController.js\": 44579,\n\t\"./kubernetes/components/view-loading/viewLoading.js\": 15572,\n\t\"./kubernetes/components/yaml-inspector/yamlInspector.js\": 31938,\n\t\"./kubernetes/components/yaml-inspector/yamlInspectorController.js\": 50346,\n\t\"./kubernetes/converters/application.js\": 10293,\n\t\"./kubernetes/converters/configMap.js\": 40654,\n\t\"./kubernetes/converters/configuration.js\": 10241,\n\t\"./kubernetes/converters/daemonSet.js\": 12512,\n\t\"./kubernetes/converters/deployment.js\": 95929,\n\t\"./kubernetes/converters/event.js\": 43083,\n\t\"./kubernetes/converters/namespace.js\": 2544,\n\t\"./kubernetes/converters/persistentVolumeClaim.js\": 56636,\n\t\"./kubernetes/converters/resourcePool.js\": 57911,\n\t\"./kubernetes/converters/resourceQuota.js\": 57456,\n\t\"./kubernetes/converters/secret.js\": 52341,\n\t\"./kubernetes/converters/service.js\": 86998,\n\t\"./kubernetes/converters/statefulSet.js\": 15986,\n\t\"./kubernetes/converters/storageClass.js\": 17981,\n\t\"./kubernetes/converters/volume.js\": 92192,\n\t\"./kubernetes/custom-templates/index.js\": 79023,\n\t\"./kubernetes/custom-templates/kube-create-custom-template-view/index.js\": 6793,\n\t\"./kubernetes/custom-templates/kube-create-custom-template-view/kube-create-custom-template-view.controller.js\": 2267,\n\t\"./kubernetes/custom-templates/kube-custom-templates-view/index.js\": 79403,\n\t\"./kubernetes/custom-templates/kube-custom-templates-view/kube-custom-templates-view.controller.js\": 11916,\n\t\"./kubernetes/custom-templates/kube-edit-custom-template-view/index.js\": 52657,\n\t\"./kubernetes/custom-templates/kube-edit-custom-template-view/kube-edit-custom-template-view.controller.js\": 69199,\n\t\"./kubernetes/endpoint/converter.js\": 59041,\n\t\"./kubernetes/endpoint/models.js\": 5264,\n\t\"./kubernetes/endpoint/rest.js\": 42964,\n\t\"./kubernetes/endpoint/service.js\": 5427,\n\t\"./kubernetes/filters/applicationFilters.js\": 11518,\n\t\"./kubernetes/filters/configurationFilters.js\": 63642,\n\t\"./kubernetes/filters/eventFilters.js\": 58311,\n\t\"./kubernetes/filters/filters.js\": 11634,\n\t\"./kubernetes/helm/rest.js\": 65744,\n\t\"./kubernetes/helm/service.js\": 40846,\n\t\"./kubernetes/helpers/application/index.js\": 57947,\n\t\"./kubernetes/helpers/application/rollback.js\": 65011,\n\t\"./kubernetes/helpers/commonHelper.js\": 12925,\n\t\"./kubernetes/helpers/configMapHelper.js\": 58007,\n\t\"./kubernetes/helpers/configurationHelper.js\": 51780,\n\t\"./kubernetes/helpers/eventHelper.js\": 52929,\n\t\"./kubernetes/helpers/formValidationHelper.js\": 54241,\n\t\"./kubernetes/helpers/history/daemonset.js\": 48367,\n\t\"./kubernetes/helpers/history/deployment.js\": 38215,\n\t\"./kubernetes/helpers/history/index.js\": 70224,\n\t\"./kubernetes/helpers/history/statefulset.js\": 47220,\n\t\"./kubernetes/helpers/namespaceHelper.js\": 7506,\n\t\"./kubernetes/helpers/resourceQuotaHelper.js\": 21458,\n\t\"./kubernetes/helpers/resourceReservationHelper.js\": 22229,\n\t\"./kubernetes/helpers/serviceHelper.js\": 57637,\n\t\"./kubernetes/helpers/stackHelper.js\": 41208,\n\t\"./kubernetes/helpers/stackHelper.test.js\": 69461,\n\t\"./kubernetes/helpers/volumeHelper.js\": 11507,\n\t\"./kubernetes/horizontal-pod-auto-scaler/converter.js\": 41247,\n\t\"./kubernetes/horizontal-pod-auto-scaler/helper.js\": 1239,\n\t\"./kubernetes/horizontal-pod-auto-scaler/models.js\": 90914,\n\t\"./kubernetes/horizontal-pod-auto-scaler/payload.js\": 85597,\n\t\"./kubernetes/horizontal-pod-auto-scaler/rest.js\": 61160,\n\t\"./kubernetes/horizontal-pod-auto-scaler/service.js\": 51866,\n\t\"./kubernetes/ingress/constants.js\": 62072,\n\t\"./kubernetes/ingress/converter.js\": 47086,\n\t\"./kubernetes/ingress/helper.js\": 7587,\n\t\"./kubernetes/ingress/models.js\": 27155,\n\t\"./kubernetes/ingress/payloads.js\": 17362,\n\t\"./kubernetes/ingress/rest.js\": 45678,\n\t\"./kubernetes/ingress/service.js\": 76706,\n\t\"./kubernetes/metrics/metrics.js\": 60299,\n\t\"./kubernetes/metrics/rest.js\": 26835,\n\t\"./kubernetes/models/application/formValues.js\": 14917,\n\t\"./kubernetes/models/application/models/constants.js\": 20783,\n\t\"./kubernetes/models/application/models/index.js\": 7172,\n\t\"./kubernetes/models/application/payloads.js\": 11505,\n\t\"./kubernetes/models/common/params.js\": 82469,\n\t\"./kubernetes/models/common/payloads.js\": 27367,\n\t\"./kubernetes/models/config-map/models.js\": 13978,\n\t\"./kubernetes/models/config-map/payloads.js\": 40879,\n\t\"./kubernetes/models/configuration/formvalues.js\": 30578,\n\t\"./kubernetes/models/configuration/models.js\": 82434,\n\t\"./kubernetes/models/daemon-set/models.js\": 12745,\n\t\"./kubernetes/models/daemon-set/payloads.js\": 82935,\n\t\"./kubernetes/models/deploy.js\": 6253,\n\t\"./kubernetes/models/deployment/models.js\": 59238,\n\t\"./kubernetes/models/deployment/payloads.js\": 95008,\n\t\"./kubernetes/models/event/models.js\": 82239,\n\t\"./kubernetes/models/history/models.js\": 24601,\n\t\"./kubernetes/models/namespace/models.js\": 35076,\n\t\"./kubernetes/models/namespace/payloads.js\": 63829,\n\t\"./kubernetes/models/nodes-limits/models.js\": 74335,\n\t\"./kubernetes/models/port/models.js\": 83270,\n\t\"./kubernetes/models/resource-pool/formValues.js\": 16496,\n\t\"./kubernetes/models/resource-pool/models.js\": 72210,\n\t\"./kubernetes/models/resource-quota/models.js\": 47685,\n\t\"./kubernetes/models/resource-quota/payloads.js\": 75976,\n\t\"./kubernetes/models/resource-reservation/models.js\": 46685,\n\t\"./kubernetes/models/resource-types/models.js\": 39212,\n\t\"./kubernetes/models/secret/models.js\": 69730,\n\t\"./kubernetes/models/secret/payloads.js\": 60622,\n\t\"./kubernetes/models/service/models.js\": 79990,\n\t\"./kubernetes/models/service/payloads.js\": 31249,\n\t\"./kubernetes/models/stack/models.js\": 31084,\n\t\"./kubernetes/models/stateful-set/models.js\": 91920,\n\t\"./kubernetes/models/stateful-set/payloads.js\": 13871,\n\t\"./kubernetes/models/storage-class/models.js\": 86871,\n\t\"./kubernetes/models/storage-class/payload.js\": 79824,\n\t\"./kubernetes/models/volume/models.js\": 72913,\n\t\"./kubernetes/models/volume/payloads.js\": 88296,\n\t\"./kubernetes/node/converter.js\": 76676,\n\t\"./kubernetes/node/filters.js\": 57067,\n\t\"./kubernetes/node/formValues.js\": 2949,\n\t\"./kubernetes/node/helper.js\": 14780,\n\t\"./kubernetes/node/models.js\": 48942,\n\t\"./kubernetes/node/payload.js\": 11801,\n\t\"./kubernetes/node/rest.js\": 9790,\n\t\"./kubernetes/node/service.js\": 6795,\n\t\"./kubernetes/pod/converter.js\": 22050,\n\t\"./kubernetes/pod/filters.js\": 15826,\n\t\"./kubernetes/pod/models/affinities.js\": 73689,\n\t\"./kubernetes/pod/models/index.js\": 31275,\n\t\"./kubernetes/pod/payloads/affinities.js\": 78398,\n\t\"./kubernetes/pod/payloads/create.js\": 61005,\n\t\"./kubernetes/pod/service.js\": 30754,\n\t\"./kubernetes/registries/index.js\": 87658,\n\t\"./kubernetes/registries/kube-registry-access-view/index.js\": 51482,\n\t\"./kubernetes/registries/kube-registry-access-view/kube-registry-access-view.controller.js\": 60124,\n\t\"./kubernetes/rest/configMap.js\": 83972,\n\t\"./kubernetes/rest/controllerRevision.js\": 20017,\n\t\"./kubernetes/rest/daemonSet.js\": 38345,\n\t\"./kubernetes/rest/deployment.js\": 36566,\n\t\"./kubernetes/rest/endpoint.js\": 85333,\n\t\"./kubernetes/rest/event.js\": 69673,\n\t\"./kubernetes/rest/health.js\": 71461,\n\t\"./kubernetes/rest/namespace.js\": 82475,\n\t\"./kubernetes/rest/nodesLimits.js\": 40912,\n\t\"./kubernetes/rest/opa.js\": 45247,\n\t\"./kubernetes/rest/persistentVolumeClaim.js\": 58732,\n\t\"./kubernetes/rest/pod.js\": 83699,\n\t\"./kubernetes/rest/portainer-namespace.js\": 93449,\n\t\"./kubernetes/rest/replicaSet.js\": 81056,\n\t\"./kubernetes/rest/resourceQuota.js\": 10129,\n\t\"./kubernetes/rest/response/transform.js\": 25658,\n\t\"./kubernetes/rest/secret.js\": 61588,\n\t\"./kubernetes/rest/service.js\": 68376,\n\t\"./kubernetes/rest/statefulSet.js\": 55594,\n\t\"./kubernetes/rest/storage.js\": 33415,\n\t\"./kubernetes/services/applicationService.js\": 94358,\n\t\"./kubernetes/services/configMapService.js\": 45819,\n\t\"./kubernetes/services/configurationService.js\": 81567,\n\t\"./kubernetes/services/controllerRevisionService.js\": 40917,\n\t\"./kubernetes/services/daemonSetService.js\": 42183,\n\t\"./kubernetes/services/deploymentService.js\": 18354,\n\t\"./kubernetes/services/eventService.js\": 3855,\n\t\"./kubernetes/services/healthService.js\": 24717,\n\t\"./kubernetes/services/historyService.js\": 18842,\n\t\"./kubernetes/services/namespaceService.js\": 44987,\n\t\"./kubernetes/services/nodesLimitsService.js\": 73774,\n\t\"./kubernetes/services/opaService.js\": 15316,\n\t\"./kubernetes/services/persistentVolumeClaimService.js\": 79362,\n\t\"./kubernetes/services/replicaSetService.js\": 59010,\n\t\"./kubernetes/services/resourcePoolService.js\": 22539,\n\t\"./kubernetes/services/resourceQuotaService.js\": 85927,\n\t\"./kubernetes/services/secretService.js\": 76354,\n\t\"./kubernetes/services/serviceService.js\": 7055,\n\t\"./kubernetes/services/stackService.js\": 4063,\n\t\"./kubernetes/services/statefulSetService.js\": 4165,\n\t\"./kubernetes/services/storageService.js\": 36552,\n\t\"./kubernetes/services/volumeService.js\": 78085,\n\t\"./kubernetes/store/namespace.js\": 22823,\n\t\"./kubernetes/views/applications/applications.js\": 86393,\n\t\"./kubernetes/views/applications/applicationsController.js\": 55495,\n\t\"./kubernetes/views/applications/console/console.js\": 51819,\n\t\"./kubernetes/views/applications/console/consoleController.js\": 33243,\n\t\"./kubernetes/views/applications/create/createApplication.js\": 58791,\n\t\"./kubernetes/views/applications/create/createApplicationController.js\": 8924,\n\t\"./kubernetes/views/applications/edit/application.js\": 56378,\n\t\"./kubernetes/views/applications/edit/applicationController.js\": 66485,\n\t\"./kubernetes/views/applications/edit/components/ingress-table/ingress-table.controller.js\": 20630,\n\t\"./kubernetes/views/applications/edit/components/ingress-table/ingress-table.js\": 63060,\n\t\"./kubernetes/views/applications/edit/components/placements-datatable/controller.js\": 29272,\n\t\"./kubernetes/views/applications/edit/components/placements-datatable/index.js\": 50156,\n\t\"./kubernetes/views/applications/edit/components/services-table/services-table.js\": 18137,\n\t\"./kubernetes/views/applications/helm/helm.controller.js\": 85392,\n\t\"./kubernetes/views/applications/helm/index.js\": 8180,\n\t\"./kubernetes/views/applications/logs/logs.js\": 81297,\n\t\"./kubernetes/views/applications/logs/logsController.js\": 94649,\n\t\"./kubernetes/views/applications/stats/stats.js\": 61260,\n\t\"./kubernetes/views/applications/stats/statsController.js\": 13754,\n\t\"./kubernetes/views/cluster/cluster.js\": 24924,\n\t\"./kubernetes/views/cluster/clusterController.js\": 99641,\n\t\"./kubernetes/views/cluster/node/node.js\": 64696,\n\t\"./kubernetes/views/cluster/node/nodeController.js\": 79308,\n\t\"./kubernetes/views/cluster/node/stats/stats.js\": 83490,\n\t\"./kubernetes/views/cluster/node/stats/statsController.js\": 2997,\n\t\"./kubernetes/views/configurations/configurations.js\": 56286,\n\t\"./kubernetes/views/configurations/configurationsController.js\": 35752,\n\t\"./kubernetes/views/configurations/create/createConfiguration.js\": 9022,\n\t\"./kubernetes/views/configurations/create/createConfigurationController.js\": 38646,\n\t\"./kubernetes/views/configurations/edit/configuration.js\": 78025,\n\t\"./kubernetes/views/configurations/edit/configurationController.js\": 55682,\n\t\"./kubernetes/views/configure/configureController.js\": 71244,\n\t\"./kubernetes/views/dashboard/dashboard.js\": 15219,\n\t\"./kubernetes/views/dashboard/dashboardController.js\": 79581,\n\t\"./kubernetes/views/deploy/deploy.js\": 36661,\n\t\"./kubernetes/views/deploy/deployController.js\": 23322,\n\t\"./kubernetes/views/resource-pools/access/resourcePoolAccess.js\": 28311,\n\t\"./kubernetes/views/resource-pools/access/resourcePoolAccessController.js\": 38513,\n\t\"./kubernetes/views/resource-pools/components/storage-class-switch/index.js\": 74474,\n\t\"./kubernetes/views/resource-pools/components/storage-class-switch/storage-class-switch.controller.js\": 10405,\n\t\"./kubernetes/views/resource-pools/create/createResourcePool.js\": 19777,\n\t\"./kubernetes/views/resource-pools/create/createResourcePoolController.js\": 83908,\n\t\"./kubernetes/views/resource-pools/edit/components/ingresses-datatable/controller.js\": 63009,\n\t\"./kubernetes/views/resource-pools/edit/components/ingresses-datatable/index.js\": 44474,\n\t\"./kubernetes/views/resource-pools/edit/resourcePool.js\": 85146,\n\t\"./kubernetes/views/resource-pools/edit/resourcePoolController.js\": 42310,\n\t\"./kubernetes/views/resource-pools/resourcePools.js\": 7134,\n\t\"./kubernetes/views/resource-pools/resourcePoolsController.js\": 39502,\n\t\"./kubernetes/views/security-constraint/constraint-controller.js\": 84873,\n\t\"./kubernetes/views/security-constraint/constraint.js\": 45554,\n\t\"./kubernetes/views/stacks/logs/logs.js\": 9981,\n\t\"./kubernetes/views/stacks/logs/logsController.js\": 39554,\n\t\"./kubernetes/views/summary/resources/applicationResources.js\": 45233,\n\t\"./kubernetes/views/summary/resources/configurationResources.js\": 3310,\n\t\"./kubernetes/views/summary/resources/helpers.js\": 60953,\n\t\"./kubernetes/views/summary/resources/namespaceResources.js\": 49113,\n\t\"./kubernetes/views/summary/summary.js\": 21099,\n\t\"./kubernetes/views/summary/summaryController.js\": 69861,\n\t\"./kubernetes/views/volumes/components/volumes-storages-datatable/controller.js\": 70302,\n\t\"./kubernetes/views/volumes/components/volumes-storages-datatable/index.js\": 1502,\n\t\"./kubernetes/views/volumes/edit/volume.js\": 61158,\n\t\"./kubernetes/views/volumes/edit/volumeController.js\": 52962,\n\t\"./kubernetes/views/volumes/volumes.js\": 49633,\n\t\"./kubernetes/views/volumes/volumesController.js\": 64539,\n\t\"./matomo-setup.js\": 63924,\n\t\"./nomad/Logs/logs.js\": 1478,\n\t\"./nomad/Logs/logsController.js\": 6358,\n\t\"./nomad/Logs/nomad-log-viewer/nomad-log-viewer.js\": 88198,\n\t\"./nomad/Logs/nomad-log-viewer/nomadLogViewerController.js\": 33829,\n\t\"./nomad/index.js\": 46836,\n\t\"./portainer/__module.js\": 30764,\n\t\"./portainer/components/InformationPanel/InformationPanelAngular.js\": 87005,\n\t\"./portainer/components/access-datatable/accessDatatable.js\": 21366,\n\t\"./portainer/components/access-datatable/accessDatatableController.js\": 92681,\n\t\"./portainer/components/access-table/access-table.js\": 56609,\n\t\"./portainer/components/accessControlForm/por-access-control-form.js\": 3735,\n\t\"./portainer/components/accessControlForm/porAccessControlFormController.js\": 86656,\n\t\"./portainer/components/accessControlForm/porAccessControlFormModel.js\": 19898,\n\t\"./portainer/components/accessManagement/index.js\": 39372,\n\t\"./portainer/components/accessManagement/por-access-management-users-selector/index.js\": 76744,\n\t\"./portainer/components/accessManagement/por-access-management.js\": 26001,\n\t\"./portainer/components/accessManagement/porAccessManagementController.js\": 22421,\n\t\"./portainer/components/associated-endpoints-selector/associatedEndpointsSelector.js\": 439,\n\t\"./portainer/components/associated-endpoints-selector/associatedEndpointsSelectorController.js\": 98293,\n\t\"./portainer/components/autofocus.js\": 64054,\n\t\"./portainer/components/beta-panel/betaPanel.js\": 28428,\n\t\"./portainer/components/buttonSpinner.js\": 66864,\n\t\"./portainer/components/code-editor/code-editor.js\": 58945,\n\t\"./portainer/components/code-editor/codeEditorController.js\": 85150,\n\t\"./portainer/components/copy-button/copy-button.controller.js\": 28944,\n\t\"./portainer/components/copy-button/copy-button.js\": 27816,\n\t\"./portainer/components/cronRule.js\": 88401,\n\t\"./portainer/components/custom-template-common-fields/customTemplateCommonFieldsController.js\": 99614,\n\t\"./portainer/components/custom-template-common-fields/index.js\": 26453,\n\t\"./portainer/components/custom-template-selector/custom-template-selector.controller.js\": 45165,\n\t\"./portainer/components/custom-template-selector/index.js\": 16970,\n\t\"./portainer/components/custom-templates-list/customTemplatesListController.js\": 85452,\n\t\"./portainer/components/custom-templates-list/index.js\": 9578,\n\t\"./portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.controller.js\": 43926,\n\t\"./portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.js\": 64142,\n\t\"./portainer/components/datatables/datatable-columns-visibility/datatable-columns-visibility.controller.js\": 76752,\n\t\"./portainer/components/datatables/datatable-columns-visibility/index.js\": 13877,\n\t\"./portainer/components/datatables/endpoints-datatable/endpointsDatatable.js\": 56210,\n\t\"./portainer/components/datatables/endpoints-datatable/endpointsDatatableController.js\": 805,\n\t\"./portainer/components/datatables/filter/datatable-filter.controller.js\": 38058,\n\t\"./portainer/components/datatables/filter/index.js\": 59001,\n\t\"./portainer/components/datatables/genericDatatableController.js\": 11471,\n\t\"./portainer/components/datatables/groups-datatable/groupsDatatable.js\": 36864,\n\t\"./portainer/components/datatables/index.js\": 41101,\n\t\"./portainer/components/datatables/pagination/index.js\": 21757,\n\t\"./portainer/components/datatables/registries-datatable/registriesDatatable.js\": 44145,\n\t\"./portainer/components/datatables/registries-datatable/registriesDatatableController.js\": 63188,\n\t\"./portainer/components/datatables/sort-icon/datatable-sort-icon.controller.js\": 81749,\n\t\"./portainer/components/datatables/sort-icon/index.js\": 62040,\n\t\"./portainer/components/datatables/stacks-datatable/stacksDatatable.js\": 97203,\n\t\"./portainer/components/datatables/stacks-datatable/stacksDatatableController.js\": 97433,\n\t\"./portainer/components/datatables/strings-datatable/index.js\": 59198,\n\t\"./portainer/components/datatables/tags-datatable/tagsDatatable.js\": 96447,\n\t\"./portainer/components/datatables/teams-datatable/teamsDatatable.js\": 85514,\n\t\"./portainer/components/datatables/titlebar/index.js\": 58973,\n\t\"./portainer/components/datatables/users-datatable/usersDatatable.js\": 59322,\n\t\"./portainer/components/datatables/users-datatable/usersDatatableController.js\": 92040,\n\t\"./portainer/components/date-range-picker/date-range-picker-api.js\": 58042,\n\t\"./portainer/components/date-range-picker/date-range-picker.js\": 53834,\n\t\"./portainer/components/date-range-picker/index.js\": 40345,\n\t\"./portainer/components/demo-feature-indicator/demo-feature-indicator.controller.js\": 62424,\n\t\"./portainer/components/demo-feature-indicator/index.js\": 96026,\n\t\"./portainer/components/endpoint-selector/endpoint-selector.js\": 32005,\n\t\"./portainer/components/endpoint-selector/endpointSelectorController.js\": 84330,\n\t\"./portainer/components/endpointSecurity/por-endpoint-security.js\": 39590,\n\t\"./portainer/components/endpointSecurity/porEndpointSecurityController.js\": 59810,\n\t\"./portainer/components/endpointSecurity/porEndpointSecurityModel.js\": 25229,\n\t\"./portainer/components/environment-variables-panel/environment-variables-panel.controller.js\": 72532,\n\t\"./portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/environment-variables-simple-mode-item.controller.js\": 19695,\n\t\"./portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/index.js\": 47254,\n\t\"./portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode.controller.js\": 17272,\n\t\"./portainer/components/environment-variables-panel/environment-variables-simple-mode/index.js\": 55005,\n\t\"./portainer/components/environment-variables-panel/index.js\": 5633,\n\t\"./portainer/components/focusIf.js\": 87508,\n\t\"./portainer/components/form-components/file-upload-form/index.js\": 74075,\n\t\"./portainer/components/form-components/index.js\": 39068,\n\t\"./portainer/components/form-components/web-editor-form/index.js\": 67653,\n\t\"./portainer/components/form-components/web-editor-form/web-editor-form.controller.js\": 32340,\n\t\"./portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/git-form-additional-file-item.controller.js\": 27190,\n\t\"./portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/index.js\": 83208,\n\t\"./portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-files-panel.controller.js\": 17968,\n\t\"./portainer/components/forms/git-form/git-form-additional-files-panel/index.js\": 7274,\n\t\"./portainer/components/forms/git-form/git-form-auth-fieldset/git-form-auth-fieldset.controller.js\": 10789,\n\t\"./portainer/components/forms/git-form/git-form-auth-fieldset/index.js\": 48980,\n\t\"./portainer/components/forms/git-form/git-form-auto-update-fieldset/git-form-auto-update-fieldset.controller.js\": 12847,\n\t\"./portainer/components/forms/git-form/git-form-auto-update-fieldset/index.js\": 34385,\n\t\"./portainer/components/forms/git-form/git-form-compose-path-field/index.js\": 39926,\n\t\"./portainer/components/forms/git-form/git-form-info-panel/index.js\": 78356,\n\t\"./portainer/components/forms/git-form/git-form-ref-field/index.js\": 65830,\n\t\"./portainer/components/forms/git-form/git-form-url-field/index.js\": 4680,\n\t\"./portainer/components/forms/git-form/git-form.controller.js\": 93632,\n\t\"./portainer/components/forms/git-form/git-form.js\": 97525,\n\t\"./portainer/components/forms/git-form/index.js\": 8540,\n\t\"./portainer/components/forms/group-form/group-form.js\": 95189,\n\t\"./portainer/components/forms/group-form/groupFormController.js\": 37134,\n\t\"./portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.controller.js\": 29037,\n\t\"./portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.js\": 34323,\n\t\"./portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.controller.js\": 55658,\n\t\"./portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.js\": 9509,\n\t\"./portainer/components/forms/registry-form-aws-ecr/registry-form-ecr.js\": 48637,\n\t\"./portainer/components/forms/registry-form-azure/registry-form-azure.js\": 90018,\n\t\"./portainer/components/forms/registry-form-custom/registry-form-custom.js\": 8746,\n\t\"./portainer/components/forms/registry-form-dockerhub/registry-form-dockerhub.js\": 7744,\n\t\"./portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatable.js\": 84375,\n\t\"./portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatableController.js\": 56110,\n\t\"./portainer/components/forms/registry-form-gitlab/registry-form-gitlab.js\": 54470,\n\t\"./portainer/components/forms/registry-form-proget/registry-form-proget.js\": 25318,\n\t\"./portainer/components/forms/registry-form-quay/registry-form-quay.js\": 18218,\n\t\"./portainer/components/forms/stack-from-template-form/index.js\": 12281,\n\t\"./portainer/components/forms/stack-redeploy-git-form/index.js\": 7008,\n\t\"./portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.controller.js\": 20472,\n\t\"./portainer/components/group-association-table/group-association-table.js\": 87637,\n\t\"./portainer/components/index.js\": 11033,\n\t\"./portainer/components/information-panel-offline/informationPanelOffline.js\": 64654,\n\t\"./portainer/components/information-panel-offline/informationPanelOfflineController.js\": 2454,\n\t\"./portainer/components/intervalFormat.js\": 44516,\n\t\"./portainer/components/onEnterKey.js\": 45679,\n\t\"./portainer/components/option-panel/index.js\": 22730,\n\t\"./portainer/components/option-panel/option-panel.controller.js\": 25601,\n\t\"./portainer/components/product-list/product-item/product-item.js\": 46621,\n\t\"./portainer/components/product-list/product-list.js\": 38222,\n\t\"./portainer/components/registry-details/index.js\": 97554,\n\t\"./portainer/components/sensitive-details/sensitive-details.js\": 90434,\n\t\"./portainer/components/show-hide/show-hide.js\": 53712,\n\t\"./portainer/components/slider/slider.js\": 77337,\n\t\"./portainer/components/slider/sliderController.js\": 58944,\n\t\"./portainer/components/stack-duplication-form/stack-duplication-form-controller.js\": 10018,\n\t\"./portainer/components/stack-duplication-form/stack-duplication-form.js\": 37848,\n\t\"./portainer/components/status-indicator/index.js\": 91709,\n\t\"./portainer/components/template-list/template-item/template-item.js\": 44677,\n\t\"./portainer/components/template-list/template-list-controller.js\": 70296,\n\t\"./portainer/components/template-list/template-list.js\": 47177,\n\t\"./portainer/components/template-widget.js\": 38119,\n\t\"./portainer/components/theme/theme-settings.controller.js\": 55472,\n\t\"./portainer/components/theme/theme-settings.js\": 30749,\n\t\"./portainer/components/time-window-display/index.js\": 60334,\n\t\"./portainer/components/time-window-display/time-window-display.controller.js\": 12307,\n\t\"./portainer/components/time-window-picker/index.js\": 93824,\n\t\"./portainer/components/time-window-picker/time-window-picker.controller.js\": 8537,\n\t\"./portainer/environments/azure-endpoint-config/azure-endpoint-config.js\": 19376,\n\t\"./portainer/filters/filters.js\": 41066,\n\t\"./portainer/filters/index.js\": 1740,\n\t\"./portainer/helpers/endpointHelper.js\": 70589,\n\t\"./portainer/helpers/env-vars.js\": 93994,\n\t\"./portainer/helpers/formHelper.js\": 30398,\n\t\"./portainer/helpers/genericHelper.js\": 24003,\n\t\"./portainer/helpers/networkHelper.js\": 30556,\n\t\"./portainer/helpers/pathHelper.js\": 50433,\n\t\"./portainer/helpers/resourceControlHelper.js\": 43622,\n\t\"./portainer/helpers/stackHelper.js\": 13118,\n\t\"./portainer/helpers/tagHelper.js\": 91619,\n\t\"./portainer/helpers/templateHelper.js\": 69424,\n\t\"./portainer/helpers/urlHelper.js\": 79190,\n\t\"./portainer/helpers/webhookHelper.js\": 7341,\n\t\"./portainer/interceptors/endpointStatusInterceptor.js\": 89940,\n\t\"./portainer/license-management/add-license.view/add-license.view.controller.js\": 10011,\n\t\"./portainer/license-management/add-license.view/add-license.view.js\": 74467,\n\t\"./portainer/license-management/add-license.view/index.js\": 73970,\n\t\"./portainer/license-management/add-license.view/licenses-form/index.js\": 38067,\n\t\"./portainer/license-management/add-license.view/licenses-form/license-item/index.js\": 31153,\n\t\"./portainer/license-management/add-license.view/licenses-form/license-item/license-item.controller.js\": 45041,\n\t\"./portainer/license-management/add-license.view/licenses-form/licenses-form.controller.js\": 5950,\n\t\"./portainer/license-management/index.js\": 5628,\n\t\"./portainer/license-management/licenses.view/index.js\": 60914,\n\t\"./portainer/license-management/licenses.view/license-info/index.js\": 95029,\n\t\"./portainer/license-management/licenses.view/license-info/license-info.controller.js\": 96274,\n\t\"./portainer/license-management/licenses.view/licenses-datatable/index.js\": 34998,\n\t\"./portainer/license-management/licenses.view/licenses.view.controller.js\": 78730,\n\t\"./portainer/license-management/licenses.view/licenses.view.js\": 62747,\n\t\"./portainer/models/access.js\": 93133,\n\t\"./portainer/models/dockerhub.js\": 74962,\n\t\"./portainer/models/endpoint/formValues.js\": 690,\n\t\"./portainer/models/endpoint/models.js\": 13494,\n\t\"./portainer/models/gitlabRegistry.js\": 62365,\n\t\"./portainer/models/group.js\": 79607,\n\t\"./portainer/models/registry.js\": 33180,\n\t\"./portainer/models/registryRepository.js\": 64088,\n\t\"./portainer/models/registryTypes.js\": 56414,\n\t\"./portainer/models/resourceControl/resourceControlCreatePayload.js\": 74392,\n\t\"./portainer/models/resourceControl/resourceControlOwnershipParameters.js\": 1870,\n\t\"./portainer/models/schedule.js\": 82653,\n\t\"./portainer/models/settings.js\": 55287,\n\t\"./portainer/models/stack.js\": 49036,\n\t\"./portainer/models/status.js\": 95154,\n\t\"./portainer/models/tag.js\": 26410,\n\t\"./portainer/models/team.js\": 58552,\n\t\"./portainer/models/teamMembership.js\": 3010,\n\t\"./portainer/models/template.js\": 76185,\n\t\"./portainer/models/user.js\": 90327,\n\t\"./portainer/models/webhook.js\": 74708,\n\t\"./portainer/oauth/__module.js\": 77274,\n\t\"./portainer/oauth/components/oauth-providers-selector/index.js\": 21869,\n\t\"./portainer/oauth/components/oauth-providers-selector/oauth-provider-selector.controller.js\": 6343,\n\t\"./portainer/oauth/components/oauth-settings/index.js\": 10453,\n\t\"./portainer/oauth/components/oauth-settings/oauth-settings.controller.js\": 30152,\n\t\"./portainer/oauth/components/oauth-settings/providers.js\": 67879,\n\t\"./portainer/oauth/services/rest/oauth.js\": 18152,\n\t\"./portainer/rbac/components/access-viewer/access-viewer-datatable/index.js\": 3589,\n\t\"./portainer/rbac/components/access-viewer/access-viewer.controller.js\": 79657,\n\t\"./portainer/rbac/components/access-viewer/index.js\": 87208,\n\t\"./portainer/rbac/components/roles-datatable/index.js\": 77181,\n\t\"./portainer/rbac/components/roles-datatable/roles-datatable.controller.js\": 15560,\n\t\"./portainer/rbac/directives/authorization.js\": 92453,\n\t\"./portainer/rbac/directives/disable-authorization.js\": 19118,\n\t\"./portainer/rbac/directives/excludeAuthorization.js\": 58338,\n\t\"./portainer/rbac/index.js\": 35552,\n\t\"./portainer/rbac/models/access.js\": 82853,\n\t\"./portainer/rbac/models/role.js\": 61969,\n\t\"./portainer/rbac/rest/role.js\": 41974,\n\t\"./portainer/rbac/services/role.rest.js\": 37838,\n\t\"./portainer/rbac/services/role.service.js\": 70055,\n\t\"./portainer/rbac/views/roles/index.js\": 93239,\n\t\"./portainer/rbac/views/roles/roles.controller.js\": 60090,\n\t\"./portainer/rbac/views/roles/rolesController.js\": 89644,\n\t\"./portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatable.js\": 28695,\n\t\"./portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatableController.js\": 13692,\n\t\"./portainer/registry-management/components/registries-repository-tags-datatable/registriesRepositoryTagsDatatable.js\": 57690,\n\t\"./portainer/registry-management/components/registries-repository-tags-datatable/registryRepositoriesTagsDatatableController.js\": 86000,\n\t\"./portainer/registry-management/helpers/localRegistryHelper.js\": 3369,\n\t\"./portainer/registry-management/index.js\": 69890,\n\t\"./portainer/registry-management/models/gitlabRegistry.js\": 76315,\n\t\"./portainer/registry-management/models/registryImageDetails.js\": 77287,\n\t\"./portainer/registry-management/models/registryImageLayer.js\": 52804,\n\t\"./portainer/registry-management/models/registryRepository.js\": 47407,\n\t\"./portainer/registry-management/models/repositoryTag.js\": 92478,\n\t\"./portainer/registry-management/rest/catalog.js\": 22381,\n\t\"./portainer/registry-management/rest/manifestJquery.js\": 13811,\n\t\"./portainer/registry-management/rest/tags.js\": 81733,\n\t\"./portainer/registry-management/rest/transform/gitlabResponseGetLink.js\": 36332,\n\t\"./portainer/registry-management/rest/transform/linkGetResponse.js\": 66222,\n\t\"./portainer/registry-management/services/genericAsyncGenerator.js\": 46673,\n\t\"./portainer/registry-management/services/registryServiceSelector.js\": 1383,\n\t\"./portainer/registry-management/services/registryV2Service.js\": 47624,\n\t\"./portainer/registry-management/views/configure/controller.js\": 56795,\n\t\"./portainer/registry-management/views/configure/index.js\": 22869,\n\t\"./portainer/registry-management/views/repositories/controller.js\": 92715,\n\t\"./portainer/registry-management/views/repositories/edit/controller.js\": 79079,\n\t\"./portainer/registry-management/views/repositories/edit/progression-modal/index.js\": 97644,\n\t\"./portainer/registry-management/views/repositories/index.js\": 64645,\n\t\"./portainer/registry-management/views/repositories/tag/controller.js\": 97756,\n\t\"./portainer/registry-management/views/repositories/tag/index.js\": 31211,\n\t\"./portainer/rest/auth.js\": 95599,\n\t\"./portainer/rest/backup.js\": 59987,\n\t\"./portainer/rest/customTemplate.js\": 92179,\n\t\"./portainer/rest/ecr.js\": 65485,\n\t\"./portainer/rest/endpoint.js\": 50947,\n\t\"./portainer/rest/gitlab.js\": 48664,\n\t\"./portainer/rest/group.js\": 41019,\n\t\"./portainer/rest/registry.js\": 26911,\n\t\"./portainer/rest/resourceControl.js\": 9095,\n\t\"./portainer/rest/settings.js\": 26862,\n\t\"./portainer/rest/ssl.js\": 33729,\n\t\"./portainer/rest/stack.js\": 84006,\n\t\"./portainer/rest/status.js\": 1962,\n\t\"./portainer/rest/support.js\": 3985,\n\t\"./portainer/rest/tag.js\": 69586,\n\t\"./portainer/rest/team.js\": 51406,\n\t\"./portainer/rest/teamMembership.js\": 63027,\n\t\"./portainer/rest/template.js\": 35627,\n\t\"./portainer/rest/transform/getEndpointsTotalCount.js\": 28098,\n\t\"./portainer/rest/transform/gitlabResponseGetLink.js\": 40432,\n\t\"./portainer/rest/user.js\": 88211,\n\t\"./portainer/rest/webhooks.js\": 1587,\n\t\"./portainer/services/allSettled.js\": 67808,\n\t\"./portainer/services/api/accessService.js\": 84522,\n\t\"./portainer/services/api/backupService.js\": 10273,\n\t\"./portainer/services/api/customTemplate.js\": 85903,\n\t\"./portainer/services/api/dockerhubService.js\": 91520,\n\t\"./portainer/services/api/endpointService.js\": 53249,\n\t\"./portainer/services/api/groupService.js\": 50828,\n\t\"./portainer/services/api/registryService.js\": 94094,\n\t\"./portainer/services/api/resourceControlService.js\": 17293,\n\t\"./portainer/services/api/settingsService.js\": 91532,\n\t\"./portainer/services/api/sslService.js\": 39243,\n\t\"./portainer/services/api/stackService.js\": 54332,\n\t\"./portainer/services/api/statusService.js\": 97128,\n\t\"./portainer/services/api/supportService.js\": 10754,\n\t\"./portainer/services/api/tagService.js\": 44904,\n\t\"./portainer/services/api/teamMembershipService.js\": 87643,\n\t\"./portainer/services/api/teamService.js\": 75495,\n\t\"./portainer/services/api/templateService.js\": 66656,\n\t\"./portainer/services/api/userService.js\": 96664,\n\t\"./portainer/services/api/webhookService.js\": 16856,\n\t\"./portainer/services/async.js\": 52726,\n\t\"./portainer/services/authentication.js\": 38890,\n\t\"./portainer/services/chartService.js\": 49519,\n\t\"./portainer/services/codeMirror.js\": 91112,\n\t\"./portainer/services/datatableService.js\": 52943,\n\t\"./portainer/services/endpointProvider.js\": 65187,\n\t\"./portainer/services/fileUpload.js\": 21262,\n\t\"./portainer/services/formValidator.js\": 59197,\n\t\"./portainer/services/localStorage.js\": 11189,\n\t\"./portainer/services/nameValidator.js\": 16624,\n\t\"./portainer/services/pagination.js\": 40073,\n\t\"./portainer/services/registryEcrService.js\": 91291,\n\t\"./portainer/services/registryGitlabService.js\": 76211,\n\t\"./portainer/services/registryModalService.js\": 56858,\n\t\"./portainer/services/session-storage.js\": 85280,\n\t\"./portainer/services/stateManager.js\": 37431,\n\t\"./portainer/services/themeManager.js\": 98869,\n\t\"./portainer/settings/authentication/auth-method-constants.js\": 52855,\n\t\"./portainer/settings/authentication/auth-type-constants.js\": 98376,\n\t\"./portainer/settings/authentication/auto-user-provision-toggle/index.js\": 50552,\n\t\"./portainer/settings/authentication/index.js\": 18573,\n\t\"./portainer/settings/authentication/ldap/ad-settings/ad-settings.controller.js\": 80612,\n\t\"./portainer/settings/authentication/ldap/ad-settings/index.js\": 66509,\n\t\"./portainer/settings/authentication/ldap/index.js\": 36320,\n\t\"./portainer/settings/authentication/ldap/ldap-connectivity-check/index.js\": 18436,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-admin-group/index.js\": 88996,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-admin-group/ldap-custom-admin-group.controller.js\": 53864,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-group-search/index.js\": 8282,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-group-search/ldap-custom-group-search.controller.js\": 30950,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-user-search/index.js\": 1093,\n\t\"./portainer/settings/authentication/ldap/ldap-custom-user-search/ldap-custom-user-search.controller.js\": 39525,\n\t\"./portainer/settings/authentication/ldap/ldap-group-search-item/index.js\": 82592,\n\t\"./portainer/settings/authentication/ldap/ldap-group-search-item/ldap-group-search-item.controller.js\": 55028,\n\t\"./portainer/settings/authentication/ldap/ldap-group-search/index.js\": 24791,\n\t\"./portainer/settings/authentication/ldap/ldap-group-search/ldap-group-search.controller.js\": 92459,\n\t\"./portainer/settings/authentication/ldap/ldap-groups-datatable/index.js\": 59086,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-custom/index.js\": 72928,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-custom/ldap-settings-custom.controller.js\": 96551,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-dn-builder/index.js\": 60000,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-dn-builder/ldap-settings-dn-builder.controller.js\": 62680,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/index.js\": 36235,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/ldap-settings-group-dn-builder.controller.js\": 91117,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-openldap/index.js\": 25702,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-openldap/ldap-settings-openldap.controller.js\": 58962,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-security/index.js\": 31939,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-test-login/index.js\": 75714,\n\t\"./portainer/settings/authentication/ldap/ldap-settings-test-login/ldap-settings-test-login.controller.js\": 90829,\n\t\"./portainer/settings/authentication/ldap/ldap-settings.model.js\": 54512,\n\t\"./portainer/settings/authentication/ldap/ldap-settings/index.js\": 39947,\n\t\"./portainer/settings/authentication/ldap/ldap-settings/ldap-settings.controller.js\": 28283,\n\t\"./portainer/settings/authentication/ldap/ldap-user-search-item/index.js\": 16811,\n\t\"./portainer/settings/authentication/ldap/ldap-user-search-item/ldap-user-search-item.controller.js\": 93669,\n\t\"./portainer/settings/authentication/ldap/ldap-user-search/index.js\": 97299,\n\t\"./portainer/settings/authentication/ldap/ldap-user-search/ldap-user-search.controller.js\": 34188,\n\t\"./portainer/settings/authentication/ldap/ldap-users-datatable/index.js\": 84259,\n\t\"./portainer/settings/authentication/ldap/ldap.rest.js\": 39314,\n\t\"./portainer/settings/authentication/ldap/ldap.service.js\": 46951,\n\t\"./portainer/settings/authentication/save-auth-settings-button/index.js\": 93467,\n\t\"./portainer/settings/general/index.js\": 6972,\n\t\"./portainer/settings/general/ssl-certificate/index.js\": 13655,\n\t\"./portainer/settings/general/ssl-certificate/ssl-certificate.controller.js\": 12617,\n\t\"./portainer/settings/index.js\": 71630,\n\t\"./portainer/user-activity/activity-logs-view/activity-logs-datatable/activity-logs-datatable.controller.js\": 48557,\n\t\"./portainer/user-activity/activity-logs-view/activity-logs-datatable/index.js\": 32654,\n\t\"./portainer/user-activity/activity-logs-view/activity-logs-view.controller.js\": 38427,\n\t\"./portainer/user-activity/activity-logs-view/activity-logs-view.js\": 85331,\n\t\"./portainer/user-activity/activity-logs-view/index.js\": 9800,\n\t\"./portainer/user-activity/auth-logs-view/auth-logs-datatable/auth-logs-datatable.controller.js\": 91651,\n\t\"./portainer/user-activity/auth-logs-view/auth-logs-datatable/index.js\": 66823,\n\t\"./portainer/user-activity/auth-logs-view/auth-logs-view.controller.js\": 93873,\n\t\"./portainer/user-activity/auth-logs-view/auth-logs-view.js\": 8364,\n\t\"./portainer/user-activity/auth-logs-view/index.js\": 45303,\n\t\"./portainer/user-activity/index.js\": 45347,\n\t\"./portainer/user-activity/user-activity.rest.js\": 8733,\n\t\"./portainer/user-activity/user-activity.service.js\": 73537,\n\t\"./portainer/views/account/accountController.js\": 68325,\n\t\"./portainer/views/account/create-user-access-token/create-user-access-token.controller.js\": 5012,\n\t\"./portainer/views/account/create-user-access-token/index.js\": 33219,\n\t\"./portainer/views/auth/authController.js\": 87374,\n\t\"./portainer/views/custom-templates/create-custom-template-view/createCustomTemplateViewController.js\": 46581,\n\t\"./portainer/views/custom-templates/create-custom-template-view/index.js\": 31268,\n\t\"./portainer/views/custom-templates/custom-templates-view/customTemplatesViewController.js\": 77999,\n\t\"./portainer/views/custom-templates/custom-templates-view/index.js\": 17598,\n\t\"./portainer/views/custom-templates/edit-custom-template-view/editCustomTemplateViewController.js\": 31097,\n\t\"./portainer/views/custom-templates/edit-custom-template-view/index.js\": 69659,\n\t\"./portainer/views/devices/import/importDeviceController.js\": 11937,\n\t\"./portainer/views/devices/profiles/add/addProfileController.js\": 35696,\n\t\"./portainer/views/devices/profiles/add/index.js\": 91067,\n\t\"./portainer/views/devices/profiles/edit/editProfileController.js\": 21199,\n\t\"./portainer/views/devices/profiles/edit/index.js\": 42041,\n\t\"./portainer/views/endpoint-registries/registries.js\": 36582,\n\t\"./portainer/views/endpoint-registries/registriesController.js\": 54886,\n\t\"./portainer/views/endpoints/access/endpointAccessController.js\": 16962,\n\t\"./portainer/views/endpoints/edit/endpointController.js\": 80418,\n\t\"./portainer/views/endpoints/endpointsController.js\": 81881,\n\t\"./portainer/views/endpoints/helpers.js\": 13853,\n\t\"./portainer/views/endpoints/kvm/endpointKVMController.js\": 58118,\n\t\"./portainer/views/endpoints/kvm/index.js\": 63824,\n\t\"./portainer/views/groups/access/groupAccessController.js\": 79405,\n\t\"./portainer/views/groups/create/createGroupController.js\": 7249,\n\t\"./portainer/views/groups/edit/groupController.js\": 9149,\n\t\"./portainer/views/groups/groupsController.js\": 60160,\n\t\"./portainer/views/init/admin/initAdminController.js\": 66246,\n\t\"./portainer/views/init/endpoint/initEndpointController.js\": 88611,\n\t\"./portainer/views/init/init-license.view/index.js\": 66026,\n\t\"./portainer/views/init/init-license.view/init-license.view.controller.js\": 63346,\n\t\"./portainer/views/internal-auth/internalAuthController.js\": 88946,\n\t\"./portainer/views/logout/logoutController.js\": 95580,\n\t\"./portainer/views/main/mainController.js\": 85274,\n\t\"./portainer/views/registries/create/createRegistry.js\": 38910,\n\t\"./portainer/views/registries/create/createRegistryController.js\": 15366,\n\t\"./portainer/views/registries/edit/registry.js\": 74927,\n\t\"./portainer/views/registries/edit/registryController.js\": 66146,\n\t\"./portainer/views/registries/registriesController.js\": 6009,\n\t\"./portainer/views/settings/authentication/settingsAuthenticationController.js\": 80287,\n\t\"./portainer/views/settings/edge-compute/index.js\": 43404,\n\t\"./portainer/views/settings/edge-compute/settingsEdgeComputeController.js\": 51861,\n\t\"./portainer/views/settings/settingsController.js\": 30236,\n\t\"./portainer/views/stacks/create/createStackController.js\": 58000,\n\t\"./portainer/views/stacks/edit/stackController.js\": 22940,\n\t\"./portainer/views/stacks/stacksController.js\": 78566,\n\t\"./portainer/views/tags/tagsController.js\": 20125,\n\t\"./portainer/views/teams/edit/teamController.js\": 31713,\n\t\"./portainer/views/teams/teamsController.js\": 58206,\n\t\"./portainer/views/templates/templatesController.js\": 76058,\n\t\"./portainer/views/users/edit/userController.js\": 21436,\n\t\"./portainer/views/users/usersController.js\": 79614,\n\t\"./react/docker/components/ImageStatus/index.js\": 5187,\n\t\"./setup-tests/global-setup.js\": 68724,\n\t\"./vendors.js\": 25518\n};\n\n\nfunction webpackContext(req) {\n\tvar id = webpackContextResolve(req);\n\treturn __webpack_require__(id);\n}\nfunction webpackContextResolve(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\te.code = 'MODULE_NOT_FOUND';\n\t\tthrow e;\n\t}\n\treturn map[req];\n}\nwebpackContext.keys = function webpackContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackContext.resolve = webpackContextResolve;\nmodule.exports = webpackContext;\nwebpackContext.id = 19338;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgGit = function SvgGit(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M27.363 17.908 15.537 5.66a2.121 2.121 0 0 0-3.075 0l-2.364 2.45 3.212 3.326c.255-.109.535-.17.829-.17 1.202 0 2.177 1.01 2.177 2.255 0 .304-.058.594-.164.859l3.075 3.185c.256-.11.535-.17.83-.17 1.202 0 2.176 1.01 2.176 2.255 0 1.245-.974 2.255-2.177 2.255-1.202 0-2.177-1.01-2.177-2.255 0-.304.058-.594.164-.859l-3.067-3.177v8.025a2.258 2.258 0 0 1 1.34 2.082c0 1.246-.975 2.255-2.178 2.255-1.202 0-2.177-1.01-2.177-2.255 0-.938.553-1.742 1.34-2.082v-8.035a2.258 2.258 0 0 1-1.34-2.083c0-.304.059-.594.164-.858L8.913 9.336.637 17.908c-.85.88-.85 2.304 0 3.184L12.463 33.34c.85.88 2.225.88 3.074 0l11.826-12.248c.85-.88.85-2.305 0-3.184Z\",\n fill: \"#E15B39\"\n })));\n};\n\nexport default SvgGit;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgLdap = function SvgLdap(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 79 44\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m45.322 11.32 9.313 15.984 9.317 15.982H26.693l9.313-15.982 9.316-15.985ZM64.157 38.703H79l-9.316-15.985L60.37 6.737 52.95 19.473l6.213 10.666 4.994 8.564ZM31.93 29.558l-3.985-6.84L18.63 6.737 9.316 22.718 0 38.703H26.6l2.615-4.487 2.716-4.659ZM33.295 27.224l.468-.801L40.421 15 31.78.175l-7.123 12.223 5.869 10.07 2.77 4.756Z\",\n fill: \"#CB2026\"\n })));\n};\n\nexport default SvgLdap;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgAuto = function SvgAuto(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M15.53 15.568a4.19 4.19 0 0 0-2.066-.06 4.16 4.16 0 0 0-1.838.933 4.093 4.093 0 0 0-1.153 1.695.64.64 0 0 1-.814.384.628.628 0 0 1-.388-.804 5.352 5.352 0 0 1 1.508-2.217 5.44 5.44 0 0 1 2.404-1.22 5.479 5.479 0 0 1 2.7.079c.877.25 1.675.715 2.32 1.351l1.384 1.285v-1.693c0-.348.285-.63.637-.63.352 0 .638.282.638.63v3.15c0 .348-.286.63-.638.63h-3.187a.634.634 0 0 1-.637-.63c0-.348.285-.63.637-.63h1.578l-1.292-1.2-.014-.014a4.153 4.153 0 0 0-1.78-1.039ZM7.9 20.551c0-.348.286-.63.638-.63h3.187c.352 0 .637.282.637.63 0 .348-.285.63-.637.63h-1.578l1.292 1.2.014.014a4.19 4.19 0 0 0 3.845 1.1 4.16 4.16 0 0 0 1.838-.934c.523-.46.92-1.043 1.153-1.695a.64.64 0 0 1 .814-.384.628.628 0 0 1 .388.804 5.352 5.352 0 0 1-1.508 2.216 5.44 5.44 0 0 1-2.404 1.22c-.893.2-1.822.173-2.701-.078a5.432 5.432 0 0 1-2.32-1.351l-1.383-1.286v1.694c0 .348-.285.63-.637.63a.634.634 0 0 1-.638-.63v-3.15Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgAuto;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDarkmode = function SvgDarkmode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.424 13.758a.624.624 0 0 1-.042.684 3.324 3.324 0 0 0 .329 4.361 3.42 3.42 0 0 0 4.413.325.644.644 0 0 1 .691-.042c.22.122.345.36.322.607a5.711 5.711 0 0 1-1.19 2.988 5.813 5.813 0 0 1-2.626 1.89 5.881 5.881 0 0 1-3.241.204 5.836 5.836 0 0 1-2.847-1.546 5.73 5.73 0 0 1-1.564-2.814 5.686 5.686 0 0 1 .206-3.204 5.753 5.753 0 0 1 1.913-2.595 5.855 5.855 0 0 1 3.022-1.176.64.64 0 0 1 .614.318Zm-1.746 1.231c-.396.154-.77.364-1.11.624a4.491 4.491 0 0 0-1.494 2.026 4.44 4.44 0 0 0-.161 2.502 4.475 4.475 0 0 0 1.221 2.197 4.556 4.556 0 0 0 2.223 1.207c.842.186 1.72.13 2.531-.159a4.539 4.539 0 0 0 2.05-1.476c.263-.336.475-.706.632-1.097a4.715 4.715 0 0 1-1.809.22 4.69 4.69 0 0 1-2.952-1.339 4.588 4.588 0 0 1-1.353-2.918 4.562 4.562 0 0 1 .222-1.787Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgDarkmode;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgHighcontrastmode = function SvgHighcontrastmode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M8.722 19.186a10.574 10.574 0 0 0 1.391 1.844c1.026 1.081 2.451 2.076 4.21 2.076 1.76 0 3.185-.995 4.21-2.076a10.571 10.571 0 0 0 1.392-1.844 10.57 10.57 0 0 0-1.391-1.844c-1.026-1.081-2.451-2.076-4.21-2.076-1.76 0-3.185.995-4.21 2.076a10.573 10.573 0 0 0-1.392 1.844Zm11.931 0 .57-.282-.001-.002-.002-.004-.007-.013a4.228 4.228 0 0 0-.111-.204 11.842 11.842 0 0 0-1.638-2.202c-1.133-1.193-2.872-2.473-5.14-2.473-2.27 0-4.008 1.28-5.14 2.474a11.846 11.846 0 0 0-1.639 2.201 7.223 7.223 0 0 0-.111.204l-.007.013-.002.004v.001s-.001.001.569.283l-.57-.282a.624.624 0 0 0 0 .564l.57-.282-.57.282v.002l.003.004.007.013a4.443 4.443 0 0 0 .111.203 11.84 11.84 0 0 0 1.638 2.202c1.133 1.194 2.872 2.474 5.14 2.474 2.27 0 4.008-1.28 5.14-2.474a11.836 11.836 0 0 0 1.639-2.202 7.552 7.552 0 0 0 .111-.203l.007-.013.002-.004v-.001s.001-.001-.569-.283Zm0 0 .57.282a.624.624 0 0 0 0-.564l-.57.282Zm-6.33-1.076c-.6 0-1.088.482-1.088 1.076 0 .594.487 1.076 1.088 1.076.602 0 1.09-.482 1.09-1.076 0-.595-.488-1.076-1.09-1.076Zm-2.363 1.076c0-1.29 1.058-2.336 2.363-2.336 1.306 0 2.364 1.046 2.364 2.336 0 1.29-1.058 2.336-2.364 2.336-1.305 0-2.363-1.046-2.363-2.336Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgHighcontrastmode;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgLightmode = function SvgLightmode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.322 11.612c.388 0 .702.31.702.693v1.251a.697.697 0 0 1-.701.693.697.697 0 0 1-.702-.693v-1.25c0-.384.314-.694.701-.694ZM8.904 13.83a.707.707 0 0 1 .992 0l.898.889c.274.27.274.709 0 .98a.707.707 0 0 1-.991 0l-.899-.889a.687.687 0 0 1 0-.98Zm10.839 0c.273.27.273.71 0 .98l-.899.889a.707.707 0 0 1-.991 0 .687.687 0 0 1 0-.98l.898-.889a.707.707 0 0 1 .992 0Zm-5.42 2.922c-1.36 0-2.463 1.09-2.463 2.435s1.103 2.435 2.463 2.435 2.464-1.09 2.464-2.435-1.103-2.435-2.464-2.435Zm-3.865 2.435c0-2.11 1.73-3.82 3.865-3.82 2.135 0 3.866 1.71 3.866 3.82s-1.73 3.82-3.865 3.82c-2.135 0-3.866-1.71-3.866-3.82Zm-3.797 0c0-.383.314-.693.701-.693h1.266c.387 0 .7.31.7.693a.697.697 0 0 1-.7.693H7.36a.697.697 0 0 1-.7-.693Zm12.657 0c0-.383.314-.693.701-.693h1.266c.387 0 .7.31.7.693a.697.697 0 0 1-.7.693h-1.266a.697.697 0 0 1-.7-.693Zm-8.524 3.488c.274.27.274.71 0 .98l-.898.889a.707.707 0 0 1-.992 0 .687.687 0 0 1 0-.98l.899-.889a.707.707 0 0 1 .991 0Zm7.059 0a.707.707 0 0 1 .991 0l.899.889c.273.27.273.709 0 .98a.707.707 0 0 1-.992 0l-.898-.889a.687.687 0 0 1 0-.98Zm-3.53 1.449c.388 0 .702.31.702.693v1.25a.697.697 0 0 1-.701.694.697.697 0 0 1-.702-.693v-1.251c0-.383.314-.693.701-.693Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgLightmode;","var _style, _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgAws = function SvgAws(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n id: \"aws_svg__Layer_1\",\n xmlns: \"http://www.w3.org/2000/svg\",\n x: 0,\n y: 0,\n viewBox: \"0 0 304 182\",\n style: {\n enableBackground: \"new 0 0 304 182\"\n },\n xmlSpace: \"preserve\",\n width: \"1em\",\n height: \"1em\"\n }, props), _style || (_style = /*#__PURE__*/React.createElement(\"style\", null, \".aws_svg__st1{fill-rule:evenodd;clip-rule:evenodd;fill:#f90}\")), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M86.4 66.4c0 3.7.4 6.7 1.1 8.9.8 2.2 1.8 4.6 3.2 7.2.5.8.7 1.6.7 2.3 0 1-.6 2-1.9 3L83.2 92c-.9.6-1.8.9-2.6.9-1 0-2-.5-3-1.4-1.4-1.5-2.6-3.1-3.6-4.7-1-1.7-2-3.6-3.1-5.9-7.8 9.2-17.6 13.8-29.4 13.8-8.4 0-15.1-2.4-20-7.2-4.9-4.8-7.4-11.2-7.4-19.2 0-8.5 3-15.4 9.1-20.6 6.1-5.2 14.2-7.8 24.5-7.8 3.4 0 6.9.3 10.6.8 3.7.5 7.5 1.3 11.5 2.2v-7.3c0-7.6-1.6-12.9-4.7-16-3.2-3.1-8.6-4.6-16.3-4.6-3.5 0-7.1.4-10.8 1.3-3.7.9-7.3 2-10.8 3.4-1.6.7-2.8 1.1-3.5 1.3-.7.2-1.2.3-1.6.3-1.4 0-2.1-1-2.1-3.1v-4.9c0-1.6.2-2.8.7-3.5.5-.7 1.4-1.4 2.8-2.1 3.5-1.8 7.7-3.3 12.6-4.5C41 1.9 46.2 1.3 51.7 1.3c11.9 0 20.6 2.7 26.2 8.1 5.5 5.4 8.3 13.6 8.3 24.6v32.4zM45.8 81.6c3.3 0 6.7-.6 10.3-1.8 3.6-1.2 6.8-3.4 9.5-6.4 1.6-1.9 2.8-4 3.4-6.4.6-2.4 1-5.3 1-8.7v-4.2c-2.9-.7-6-1.3-9.2-1.7-3.2-.4-6.3-.6-9.4-.6-6.7 0-11.6 1.3-14.9 4-3.3 2.7-4.9 6.5-4.9 11.5 0 4.7 1.2 8.2 3.7 10.6 2.4 2.5 5.9 3.7 10.5 3.7zm80.3 10.8c-1.8 0-3-.3-3.8-1-.8-.6-1.5-2-2.1-3.9L96.7 10.2c-.6-2-.9-3.3-.9-4 0-1.6.8-2.5 2.4-2.5h9.8c1.9 0 3.2.3 3.9 1 .8.6 1.4 2 2 3.9l16.8 66.2 15.6-66.2c.5-2 1.1-3.3 1.9-3.9.8-.6 2.2-1 4-1h8c1.9 0 3.2.3 4 1 .8.6 1.5 2 1.9 3.9l15.8 67 17.3-67c.6-2 1.3-3.3 2-3.9.8-.6 2.1-1 3.9-1h9.3c1.6 0 2.5.8 2.5 2.5 0 .5-.1 1-.2 1.6-.1.6-.3 1.4-.7 2.5l-24.1 77.3c-.6 2-1.3 3.3-2.1 3.9-.8.6-2.1 1-3.8 1h-8.6c-1.9 0-3.2-.3-4-1-.8-.7-1.5-2-1.9-4L156 23l-15.4 64.4c-.5 2-1.1 3.3-1.9 4-.8.7-2.2 1-4 1h-8.6zm128.5 2.7c-5.2 0-10.4-.6-15.4-1.8-5-1.2-8.9-2.5-11.5-4-1.6-.9-2.7-1.9-3.1-2.8-.4-.9-.6-1.9-.6-2.8v-5.1c0-2.1.8-3.1 2.3-3.1.6 0 1.2.1 1.8.3.6.2 1.5.6 2.5 1 3.4 1.5 7.1 2.7 11 3.5 4 .8 7.9 1.2 11.9 1.2 6.3 0 11.2-1.1 14.6-3.3 3.4-2.2 5.2-5.4 5.2-9.5 0-2.8-.9-5.1-2.7-7-1.8-1.9-5.2-3.6-10.1-5.2L246 52c-7.3-2.3-12.7-5.7-16-10.2-3.3-4.4-5-9.3-5-14.5 0-4.2.9-7.9 2.7-11.1 1.8-3.2 4.2-6 7.2-8.2 3-2.3 6.4-4 10.4-5.2 4-1.2 8.2-1.7 12.6-1.7 2.2 0 4.5.1 6.7.4 2.3.3 4.4.7 6.5 1.1 2 .5 3.9 1 5.7 1.6 1.8.6 3.2 1.2 4.2 1.8 1.4.8 2.4 1.6 3 2.5.6.8.9 1.9.9 3.3v4.7c0 2.1-.8 3.2-2.3 3.2-.8 0-2.1-.4-3.8-1.2-5.7-2.6-12.1-3.9-19.2-3.9-5.7 0-10.2.9-13.3 2.8-3.1 1.9-4.7 4.8-4.7 8.9 0 2.8 1 5.2 3 7.1 2 1.9 5.7 3.8 11 5.5l14.2 4.5c7.2 2.3 12.4 5.5 15.5 9.6 3.1 4.1 4.6 8.8 4.6 14 0 4.3-.9 8.2-2.6 11.6-1.8 3.4-4.2 6.4-7.3 8.8-3.1 2.5-6.8 4.3-11.1 5.6-4.5 1.4-9.2 2.1-14.3 2.1z\",\n style: {\n fill: \"#252f3e\"\n }\n }), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n className: \"aws_svg__st1\",\n d: \"M273.5 143.7c-32.9 24.3-80.7 37.2-121.8 37.2-57.6 0-109.5-21.3-148.7-56.7-3.1-2.8-.3-6.6 3.4-4.4 42.4 24.6 94.7 39.5 148.8 39.5 36.5 0 76.6-7.6 113.5-23.2 5.5-2.5 10.2 3.6 4.8 7.6z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n className: \"aws_svg__st1\",\n d: \"M287.2 128.1c-4.2-5.4-27.8-2.6-38.5-1.3-3.2.4-3.7-2.4-.8-4.5 18.8-13.2 49.7-9.4 53.3-5 3.6 4.5-1 35.4-18.6 50.2-2.7 2.3-5.3 1.1-4.1-1.9 4-9.9 12.9-32.2 8.7-37.5z\"\n })));\n};\n\nexport default SvgAws;","var _path, _path2, _path3, _path4, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgAzure = function SvgAzure(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.34 7.955h7.401L8.058 31.222a1.2 1.2 0 0 1-.43.595c-.2.147-.442.226-.689.226H1.18a1.16 1.16 0 0 1-.538-.133 1.191 1.191 0 0 1-.628-.893 1.233 1.233 0 0 1 .049-.564l7.16-21.677c.078-.24.228-.447.43-.594.2-.147.441-.226.688-.226v-.001Z\",\n fill: \"url(#azure_svg__a)\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.096 23.562H7.358a.536.536 0 0 0-.506.35.565.565 0 0 0 .135.61l7.543 7.194c.22.21.508.326.809.326h6.646l-2.89-8.482v.002Z\",\n fill: \"#0078D4\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.34 7.955c-.25 0-.493.08-.695.23-.202.15-.351.363-.426.606L.07 30.435a1.224 1.224 0 0 0 .146 1.1c.11.157.254.287.422.375.168.089.354.135.543.134h5.91c.22-.04.425-.139.595-.287.17-.148.3-.34.373-.555l1.426-4.293 5.091 4.854c.213.18.481.28.758.282h6.622l-2.905-8.482-8.465.002 5.181-15.61H8.34Z\",\n fill: \"url(#azure_svg__b)\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.794 8.775a1.205 1.205 0 0 0-.43-.594c-.2-.147-.44-.226-.687-.226h-8.25c.248 0 .487.08.688.226.2.147.35.355.43.594l7.159 21.68a1.222 1.222 0 0 1-.58 1.456c-.166.087-.35.133-.537.133h8.249a1.159 1.159 0 0 0 .957-.502 1.231 1.231 0 0 0 .16-1.088l-7.16-21.68Z\",\n fill: \"url(#azure_svg__c)\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__a\",\n x1: 11.038,\n y1: 9.741,\n x2: 3.044,\n y2: 32.844,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#114A8B\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#0669BC\"\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__b\",\n x1: 13.438,\n y1: 20.556,\n x2: 11.652,\n y2: 21.147,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopOpacity: 0.3\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.07,\n stopOpacity: 0.2\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.32,\n stopOpacity: 0.1\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.62,\n stopOpacity: 0.05\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__c\",\n x1: 12.516,\n y1: 9.042,\n x2: 21.281,\n y2: 31.892,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#3CCBF4\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#2892DF\"\n })))));\n};\n\nexport default SvgAzure;","var _g;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgCivo = function SvgCivo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 711.364 238.193\",\n xmlSpace: \"preserve\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#239DFF\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M273.539.081h-29.424c-5.424 0-8.981 4.179-8.981 9.423v219.13c0 5.245 3.557 9.447 8.981 9.447h29.424c5.424 0 9.595-4.202 9.595-9.447V9.504c0-5.244-4.171-9.423-9.595-9.423M181.662 173.122c-2.671-5.859-10.327-7.473-15.027-3.072-12.446 11.658-29.136 18.819-47.538 18.819-48.218 0-85.012-48.909-63.477-99.824 6.365-15.049 18.442-27.092 33.495-33.447 29.421-12.421 58.048-5.345 77.037 12.095 4.749 4.361 12.365 2.814 15.04-3.054l12.744-27.956c2.039-4.474.631-9.721-3.292-12.685C160.789 1.437 120.037-7.42 77.562 7.052 43.472 18.666 16.89 46.154 6.065 80.503c-25.894 82.163 34.749 157.69 113.032 157.69 27.245 0 52.286-9.214 72.327-24.633 3.786-2.913 4.973-8.113 2.991-12.462l-12.753-27.976zM705.299 80.503c-10.825-34.349-37.407-61.837-71.497-73.451-24.128-8.221-47.698-8.906-69.033-3.835-35.585 7.946-61.358 24.817-84.01 73.453l-45.455 98.598L358.15 5.667a9.498 9.498 0 0 0-8.626-5.56L315.818.054c-6.917-.011-11.524 7.142-8.653 13.436l100.064 218.79c1.542 3.383 4.917 5.67 8.634 5.671l1.637.131h37.841c.761 0 1.522-.157 2.244-.403 2.604-.887 4.798-2.745 5.938-5.311 0 0 50.098-114.027 50.681-115.402 15.244-35.949 24.495-50.922 48.691-61.206 18.307-7.78 39.955-8.727 60.885.753 14.57 6.599 26.028 18.657 32.122 33.443a80.065 80.065 0 0 1 6.122 28.142c.545 38.992-30.891 70.773-69.758 70.773-18.402 0-35.092-7.162-47.538-18.819-4.7-4.402-12.356-2.788-15.027 3.071L516.947 201.1c-1.981 4.348-.795 9.547 2.993 12.461 20.04 15.418 45.081 24.633 72.326 24.633 78.284-.001 138.926-75.528 113.033-157.691\"\n }))));\n};\n\nexport default SvgCivo;","var _g;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDigitalocean = function SvgDigitalocean(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n height: \"1em\",\n width: \"1em\",\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 -3.954 53.927 53.954\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n fill: \"#0080ff\",\n fillRule: \"evenodd\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M24.915 50v-9.661c10.226 0 18.164-10.141 14.237-20.904a14.438 14.438 0 0 0-8.615-8.616C19.774 6.921 9.633 14.83 9.633 25.056H0C0 8.758 15.763-3.954 32.853 1.384 40.311 3.73 46.271 9.661 48.588 17.12 53.927 34.237 41.243 50 24.915 50\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.339 40.367h9.604v-9.604H15.34zm-7.401 7.401h7.4v-7.4h-7.4zm-6.187-7.4h6.187V34.18H1.751z\"\n }))));\n};\n\nexport default SvgDigitalocean;","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDockerCompose = function SvgDockerCompose(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#docker-compose_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.923 21.727c-2.571 0-2.82 2.047-2.82 2.047l1.671-.474s1.248-.65 2.347.574c1.198 1.248.55 3.37 0 4.17-.774 1.247-3.843 1.397-4.044 1.347-1.348-2.87-4.469-2.996-4.469-2.996l3.37-3.095s3.52-3.42 3.52-6.615c0-3.195-3.695-6.64-3.695-6.64s-1.523-1.198-1.523-2.22c0-1.723 3.47-2.197 5.417-3.22 1.947-1.023.45-3.844-.324-4.294-1.522-.649-2.371.525-2.371.525L22.354 4.98l-1.198.474s-.95-.05-1.723.924c-.774.973-.15 3.12-.15 3.12s-1.298-.673-3.494-.673c-7.189 0-7.838 5.99-7.838 7.04 0 1.047.574 3.144 1.398 4.143.823.998 2.645 3.095 2.645 4.417 0 2.097-3.295 3.37-4.992 3.37-2.321 0-3.22-1.423-3.22-2.396 0-1.398.924-2.921 1.473-3.944.549-1.023-.35-2.322-.35-2.322l-1.198.55-2.421-1.374s.03-2.178-.068-2.228c-.45.1-.98.78-.98 1.88 0 1.5 1.596 1.739 2.436 2.061 1.136.438 1.132 1.508.384 2.53-.748 1.024-1.298 3.246-1.298 4.344 0 2.196 2.846 3.22 4.767 3.22 2.97 0 4.992-1.548 4.992-1.548s.274 1.723.274 2.571c0 .849-.773 1.648-2.096 1.648s-2.371-.598-2.371-.598-2.696-1.748-3.82-1.748c-1.971 0-2.67 2.022-2.67 2.472 0 .45.324 1.472.598 1.847.275.375 1.698.95 2.073.849.374-.1.524-.924.45-1.198-.076-.275-1.323-1.048-1.323-1.423s.216-.7.89-.7c.673 0 1.46.593 2.682 1.742.89.837 3.164 1.844 4.59 1.778.948-.043 2.758-.477 3.145-1.971.221-.857-.1-3.37.124-2.72.225.648.765 1.809 2.357 2.873.548.365 3.103 1.067 4.706.472 1.998-.375 3.096-3.145 3.12-3.17 2.123 0 3.546-.8 5.018-1.573 1.473-.774 1.448-3.42 1.448-4.843 0-1.847-2.72-3.144-3.794-3.144l.003-.004Zm-13.18 8.488s-.499-.749-.499-1.548c0-.8.175-1.522 1.473-2.022-.026.026-1.182 1.133-.974 3.57Zm5.318 2.47c-1.947 0-3.02-1.922-3.02-3.17 0-1.247.649-2.096.649-2.096s.03.632.03.757c0 .124.341 1.24 1.115 2.039.774.799 3.896.973 3.822 1.048-.5.998-1.923 1.423-2.596 1.423Zm2.597-3.862a4.908 4.908 0 0 1-2.13-1.292c1.498-.093 2.228 1.33 2.13 1.292Z\",\n fill: \"#B8C9DA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.512 13.05c.876-.953 1.107-2.166.516-2.71-.298-.274-.75-.323-1.237-.184-1.135.804-1.831 1.85-2.257 2.835.01.322.11.605.323.8.59.543 1.78.212 2.656-.74l-.001-.002ZM14.802 11.476c.67-.386 1.015-1.043.77-1.466-.244-.424-.986-.454-1.656-.067-.67.386-1.014 1.043-.77 1.467.244.423.986.453 1.656.066ZM8.914 34.851c.24-.44-.133-1.103-.831-1.48s-1.455-.324-1.694.116c-.095.174-.09.383-.012.595.427.412 1.206.806 2.012 1.11.235-.047.426-.158.524-.34h.001ZM15.145 27.415c-.326-.193-.763-.036-1.102.348a6.483 6.483 0 0 0-.353 1.824c.06.103.136.19.233.247.424.251 1.04-.088 1.377-.755.337-.668.268-1.413-.155-1.665ZM15.311 30.244c-.234.463-.185.978.108 1.152.286.17.698-.05.935-.492a3.355 3.355 0 0 1-.37-1.232c-.244.034-.507.244-.673.572Z\",\n fill: \"#99B3D1\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.593 28.782A4.824 4.824 0 0 1 20 27.968c.153.592.424 1.969-.003 2.975.857.171 1.634.239 1.594.28-.034.067-.082.126-.124.189.16-.135.67-.62.649-1.338-.015-.508-.237-.978-.527-1.345.015.038.016.058.003.053h.001ZM23.6 19.116c-.587.849-1.834 2.122-1.834 2.122s-2.572 1.498-3.545 3.47c0 0 1.29-.788 3.543-.392l1.15-1.055s3.52-3.42 3.52-6.615c0-1.597-.924-3.258-1.848-4.518-.024.666-.101 1.497-.324 2.047.026.45.4 3.294-.662 4.942ZM4.61 22.497c.204-.396.423-.695.6-1.01.738-1.304-.367-2.396-.367-2.396l-1.198.549-1.51-.856c-.099.242-.203.516-.237.683-.01.05.005.119.039.196.38.12.552.322.815.414.596.21.992.829.77 1.562.285.323.724.616 1.088.857v.001Z\",\n fill: \"#8597A9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.942 25.473s.078-1.054.988-2.101c.91-1.048 1.385-1.329 2.32-2.144.937-.814 2.434-2.041 2.774-4.21.23-1.299.127-2.813-.548-3.895-.674-1.082-2.31-3.108-5.443-3.832-3.132-.725-5.566.287-5.566.287s-4.063 1.464-4.372 6.117c-.07 1.34.264 2.144.264 2.144s.435 1.37 1.043 2.124c.607.753 1.318 1.631 1.318 1.631s1.303 1.327 1.303 2.878c0 .618-.242 1.199-.64 1.61-.395.41-1.551 1.977-4.547 1.977-1.82 0-3.29-1.158-3.29-2.47 0-1.076.342-1.996.756-2.7.415-.705 1.118-1.562 1.118-2.384 0-.553-.562-1.334-.562-1.334l.11-.103s.568.652.568 1.425c0 .478-.088.772-.203 1.01-.115.237-1.439 2.269-1.439 3.708 0 .804.512 2.38 2.94 2.38 1.8 0 2.754-.547 3.87-1.375.635-.49 1.112-1.157 1.112-1.769 0-.61-.2-1.123-.633-1.728a17.442 17.442 0 0 0-1.303-1.642c-.575-.65-2.287-2.183-2.287-5.547 0-1.593 1.398-7.001 8.43-7.001 1.547 0 8.667 1.316 8.667 7.437 0 1.78-.983 4.029-2.497 5.277-1.515 1.248-3.727 2.691-4.254 4.23h.003Z\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.585 26.438s-.559.158-.42.098c.212-.092.843-.539 1.204-.905.716-.728 5.784-4.99 5.784-8.49 0-3.252-2.208-5.332-2.208-5.332s-.326-.278-1.286-1.41c-.96-1.13-1.232-1.487-1.341-1.87-.207-.355-.2-1.491.513-1.988.712-.498.853-.449.853-.449l.018.17s-.994.426-1.286 1.332c-.06.298-.12.91.592 1.619l1.937 1.928s2.728 2.261 2.728 6.002c0 1.152-.669 2.998-1.752 4.228-1.083 1.229-3.566 3.887-5.335 5.067ZM19.082 9.328s-.616-1.32-.277-2.542c.336-1.03 1.29-1.346 2.423-1.474.177.036.198.12.198.12s-1.675.142-2.282 1.742c-.191.58.047 1.788.256 2.237.04.067-.318-.083-.318-.083ZM14.625 19.985c-.67-.52-1.672-.315-2.158.3-.54.686-.485 1.682.182 2.17.504.368 1.698.287 2.158-.3.605-.774.471-1.664-.182-2.17Zm-.01 2.018c-.409.522-1.463.58-1.92.266-.492-.338-.65-1.325-.165-1.933a1.43 1.43 0 0 1 1.016-.537c-.06.073-.096.126-.096.225 0 .238.201.432.452.432.25 0 .452-.157.452-.396 0-.02-.004-.04-.007-.058.036.023.072.04.106.068.575.46.702 1.243.164 1.933h-.002Z\",\n fill: \"#121313\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.452 20.07c-.034-.027-.07-.045-.106-.068.003.02.007.038.007.058a.442.442 0 0 1-.452.432.442.442 0 0 1-.452-.432c0-.1.037-.19.097-.262a1.431 1.431 0 0 0-1.016.537c-.486.607-.328 1.594.163 1.933.458.315 1.512.256 1.921-.267.54-.688.412-1.472-.163-1.932Z\",\n fill: \"#fff\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.796 20.463c-.67-.519-1.672-.315-2.158.3-.54.686-.486 1.682.182 2.17.504.368 1.698.287 2.158-.3.605-.773.471-1.664-.182-2.17Zm-.01 2.018c-.409.523-1.463.581-1.92.267-.492-.338-.65-1.325-.165-1.933.263-.33.638-.51 1.016-.538-.06.073-.096.126-.096.225 0 .24.201.433.452.433.25 0 .452-.157.452-.397a.31.31 0 0 0-.007-.058c.035.024.072.04.106.069.575.46.702 1.243.164 1.932h-.002Z\",\n fill: \"#121313\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.623 20.549c-.034-.027-.07-.046-.106-.069.003.02.007.038.007.058a.442.442 0 0 1-.452.433.442.442 0 0 1-.453-.433c0-.099.037-.189.097-.262a1.43 1.43 0 0 0-1.016.538c-.485.606-.327 1.593.164 1.933.458.314 1.512.256 1.921-.267.54-.688.412-1.473-.163-1.933v.002Z\",\n fill: \"#fff\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m1.188 18.105-.14-2.05s-.063-.258.24-.357l2.954-.97s.508-.108.92.031c.412.14 1.716.688 1.716.688s.318.106.318.45c0 .343-.023 1.655-.023 1.655s.002.517-.208.634c-.21.116-3.046 1.558-3.046 1.558s-.47.11-.761-.081c-.292-.192-1.683-1.01-1.683-1.01s-.286-.165-.286-.548h-.001Z\",\n fill: \"#151516\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m1.29 16.3.095 1.761s.007.265.424.52 1.557.9 1.557.9.122.067.122-.237V17.58s.077-.36-.122-.437c-.2-.076-1.909-.93-1.909-.93s-.167-.15-.167.087v.001Z\",\n fill: \"#0F5983\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.679 19.122v-1.586s-.043-.308.268-.42c.312-.113 2.653-1.103 2.653-1.103s.278-.13.278.188v1.348s-.005.26-.23.393-2.68 1.413-2.68 1.413-.288.091-.288-.234l-.001.001Z\",\n fill: \"#29B4FA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m1.632 16.003 1.824.935s.193.119.544-.028l2.548-1.062s.243-.135.019-.209c-.224-.073-1.699-.663-1.699-.663s-.363-.085-.646 0c-.282.086-2.452.788-2.452.788s-.409.097-.139.239h.001Z\",\n fill: \"#72CCFA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.252 19.219a.093.093 0 0 1-.035-.007l-.043-.017c-.056-.022-.1-.1-.103-.181l-.048-1.647c-.002-.054.016-.098.048-.121a.085.085 0 0 1 .083-.01l.044.018c.056.022.1.1.102.18l.049 1.648c.001.054-.016.098-.049.12a.088.088 0 0 1-.05.017h.002Zm.002-.098-.018.046.018-.046Zm-.131-1.79v.035l.048 1.646c.001.048.027.087.04.093l.041.016v-.035l-.048-1.646c-.002-.048-.027-.087-.04-.093l-.041-.016ZM2.874 18.996a.091.091 0 0 1-.035-.007l-.043-.017c-.057-.022-.1-.099-.103-.18l-.048-1.648c-.002-.054.016-.098.048-.12a.087.087 0 0 1 .084-.01l.044.017c.057.022.1.1.103.181l.048 1.647c.001.054-.016.098-.048.121a.085.085 0 0 1-.05.016Zm.002-.098-.018.047.018-.047Zm-.131-1.79v.035l.048 1.647c.002.048.027.086.04.092l.041.016v-.034l-.048-1.647c-.002-.047-.027-.086-.04-.092l-.041-.016ZM2.479 18.791a.093.093 0 0 1-.035-.007l-.044-.017c-.056-.022-.1-.1-.102-.181l-.049-1.647c-.001-.054.016-.098.049-.121a.088.088 0 0 1 .084-.01l.044.018c.056.022.1.1.102.181l.049 1.647c0 .054-.017.098-.049.121a.088.088 0 0 1-.05.016Zm0-.098-.017.046.019-.046H2.48Zm-.13-1.79s-.002.015 0 .034l.048 1.646c0 .048.026.087.04.093l.04.016s.002-.015 0-.035l-.048-1.646c-.001-.049-.027-.087-.04-.093l-.04-.016v.001ZM2.083 18.528a.083.083 0 0 1-.034-.007l-.044-.017c-.056-.022-.1-.098-.102-.178l-.047-1.615c-.002-.053.016-.096.048-.119a.09.09 0 0 1 .084-.01l.044.018c.056.022.1.098.103.179l.047 1.615c.001.053-.016.096-.047.12a.087.087 0 0 1-.05.015h-.002Zm0-.098-.016.046.018-.046h-.001Zm-.13-1.755v.032l.048 1.616c.001.046.026.084.039.089l.042.016v-.032l-.048-1.616c0-.046-.026-.084-.04-.089l-.04-.016ZM1.689 18.308a.112.112 0 0 1-.033-.006l-.044-.016c-.057-.02-.1-.097-.103-.175l-.046-1.592c-.001-.052.016-.094.047-.117a.09.09 0 0 1 .084-.01l.044.017c.057.02.1.097.103.176l.046 1.59c.001.052-.016.095-.047.118a.088.088 0 0 1-.051.016v-.001Zm.001-.098-.017.046.017-.046Zm-.128-1.726s-.002.013-.001.03l.046 1.592c.001.045.027.082.04.087l.04.016s.002-.014 0-.031l-.045-1.59c-.001-.046-.027-.082-.04-.088l-.041-.015.001-.001Z\",\n fill: \"#05446D\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M27.797 23.567c-.609-.427-.915-.528-1.476-.528-.562 0-.783.43-.783.43s.655-.257 1.057-.257c.403 0 1.997.824 1.997 2.519 0 2.537-2.072 3.484-3.76 3.484-.318 0-.62-.012-.906-.032l.138.384c.25.028.493.044.715.044 2.015 0 3.077-1.054 3.51-1.6.432-.546.627-1.53.627-2.26 0-.73-.511-1.755-1.119-2.182v-.002ZM21.721 29.055l-.14-.308c-.953-.318-1.617-.754-2.077-1.172.01.031.031.078.082.14a.7.7 0 0 1 .126.303c.202.194.395.356.545.446.383.205.898.41 1.464.59v.002ZM18.556 26.265c-.054.097.007.281.134.503l.088-.057c-.163-.267-.222-.446-.222-.446Z\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.745 26.62s-1.283 1.112-1.283 2.863c0 1.752.746 2.79.944 3.006.199.215 1.856 2.289 5.3 2.289 1.246 0 4.606-1.044 4.606-4.302 0-1.91-1.685-4.07-4.915-4.07-.889.041-1.468.728-1.468 1.233 0 .758.448 1.236 1.01 1.236.502 0 .832-.223.832-.817 0-.3-.243-.47-.305-.51-.06-.041.244.324.174.657-.07.332-.225.575-.684.575-.314 0-.946-.424-.824-1.117.084-.423.468-.928 1.242-1.02 1.36-.161 4.58.842 4.58 3.807 0 2.085-1.918 4.2-4.249 4.2-2.33 0-3.637-1.044-3.637-1.044s-2.234-1.82-2.234-4.1c0-1.07.141-1.893.9-2.872\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.676 27.48s-.603.685-.603 1.879c0 1.193.87 3.106 2.775 3.106 1.257 0 2.966-.943 2.966-2.306 0-1.244-1.009-2.608-2.348-2.608-.03-.031.039-.07.123-.07.084 0 .914.007 1.677.666.762.658.972 1.305.972 1.984 0 .68-.16 1.305-.966 1.91-.804.606-1.34.862-2.424.862-1.082 0-2.037-.968-2.037-.968s-.926-.861-.926-2.396c0-.556.445-2.015.792-2.059h-.001Z\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.415 30.296c-.693-.39-1.641-1.062-1.765-3.53 0 0-.51 2.51 1.336 3.827.705.527 1.494.8 3.409.908l.232-.325c-1.15-.157-2.377-.428-3.21-.88h-.002ZM30.925 26.408c0-1.16.041-4.812-4.253-4.812-1.461 0-2.69 1.295-2.69 2.25.075 0 .168-.087.168-.087s.101-.787.742-1.279c.644-.495.95-.643 1.78-.643.829 0 3.821.469 3.821 4.191 0 1.987-.957 3.526-2.393 4.219-1.176.567-2.323.96-4.002 1.026l-.082.285c3.882-.018 6.91-2.177 6.91-5.15h-.001Z\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.154 16.142s-.531-.054-.834.496c-.302.55-.438 1.272-.196 1.943.243.671.742.9 1.254 1.08.512.18 2.163.665 2.163 1.57 0 .461-.7 1.583-1.057 2.134-.358.55-.969 2.015-.969 3.688 0 1.494 1.623 3.405 4.815 3.405 1.6 0 3.144-.46 5.008-1.509.225-.159.075-.561.075-.561s-2.11 1.577-5.094 1.577c-2.077 0-4.392-1.162-4.392-2.97 0-1.808.341-2.886.753-3.606.412-.72.977-1.48.977-2.172 0-.691-.672-1.34-1.172-1.544-.5-.204-1.33-.403-1.711-.665-.38-.262-.456-.932-.456-1.17 0-.24-.017-1.04.521-1.507.126-.083.315-.19.315-.19v.001Z\",\n fill: \"#090D0F\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.986 25.233s-.326-.15-.865-.15c-.76 0-2.956 1.023-2.956 2.494 0 1.472 1.408 4.966-1.54 4.966-1.795 0-3.427-1.22-3.427-1.22s-1.388-1.07-2.743-1.07S.6 31.415.6 33.023c0 1.61 1.425 2.857 2.37 2.857.946 0 1.098-.688 1.098-.688s.236-.587-.122-.896c-.357-.31-1.204-.736-1.204-1.365 0-.628.714-.596.714-.596s.653-.04 1.387.596c.735.637 3.005 3.15 5.795 3.15 1.956 0 2.72-.841 3.055-1.329.334-.488.962-1.395.385-3.087-.64-1.877-1.737-3.677.66-5.03 0 .013-1.07.232-1.583 1.461-.305.774.042 1.925.259 2.784.216.859.678 2.42-.065 3.4-.566.747-1.373 1.312-2.689 1.312s-2.54-.564-2.54-.564-1.031-.377-1.876-1.088c-.844-.71-1.514-1.266-1.514-1.266s-.603-.485-1.345-.485c-.743 0-.924.505-.924.717 0 .212.11.672.429.9.32.229.588.435.712.585.125.15.244.443.081.7-.162.255-.27.41-.68.41-.41 0-.789-.244-1.062-.462-.274-.218-.75-.785-.87-1.259-.122-.474-.102-.756-.102-.756s.042-.642.33-1.116c.287-.474.957-1.278 2.157-1.278.489 0 1.017.175 1.798.645.78.47 1.788 1.112 1.788 1.112s.946.637 2.525.637c1.03 0 1.716-.38 2.127-.953.412-.573.314-1.603.064-3.066-.25-1.464-.414-1.933.436-2.837.792-.843 1.904-1.108 2.793-.935h-.002Z\",\n fill: \"#101111\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m15.683 34.62.07 1.566s-.056.399.416.697c.473.299 3.518 2.317 3.518 2.317s.356.238.857-.061c.5-.299 2.348-1.413 2.348-1.413s.226-.142.251-.517c.026-.376.088-1.567.088-1.567s.031-.156-.247-.344c-.278-.188-4.065-1.85-4.065-1.85s-.375-.164-.782-.028c-.407.136-2.065.719-2.065.719s-.404.187-.391.48h.002Z\",\n fill: \"#0E1011\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m16.254 34.515 3.683 1.967s.223.154.568 0 1.9-.988 1.9-.988.255-.083-.11-.253c-.366-.168-3.474-1.648-3.474-1.648s-.168-.137-.493-.044c-.326.094-2.037.673-2.037.673s-.412.092-.037.293Z\",\n fill: \"#72CCFA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m15.889 34.73.107 1.43s-.02.263.403.49c.424.225 3.472 2.299 3.472 2.299s.23.107.23-.282c0-.388-.025-1.511-.025-1.511s.034-.266-.186-.392l-3.766-2.121s-.235-.132-.235.086Z\",\n fill: \"#29B4FA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m20.334 38.667-.019-1.618s-.047-.23.196-.351c.245-.123 2.247-1.104 2.247-1.104s.18-.11.178.173c0 .284-.043 1.444-.043 1.444s-.03.177-.187.276l-2.143 1.323s-.23.154-.23-.142Z\",\n fill: \"#0F5983\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.662 38.552a.099.099 0 0 1-.059-.019c-.031-.021-.048-.06-.048-.106l.002-1.5c0-.077.048-.152.113-.174l.05-.018a.11.11 0 0 1 .098.011c.03.022.048.061.048.106l-.002 1.5c0 .078-.049.153-.113.175l-.052.018a.11.11 0 0 1-.038.007Zm.1-1.725-.06.018c-.022.007-.047.045-.047.082l-.002 1.5c0 .015.004.025.007.027l.058-.019c.022-.008.048-.043.048-.081l.002-1.5c0-.016-.005-.025-.007-.027ZM21.152 38.196a.105.105 0 0 1-.061-.02.122.122 0 0 1-.046-.1l.007-1.37c0-.07.05-.142.114-.163l.052-.016a.109.109 0 0 1 .098.014.12.12 0 0 1 .046.098l-.007 1.37c0 .071-.05.143-.114.164l-.052.016a.139.139 0 0 1-.037.005v.002Zm.106-1.576-.062.018c-.022.007-.046.038-.046.07l-.007 1.37c0 .012.003.017.006.018l.062-.017c.022-.007.046-.038.046-.07l.007-1.37c0-.012-.003-.017-.006-.019ZM21.617 37.867a.102.102 0 0 1-.064-.02.11.11 0 0 1-.042-.094l.01-1.277c0-.068.052-.136.116-.155l.051-.017a.11.11 0 0 1 .1.015c.028.021.043.055.043.093l-.01 1.276a.172.172 0 0 1-.115.156l-.052.015a.127.127 0 0 1-.036.006l-.001.002Zm.107-1.468-.008.001-.05.016a.073.073 0 0 0-.047.063l-.01 1.276c0 .008.002.013.003.014h.013l.052-.015a.071.071 0 0 0 .046-.062l.01-1.277c0-.007 0-.011-.003-.014h-.005V36.4ZM22.079 37.606a.104.104 0 0 1-.064-.02.11.11 0 0 1-.042-.094l.01-1.276c0-.068.052-.136.115-.156l.052-.015a.114.114 0 0 1 .1.015.11.11 0 0 1 .042.093l-.01 1.277a.172.172 0 0 1-.116.156l-.051.015a.128.128 0 0 1-.036.005Zm.107-1.468s-.005 0-.008.002l-.052.015a.071.071 0 0 0-.046.062l-.01 1.276c0 .008.002.013.003.014h.013l.052-.016c.024-.007.045-.037.046-.062l.01-1.277c0-.008-.002-.012-.003-.014h-.005ZM22.517 37.368a.105.105 0 0 1-.064-.021.112.112 0 0 1-.042-.09l.012-1.235a.17.17 0 0 1 .116-.152l.052-.015a.113.113 0 0 1 .1.016c.027.02.043.053.042.09l-.012 1.236c0 .068-.05.133-.116.152l-.052.015a.126.126 0 0 1-.036.005v-.001Zm.106-1.421h-.004l-.052.015c-.023.007-.045.035-.045.059l-.012 1.235c.005.013.01.013.016.01l.052-.015a.072.072 0 0 0 .047-.059l.011-1.235c-.003-.009-.007-.011-.011-.011l-.002.001Z\",\n fill: \"#05446D\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m26.434 23.134-2.906.688s-.415.01-.399.573c.016.563.084 1.738.084 1.738s.09.523.594.703c.506.18 2.19.925 2.19.925s.216.177.535.062c.321-.117 2.06-.803 2.06-.803s.4-.866.058-1.936c-.344-1.069-1.198-1.951-2.216-1.951v.001Z\",\n fill: \"#0E1011\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.393 27.334V25.5s-.029-.267.182-.338c.211-.07 1.497-.52 1.497-.52s.17-.117.286.091c.115.208.233.612.233 1.03 0 .416-.107.86-.107.86s-.049.163-.19.216c-.143.053-1.706.662-1.706.662s-.194.126-.194-.167h-.001Z\",\n fill: \"#29B4FA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.213 25.537v1.701s.038.283-.093.232a316.13 316.13 0 0 1-2.387-1.063s-.222-.145-.24-.518c-.019-.374-.097-1.472-.097-1.472s-.016-.218.149-.133c.165.083 2.261.865 2.384.906.124.042.284.17.284.348Z\",\n fill: \"#0F5983\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m23.634 24.12 2.262.8s.217.204.71.023a61.772 61.772 0 0 1 1.404-.483s.205-.046.086-.196c-.118-.15-.403-.57-1.246-.963-.199-.083-.474-.004-.67.049-.196.053-2.496.598-2.496.598s-.232.108-.05.172Z\",\n fill: \"#72CCFA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.993 3.577s.26-2.1.302-2.34c.043-.238.22-.387.647-.439.393-.048 2.573-.333 2.573-.333s.498-.127 1.034.16c.535.287 3.027 1.632 3.216 1.76.19.13.361.16.285.777a62.834 62.834 0 0 1-.296 1.984s.052.321-.344.433c-.395.112-3.171.827-3.171.827s-.354.135-.877-.164c-.522-.298-3.059-1.903-3.187-1.99-.128-.086-.25-.25-.18-.675h-.002Z\",\n fill: \"#121313\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.793 4.271s.674-.355.674-1.293c0-.787-.564-2.747-2.032-2.747-1.216 0-1.55.75-1.55.75l-.179-.152S24.18 0 25.436 0c1.257 0 2.342 1.678 2.342 3.042 0 1.054-1.057 1.739-1.057 1.739l.074-.51-.002.001Z\",\n fill: \"#090D0F\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m19.237 3.717.255-2.254s-.013-.27.174-.15c.186.118 3.172 1.948 3.172 1.948s.216.163.14.59c-.074.425-.223 1.98-.223 1.98s.018.224-.23.088c-.249-.136-3.19-1.876-3.19-1.876s-.127-.078-.098-.326Z\",\n fill: \"#29B4FA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m22.999 5.98.24-2.374s.048-.2.24-.227c.19-.028 3.228-.571 3.228-.571s.204-.014.15.314l-.338 1.98s-.075.219-.275.305c-.2.087-2.962.723-2.962.723s-.297.109-.286-.15H23Z\",\n fill: \"#0F5983\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m19.976 1.162 3.052 1.894s.145.156.623.076c.477-.08 2.809-.497 2.809-.497s.148 0 .084-.066C26.479 2.504 23.39.857 23.39.857s-.26-.19-.8-.14c-.54.048-2.58.287-2.58.287s-.22.045-.035.16l.001-.002Z\",\n fill: \"#72CCFA\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M25.869 27.127a.108.108 0 0 1-.033-.004l-.048-.015c-.061-.02-.11-.092-.114-.17l-.075-1.52c-.003-.048.014-.09.044-.113a.1.1 0 0 1 .09-.015l.048.015c.061.02.11.093.114.17l.075 1.521c.003.047-.014.089-.044.112a.097.097 0 0 1-.058.02Zm-.003-.099h.003s.004-.009.004-.029l-.075-1.52c-.002-.041-.028-.076-.046-.081l-.048-.015s-.007.008-.007.027l.075 1.521c.002.042.029.075.046.081l.048.015v.001ZM25.372 26.87a.099.099 0 0 1-.031-.004l-.049-.014c-.062-.019-.112-.088-.115-.162l-.07-1.42a.126.126 0 0 1 .043-.106.102.102 0 0 1 .091-.017l.049.014c.062.019.112.088.115.162l.07 1.42a.126.126 0 0 1-.043.107.095.095 0 0 1-.06.02Zm-.158-1.628s-.008.007-.008.023l.069 1.42c.001.034.025.067.045.072l.048.015h.004s.004-.008.004-.023l-.069-1.42c-.001-.034-.025-.066-.045-.072l-.048-.014v-.001ZM24.886 26.68a.096.096 0 0 1-.03-.005l-.05-.015c-.062-.018-.111-.087-.114-.161l-.07-1.42a.125.125 0 0 1 .043-.107.102.102 0 0 1 .091-.016l.049.015c.062.018.111.088.115.161l.069 1.421a.123.123 0 0 1-.043.106.095.095 0 0 1-.06.021Zm-.003-.1h.003s.006 0 .005-.022l-.07-1.42c0-.034-.025-.067-.044-.072l-.049-.015s-.008.007-.008.023l.07 1.42c0 .034.025.066.044.072l.049.014ZM24.404 26.475a.096.096 0 0 1-.031-.005l-.049-.014c-.062-.018-.112-.087-.115-.161l-.07-1.42a.125.125 0 0 1 .044-.107.102.102 0 0 1 .09-.016l.05.014c.061.018.11.087.114.161l.07 1.42a.126.126 0 0 1-.043.107.095.095 0 0 1-.06.02Zm-.158-1.629s-.008.007-.008.023l.07 1.421c0 .034.024.066.044.072l.049.014h.003s.005-.007.003-.024l-.069-1.42c0-.034-.025-.066-.045-.072l-.048-.014h.001ZM23.913 26.265a.085.085 0 0 1-.03-.005l-.048-.014c-.062-.017-.112-.085-.115-.158l-.068-1.381a.122.122 0 0 1 .041-.104.105.105 0 0 1 .092-.017l.049.014c.062.017.112.085.115.158l.068 1.381a.121.121 0 0 1-.041.104.098.098 0 0 1-.061.02l-.002.002Zm-.155-1.584s-.01.008-.008.021l.068 1.382c0 .032.025.063.043.068l.049.014h.005s.004-.007.003-.021l-.068-1.382c-.001-.032-.024-.063-.044-.068l-.048-.014ZM23.496 5.818h-.083a.162.162 0 0 1-.116-.056.17.17 0 0 1-.037-.132l.265-1.933a.198.198 0 0 1 .189-.168h.078a.162.162 0 0 1 .115.055.17.17 0 0 1 .037.134L23.68 5.65a.194.194 0 0 1-.185.168v-.001Zm.215-2.191c-.041 0-.081.038-.087.083l-.264 1.933a.073.073 0 0 0 .014.056c.01.013.025.019.042.02h.08c.043 0 .083-.036.089-.082l.264-1.933a.073.073 0 0 0-.014-.056.057.057 0 0 0-.043-.02h-.08v-.001ZM24.158 5.691h-.004l-.078-.002a.15.15 0 0 1-.116-.055.17.17 0 0 1-.036-.132l.264-1.933a.193.193 0 0 1 .185-.168h.004l.078.002c.045 0 .086.02.114.054a.17.17 0 0 1 .037.133l-.264 1.933a.193.193 0 0 1-.185.168Zm-.001-.098c.042 0 .083-.038.088-.083l.264-1.933a.069.069 0 0 0-.013-.055.058.058 0 0 0-.043-.02l-.078-.002h-.002c-.041 0-.082.038-.087.083l-.264 1.933a.069.069 0 0 0 .014.055c.01.013.025.018.042.02l.079.002ZM24.821 5.554h-.083a.162.162 0 0 1-.115-.056.171.171 0 0 1-.037-.133l.264-1.933a.193.193 0 0 1 .185-.169h.084a.162.162 0 0 1 .115.056.17.17 0 0 1 .037.134l-.264 1.932a.193.193 0 0 1-.186.169Zm.216-2.191c-.042 0-.082.038-.088.083l-.264 1.932a.073.073 0 0 0 .014.057c.01.013.025.018.042.02h.081c.042 0 .082-.036.088-.082l.264-1.933a.073.073 0 0 0-.014-.057.057.057 0 0 0-.043-.02h-.08ZM25.431 5.404h-.083a.162.162 0 0 1-.115-.056.17.17 0 0 1-.037-.132l.264-1.933a.194.194 0 0 1 .186-.168h.082a.162.162 0 0 1 .115.055.17.17 0 0 1 .037.133l-.264 1.932a.192.192 0 0 1-.185.169Zm.216-2.191c-.041 0-.082.038-.088.083l-.264 1.933a.072.072 0 0 0 .014.056c.01.013.025.018.043.02h.08c.04 0 .081-.036.087-.081l.264-1.933a.073.073 0 0 0-.014-.056.058.058 0 0 0-.042-.02h-.08v-.002ZM26.082 5.282h-.081a.162.162 0 0 1-.116-.056.17.17 0 0 1-.037-.132l.265-1.933a.194.194 0 0 1 .185-.169h.082a.162.162 0 0 1 .115.056.17.17 0 0 1 .037.132l-.264 1.933a.194.194 0 0 1-.186.169Zm.216-2.191c-.041 0-.082.038-.087.083l-.264 1.932a.073.073 0 0 0 .013.057c.01.012.026.018.043.02h.08c.041 0 .081-.036.087-.082l.264-1.933a.073.073 0 0 0-.014-.057.058.058 0 0 0-.042-.02h-.08Z\",\n fill: \"#05446D\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"docker-compose_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n d: \"M0 0h30.925v39.29H0z\"\n })))));\n};\n\nexport default SvgDockerCompose;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDocker = function SvgDocker(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M35.492 15.925c-.1-.085-.997-.782-2.925-.782a9.03 9.03 0 0 0-1.513.137c-.366-2.6-2.477-3.856-2.56-3.924l-.515-.306-.333.493a7.35 7.35 0 0 0-.913 2.175c-.35 1.478-.134 2.87.598 4.06-.881.509-2.31.628-2.61.645H1.116c-.615 0-1.114.51-1.114 1.138a17.526 17.526 0 0 0 1.03 6.2c.815 2.175 2.028 3.788 3.591 4.774 1.762 1.104 4.638 1.732 7.88 1.732 1.462 0 2.925-.136 4.371-.408a17.806 17.806 0 0 0 5.719-2.123 15.735 15.735 0 0 0 3.89-3.26c1.878-2.158 2.992-4.57 3.807-6.71h.332c2.045 0 3.308-.833 4.007-1.546a4.53 4.53 0 0 0 1.063-1.597l.15-.442-.349-.255v-.001Z\",\n fill: \"#0091E2\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.31 17.725h3.157c.15 0 .283-.119.283-.29V14.55a.283.283 0 0 0-.283-.289H3.31a.283.283 0 0 0-.283.289v2.887c.017.17.134.29.283.29ZM7.666 17.725h3.158c.15 0 .282-.119.282-.29V14.55a.283.283 0 0 0-.282-.289H7.666a.283.283 0 0 0-.283.289v2.887c.016.17.133.29.283.29ZM12.104 17.725h3.158c.15 0 .283-.119.283-.29V14.55a.283.283 0 0 0-.283-.289h-3.158a.283.283 0 0 0-.283.289v2.887c0 .17.117.29.283.29ZM16.475 17.725h3.159c.15 0 .282-.119.282-.29V14.55a.283.283 0 0 0-.282-.289h-3.159a.283.283 0 0 0-.283.289v2.887c0 .17.134.29.283.29ZM7.666 13.597h3.158c.15 0 .282-.136.282-.289v-2.887a.284.284 0 0 0-.282-.29H7.666a.284.284 0 0 0-.283.29v2.887c.016.153.133.29.283.29ZM12.104 13.597h3.158c.15 0 .283-.136.283-.289v-2.887a.284.284 0 0 0-.283-.29h-3.158a.283.283 0 0 0-.283.29v2.887c0 .153.117.29.283.29ZM16.475 13.597h3.159c.15 0 .282-.136.282-.289v-2.887a.295.295 0 0 0-.282-.29h-3.159a.283.283 0 0 0-.283.29v2.887c0 .153.134.29.283.29ZM16.475 9.453h3.159c.15 0 .282-.119.282-.29V6.277a.295.295 0 0 0-.282-.289h-3.159a.284.284 0 0 0-.283.29v2.887c0 .153.134.289.283.289ZM20.883 17.725h3.158c.15 0 .283-.119.283-.29V14.55a.283.283 0 0 0-.283-.289h-3.158a.283.283 0 0 0-.283.289v2.887c.016.17.133.29.283.29Z\",\n fill: \"#0091E2\"\n })));\n};\n\nexport default SvgDocker;","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgEcr = function SvgEcr(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#ecr_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.345 33.243c7.37 0 13.346-5.976 13.346-13.347 0-7.372-5.975-13.348-13.346-13.348C5.975 6.548 0 12.524 0 19.896c0 7.371 5.975 13.347 13.345 13.347Z\",\n fill: \"#9F552B\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.345 32.412c7.37 0 13.346-5.976 13.346-13.348 0-7.371-5.975-13.347-13.346-13.347C5.975 5.717 0 11.693 0 19.064c0 7.372 5.975 13.348 13.345 13.348Z\",\n fill: \"#F58536\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.246 12.69a2.163 2.163 0 0 1-2.161-2.162c0-1.192.969-2.16 2.16-2.16 1.193 0 2.162.968 2.162 2.16a2.163 2.163 0 0 1-2.161 2.162Zm0-2.985a.824.824 0 1 0 0 1.647.824.824 0 0 0 0-1.647ZM13.246 20.617a1.553 1.553 0 0 1 0-3.104 1.553 1.553 0 0 1 0 3.104Zm0-2.149a.597.597 0 1 0 .002 1.195.597.597 0 0 0-.002-1.195Z\",\n fill: \"#fff\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.379 17.274a1.961 1.961 0 0 1 1.731 0h.027l.601-4.617a2.588 2.588 0 0 1-2.979.008l.557 4.609h.063ZM11.188 19.064c0-.279.055-.544.157-.787l-3.997 1.2-2.402 3.568.656.619 2.839-2.695 3.628-.217a2.057 2.057 0 0 1-.88-1.686v-.002ZM19.123 19.475l-3.976-1.192a2.054 2.054 0 0 1-.728 2.469l3.61.216 2.84 2.694.655-.62-2.401-3.567Z\",\n fill: \"#fff\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.432 23.56h-.738v5.015h.738V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19.087 23.024H7.604v6.16h11.483v-6.16Z\",\n fill: \"#fff\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.03 23.56h-.778v5.015h.778V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8.934 23.656v4.823h-.587v-4.823h.587Zm.096-.095h-.778v5.014h.778V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.598 23.56H9.82v5.015h.778V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.502 23.656v4.823h-.586v-4.823h.586Zm.096-.095H9.82v5.014h.778V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.166 23.56h-.777v5.015h.777V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.07 23.656v4.823h-.586v-4.823h.587Zm.096-.095h-.777v5.014h.777V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.734 23.56h-.778v5.015h.778V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.638 23.656v4.823h-.586v-4.823h.586Zm.096-.095h-.778v5.014h.778V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.302 23.56h-.778v5.015h.778V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.207 23.656v4.823h-.587v-4.823h.587Zm.095-.095h-.778v5.014h.778V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.87 23.56h-.777v5.015h.777V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16.775 23.656v4.823h-.587v-4.823h.587Zm.095-.095h-.777v5.014h.777V23.56Z\",\n fill: \"#FFAA71\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.439 23.56h-.778v5.015h.778V23.56Z\",\n fill: \"#FBBD90\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.343 23.656v4.823h-.586v-4.823h.586Zm.096-.095h-.778v5.014h.778V23.56Z\",\n fill: \"#FFAA71\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"ecr_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n transform: \"translate(0 5.717)\",\n d: \"M0 0h26.691v27.526H0z\"\n })))));\n};\n\nexport default SvgEcr;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgGithub = function SvgGithub(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 1024 1024\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M512 0C229.12 0 0 229.12 0 512c0 226.56 146.56 417.92 350.08 485.76 25.6 4.48 35.2-10.88 35.2-24.32 0-12.16-.64-52.48-.64-95.36-128.64 23.68-161.92-31.36-172.16-60.16-5.76-14.72-30.72-60.16-52.48-72.32-17.92-9.6-43.52-33.28-.64-33.92 40.32-.64 69.12 37.12 78.72 52.48 46.08 77.44 119.68 55.68 149.12 42.24 4.48-33.28 17.92-55.68 32.64-68.48-113.92-12.8-232.96-56.96-232.96-252.8 0-55.68 19.84-101.76 52.48-137.6-5.12-12.8-23.04-65.28 5.12-135.68 0 0 42.88-13.44 140.8 52.48 40.96-11.52 84.48-17.28 128-17.28 43.52 0 87.04 5.76 128 17.28 97.92-66.56 140.8-52.48 140.8-52.48 28.16 70.4 10.24 122.88 5.12 135.68 32.64 35.84 52.48 81.28 52.48 137.6 0 196.48-119.68 240-233.6 252.8 18.56 16 34.56 46.72 34.56 94.72 0 68.48-.64 123.52-.64 140.8 0 13.44 9.6 29.44 35.2 24.32C877.44 929.92 1024 737.92 1024 512 1024 229.12 794.88 0 512 0Z\",\n fill: \"#1B1F23\"\n })));\n};\n\nexport default SvgGithub;","var _path, _path2, _path3, _path4, _path5, _path6, _path7;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgGitlab = function SvgGitlab(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m13.8 32.71 5.08-15.638H8.719l5.081 15.638Z\",\n fill: \"#E24329\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.8 32.71 8.718 17.072H1.597L13.799 32.71Z\",\n fill: \"#FC6D26\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.596 17.072.052 21.824c-.141.434.013.909.382 1.176l13.365 9.71L1.596 17.072Z\",\n fill: \"#FCA326\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M1.597 17.072h7.121l-3.06-9.418a.526.526 0 0 0-1 0l-3.061 9.418Z\",\n fill: \"#E24329\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m13.8 32.71 5.082-15.638h7.122L13.8 32.71Z\",\n fill: \"#FC6D26\"\n })), _path6 || (_path6 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m26.004 17.072 1.544 4.752c.14.434-.014.909-.382 1.176L13.8 32.71l12.203-15.638Z\",\n fill: \"#FCA326\"\n })), _path7 || (_path7 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M26.002 17.072h-7.121l3.06-9.418a.526.526 0 0 1 1 0l3.061 9.418Z\",\n fill: \"#E24329\"\n })));\n};\n\nexport default SvgGitlab;","var _path, _path2, _path3, _path4;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgGoogle = function SvgGoogle(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n viewBox: \"0 0 24 24\",\n width: \"1em\",\n height: \"1em\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#4285F4\",\n d: \"M23.745 12.27c0-.79-.07-1.54-.19-2.27h-11.3v4.51h6.47c-.29 1.48-1.14 2.73-2.4 3.58v3h3.86c2.26-2.09 3.56-5.17 3.56-8.82Z\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#34A853\",\n d: \"M12.255 24c3.24 0 5.95-1.08 7.93-2.91l-3.86-3c-1.08.72-2.45 1.16-4.07 1.16-3.13 0-5.78-2.11-6.73-4.96h-3.98v3.09C3.515 21.3 7.565 24 12.255 24Z\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#FBBC05\",\n d: \"M5.525 14.29c-.25-.72-.38-1.49-.38-2.29s.14-1.57.38-2.29V6.62h-3.98a11.86 11.86 0 0 0 0 10.76l3.98-3.09Z\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#EA4335\",\n d: \"M12.255 4.75c1.77 0 3.35.61 4.6 1.8l3.42-3.42C18.205 1.19 15.495 0 12.255 0c-4.69 0-8.74 2.7-10.71 6.62l3.98 3.09c.95-2.85 3.6-4.96 6.73-4.96Z\"\n })));\n};\n\nexport default SvgGoogle;","var _path, _path2, _path3, _path4;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgGooglecloud = function SvgGooglecloud(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 256 206\",\n xmlns: \"http://www.w3.org/2000/svg\",\n preserveAspectRatio: \"xMidYMid\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m170.252 56.819 22.253-22.253 1.483-9.37C153.437-11.677 88.976-7.496 52.42 33.92 42.267 45.423 34.734 59.764 30.717 74.573l7.97-1.123 44.505-7.34 3.436-3.513c19.797-21.742 53.27-24.667 76.128-6.168l7.496.39Z\",\n fill: \"#EA4335\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M224.205 73.918a100.249 100.249 0 0 0-30.217-48.722l-31.232 31.232a55.515 55.515 0 0 1 20.379 44.037v5.544c15.35 0 27.797 12.445 27.797 27.796 0 15.352-12.446 27.485-27.797 27.485h-55.671l-5.466 5.934v33.34l5.466 5.231h55.67c39.93.311 72.553-31.494 72.864-71.424a72.303 72.303 0 0 0-31.793-60.453\",\n fill: \"#4285F4\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M71.87 205.796h55.593V161.29H71.87a27.275 27.275 0 0 1-11.399-2.498l-7.887 2.42-22.409 22.253-1.952 7.574c12.567 9.489 27.9 14.825 43.647 14.757\",\n fill: \"#34A853\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M71.87 61.425C31.94 61.664-.237 94.228.001 134.159a72.301 72.301 0 0 0 28.222 56.88l32.248-32.246c-13.99-6.322-20.208-22.786-13.887-36.776 6.32-13.99 22.786-20.208 36.775-13.888a27.796 27.796 0 0 1 13.887 13.888l32.248-32.248A72.224 72.224 0 0 0 71.87 61.425\",\n fill: \"#FBBC05\"\n })));\n};\n\nexport default SvgGooglecloud;","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgHelm = function SvgHelm(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#helm_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.034 12.08h19.932M4.059 7.913A9.317 9.317 0 0 1 5.437 6.11m0 0a9.253 9.253 0 0 1 6.635-2.792c2.561 0 4.88 1.037 6.559 2.714M5.437 6.11 3.87 4.542M5.437 6.11l.009.008m13.185-.086a9.32 9.32 0 0 1 1.455 1.881M18.63 6.032l1.556-1.557M18.63 6.032l-.007.006m-6.63-4.993v2.273m7.975 12.751a9.315 9.315 0 0 1-1.378 1.803m0 0a9.253 9.253 0 0 1-6.635 2.792 9.252 9.252 0 0 1-6.559-2.713m13.194-.079 1.567 1.568m-1.567-1.568-.009-.008m-13.185.087a9.318 9.318 0 0 1-1.455-1.882m1.455 1.882-1.556 1.556m1.556-1.556.007-.007m6.63 4.993v-2.273\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"helm_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n transform: \"rotate(90 12 12)\",\n d: \"M0 0h24v24H0z\"\n })))));\n};\n\nexport default SvgHelm;","var _path, _path2, _path3;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgKubernetes = function SvgKubernetes(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.849 32.493c-1.69 0-3.381-.014-5.07.007-.769.008-1.361-.264-1.843-.869C4.798 28.95 2.648 26.28.498 23.606c-.431-.536-.6-1.107-.436-1.809.79-3.376 1.55-6.76 2.322-10.142.154-.678.546-1.143 1.18-1.444a1799.08 1799.08 0 0 0 9.357-4.484c.652-.315 1.273-.295 1.92.015 3.096 1.493 6.195 2.983 9.3 4.457.658.312 1.057.789 1.217 1.488.77 3.383 1.536 6.766 2.32 10.145.15.648.014 1.196-.39 1.699-2.172 2.708-4.345 5.416-6.51 8.13-.467.587-1.055.843-1.794.837-1.71-.013-3.422-.004-5.133-.004l-.003-.001Zm-.435-21.608c.03.872-.075 1.005-.876 1.163-1.42.28-2.704.863-3.745 1.885-.392.386-.723.304-1.072.055-.27-.191-.487-.456-.73-.685-.166-.155-.322-.335-.512-.454-.28-.174-.572-.149-.776.132-.185.253-.139.526.07.743.143.147.326.257.5.371.259.174.537.321.787.509.507.381.554.64.253 1.185a7.636 7.636 0 0 0-.955 4.038c.027.783-.202 1.03-.988 1.12-.352.04-.707.061-1.056.12-.395.067-.675.287-.59.728.082.426.427.49.78.404.383-.095.748-.255 1.125-.371.772-.237 1.032-.112 1.356.626a7.471 7.471 0 0 0 2.582 3.164c.495.351.575.652.289 1.204-.134.257-.308.497-.461.746-.098.16-.2.318-.286.484-.172.332-.098.622.208.819.341.219.635.049.787-.25.206-.406.325-.855.49-1.282.264-.686.54-.823 1.218-.633a7.583 7.583 0 0 0 4.134.007c.672-.187.92-.075 1.186.588.155.387.252.798.425 1.177.155.343.416.621.837.398.391-.208.406-.559.205-.914-.196-.345-.434-.666-.63-1.01-.383-.679-.328-.91.29-1.364a7.518 7.518 0 0 0 2.56-3.26c.253-.615.494-.737 1.143-.545.399.118.781.293 1.183.394.359.091.729.078.868-.372.112-.366-.134-.667-.63-.749-.39-.065-.789-.074-1.18-.134-.624-.097-.852-.372-.826-.99.063-1.48-.252-2.866-.98-4.156-.277-.494-.233-.788.224-1.147.262-.205.56-.36.838-.543.172-.115.357-.223.5-.37.21-.216.254-.484.07-.743-.188-.266-.468-.29-.726-.162-.198.099-.36.279-.527.434-.228.214-.432.456-.67.657-.474.4-.76.392-1.21-.008a7.752 7.752 0 0 0-3.83-1.862c-.582-.107-.759-.297-.735-.898.016-.416.092-.83.129-1.245.045-.486-.227-.88-.594-.879-.367.002-.638.395-.59.882.034.332.09.661.139.993h-.003.002Z\",\n fill: \"#326CE4\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.413 10.885c-.046-.332-.104-.66-.138-.993-.049-.487.222-.88.59-.882.367-.001.639.393.594.879-.04.417-.115.83-.13 1.246-.022.6.153.79.735.897a7.741 7.741 0 0 1 3.83 1.862c.45.4.736.409 1.21.008.239-.2.443-.443.67-.657.167-.155.33-.336.527-.434.258-.128.54-.104.727.162.183.259.139.526-.071.742-.143.148-.327.255-.5.37-.277.185-.576.34-.838.544-.457.359-.501.654-.223 1.147.727 1.29 1.042 2.677.98 4.156-.027.617.202.892.825.99.392.06.79.07 1.18.134.497.083.744.383.63.75-.139.45-.509.462-.868.371-.401-.1-.785-.275-1.182-.394-.65-.192-.89-.07-1.144.545a7.518 7.518 0 0 1-2.56 3.26c-.618.453-.674.684-.29 1.363.196.345.433.666.63 1.01.202.357.187.707-.204.915-.421.223-.682-.056-.838-.398-.172-.377-.269-.79-.425-1.177-.267-.663-.513-.775-1.185-.588a7.576 7.576 0 0 1-4.134-.007c-.68-.189-.955-.051-1.218.633-.165.428-.285.877-.49 1.283-.15.298-.446.468-.787.249-.306-.196-.379-.487-.208-.819.086-.166.186-.324.285-.484.153-.25.326-.487.461-.746.287-.552.207-.853-.288-1.204a7.472 7.472 0 0 1-2.583-3.164c-.323-.739-.584-.862-1.356-.626-.377.116-.742.275-1.124.372-.353.087-.697.022-.78-.405-.086-.441.195-.66.59-.727.347-.06.703-.081 1.056-.121.787-.088 1.015-.337.987-1.12a7.637 7.637 0 0 1 .955-4.038c.301-.545.255-.804-.253-1.185-.25-.188-.528-.335-.787-.508-.173-.115-.356-.224-.5-.372-.208-.217-.255-.49-.07-.743.206-.28.498-.306.776-.132.19.12.346.297.513.454.243.23.46.494.73.685.349.249.679.331 1.072-.055 1.039-1.022 2.322-1.606 3.745-1.885.8-.157.905-.291.876-1.163h.002-.002Zm-.328 3.414h.034c0-.166-.009-.335.002-.5.015-.23-.07-.284-.293-.24a6.313 6.313 0 0 0-2.9 1.38c-.235.196-.189.307.038.462.67.46 1.324.944 1.994 1.404.605.416.977.232 1.025-.501.042-.667.067-1.336.1-2.005Zm-5.206 5.033c-.005.516.219.708.673.576.697-.202 1.399-.394 2.091-.61.635-.197.732-.591.248-1.049-.589-.558-1.217-1.076-1.802-1.641-.31-.301-.423-.151-.566.139a6.455 6.455 0 0 0-.644 2.584v.001Zm5.968 6.131c.545.015 1.074-.082 1.6-.213.215-.054.353-.088.198-.358-.444-.778-.85-1.578-1.31-2.347-.256-.43-.687-.426-.94.006-.454.773-.867 1.568-1.305 2.35-.114.204-.067.278.158.335.527.132 1.054.236 1.6.227v.001h-.001Zm6.009-6.113c-.049-.84-.229-1.711-.63-2.53-.162-.333-.346-.446-.66-.15-.562.526-1.152 1.026-1.713 1.555-.504.474-.399.87.278 1.074.696.212 1.396.407 2.094.608.64.185.643.184.63-.557Zm-3.068 1.703c-.902.04-1.014.21-.709.964.29.717.598 1.426.879 2.146.095.244.172.364.432.168.886-.67 1.565-1.5 1.992-2.53.053-.127.15-.297-.091-.34-.861-.146-1.725-.28-2.504-.408Zm-2.17-6.828h.02c.035.686.068 1.372.107 2.06.042.739.408.934 1.008.523.65-.447 1.272-.935 1.936-1.36.354-.229.275-.355.01-.572a6.244 6.244 0 0 0-2.725-1.294c-.358-.074-.392.048-.36.332.01.103 0 .207 0 .312h.004v-.001Zm-2.771 7.327c-.098-.212-.086-.491-.453-.478-.923.034-1.823.235-2.733.361-.32.044-.386.183-.26.46a6.1 6.1 0 0 0 1.935 2.412c.22.164.333.167.438-.128.19-.528.428-1.04.642-1.56.143-.345.28-.694.43-1.065v-.002Zm2.051-2.89c-.64-.002-1.016.252-1.03.696-.019.532.499 1.13.988 1.14.465.01.997-.554 1-1.06.003-.47-.372-.776-.958-.778v.002Z\",\n fill: \"#FDFDFE\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M13.086 14.3c-.032.667-.057 1.336-.1 2.004-.048.734-.42.917-1.024.501-.67-.46-1.324-.945-1.994-1.404-.227-.156-.272-.266-.039-.463a6.32 6.32 0 0 1 2.901-1.38c.224-.043.308.012.293.24-.011.166-.003.335-.003.502h-.034v-.001ZM7.88 19.332c.038-.86.233-1.747.645-2.584.143-.29.256-.441.567-.139.583.565 1.213 1.08 1.802 1.641.483.46.386.853-.248 1.05-.693.215-1.394.406-2.091.61-.454.131-.678-.06-.673-.577l-.001-.001ZM13.85 25.462c-.545.01-1.073-.096-1.6-.228-.225-.057-.27-.131-.157-.335.437-.781.85-1.578 1.304-2.35.253-.432.685-.437.941-.006.459.768.866 1.569 1.31 2.347.154.269.014.303-.198.357-.527.133-1.055.23-1.601.214ZM19.856 19.35c.013.74.01.744-.63.557-.697-.202-1.398-.397-2.094-.608-.676-.205-.781-.598-.278-1.074.562-.529 1.15-1.029 1.713-1.556.315-.294.498-.183.66.15.402.82.58 1.692.63 2.531ZM16.79 21.052c.778.126 1.642.262 2.504.41.24.04.143.21.091.339-.428 1.03-1.106 1.862-1.992 2.53-.26.196-.337.075-.432-.169-.28-.72-.588-1.43-.878-2.145-.306-.754-.193-.924.708-.964v-.001ZM14.62 14.224c0-.105.01-.21-.002-.313-.03-.283.003-.404.361-.33 1.02.21 1.919.638 2.724 1.293.266.217.346.343-.01.571-.663.427-1.285.914-1.936 1.36-.599.412-.966.217-1.008-.523-.038-.686-.07-1.373-.106-2.06h-.024v.002ZM11.846 21.55c-.15.372-.287.72-.43 1.066-.214.52-.45 1.03-.641 1.56-.105.294-.22.293-.439.128A6.113 6.113 0 0 1 8.4 21.892c-.126-.278-.06-.417.261-.46.91-.125 1.81-.328 2.733-.362.368-.014.355.267.453.479v.001ZM13.899 18.66c.585.001.961.305.959.777-.004.507-.535 1.07-1 1.06-.489-.011-1.007-.608-.99-1.14.015-.443.393-.699 1.032-.696l-.002-.002h.001Z\",\n fill: \"#326CE4\"\n })));\n};\n\nexport default SvgKubernetes;","var _path, _path2, _path3;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgLinode = function SvgLinode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 32 32\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m9.545 14.42-1.2-8.258L3.37 3.074l1.612 7.8 4.562 3.556zm1.38 9.443-.852-5.823-4.356-3.63 1.17 5.648 4.038 3.804zm-3.383-.64.862 4.165L12 31.205 11.386 27l-3.842-3.78zm11.644-1.806-1.837-1.402.014.33a.19.19 0 0 1-.084.166l-1.386.934 1.507 1.23c.02.02.03.027.035.036l.022.042c.008.027.01.037.01.048l.064 1.45 1.7 1.423-.036-4.26zm6.3-4.507-.36 4.153-1.2-.828.13-2.118c0-.024-.002-.033-.003-.04-.006-.032-.012-.046-.02-.06s-.02-.028-.032-.04a.23.23 0 0 0-.032-.028l-2.56-1.69.037-1.856 4.03 2.51\",\n fill: \"#123d10\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m16.59 11.116-.335-7.84-7.53 2.894 1.23 8.4 6.635-3.453zm.4 9.135-.246-5.78-6.27 3.57.88 6.01 5.638-3.798zm.127 2.93-5.333 3.816.648 4.422 4.872-3.88-.186-4.357zm2.465-1.762.036 4.275 3.8-3.032.253-4.17-4.1 2.926zm9.48-6.782-.534 3.955-2.998 2.4.352-4.068 3.18-2.276\",\n fill: \"#33b652\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m17.472 22.812-.008-.042a.21.21 0 0 0-.019-.044c-.015-.024-.023-.032-.03-.04l-1.52-1.24 1.386-.934a.19.19 0 0 0 .084-.166l-.014-.33 1.837 1.402.036 4.26-1.7-1.423-.062-1.44zm-7.398-4.772.852 5.823-4.038-3.804-1.17-5.648 4.356 3.63zm6.904 2.212L11.34 24.05l-.88-6.01 6.27-3.57.246 5.78zm-.725-16.975.335 7.84-6.635 3.453-1.23-8.4 7.53-2.894zM8.335 6.16l1.2 8.258-4.562-3.556-1.612-7.8L8.335 6.16zm.07 21.225-.862-4.165L11.386 27l.615 4.203-3.596-3.817zm8.885.152-4.872 3.88-.648-4.422 5.333-3.816.186 4.357zm6.116-4.876-3.8 3.032-.036-4.275 4.1-2.926-.253 4.17zm.53-2.428.13-2.118c0-.024-.002-.033-.003-.04-.006-.032-.012-.046-.02-.06s-.02-.028-.032-.04a.23.23 0 0 0-.032-.028l-2.56-1.69.037-1.856 4.03 2.51-.36 4.153-1.2-.828zm1.58.747.352-4.068 3.18-2.276-.534 3.955-2.998 2.4zm3.97-6.77-.006-.03a.176.176 0 0 0-.01-.03.23.23 0 0 0-.027-.045c-.02-.023-.03-.03-.04-.038l-4.368-2.42a.182.182 0 0 0-.192.008l-3.674 2.246c-.006 0-.01.01-.016.013s-.013.01-.02.015l-.016.02c-.005.008-.01.01-.014.018s-.008.017-.01.026-.006.013-.008.02-.003.02-.004.03l-.042 1.97-1.494-.987a.186.186 0 0 0-.205 0l-2.15 1.314-.093-2.186-.007-.042a.118.118 0 0 0-.007-.02.19.19 0 0 0-.011-.024c-.004-.008-.008-.013-.013-.02l-.015-.02c-.005-.007-.012-.01-.02-.016l-2.25-1.514 2.094-1.1a.192.192 0 0 0 .103-.178l-.352-8.228a.313.313 0 0 0-.005-.03c-.006-.03-.013-.045-.022-.06s-.022-.03-.032-.04c-.017-.017-.022-.02-.028-.024-.017-.008-.02-.008-.022-.015L10.873.115a.19.19 0 0 0-.14-.011L3.036 2.502l-.05.028-.04.037-.014.023c-.004.008-.01.015-.013.024l-.01.03c-.006.03-.005.04-.005.05l.001.027 1.718 8.302c.01.044.034.084.07.112l2.33 1.817-1.685.802c-.02.008-.022.015-.026.016l-.027.023c-.022.024-.028.036-.034.047a.14.14 0 0 0-.02.062.24.24 0 0 0 .002.055l1.292 6.25a.19.19 0 0 0 .056.1l1.622 1.528-1.075.658c-.014.008-.026.02-.038.03a.282.282 0 0 0-.032.045.22.22 0 0 0-.021.065.171.171 0 0 0 .003.055l1 4.842a.195.195 0 0 0 .048.092l4.048 4.298c.006.008.013.01.02.017.02.017.033.024.047.03.027.008.05.013.072.013s.038 0 .056-.01.022-.008.027-.015c.008 0 .014-.01.02-.014l5.223-4.157a.195.195 0 0 0 .072-.157l-.122-2.85 1.74 1.464c.02.015.03.023.04.028s.02.008.025.015c.02.008.038.01.057.01s.037-.008.056-.01c.017-.008.022-.008.026-.015.01-.008.017-.01.026-.017l4.186-3.337a.192.192 0 0 0 .072-.138l.127-2.09 1.27.884c.012.008.015.015.02.015.007.008.015.008.023.01.033.015.05.015.067.015s.038 0 .056-.01.02-.008.026-.015c.01-.008.02-.012.03-.018l3.415-2.722a.183.183 0 0 0 .07-.124l.604-4.47.001-.037\",\n fill: \"#231f20\"\n })));\n};\n\nexport default SvgLinode;","var _path, _path2, _path3, _path4;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgMicrosoft = function SvgMicrosoft(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.246 7.461H0v11.247h11.246V7.46Z\",\n fill: \"#F35325\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.703 7.461H12.457v11.247h11.246V7.46Z\",\n fill: \"#81BC06\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.246 19.919H0v11.246h11.246V19.92Z\",\n fill: \"#05A6F0\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.703 19.919H12.457v11.246h11.246V19.92Z\",\n fill: \"#FFBA08\"\n })));\n};\n\nexport default SvgMicrosoft;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgNomad = function SvgNomad(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.273 6.172 0 13.328v14.316L12.265 34.8l12.273-7.156V13.328L12.273 6.172Zm5.476 15.75L14.48 23.83l-3.95-2.183v4.563l-3.711 2.38v-9.535l2.948-1.822 4.086 2.175V14.75l3.896-2.367v9.54Z\",\n fill: \"#00CA8E\"\n })));\n};\n\nexport default SvgNomad;","function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgOpenldap = function SvgOpenldap(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n viewBox: \"0 0 744.09 1052.4\",\n width: \"1em\",\n height: \"1em\"\n }, props), /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"openldap_svg__e\",\n y2: 129.23,\n gradientUnits: \"userSpaceOnUse\",\n x2: 89.429,\n gradientTransform: \"translate(244.83 -81.693) scale(1.9236)\",\n y1: 129.23,\n x1: 80.916\n }, /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#60c\"\n },\n offset: 0\n }), /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#60c\",\n stopOpacity: 0\n },\n offset: 1\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"openldap_svg__d\",\n y2: 129.23,\n gradientUnits: \"userSpaceOnUse\",\n x2: 89.429,\n gradientTransform: \"translate(216.56 -73.967) scale(1.9236)\",\n y1: 129.23,\n x1: 80.916\n }, /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#60c\"\n },\n offset: 0\n }), /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#60c\",\n stopOpacity: 0\n },\n offset: 1\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"openldap_svg__b\",\n y2: 465.09,\n gradientUnits: \"userSpaceOnUse\",\n x2: 77.015,\n gradientTransform: \"translate(267.18 -40.495) scale(1.9236)\",\n y1: 384.81,\n x1: 8.535\n }, /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#6d5744\"\n },\n offset: 0\n }), /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#6d5744\",\n stopOpacity: 0\n },\n offset: 1\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"openldap_svg__a\",\n y2: 197.66,\n gradientUnits: \"userSpaceOnUse\",\n x2: 100.23,\n gradientTransform: \"translate(267.18 -40.495) scale(1.9236)\",\n y1: 163.64,\n x1: -41.915\n }, /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#6d5744\"\n },\n offset: 0\n }), /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#6d5744\",\n stopOpacity: 0\n },\n offset: 1\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"openldap_svg__c\",\n y2: 202.05,\n gradientUnits: \"userSpaceOnUse\",\n x2: 416.51,\n y1: 220.22,\n x1: 420.17\n }, /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#212121\"\n },\n offset: 0\n }), /*#__PURE__*/React.createElement(\"stop\", {\n style: {\n stopColor: \"#212121\",\n stopOpacity: 0\n },\n offset: 1\n }))), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M416.93 357.28c-13.927 2.158-29.996 7.106-40.074 15.502 4.966 23.732 26.302-3.863 41.709 1.114 19.575-1.994 11.267-20.953-1.636-16.616zM405.02 320.44c-14.087-.44-30.791 1.47-42.241 7.87.518 24.24 26.564 1.039 40.793 8.764 19.608 1.639 14.927-18.525 1.447-16.634zM445.25 394.59c-13.87 2.5-29.812 7.842-39.68 16.484 5.548 23.602 26.199-4.51 41.724.087 19.52-2.475 10.748-21.224-2.044-16.57zM469.88 440.79c-14.484-5.122-45.334 19.408-19.277 22.574 8.32-8.557 21.103-5.338 32.541-7.27 13.791-10.401-3.588-17.608-13.264-15.303zM511.36 603.7c-19.378 6.19.023 20.385 12.165 15.99 8.792.11 17.767-.418 26.333.712 14.807-8.3-3.011-20.33-13.628-16.702h-24.87zM543.52 678c-16.558-7.786-30.682 18.894-7.972 16.243 11.17-3.076 30.464 6.068 35.019-8.248-1.659-13.088-18.785-5.98-27.047-7.995zM510.94 752.36c-23.064 11.227 20.121 24.639 19.417 29.155 5.015 8.059 5.422 11.558 9.593 13.687 18.953 4.068 9.72-18.678.806-25.048-8.268-8.393-17.81-15.759-29.816-17.794zM536.13 790.23l.06.24zM458.58 832.25c-21.038 7.37 4.813 20.578 14.908 23.685-2.962 12.592 14.925 29.912 18.094 9.738 1.794-20.17-15.98-29.587-33.002-33.423z\",\n style: {\n stroke: \"#816647\",\n strokeWidth: 2.5007,\n fill: \"#ff9\"\n }\n }), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n stroke: \"#015a01\"\n }\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M155.98 488.01a31.122 36.497 0 1 1-1.22-64.48\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.9,\n fill: \"#6c3\"\n },\n transform: \"translate(-39.643 -60.964) scale(1.9236)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M135.8 445.27a33.986 36.899 0 1 1 9.737 39.546\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.88405,\n fill: \"#6c3\"\n },\n transform: \"rotate(-10.219 -127.089 1148.416) scale(1.95832)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M167.9 478.33a43.697 33.986 0 1 1 38.346 11.559\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.84894,\n fill: \"#6c3\"\n },\n transform: \"matrix(1.86568 .99923 -1.08995 1.6453 463.551 -138.373)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M205.36 406.05a50.381 30.214 0 1 1 75.368 24.902\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.86545,\n fill: \"#6c3\"\n },\n transform: \"matrix(1.82128 .74478 -.71166 1.9061 206.257 -166.5)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M221.38 425.53a50.381 28.411 0 1 1 67.773.438\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.82037,\n fill: \"#6c3\"\n },\n transform: \"matrix(1.99535 .47632 -.45534 2.12327 90.042 -217.313)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M206.04 409.53a50.381 28.411 0 1 1 86.24 14.733\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.77966,\n fill: \"#6c3\"\n },\n transform: \"matrix(2.0465 0 0 2.4093 -88.464 -261.585)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M225.39 392a46.972 26.895 0 1 1 62.784-15.176\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.806,\n fill: \"#6c3\"\n },\n transform: \"matrix(2.1562 0 0 2.1396 -89.484 -106.989)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M157.51 375.64c4.938-9.01 1.653-17.354-7.625-24.469 6.077-17.646-8.654-60.144-35.031-91.812-1.38-1.658-3.293-2.985-5.625-4-6.188-22.424-26.148-28.54-43.875-23.594-23.792 6.64-44.719 13.087-44.719 29.25 0 8.436 5.46 16.034 14.188 21.375-.31.68-.594 1.362-.844 2.063-6.48 27.8 16.103 65.353 26.031 76.75.145.166.293.308.438.468-5.575 13.415 6.61 27.527 29.75 32.97\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.9,\n fill: \"#6c3\"\n },\n transform: \"translate(215.33 -72.118) scale(1.9236)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M165.1 192.18a35.714 25.423 0 1 1 60.364-7.458\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.75961,\n fill: \"#6c3\"\n },\n transform: \"rotate(-7.122 141.565 1368.623) scale(2.27916)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M165.18 192.64a35.714 26.026 0 1 1 58.892-5.404\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.75961,\n fill: \"#6c3\"\n },\n transform: \"matrix(2.279 0 0 2.279 -132.014 -86.976)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M178.08 200.01a35.714 26.582 0 1 1 43.239-9.101\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.75961,\n fill: \"#6c3\"\n },\n transform: \"matrix(2.279 0 0 2.279 -127.205 -135.85)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M194.64 164.22a50.528 44.244 0 1 1 42.772 22.373\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 0.9,\n fill: \"#6c3\"\n },\n transform: \"rotate(-25.365 260.383 483.741) scale(1.9236)\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M345.16 123.48c-18.445 2.416-36.231 9.639-51.157 20.739 3.67 10.439 8.552 19.439 7.764 31.245 6.17 3.425 6.974.76 8.707 8.67-5.472 1.348 12.146 3.992 16.65 3.197 12.842-6.387 1.965-24.003 5.472-35.177-1.157-12.639 4.178-18.613 12.564-28.674zm-11.662 17.072c-1.079 1.83 2.06.045 0 0zm-54.47 17.26c-14.103 14.686-23.007 34.328-24.586 54.643 5.548 6.701 10.064 14.055 23.745 12.744 12.83-.612 25.13 13.586 38.054 3.77.558-10.675-11.82-20.203-21.377-24.201-10.807-5.478-9.337-17.826-11.324-24.49-4.484-7.632-1.208-4.536-4.03-14.411-.42-2.662-.528-5.365-.481-8.056zm-39.194 77.006c-12.088 13.667-14.622 34.874-6.492 51.157-8.447 11.861-13.275 28.947-6.387 42.527 8.684 9.376 15.535 18.781 23.923 27.836 5.148 4.231 29.949 1.327 22.899-9.392 3.62-9.74 11.573-4.67 20.46-5.546-.882-6.944-13.13-21.402-3.727-21.28-5.308-.467-10.441.912-16.634-.663-2.316 1.179-11.748 3.965-16.789 7.156-2.813-4.37-9.528-9.026-14.006-13.285 6.329-6.942 12.568-11.394 18.635-22.362-1.418-11.027 1.41-23.937-4.952-34.526-4.39-7.982-9.538-16.258-16.93-21.62zm21.04 29.576c-2.579 2.068 2.648 1.222 0 0zm33.063 1.262c-7.962 8.595-13.598-.637-22.603 6.853-7.391 6.563-7.957 18.171.767 23.49 4.06 2.449 8.14 13.005 11.977 4.824 3.508-.209 6.1-.73 12.383-6.252 8.126-2.643 16.85-9.205 7.935-11.722-1.73 2.567-1.673-1.994-4.267-3.908-2.254 2.354-1.054-11.239-6.192-13.285zm9.678 15.15c-4.602 4.341 3.15 1.218 0 0zm-11.963 20.438c6.236 3.03 17.23-.028 4.42.286-1.482.204-2.946-.174-4.42-.286zm12.203.481c-.595 3.29 1.896.633 0 0zm-56.026 14.908c-.85.904 1.544.19 0 0zm43.703 3.487c-2.573 1.483 1.96-.001 0 0zm.421.12c-.561.637 1.28.297 0 0zm-13.646 20.92c-1.301.21.812 1.138 0 0zm3.907.42c-3.404 3.408 4.722.294 0 0zm-38.713 20.139c-16.799 2.284-10.957 31.496 2.805 33.354 5.64 9.286 19.757 13.694 24.547 24.655 12.72 4.112 22.56-7.895 20.44-20.018 8.73 1.284 22.706-6.826 20.378-18.335-11.926-.224-22.746-2.603-33.62 2.757-15.887 2.693-25.953-11.899-34.549-22.415zm45.025 14.968c-2.295 3.054 1.946 1.48 0 0zm-.781 1.503c-1.04-3.208-2.889 3.588 0 0zm2.645-1.503c-3.15 1.919 5.565.92 0 0zm.842 1.683c-1.517 1.519 3.67.686 0 0zm22.362 4.268c-2.081 2.173 2.8 3.946 0 0zm1.923 42.44c-1.06 2.522 4.023 2.282 0 0zm-60.835.481c-3.129 19.345 11.046 36.912 26.69 46.468-7.272 14.968 24.864 4.591 22.53-7.431-3.52-4.406-3.597-8.426-6.66-12.226 10.34.225 18.674-.723 29.335-7.574 10.545-.483-9.431-19.033-14.573-17.474-7.491 6.703-18.908 3.173-26.725 11.463-8.885-6.562-19.78-11.221-30.598-13.225zm50.616 27.232c-2.016.842 3.15 1.795 0 0zm-.781 8.236c-5.884 2.548 3.093 1.194 0 0z\",\n style: {\n fill: \"url(#openldap_svg__a)\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M376.06 624.62c-5.876 3.042-21.757 3.705-21.12 7.535 6.706 3.036-9.727 2.31-3.046-1.524-6.055 3.63-4.387-1.105-6.973 4.509-4.344-.588-1.79-8.583-9.235-2.745-12.237 6.275-3.708 20.152 2.654 27.602 2.665 6.133 15.762-6.604 17.04 4.539 8.022-2.48 15.796-2.173 24.888-5.53 7.495-.574 12.594 10.91 15.569 5.95 7.221-1.065 4.553 7.088 9.323.252 5.226-7.084 10.894-21.606 4.856-21.06-2.713-2.06-4.296-9.432.008-2.996 4.307-2.722.144-4.5 6.852-4.492 4.604-4.489-10.706 2.535-3.846-2.481-8.94.797 7.612-4.563-4.702-3.546-8.26-1.493-26.336 1.196-28.377-1.918 6.607-4.343-4.686 1.95-3.89-4.095zm-30.177 6.853c-.382-2.596-2.783-.59 0 0zm38.413-5.35c-5.547 4.11 3.66 3.36 0 0zm-35.167 3.246c-5.571 2.012 3.462 2.668 0 0zm-4.508 2.044c-3.596 1.388 5.346 4.043 0 0zm-1.684.54c-.852 1.16.955 2.003 0 0zm69.792 10.28c-3.374 1.08 2.565 1.766 0 0zm.782 12.444 4.93 12.444c-1.211-4.275-1.661-9.11-4.93-12.444zm-65.764 27.592c-5.276 5.044-13.384 8.078-14.41 16.23-5.04 9.286.73 20.869 9.09 22.718 4.203 9.595 17.532 7.67 22.512 16.336 10.903 2.65 26.672.473 27.793-13.261 6.018-16.31 13.062 9.716 22.882 9.772 4.928-1.522 7.334-2.06 10.615 1.278 3.227-2.624 8.773-1.22 12.59-5.944 2.41-1.37 5.576-10.131-1.49-13.02-6.048-4.783-11.199-22.286-19.283-11.598-2.185-3.091-10.746-6.59-9.8-.397-5.938 4.84-10.636.017-5.796-4.921-11.975 1.757-23.053-.588-34.994-.398-5.478 1.504-14.347 1.281-6.786-4.471-3.455-4.987-10.878-6.38-12.924-12.323zm17.794 13.105c-10.605 2.308 7.362 2.827 0 0zm51.157 4.809c-1.854 2.246 4.144 1.687 0 0zm2.164 1.323c-2.217 4.01 3.012.564 0 0zm-77.066 20.859c-2.942 1.253 1.563 2.385 0 0zm102.19 2.284c.7 2.992 4.89 1.724 0 0zm-125.94 6.672c-8.115 5.513-20.707 9.841-24.887 18.094 5.362 7.538 9.86 15.711 12.55 23.686 3.711 1.483 12.27 11.936 10.233 7.152-2.548-3.394 10.374 6.403 2.557 2.03-3.485 5.547 6.905 14.76 12.921 6.704 3.367-2.554 11.628-6.886 5.261.043-6.153 14.272 11.76 23.915 21.881 23.324-1.587 5.039 13.156 3.343 10.16-3.787 9.783 6.205 10.034-12.581 12.15-18.922 1.04-4.433 2.08-8.866 3.118-13.3-1.89 2.532-9.142.334-9.002 1.835-4.931-4.11-13.488 3.44-16.666-.151-6.938-1.54-9.062-7.517-9.739-12.985-8.094.567-3.698.62-1.576-4.514-5.869-.315-13.837-1.76-12.14-7.101-11.402-4.656-2.209-15.071-10.819-21.29-1.93-.648-3.984-.769-6.003-.82zm-44.965 12.864c-8.59-.995-7.514 5.968-13.225 2.946-10.15 5.745-20.136-2.751-30.925-1.387-29.137.253-51.071 29.092-55.872 56.42-7.326 13.756 5.339-.477 13.637-2.2-2.174-12.195 15.58-25.188 15.597-13.978-2.572 4.957.562 35.905 9.372 42.415 5.65 7.411 15.864 7.438 16.829-3.37 2.964-7.94 10.06-14.312 13.028-18.147-6.703 3.544-3.79-6.904-7.88-9.219 6.738-6.241-3.49-25.475.967-30.577 1.888.822 19.213-10.243 18.074 3.77 1.16 3.555-8.118 5.14-2.024 8.433-7.658 4.665 3.455 5.39-3.427 9.498 3.253 5.399 6.01 9.833 2.165 15.028 5.35 2.88-.846 4.956 2.464 9.859 1.778 3.928 6.245.778 1.383 5.41-1.361 8.392 12.419 11.331 9.277 18.591 8.517 3.138 17.255 14.93 21.647 1.175 4.39-6.642 8.989-13.158 13.44-19.766-3.415 1.673-6.978-2.014-10.4-3.306 3.183-7.442-7.567-10.669-4.388-18.695 2.026-5.576-2.942-14.986 1.397-15.442-3.634-2.89 2.346.649-.435-4.335 3.824-1.818-1.302-7.133 5.59-7.094-4.774-7.513 7.287-4.69 3.06-10.753-6.328-3.212 11.084-14.42-1.016-12.034-3.592-.464-14.71-3.287-18.334-3.242zm68.409 12.564c-5.594.816-1.062 2.671 0 0zm-106.58 10.76c-3.124 2.508 2.53 1.994 0 0zm-.18 2.165c-2.707.23 3.602 2.232 0 0zm116.32 1.983c-.612 2.06 1.536.488 0 0zm-33.123 9.258c-1.11 1.048.899.708 0 0zm-75.743 29.816c.207 1.666-.16.54 0 0zm1.322.06c.487 1.064-.19.145 0 0zm112.77 2.164c-3.791 1.324 3.067 2.71 0 0z\",\n style: {\n fill: \"url(#openldap_svg__b)\"\n }\n }), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n stroke: \"#015a01\"\n }\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M117.95 147.91c2.062 13.147-6.643 16.932-10.971 15.996\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 1,\n fill: \"#6c3\"\n },\n transform: \"translate(215.33 -72.118) scale(1.9236)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M247.45 144.66a14.908 15.413 0 0 1-28.87 1.41\",\n style: {\n stroke: \"#015a01\",\n fill: \"#6c3\"\n },\n transform: \"matrix(2.0679 0 0 1.9236 -85.252 -62.905)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M254.4 122.14a13.756 14.188 0 0 1-9.596 26.558\",\n style: {\n stroke: \"#015a01\",\n fill: \"#6c3\"\n },\n transform: \"matrix(1.69038 0 0 1.9236 8.062 -62.905)\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M427.42 204.03a13.577 11.915 0 1 1-20.903 3.651\",\n style: {\n stroke: \"#333\",\n strokeWidth: 1.431,\n fill: \"url(#openldap_svg__c)\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M280.54 469.64c8.633 3.94 25.105 2 46.417-3.57M257.12 414.7c8.633 3.94 28.892 5.786 50.204.217M241.99 350.59c12.42 7.726 15.901 10.802 32.109 11.815\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 1.7313,\n fill: \"none\"\n }\n }), /*#__PURE__*/React.createElement(\"g\", {\n style: {\n opacity: 0.45,\n stroke: \"#015a01\"\n }\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M238.76 154.03a10.902 13.628 0 1 1-21.804 0 10.902 13.628 0 1 1 21.804 0z\",\n style: {\n opacity: 0.33,\n stroke: \"#015a01\",\n fill: \"#060\"\n },\n transform: \"matrix(1.91312 -1.0905 1.23997 1.6825 -284.739 205.84)\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M-2.467 124.52c-10.397 7.867 3.174 25.794 15.402 20.06 11.488-7.465-3.201-26.94-15.402-20.06z\",\n style: {\n opacity: 0.33,\n stroke: \"#015a01\",\n fill: \"#060\"\n },\n transform: \"translate(336.93 -40.977) scale(1.9236)\"\n })), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M403.28 150.64c-7.692.501-14.793 4.685-15.089 13.586a20.49 20.49 0 0 0 .48 3.306c-3.317-3.523-7.434-6.313-11.36-7.815-11.25-6.31-32.094-3.901-32.642 12.083 1.272 20.2 29.984 34.111 46.288 21.701 4.544-4.377 5.481-9.502 4.268-14.487 8.648 8.688 23.31 12.136 32.942 4.569 10.541-10.48-1.254-25.962-11.782-30.117-3.642-2.109-8.49-3.126-13.105-2.825z\",\n style: {\n opacity: 0.5696,\n stroke: \"#015a01\",\n strokeWidth: 1.9236,\n fill: \"#015a01\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M352.96 116.34c1.938-.888 4.249.037 5.182 2.073 0 0 3.183 13.713 11.456 25.004 2.145 6.463-6.445 8.713-8.763 4.015 0 0-.968-10.617-11.456-25.004s.648-4.744 3.581-6.088z\",\n style: {\n stroke: \"#424242\",\n strokeWidth: 1.9236,\n fill: \"#474747\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M362.23 112.63a11.734 11.734 0 1 1-23.468 0 11.734 11.734 0 1 1 23.468 0z\",\n style: {\n stroke: \"#3c3c3c\",\n strokeWidth: 2.843,\n fill: \"#474747\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M392.01 189.01c-3.48 7.067-14.963 8.53-25.649 3.27-10.687-5.262-16.529-15.256-13.05-22.323 3.48-7.067 12.924-3.34 25.649-3.269 11.911.067 16.529 15.255 13.05 22.322zM428.77 179.39c-2.932 6.147-12.61 7.42-21.616 2.844s-13.93-13.27-10.998-19.416c2.932-6.147 10.386-3.713 21.616-2.844 10.072.78 13.93 13.269 10.998 19.416z\",\n style: {\n stroke: \"#015a01\",\n strokeWidth: 1.9236,\n fill: \"#eee\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M386.95 174.62a6.554 6.292 0 1 1-13.107 0 6.554 6.292 0 1 1 13.107 0z\",\n style: {\n stroke: \"url(#openldap_svg__d)\",\n strokeWidth: 3.2702,\n fill: \"#212121\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M420.28 260.08c-66.519-.144-41.52 15.048-88.371 22.3-26.994 12.355 2.254 36.023-28.249 57.531-12.191 24.257 25.422 32.975 14.127 56.988 1.094 17.721 28.212 17.044 15.87 35.106.077 27.295 34.615 32.862 24.995 61.134 5.822 58.494 26.558 115.42 56.87 165.61 24.209 15.049 1.4 44.842 26.58 58.256-15.417 16.017-2.308 41.461-16.414 58.695-15.858 27.915-52.033 71.541-86.055 70.198-32.5 6.163-62.672-8.101-85.514 18.724-21.068 27.152 26.849 29.08 43.943 22.231 17.663-15.932 35.21-5.876 56.135-3.462 21.996 1.56 46.031-3.354 62.056-19.468 25.603.823 58.065-11.778 61.136-40.697 25.458-6.112 48.466-32.949 36.241-59.636 7.342-17.164 35.37-42.277 20.025-68.406 16.566-22.139-13.544-40.219-11.646-57.89 1.52-24.036-27.484-32.739-16.422-57.827-5.88-56.776-34.65-108.99-69.858-152.93-17.715-10.826-17.772-37.67-38.852-46.975-1.577-13.237-.082-35.222-15.13-46.08 12.85-21.035-11.481-49.556 20.581-57.405 9.32-6.825 11.765-6.15 17.952-15.995z\",\n style: {\n opacity: 0.16,\n strokeOpacity: 0.45631,\n stroke: \"#015a01\",\n strokeWidth: 1.9236,\n fill: \"#2f5a01\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"m364.39 291.24-33.123 5.23c17.189-1.058 41.41 10.702 52.138 2.144 2.808-7.652-14.418-4.55-19.015-7.374zm18.755 37.451c-2.226.221-5.16.953-5.951.18-15.9.467-38.753 1.689-50.255 5.951l31.379 7.996c9.785-5.765 36.092 1.65 26.45-11.301 2.09-2.727.603-3.047-1.623-2.826zm15.269 47.37c-23.53 1.418-46.945 4.234-70.513 5.17 18.484 2.734 36.866 6.798 55.605 3.547 8.85-2.878 26.726 3.882 14.908-8.717zm30.418 42.621c-17.609 2.141-22.028.732-40.577 1.082-12.172-.35-44.69.348-44.244 2.946 15.711 2.07 31.36 6.102 47.189 2.464 8.774-3.204 54.756 6.425 37.631-6.492zm27.472 33.664c-30.006 4.477-61.241 1.051-90.411 10.881l33.363 3.907c16.451-8.86 54.588-1.713 59.693-10.94zM497 602.56c-7.134-.107-15.756 1.445-21.4.36-22.649.075-44.368 7.02-66.305 11.783 15.165.922 30.594 7.281 45.446 1.623 15.954-6.58 41.892-5.303 52.539-10.82-2.28-2.21-5.999-2.882-10.279-2.946zm13.526 44.965c-14.177-.298-32.495 2.867-43.582.902l-33.002 5.23c31.72-.05 63.44.025 95.16 0-3.034-4.524-10.069-5.953-18.575-6.132zm-6.913 48.692c-4.496-.07-8.982.188-13.526 1.022l-32.522 8.175c21.543-3.55 43.01 2.847 64.562-1.202 11.962 2.216 20.66-8.78 3.907-6.793-7.5-.175-14.929-1.085-22.422-1.202zM465.2 757.773l-29.576 7.995c23.849 2.836 47.753 6.214 71.656 1.503 9.744-1.574 4.567-13.92-3.667-5.59-12.552 1.862-25.699-3.404-38.413-3.908zm-33.063 63.961-33.123 5.23c26.419-2.515 51.986 6.292 78.328 4.689 5.416-14.802-36.343-7.572-45.206-9.919zm-38.773 30.297c-10.945.795-21.774 3.134-32.642 4.81 19.66-1.443 39.974 13.754 57.409 7.573 8.563.63 33.329-2.739 11.842-4.929-12.15-2.623-23.995-7.708-36.61-7.454z\",\n style: {\n opacity: 0.22,\n fill: \"#816647\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M304.45 326.16c-10.886 1.967-8.4 22.052 3.066 22.302 8.465 2.325 15.632 3.845 26.342.932 11.164-8.74-4.137-14.974-12.453-12.714-16.156 1.402-6.886-8.034-16.955-10.52zm5.951 53.08c-15.564 5.843-1.743 25.357 11.602 21.821 10.833.873 16.443-4.823 22.422-7.514 13.366-13.213-9.2-14.904-16.952-6.011-12.514 4.096-8.06-5.899-17.072-8.296zm50.736 40.877c-10.278-.312-16.719 10.516-26.51 10.099-15.413-2.714-11.509 17.881 2.164 13.285 10.433 1.739 13.941-8.465 23.925-9.317 8.076-.63 9.6-13.53.421-14.067zm19.717 50.916c-7.237 2.817-15.739 11.599-24.045 7.213-17.483-12.77-11.249 18.608-.901 14.127 9.028 2.152 20.787-3.388 25.428-6.792 3.646.512 11.826-13.3-.482-14.547zm-4.629 17.373c-1.757 1.064 1.7-.61 0 0zm48.632 150.16c-16.235 5.22 1.896 25.317 13.465 25.067 10.318.826 21.684.346 28.734-8.176 9.25-23.358-30.97 7.123-37.196-14.127l-1.45-1.515-3.553-1.25zm7.334 67.027c-12.786 3.28-2.84 22.219 3.727 28.433 9.873 6.706 22.122 6.794 33.616 5.38 11.174-8.715-4.149-14.989-12.453-12.714-8 1.03-16.762-3.311-17.255-12.143-1.53-3.684-2.48-8.882-7.634-8.957zm12.864 32.822-.6-.3zm-60.354 65.344c-11.482 3.658-6.54 21.416-.12 28.373 4.485 5.22 7.873 12.227 12.203 15.208 5.716 3.355 9.67 8.453 16.776 5.416 9.556-6.93-8.199-14.998-5.835-13.892-5.885-2.69-9.886-12.655-15.028-18.034-3.525-5.64 2.14-16.518-7.995-17.072zm11.963 43.462c-2.054-2.264-.507-.136 0 0zm-91.313-6.312c-10.66 4.691-10.693 19.058-10.219 29.212-1.488 10.106 2.839 20.308 12.804 24.048 16.495 8.538 9.815-16.676 2.104-14.427-4.5-4.573.282-13.545-1.622-19.356-.478-6.55 10.803-17.505-3.067-19.477zm-75.623 3.246c-8.979 2.724-15.863 14.021-15.509 26.03-2.008 9.592 3.418 22.026 10.4 23.864 15.634 10.556 16.95-11.274 2.886-14.668-.48-9.208-.568-19.474 8.14-25.047 3.09-4.211-.8-10.666-5.916-10.179zm172.17 6.372c.434.02.033.146 0 0zm-92.816 5.59c.286-.058-.476.461 0 0z\",\n style: {\n stroke: \"#816647\",\n strokeWidth: 2.5007,\n fill: \"#ff9\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M403.43 108.33c2.104.342 3.508 2.397 3.148 4.608 0 0-4.995 13.162-4.414 27.147-1.818 6.562-10.206 3.646-9.514-1.547 0 0 5.11-9.356 4.414-27.147-.695-17.79 3.182-3.579 6.366-3.061z\",\n style: {\n stroke: \"#424242\",\n strokeWidth: 1.9236,\n fill: \"#474747\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M413.2 110.41a11.734 11.734 0 1 1-19.49-13.077 11.734 11.734 0 1 1 19.49 13.077z\",\n style: {\n stroke: \"#3c3c3c\",\n strokeWidth: 2.843,\n fill: \"#474747\"\n }\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M415.23 166.9a6.554 6.292 0 1 1-13.107 0 6.554 6.292 0 1 1 13.107 0z\",\n style: {\n stroke: \"url(#openldap_svg__e)\",\n strokeWidth: 3.2702,\n fill: \"#212121\"\n }\n }));\n};\n\nexport default SvgOpenldap;","var _path, _path2, _path3, _path4, _path5;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgProget = function SvgProget(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M23.586 13.035 13.46 7.381a2.24 2.24 0 0 0-2.192 0L1.144 13.035A2.255 2.255 0 0 0 0 15.036v11.198a2.255 2.255 0 0 0 1.144 1.961l10.125 5.654a2.24 2.24 0 0 0 2.192 0l10.125-5.693a2.248 2.248 0 0 0 1.151-1.962V15.036a2.246 2.246 0 0 0-1.151-2Z\",\n fill: \"#282B3A\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m16.01 18.213-3.375-1.89a.564.564 0 0 0-.548 0l-3.367 1.89a.556.556 0 0 0-.294.492v3.733a.556.556 0 0 0 .294.492l3.367 1.89a.564.564 0 0 0 .548 0l3.375-1.842a.564.564 0 0 0 .285-.493v-3.732a.564.564 0 0 0-.285-.54Z\",\n fill: \"#3FA9F5\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.742 23.772v-5.313l-3.375-1.834v8.338a1.136 1.136 0 0 0 .58.985l7.576 4.232v-3.772l-4.78-2.636Z\",\n fill: \"#1696F0\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12.911 10.843a1.12 1.12 0 0 0-1.096 0l-7.647 4.273 3.399 1.874 4.764-2.676 4.741 2.628 3.336-1.906-7.497-4.193Z\",\n fill: \"#37BBF7\"\n })), _path5 || (_path5 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.026 18.372v5.4l-4.764 2.668v3.772l7.576-4.232a1.129 1.129 0 0 0 .571-.985V16.45l-3.383 1.922Z\",\n fill: \"#79BFF2\"\n })));\n};\n\nexport default SvgProget;","var _path, _path2, _path3, _path4;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgQuay = function SvgQuay(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"m21.696 7.1 6.024 12.901L21.696 32.9H16.57l6.021-12.899L16.571 7.1h5.125Z\",\n fill: \"#40B4E5\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"m16.57 32.9-6.024-12.899L16.57 7.1h5.126l-6.021 12.901 6.02 12.899H16.57Z\",\n fill: \"#003764\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M13.859 12.905 11.15 7.1H6.024l5.273 11.296 2.562-5.492ZM11.297 21.604 6.024 32.9h5.126l2.709-5.804-2.562-5.492Z\",\n fill: \"#40B4E5\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M6.024 32.9 0 20.001 6.024 7.1h5.126L5.126 20.001 11.15 32.9H6.024Z\",\n fill: \"#003764\"\n })));\n};\n\nexport default SvgQuay;","import _ from 'lodash';\n\nimport { usePublicSettings } from '@/portainer/settings/queries';\n\nconst categories = [\n 'docker',\n 'kubernetes',\n 'aci',\n 'portainer',\n 'edge',\n] as const;\ntype Category = typeof categories[number];\n\nenum DimensionConfig {\n PortainerVersion = 1,\n PortainerInstanceID,\n PortainerUserRole,\n PortainerEndpointUserRole,\n}\n\ninterface TrackEventProps {\n category: Category;\n metadata?: Record;\n value?: string | number;\n dimensions?: DimensionConfig;\n}\n\nexport function setPortainerStatus(instanceID: string, version: string) {\n setCustomDimension(DimensionConfig.PortainerInstanceID, instanceID);\n setCustomDimension(DimensionConfig.PortainerVersion, version);\n}\n\nexport function setUserRole(role: string) {\n setCustomDimension(DimensionConfig.PortainerUserRole, role);\n}\n\nexport function clearUserRole() {\n deleteCustomDimension(DimensionConfig.PortainerUserRole);\n}\n\nexport function setUserEndpointRole(role: string) {\n setCustomDimension(DimensionConfig.PortainerEndpointUserRole, role);\n}\n\nexport function clearUserEndpointRole() {\n deleteCustomDimension(DimensionConfig.PortainerEndpointUserRole);\n}\n\nfunction setCustomDimension(dimensionId: number, value: string) {\n push('setCustomDimension', dimensionId, value);\n}\n\nfunction deleteCustomDimension(dimensionId: number) {\n push('deleteCustomDimension', dimensionId.toString());\n}\n\nexport function push(\n name: string,\n ...args: (string | number | DimensionConfig)[]\n) {\n if (typeof window !== 'undefined') {\n window._paq.push([name, ...args]);\n }\n}\n\nexport function useAnalytics() {\n const telemetryQuery = usePublicSettings({\n select: (settings) => settings.EnableTelemetry,\n });\n\n return { trackEvent: handleTrackEvent };\n\n function handleTrackEvent(...args: Parameters) {\n if (telemetryQuery.data) {\n trackEvent(...args);\n }\n }\n}\n\nexport function trackEvent(action: string, properties: TrackEventProps) {\n /**\n * @description Logs an event with an event category (Videos, Music, Games...), an event\n * action (Play, Pause, Duration, Add Playlist, Downloaded, Clicked...), and an optional\n * event name and optional numeric value.\n *\n * @link https://piwik.org/docs/event-tracking/\n * @link https://developer.piwik.org/api-reference/tracking-javascript#using-the-tracker-object\n *\n */\n\n let { value } = properties;\n const { metadata, dimensions, category } = properties;\n // PAQ requires that eventValue be an integer, see: http://piwik.org/docs/event-tracking\n if (value) {\n const parsed = parseInt(value.toString(), 10);\n value = Number.isNaN(parsed) ? 0 : parsed;\n }\n\n if (!category) {\n throw new Error('missing category');\n }\n\n if (!categories.includes(category)) {\n throw new Error('unsupported category');\n }\n\n let metadataString = '';\n if (metadata) {\n const kebabCasedMetadata = Object.fromEntries(\n Object.entries(metadata).map(([key, value]) => [_.kebabCase(key), value])\n );\n metadataString = JSON.stringify(kebabCasedMetadata).toLowerCase();\n }\n\n push(\n 'trackEvent',\n category,\n action.toLowerCase(),\n metadataString, // Changed in favour of Piwik documentation. Added fallback so it's backwards compatible.\n value || '',\n dimensions || {}\n );\n}\n\ndeclare global {\n interface Window {\n _paq: [string, ...(string | number)[]][];\n }\n}\n","import _ from 'lodash';\n\nexport function trimSHA(imageName: string) {\n if (!imageName) {\n return '';\n }\n if (imageName.indexOf('sha256:') === 0) {\n return imageName.substring(7, 19);\n }\n return _.split(imageName, '@sha256')[0];\n}\n","import { useQuery } from 'react-query';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport axios, { parseAxiosError } from '@/portainer/services/axios';\n\nexport interface VersionResponse {\n ApiVersion: string;\n}\n\nexport async function getVersion(environmentId: EnvironmentId) {\n try {\n const { data } = await axios.get(\n buildUrl(environmentId, 'version')\n );\n return data;\n } catch (err) {\n throw parseAxiosError(err as Error, 'Unable to retrieve version');\n }\n}\n\nexport interface InfoResponse {\n Swarm?: {\n NodeID: string;\n ControlAvailable: boolean;\n };\n}\n\nexport async function getInfo(environmentId: EnvironmentId) {\n try {\n const { data } = await axios.get(\n buildUrl(environmentId, 'info')\n );\n return data;\n } catch (err) {\n throw parseAxiosError(err as Error, 'Unable to retrieve version');\n }\n}\n\nexport function useInfo(\n environmentId: EnvironmentId,\n select?: (info: InfoResponse) => TSelect\n) {\n return useQuery(\n ['environment', environmentId, 'docker', 'info'],\n () => getInfo(environmentId),\n {\n select,\n }\n );\n}\nexport function useVersion(\n environmentId: EnvironmentId,\n select?: (info: VersionResponse) => TSelect\n) {\n return useQuery(\n ['environment', environmentId, 'docker', 'version'],\n () => getVersion(environmentId),\n {\n select,\n }\n );\n}\n\nfunction buildUrl(\n environmentId: EnvironmentId,\n action: string,\n subAction = ''\n) {\n let url = `/endpoints/${environmentId}/docker/${action}`;\n\n if (subAction) {\n url += `/${subAction}`;\n }\n\n return url;\n}\n","import { number, object, SchemaOf } from 'yup';\n\nimport { r2a } from '@/react-tools/react2angular';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Select } from '@@/form-components/Input';\n\nimport { Options, useIntervalOptions } from './useIntervalOptions';\n\nexport const EDGE_ASYNC_INTERVAL_USE_DEFAULT = -1;\n\nexport interface EdgeAsyncIntervalsValues {\n PingInterval: number;\n SnapshotInterval: number;\n CommandInterval: number;\n}\n\nexport const options: Options = [\n { label: 'Use default interval', value: -1, isDefault: true },\n {\n value: 0,\n label: 'disabled',\n },\n {\n value: 60,\n label: '1 minute',\n },\n {\n value: 60 * 60,\n label: '1 hour',\n },\n {\n value: 24 * 60 * 60,\n label: '1 day',\n },\n {\n value: 7 * 24 * 60 * 60,\n label: '1 week',\n },\n];\n\nconst defaultFieldSettings = {\n ping: {\n label: 'Ping interval',\n tooltip:\n 'Interval used by this Edge agent to check in with the Portainer instance',\n },\n snapshot: {\n label: 'Snapshot interval',\n tooltip: 'Interval used by this Edge agent to snapshot the agent state',\n },\n command: {\n label: 'Command interval',\n tooltip:\n 'Interval used by this Edge agent to fetch commands from the Portainer instance',\n },\n};\n\ninterface Props {\n values: EdgeAsyncIntervalsValues;\n isDefaultHidden?: boolean;\n readonly?: boolean;\n fieldSettings?: typeof defaultFieldSettings;\n onChange(value: EdgeAsyncIntervalsValues): void;\n}\n\nexport function EdgeAsyncIntervalsForm({\n onChange,\n values,\n isDefaultHidden = false,\n readonly = false,\n fieldSettings = defaultFieldSettings,\n}: Props) {\n const pingIntervalOptions = useIntervalOptions(\n 'Edge.PingInterval',\n options,\n isDefaultHidden\n );\n\n const snapshotIntervalOptions = useIntervalOptions(\n 'Edge.SnapshotInterval',\n options,\n isDefaultHidden\n );\n\n const commandIntervalOptions = useIntervalOptions(\n 'Edge.CommandInterval',\n options,\n isDefaultHidden\n );\n\n return (\n <>\n \n \n \n\n \n \n \n\n \n \n \n \n );\n\n function handleChange(e: React.ChangeEvent) {\n onChange({ ...values, [e.target.name]: parseInt(e.target.value, 10) });\n }\n}\n\nconst intervals = options.map((option) => option.value);\n\nexport function edgeAsyncIntervalsValidation(): SchemaOf {\n return object({\n PingInterval: number().required('This field is required.').oneOf(intervals),\n SnapshotInterval: number()\n .required('This field is required.')\n .oneOf(intervals),\n CommandInterval: number()\n .required('This field is required.')\n .oneOf(intervals),\n });\n}\n\nexport const EdgeAsyncIntervalsFormAngular = r2a(EdgeAsyncIntervalsForm, [\n 'values',\n 'onChange',\n 'isDefaultHidden',\n 'readonly',\n 'fieldSettings',\n]);\n","import { r2a } from '@/react-tools/react2angular';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Select } from '@@/form-components/Input';\n\nimport { Options, useIntervalOptions } from './useIntervalOptions';\n\ninterface Props {\n value: number;\n onChange(value: number): void;\n isDefaultHidden?: boolean;\n label?: string;\n tooltip?: string;\n readonly?: boolean;\n}\n\nexport const checkinIntervalOptions: Options = [\n { label: 'Use default interval', value: 0, isDefault: true },\n {\n label: '5 seconds',\n value: 5,\n },\n {\n label: '10 seconds',\n value: 10,\n },\n {\n label: '30 seconds',\n value: 30,\n },\n { label: '5 minutes', value: 300 },\n { label: '1 hour', value: 3600 },\n { label: '1 day', value: 86400 },\n];\n\nexport function EdgeCheckinIntervalField({\n value,\n readonly,\n onChange,\n isDefaultHidden = false,\n label = 'Poll frequency',\n tooltip = 'Interval used by this Edge agent to check in with the Portainer instance. Affects Edge environment management and Edge compute features.',\n}: Props) {\n const options = useIntervalOptions(\n 'EdgeAgentCheckinInterval',\n checkinIntervalOptions,\n isDefaultHidden\n );\n\n return (\n \n {\n onChange(parseInt(e.currentTarget.value, 10));\n }}\n options={options}\n disabled={readonly}\n />\n \n );\n}\n\nexport const EdgeCheckinIntervalFieldAngular = r2a(EdgeCheckinIntervalField, [\n 'value',\n 'onChange',\n 'isDefaultHidden',\n 'tooltip',\n 'label',\n 'readonly',\n]);\n","import _ from 'lodash';\nimport { useState, useEffect } from 'react';\n\nimport { useSettings } from '@/portainer/settings/queries';\n\ntype Option = {\n label: string;\n value: number;\n};\n\ntype DefaultOption = Option & { isDefault: true };\n\nexport type Options = [DefaultOption, ...Option[]];\n\nexport function useIntervalOptions(\n fieldName:\n | 'Edge.PingInterval'\n | 'Edge.SnapshotInterval'\n | 'Edge.CommandInterval'\n | 'EdgeAgentCheckinInterval',\n initialOptions: Options,\n isDefaultHidden: boolean\n) {\n const [{ value: defaultValue }] = initialOptions;\n const [options, setOptions] = useState(initialOptions);\n\n const settingsQuery = useSettings(\n (settings) => _.get(settings, fieldName, 0) as number,\n !isDefaultHidden\n );\n\n useEffect(() => {\n if (isDefaultHidden) {\n setOptions(initialOptions.slice(1));\n }\n\n if (\n !isDefaultHidden &&\n typeof settingsQuery.data !== 'undefined' &&\n settingsQuery.data !== defaultValue\n ) {\n setOptions((options) => {\n let label = `${settingsQuery.data} seconds`;\n const option = options.find((o) => o.value === settingsQuery.data);\n if (option) {\n label = option.label;\n }\n\n return [\n {\n value: defaultValue,\n label: `Use default interval (${label})`,\n },\n ...options.slice(1),\n ];\n });\n }\n }, [\n settingsQuery.data,\n setOptions,\n isDefaultHidden,\n initialOptions,\n defaultValue,\n ]);\n\n return options;\n}\n","export enum EditorType {\n Compose,\n Kubernetes,\n Nomad,\n}\n","import _ from 'lodash';\n\nimport { EnvironmentType } from '@/portainer/environments/types';\n\nimport { EditorType } from './types';\n\nexport function getValidEditorTypes(endpointTypes: EnvironmentType[]) {\n const right: Partial> = {\n [EnvironmentType.EdgeAgentOnDocker]: [EditorType.Compose],\n [EnvironmentType.EdgeAgentOnKubernetes]: [\n EditorType.Compose,\n EditorType.Kubernetes,\n ],\n [EnvironmentType.EdgeAgentOnNomad]: [EditorType.Nomad],\n };\n\n return endpointTypes.length\n ? _.intersection(...endpointTypes.map((type) => right[type]))\n : [EditorType.Compose, EditorType.Kubernetes, EditorType.Nomad];\n}\n","import { object, string, array, number } from 'yup';\n\nimport { ResourceControlOwnership } from '../types';\n\nexport function validationSchema(isAdmin: boolean) {\n return object()\n .shape({\n ownership: string()\n .oneOf(Object.values(ResourceControlOwnership))\n .required(),\n authorizedUsers: array(number()),\n authorizedTeams: array(number()),\n })\n .test(\n 'user-and-team',\n isAdmin\n ? 'You must specify at least one team or user.'\n : 'You must specify at least one team.',\n ({ ownership, authorizedTeams, authorizedUsers }) => {\n if (ownership !== ResourceControlOwnership.RESTRICTED) {\n return true;\n }\n\n if (!isAdmin) {\n return !!authorizedTeams && authorizedTeams.length > 0;\n }\n\n return (\n !!authorizedTeams &&\n !!authorizedUsers &&\n (authorizedTeams.length > 0 || authorizedUsers.length > 0)\n );\n }\n );\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren } from 'react';\nimport _ from 'lodash';\n\nimport { ownershipIcon, truncate } from '@/portainer/filters/filters';\nimport { UserId } from '@/portainer/users/types';\nimport { TeamId } from '@/portainer/teams/types';\nimport { useTeams } from '@/portainer/teams/queries';\nimport { useUsers } from '@/portainer/users/queries';\n\nimport { Link } from '@@/Link';\nimport { Tooltip } from '@@/Tip/Tooltip';\n\nimport {\n ResourceControlOwnership,\n ResourceControlType,\n ResourceId,\n} from '../types';\nimport { ResourceControlViewModel } from '../models/ResourceControlViewModel';\n\ninterface Props {\n resourceControl?: ResourceControlViewModel;\n resourceType: ResourceControlType;\n}\n\nexport function AccessControlPanelDetails({\n resourceControl,\n resourceType,\n}: Props) {\n const inheritanceMessage = getInheritanceMessage(\n resourceType,\n resourceControl\n );\n\n const {\n Ownership: ownership = ResourceControlOwnership.ADMINISTRATORS,\n UserAccesses: restrictedToUsers = [],\n TeamAccesses: restrictedToTeams = [],\n } = resourceControl || {};\n\n const users = useAuthorizedUsers(restrictedToUsers.map((ra) => ra.UserId));\n const teams = useAuthorizedTeams(restrictedToTeams.map((ra) => ra.TeamId));\n\n return (\n \n \n \n \n \n \n {inheritanceMessage}\n {restrictedToUsers.length > 0 && (\n \n \n \n \n )}\n {restrictedToTeams.length > 0 && (\n \n \n \n \n )}\n \n
Ownership\n \n {ownership}\n \n
Authorized users\n {users.data && users.data.join(', ')}\n
Authorized teams\n {teams.data && teams.data.join(', ')}\n
\n );\n}\n\nfunction getOwnershipTooltip(ownership: ResourceControlOwnership) {\n switch (ownership) {\n case ResourceControlOwnership.PRIVATE:\n return 'Management of this resource is restricted to a single user.';\n case ResourceControlOwnership.RESTRICTED:\n return 'This resource can be managed by a restricted set of users and/or teams.';\n case ResourceControlOwnership.PUBLIC:\n return 'This resource can be managed by any user with access to this environment.';\n case ResourceControlOwnership.ADMINISTRATORS:\n default:\n return 'This resource can only be managed by administrators.';\n }\n}\n\nfunction getInheritanceMessage(\n resourceType: ResourceControlType,\n resourceControl?: ResourceControlViewModel\n) {\n if (!resourceControl || resourceControl.Type === resourceType) {\n return null;\n }\n\n const parentType = resourceControl.Type;\n const resourceId = resourceControl.ResourceId;\n\n if (\n resourceType === ResourceControlType.Container &&\n parentType === ResourceControlType.Service\n ) {\n return (\n \n Access control on this resource is inherited from the following service:\n \n {truncate(resourceId)}\n \n \n );\n }\n\n if (\n resourceType === ResourceControlType.Volume &&\n parentType === ResourceControlType.Container\n ) {\n return (\n \n Access control on this resource is inherited from the following\n container:\n \n {truncate(resourceId)}\n \n \n );\n }\n\n if (parentType === ResourceControlType.Stack) {\n return (\n \n \n Access control on this resource is inherited from the following stack:\n \n {removeEndpointIdFromStackResourceId(resourceId)}\n \n );\n }\n\n return null;\n}\n\nfunction removeEndpointIdFromStackResourceId(stackName: ResourceId) {\n if (!stackName || typeof stackName !== 'string') {\n return stackName;\n }\n\n const firstUnderlineIndex = stackName.indexOf('_');\n if (firstUnderlineIndex < 0) {\n return stackName;\n }\n return stackName.substring(firstUnderlineIndex + 1);\n}\n\ninterface InheritanceMessageProps {\n tooltip: string;\n}\n\nfunction InheritanceMessage({\n children,\n tooltip,\n}: PropsWithChildren) {\n return (\n \n \n \n {children}\n \n \n \n );\n}\n\nfunction useAuthorizedTeams(authorizedTeamIds: TeamId[]) {\n return useTeams(authorizedTeamIds.length > 0, (teams) => {\n if (authorizedTeamIds.length === 0) {\n return [];\n }\n\n return _.compact(\n authorizedTeamIds.map((id) => {\n const team = teams.find((u) => u.Id === id);\n return team?.Name;\n })\n );\n });\n}\n\nfunction useAuthorizedUsers(authorizedUserIds: UserId[]) {\n return useUsers(false, authorizedUserIds.length > 0, (users) => {\n if (authorizedUserIds.length === 0) {\n return [];\n }\n\n return _.compact(\n authorizedUserIds.map((id) => {\n const user = users.find((u) => u.Id === id);\n return user?.Username;\n })\n );\n });\n}\n","import { Form, Formik } from 'formik';\nimport clsx from 'clsx';\nimport { useMutation } from 'react-query';\nimport { object } from 'yup';\n\nimport { useUser } from '@/portainer/hooks/useUser';\nimport { confirmAsync } from '@/portainer/services/modal.service/confirm';\nimport { notifySuccess } from '@/portainer/services/notifications';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Button } from '@@/buttons';\n\nimport { EditDetails } from '../EditDetails';\nimport { parseAccessControlFormData } from '../utils';\nimport { validationSchema } from '../AccessControlForm/AccessControlForm.validation';\nimport { applyResourceControlChange } from '../access-control.service';\nimport {\n ResourceControlType,\n ResourceId,\n AccessControlFormData,\n} from '../types';\nimport { ResourceControlViewModel } from '../models/ResourceControlViewModel';\n\nimport styles from './AccessControlPanelForm.module.css';\n\ninterface Props {\n resourceType: ResourceControlType;\n resourceId: ResourceId;\n resourceControl?: ResourceControlViewModel;\n onCancelClick(): void;\n onUpdateSuccess(): Promise;\n}\n\nexport function AccessControlPanelForm({\n resourceId,\n resourceType,\n resourceControl,\n onCancelClick,\n onUpdateSuccess,\n}: Props) {\n const { isAdmin } = useUser();\n\n const updateAccess = useMutation(\n (variables: AccessControlFormData) =>\n applyResourceControlChange(\n resourceType,\n resourceId,\n variables,\n resourceControl\n ),\n {\n meta: {\n error: { title: 'Failure', message: 'Unable to update access control' },\n },\n onSuccess() {\n return onUpdateSuccess();\n },\n }\n );\n\n const initialValues = {\n accessControl: parseAccessControlFormData(isAdmin, resourceControl),\n };\n\n return (\n \n object({ accessControl: validationSchema(isAdmin) })\n }\n >\n {({ setFieldValue, values, isSubmitting, isValid, errors }) => (\n
\n \n setFieldValue('accessControl', accessControl)\n }\n values={values.accessControl}\n isPublicVisible\n errors={errors.accessControl}\n />\n\n
\n
\n \n \n Update Ownership\n \n
\n
\n \n )}\n \n );\n\n async function handleSubmit({\n accessControl,\n }: {\n accessControl: AccessControlFormData;\n }) {\n const confirmed = await confirmAccessControlUpdate();\n if (!confirmed) {\n return;\n }\n\n updateAccess.mutate(accessControl, {\n onSuccess() {\n notifySuccess('Success', 'Access control successfully updated');\n },\n });\n }\n}\n\nfunction confirmAccessControlUpdate() {\n return confirmAsync({\n title: 'Are you sure?',\n message:\n 'Changing the ownership of this resource will potentially restrict its management to some users.',\n buttons: {\n confirm: {\n label: 'Change ownership',\n className: 'btn-primary',\n },\n },\n });\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"form\":\"app-portainer-access-control-AccessControlPanel-AccessControlPanelForm-module__form\"};","import { useReducer } from 'react';\n\nimport { useUser } from '@/portainer/hooks/useUser';\nimport { Icon } from '@/react/components/Icon';\nimport { r2a } from '@/react-tools/react2angular';\nimport { TeamMembership, Role } from '@/portainer/teams/types';\nimport { useUserMembership } from '@/portainer/users/queries';\n\nimport { TableContainer, TableTitle } from '@@/datatables';\nimport { Button } from '@@/buttons';\n\nimport { ResourceControlType, ResourceId } from '../types';\nimport { ResourceControlViewModel } from '../models/ResourceControlViewModel';\n\nimport { AccessControlPanelDetails } from './AccessControlPanelDetails';\nimport { AccessControlPanelForm } from './AccessControlPanelForm';\n\ninterface Props {\n resourceControl?: ResourceControlViewModel;\n resourceType: ResourceControlType;\n resourceId: ResourceId;\n disableOwnershipChange?: boolean;\n onUpdateSuccess(): Promise;\n}\n\nexport function AccessControlPanel({\n resourceControl,\n resourceType,\n disableOwnershipChange,\n resourceId,\n onUpdateSuccess,\n}: Props) {\n const [isEditMode, toggleEditMode] = useReducer((state) => !state, false);\n const { isAdmin } = useUser();\n\n const isInherited = checkIfInherited();\n\n const { isPartOfRestrictedUsers, isLeaderOfAnyRestrictedTeams } =\n useRestrictions(resourceControl);\n\n const isEditDisabled =\n disableOwnershipChange ||\n isInherited ||\n (!isAdmin && !isPartOfRestrictedUsers && !isLeaderOfAnyRestrictedTeams);\n\n return (\n
\n
\n \n \n \n\n {!isEditDisabled && !isEditMode && (\n
\n
\n \n
\n
\n )}\n\n {isEditMode && (\n toggleEditMode()}\n resourceId={resourceId}\n resourceType={resourceType}\n onUpdateSuccess={handleUpdateSuccess}\n />\n )}\n
\n
\n
\n );\n\n async function handleUpdateSuccess() {\n await onUpdateSuccess();\n toggleEditMode();\n }\n\n function checkIfInherited() {\n if (!resourceControl) {\n return false;\n }\n\n const inheritedVolume =\n resourceControl.Type === ResourceControlType.Container &&\n resourceType === ResourceControlType.Volume;\n const inheritedContainer =\n resourceControl.Type === ResourceControlType.Service &&\n resourceType === ResourceControlType.Container;\n const inheritedFromStack =\n resourceControl.Type === ResourceControlType.Stack &&\n resourceType !== ResourceControlType.Stack;\n\n return inheritedVolume || inheritedContainer || inheritedFromStack;\n }\n}\n\nfunction useRestrictions(resourceControl?: ResourceControlViewModel) {\n const { user, isAdmin } = useUser();\n\n const memberships = useUserMembership(user.Id);\n\n if (!resourceControl || isAdmin) {\n return {\n isPartOfRestrictedUsers: false,\n isLeaderOfAnyRestrictedTeams: false,\n };\n }\n\n if (resourceControl.UserAccesses.some((ua) => ua.UserId === user.Id)) {\n return {\n isPartOfRestrictedUsers: true,\n isLeaderOfAnyRestrictedTeams: false,\n };\n }\n\n const isTeamLeader =\n memberships.isSuccess &&\n isLeaderOfAnyRestrictedTeams(memberships.data, resourceControl);\n\n return {\n isPartOfRestrictedUsers: false,\n isLeaderOfAnyRestrictedTeams: isTeamLeader,\n };\n}\n\n// returns true if user is a team leader and resource is limited to this team\nfunction isLeaderOfAnyRestrictedTeams(\n userMemberships: TeamMembership[],\n resourceControl: ResourceControlViewModel\n) {\n return userMemberships.some(\n (membership) =>\n membership.Role === Role.TeamLeader &&\n resourceControl.TeamAccesses.some((ta) => ta.TeamId === membership.TeamID)\n );\n}\n\nexport const AccessControlPanelAngular = r2a(AccessControlPanel, [\n 'resourceControl',\n 'resourceType',\n 'disableOwnershipChange',\n 'resourceId',\n 'onUpdateSuccess',\n]);\n","import { User } from '@/portainer/users/types';\n\nimport { UsersSelector } from '@@/UsersSelector';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Link } from '@@/Link';\n\ninterface Props {\n name: string;\n users: User[];\n value: number[];\n onChange(value: number[]): void;\n errors?: string | string[];\n}\n\nexport function UsersField({ name, users, value, onChange, errors }: Props) {\n return (\n 0\n ? 'You can select which user(s) will be able to manage this resource.'\n : undefined\n }\n inputId=\"users-selector\"\n errors={errors}\n >\n {users.length > 0 ? (\n \n ) : (\n \n You have not yet created any users. Head over to the\n Users view to manage users.\n \n )}\n \n );\n}\n","import { Team, TeamId } from '@/portainer/teams/types';\n\nimport { Select } from '@@/form-components/ReactSelect';\n\ninterface Props {\n name?: string;\n value: TeamId[];\n onChange(value: TeamId[]): void;\n teams: Team[];\n dataCy?: string;\n inputId?: string;\n placeholder?: string;\n}\n\nexport function TeamsSelector({\n name,\n value,\n onChange,\n teams,\n dataCy,\n inputId,\n placeholder,\n}: Props) {\n return (\n team.Name}\n getOptionValue={(team) => String(team.Id)}\n options={teams}\n value={teams.filter((team) => value.includes(team.Id))}\n closeMenuOnSelect={false}\n onChange={(selectedTeams) =>\n onChange(selectedTeams.map((team) => team.Id))\n }\n data-cy={dataCy}\n inputId={inputId}\n placeholder={placeholder}\n />\n );\n}\n","import { Team } from '@/portainer/teams/types';\n\nimport { TeamsSelector } from '@@/TeamsSelector';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Link } from '@@/Link';\n\ninterface Props {\n name: string;\n teams: Team[];\n value: number[];\n overrideTooltip?: string;\n onChange(value: number[]): void;\n errors?: string | string[];\n}\n\nexport function TeamsField({\n name,\n teams,\n value,\n overrideTooltip,\n onChange,\n errors,\n}: Props) {\n return (\n 0\n ? overrideTooltip ||\n 'You can select which team(s) will be able to manage this resource.'\n : undefined\n }\n inputId=\"teams-selector\"\n errors={errors}\n >\n {teams.length > 0 ? (\n \n ) : (\n \n You have not yet created any teams. Head over to the\n Teams view to manage teams.\n \n )}\n \n );\n}\n","import _ from 'lodash';\nimport { useEffect, useState } from 'react';\n\nimport { buildOption } from '@/portainer/components/BoxSelector';\nimport { ownershipIcon } from '@/portainer/filters/filters';\nimport { Team } from '@/portainer/teams/types';\n\nimport { BoxSelectorOption } from '@@/BoxSelector/types';\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nimport { ResourceControlOwnership } from '../types';\n\nconst publicOption: BoxSelectorOption = {\n value: ResourceControlOwnership.PUBLIC,\n label: 'Public',\n id: 'access_public',\n description:\n 'I want any user with access to this environment to be able to manage this resource',\n icon: ,\n};\n\nexport function useOptions(\n isAdmin: boolean,\n teams?: Team[],\n isPublicVisible = false\n) {\n const [options, setOptions] = useState<\n Array>\n >([]);\n\n useEffect(() => {\n const options = isAdmin ? adminOptions() : nonAdminOptions(teams);\n\n setOptions(isPublicVisible ? [...options, publicOption] : options);\n }, [isAdmin, teams, isPublicVisible]);\n\n return options;\n}\n\nfunction adminOptions() {\n return [\n buildOption(\n 'access_administrators',\n ,\n 'Administrators',\n 'I want to restrict the management of this resource to administrators only',\n ResourceControlOwnership.ADMINISTRATORS\n ),\n buildOption(\n 'access_restricted',\n ,\n 'Restricted',\n 'I want to restrict the management of this resource to a set of users and/or teams',\n ResourceControlOwnership.RESTRICTED\n ),\n ];\n}\nfunction nonAdminOptions(teams?: Team[]) {\n return _.compact([\n buildOption(\n 'access_private',\n ,\n 'Private',\n 'I want to this resource to be manageable by myself only',\n ResourceControlOwnership.PRIVATE\n ),\n teams &&\n teams.length > 0 &&\n buildOption(\n 'access_restricted',\n ,\n 'Restricted',\n teams.length === 1\n ? `I want any member of my team (${teams[0].Name}) to be able to manage this resource`\n : 'I want to restrict the management of this resource to one or more of my teams',\n ResourceControlOwnership.RESTRICTED\n ),\n ]);\n}\n","import { useCallback } from 'react';\nimport { FormikErrors } from 'formik';\n\nimport { useUser } from '@/portainer/hooks/useUser';\n\nimport { BoxSelector } from '@@/BoxSelector';\nimport { FormError } from '@@/form-components/FormError';\n\nimport { ResourceControlOwnership, AccessControlFormData } from '../types';\n\nimport { UsersField } from './UsersField';\nimport { TeamsField } from './TeamsField';\nimport { useLoadState } from './useLoadState';\nimport { useOptions } from './useOptions';\n\ninterface Props {\n values: AccessControlFormData;\n onChange(values: AccessControlFormData): void;\n isPublicVisible?: boolean;\n errors?: FormikErrors;\n formNamespace?: string;\n}\n\nexport function EditDetails({\n values,\n onChange,\n isPublicVisible = false,\n errors,\n formNamespace,\n}: Props) {\n const { user, isAdmin } = useUser();\n\n const { users, teams, isLoading } = useLoadState();\n const options = useOptions(isAdmin, teams, isPublicVisible);\n\n const handleChange = useCallback(\n (partialValues: Partial) => {\n onChange({ ...values, ...partialValues });\n },\n\n [values, onChange]\n );\n\n if (isLoading || !teams || !users) {\n return null;\n }\n\n return (\n <>\n handleChangeOwnership(ownership)}\n />\n\n {values.ownership === ResourceControlOwnership.RESTRICTED && (\n
\n {isAdmin && (\n handleChange({ authorizedUsers })}\n value={values.authorizedUsers}\n errors={errors?.authorizedUsers}\n />\n )}\n\n {(isAdmin || teams.length > 1) && (\n 1\n ? 'As you are a member of multiple teams, you can select which teams(s) will be able to manage this resource.'\n : undefined\n }\n onChange={(authorizedTeams) => handleChange({ authorizedTeams })}\n value={values.authorizedTeams}\n errors={errors?.authorizedTeams}\n />\n )}\n\n {typeof errors === 'string' && (\n
\n {errors}\n
\n )}\n
\n )}\n \n );\n\n function withNamespace(name: string) {\n return formNamespace ? `${formNamespace}.${name}` : name;\n }\n\n function handleChangeOwnership(ownership: ResourceControlOwnership) {\n let { authorizedTeams, authorizedUsers } = values;\n\n if (ownership === ResourceControlOwnership.PRIVATE && user) {\n authorizedUsers = [user.Id];\n authorizedTeams = [];\n }\n\n if (ownership === ResourceControlOwnership.RESTRICTED) {\n authorizedUsers = [];\n authorizedTeams = [];\n }\n\n handleChange({ ownership, authorizedTeams, authorizedUsers });\n }\n}\n","import { useTeams } from '@/portainer/teams/queries';\nimport { useUsers } from '@/portainer/users/queries';\n\nexport function useLoadState() {\n const teams = useTeams();\n\n const users = useUsers(false);\n\n return {\n teams: teams.data,\n users: users.data,\n isLoading: teams.isLoading || users.isLoading,\n };\n}\n","import axios, { parseAxiosError } from '../services/axios';\n\nimport {\n AccessControlFormData,\n OwnershipParameters,\n ResourceControlId,\n ResourceControlResponse,\n ResourceControlType,\n ResourceId,\n} from './types';\nimport { ResourceControlViewModel } from './models/ResourceControlViewModel';\nimport { parseOwnershipParameters } from './utils';\n\n/**\n * Update an existing ResourceControl or create a new one on existing resource without RC\n * @param resourceType Type of ResourceControl\n * @param resourceId ID of involved Resource\n * @param resourceControl Previous ResourceControl (can be undefined)\n * @param formValues View data generated by AccessControlPanel\n */\nexport function applyResourceControlChange(\n resourceType: ResourceControlType,\n resourceId: ResourceId,\n formValues: AccessControlFormData,\n resourceControl?: ResourceControlViewModel\n) {\n const ownershipParameters = parseOwnershipParameters(formValues);\n if (resourceControl) {\n return updateResourceControl(resourceControl.Id, ownershipParameters);\n }\n return createResourceControl(resourceType, resourceId, ownershipParameters);\n}\n\n/**\n * Apply a ResourceControl after Resource creation\n * @param accessControlData ResourceControl to apply\n * @param resourceControl ResourceControl to update\n * @param subResourcesIds SubResources managed by the ResourceControl\n */\nexport function applyResourceControl(\n accessControlData: AccessControlFormData,\n resourceControl: ResourceControlResponse,\n subResourcesIds: (number | string)[] = []\n) {\n const ownershipParameters = parseOwnershipParameters(\n accessControlData,\n subResourcesIds\n );\n return updateResourceControl(resourceControl.Id, ownershipParameters);\n}\n\n/**\n * Update a ResourceControl\n * @param resourceControlId ID of involved resource\n * @param ownershipParameters Transient type from view data to payload\n */\nasync function updateResourceControl(\n resourceControlId: ResourceControlId,\n ownershipParameters: OwnershipParameters\n) {\n try {\n await axios.put(buildUrl(resourceControlId), ownershipParameters);\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\n/**\n * Create a ResourceControl\n * @param resourceType Type of ResourceControl\n * @param resourceId ID of involved resource\n * @param ownershipParameters Transient type from view data to payload\n */\nasync function createResourceControl(\n resourceType: ResourceControlType,\n resourceId: ResourceId,\n ownershipParameters: OwnershipParameters\n) {\n try {\n await axios.post(buildUrl(), {\n ...ownershipParameters,\n type: resourceType,\n resourceId,\n });\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\nfunction buildUrl(id?: ResourceControlId) {\n let url = '/resource_controls';\n\n if (id) {\n url += `/${id}`;\n }\n\n return url;\n}\n","import {\n ResourceControlId,\n ResourceControlOwnership,\n ResourceControlResponse,\n ResourceControlType,\n ResourceId,\n TeamResourceAccess,\n UserResourceAccess,\n} from '../types';\n\nexport class ResourceControlViewModel {\n Id: ResourceControlId;\n\n Type: ResourceControlType;\n\n ResourceId: ResourceId;\n\n UserAccesses: UserResourceAccess[];\n\n TeamAccesses: TeamResourceAccess[];\n\n Public: boolean;\n\n System: boolean;\n\n Ownership: ResourceControlOwnership;\n\n constructor(data: ResourceControlResponse) {\n this.Id = data.Id;\n this.Type = data.Type;\n this.ResourceId = data.ResourceId;\n this.UserAccesses = data.UserAccesses;\n this.TeamAccesses = data.TeamAccesses;\n this.Public = data.Public;\n this.System = data.System;\n this.Ownership = determineOwnership(data);\n }\n}\n\nexport function determineOwnership(resourceControl: ResourceControlResponse) {\n if (resourceControl.Public) {\n return ResourceControlOwnership.PUBLIC;\n }\n\n if (\n resourceControl.UserAccesses.length === 1 &&\n resourceControl.TeamAccesses.length === 0\n ) {\n return ResourceControlOwnership.PRIVATE;\n }\n\n if (\n resourceControl.UserAccesses.length > 1 ||\n resourceControl.TeamAccesses.length > 0\n ) {\n return ResourceControlOwnership.RESTRICTED;\n }\n\n return ResourceControlOwnership.ADMINISTRATORS;\n}\n","import { TeamId } from '@/portainer/teams/types';\nimport { UserId } from '@/portainer/users/types';\n\nexport type ResourceControlId = number;\n\nexport type ResourceId = number | string;\n\nexport enum ResourceControlOwnership {\n PUBLIC = 'public',\n PRIVATE = 'private',\n RESTRICTED = 'restricted',\n ADMINISTRATORS = 'administrators',\n}\n\n/**\n * Transient type from view data to payload\n */\nexport interface OwnershipParameters {\n administratorsOnly: boolean;\n public: boolean;\n users: UserId[];\n teams: TeamId[];\n subResourcesIds: ResourceId[];\n}\n\nexport enum ResourceControlType {\n // Container represents a resource control associated to a Docker container\n Container = 1,\n // Service represents a resource control associated to a Docker service\n Service,\n // Volume represents a resource control associated to a Docker volume\n Volume,\n // Network represents a resource control associated to a Docker network\n Network,\n // Secret represents a resource control associated to a Docker secret\n Secret,\n // Stack represents a resource control associated to a stack composed of Docker services\n Stack,\n // Config represents a resource control associated to a Docker config\n Config,\n // CustomTemplate represents a resource control associated to a custom template\n CustomTemplate,\n // ContainerGroup represents a resource control associated to an Azure container group\n ContainerGroup,\n}\n\nenum ResourceAccessLevel {\n ReadWriteAccessLevel = 1,\n}\n\nexport interface UserResourceAccess {\n UserId: UserId;\n AccessLevel: ResourceAccessLevel;\n}\n\nexport interface TeamResourceAccess {\n TeamId: TeamId;\n AccessLevel: ResourceAccessLevel;\n}\n\nexport interface ResourceControlResponse {\n Id: number;\n Type: ResourceControlType;\n ResourceId: ResourceId;\n UserAccesses: UserResourceAccess[];\n TeamAccesses: TeamResourceAccess[];\n Public: boolean;\n AdministratorsOnly: boolean;\n System: boolean;\n}\n\nexport interface AccessControlFormData {\n ownership: ResourceControlOwnership;\n authorizedUsers: UserId[];\n authorizedTeams: TeamId[];\n}\n","import { TeamId } from '../teams/types';\nimport { UserId } from '../users/types';\n\nimport {\n AccessControlFormData,\n OwnershipParameters,\n ResourceControlOwnership,\n ResourceId,\n} from './types';\nimport { ResourceControlViewModel } from './models/ResourceControlViewModel';\n\n/**\n * Transform AccessControlFormData to ResourceControlOwnershipParameters\n * @param {int} userId ID of user performing the operation\n * @param {AccessControlFormData} formValues Form data (generated by AccessControlForm)\n * @param {int[]} subResources Sub Resources restricted by the ResourceControl\n */\nexport function parseOwnershipParameters(\n formValues: AccessControlFormData,\n subResourcesIds: ResourceId[] = []\n): OwnershipParameters {\n const { ownership, authorizedTeams, authorizedUsers } = formValues;\n\n const adminOnly = ownership === ResourceControlOwnership.ADMINISTRATORS;\n const publicOnly = ownership === ResourceControlOwnership.PUBLIC;\n\n let users = authorizedUsers;\n let teams = authorizedTeams;\n if (\n [\n ResourceControlOwnership.ADMINISTRATORS,\n ResourceControlOwnership.PUBLIC,\n ].includes(ownership)\n ) {\n users = [];\n teams = [];\n }\n\n return {\n administratorsOnly: adminOnly,\n public: publicOnly,\n users,\n teams,\n subResourcesIds,\n };\n}\n\nexport function parseAccessControlFormData(\n isAdmin: boolean,\n resourceControl?: ResourceControlViewModel\n): AccessControlFormData {\n let ownership =\n resourceControl?.Ownership || ResourceControlOwnership.PRIVATE;\n if (isAdmin) {\n if (!resourceControl) {\n ownership = ResourceControlOwnership.ADMINISTRATORS;\n } else if (ownership === ResourceControlOwnership.PRIVATE) {\n ownership = ResourceControlOwnership.RESTRICTED;\n }\n }\n\n let authorizedTeams: TeamId[] = [];\n let authorizedUsers: UserId[] = [];\n if (\n resourceControl &&\n [\n ResourceControlOwnership.PRIVATE,\n ResourceControlOwnership.RESTRICTED,\n ].includes(ownership)\n ) {\n authorizedTeams = resourceControl.TeamAccesses.map((ra) => ra.TeamId);\n authorizedUsers = resourceControl.UserAccesses.map((ra) => ra.UserId);\n }\n\n return { ownership, authorizedUsers, authorizedTeams };\n}\n","import {\n IComponentOptions,\n IComponentController,\n IFormController,\n IScope,\n} from 'angular';\n\nclass BoxSelectorController implements IComponentController {\n formCtrl!: IFormController;\n\n onChange!: (value: string | number) => void;\n\n radioName!: string;\n\n $scope: IScope;\n\n /* @ngInject */\n constructor($scope: IScope) {\n this.handleChange = this.handleChange.bind(this);\n\n this.$scope = $scope;\n }\n\n handleChange(value: string | number, limitedToBE: boolean) {\n this.$scope.$evalAsync(() => {\n this.formCtrl.$setValidity(this.radioName, !limitedToBE, this.formCtrl);\n this.onChange(value);\n });\n }\n}\n\nexport const BoxSelectorAngular: IComponentOptions = {\n template: ``,\n bindings: {\n value: '<',\n onChange: '<',\n options: '<',\n radioName: '<',\n },\n require: {\n formCtrl: '^form',\n },\n controller: BoxSelectorController,\n};\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nimport { BoxSelectorOption } from '@@/BoxSelector/types';\nimport { IconProps } from '@@/Icon';\n\nexport function buildOption(\n id: string,\n icon: IconProps['icon'],\n label: string,\n description: string,\n value: T,\n feature?: FeatureId,\n featherIcon?: IconProps['featherIcon']\n): BoxSelectorOption {\n return { id, icon, label, description, value, feature, featherIcon };\n}\n","import angular from 'angular';\n\nimport { react2angular } from '@/react-tools/react2angular';\n\nimport { BoxSelector } from '@@/BoxSelector';\n\nimport { BoxSelectorAngular } from './BoxSelectorAngular';\n\nexport { buildOption } from './utils';\nconst BoxSelectorReact = react2angular(BoxSelector, [\n 'value',\n 'onChange',\n 'options',\n 'radioName',\n]);\n\nexport const boxSelectorModule = angular\n .module('app.portainer.component.box-selector', [])\n .component('boxSelectorReact', BoxSelectorReact)\n .component('boxSelector', BoxSelectorAngular).name;\n","import axios, { parseAxiosError } from '../services/axios';\n\nimport { EnvironmentGroup, EnvironmentGroupId } from './types';\n\nexport async function getGroup(id: EnvironmentGroupId) {\n try {\n const { data: group } = await axios.get(buildUrl(id));\n return group;\n } catch (e) {\n throw parseAxiosError(e as Error, '');\n }\n}\n\nexport async function getGroups() {\n try {\n const { data: groups } = await axios.get(buildUrl());\n return groups;\n } catch (e) {\n throw parseAxiosError(e as Error, '');\n }\n}\n\nfunction buildUrl(id?: EnvironmentGroupId, action?: string) {\n let url = '/endpoint_groups';\n\n if (id) {\n url += `/${id}`;\n }\n\n if (action) {\n url += `/${action}`;\n }\n\n return url;\n}\n","import { useQuery } from 'react-query';\n\nimport { error as notifyError } from '@/portainer/services/notifications';\n\nimport { EnvironmentGroup, EnvironmentGroupId } from './types';\nimport { getGroup, getGroups } from './environment-groups.service';\n\nexport function useGroups() {\n return useQuery(['environment-groups'], getGroups);\n}\n\nexport function useGroup(\n groupId: EnvironmentGroupId,\n select?: (group: EnvironmentGroup) => T\n) {\n const { data } = useQuery(\n ['environment-groups', groupId],\n () => getGroup(groupId),\n {\n staleTime: 50,\n select,\n onError(error) {\n notifyError('Failed loading group', error as Error);\n },\n }\n );\n\n return data;\n}\n","import axios, { parseAxiosError } from '@/portainer/services/axios';\nimport { type EnvironmentGroupId } from '@/portainer/environment-groups/types';\nimport { type TagId } from '@/portainer/tags/types';\nimport { UserId } from '@/portainer/users/types';\nimport { TeamId } from '@/portainer/teams/types';\n\nimport type {\n Environment,\n EnvironmentId,\n EnvironmentType,\n EnvironmentSecuritySettings,\n EnvironmentStatus,\n} from '../types';\n\nimport { buildUrl } from './utils';\n\nexport interface EnvironmentsQueryParams {\n search?: string;\n types?: EnvironmentType[] | readonly EnvironmentType[];\n tagIds?: TagId[];\n endpointIds?: EnvironmentId[];\n tagsPartialMatch?: boolean;\n groupIds?: EnvironmentGroupId[];\n status?: EnvironmentStatus[];\n edgeDevice?: boolean;\n edgeDeviceUntrusted?: boolean;\n provisioned?: boolean;\n name?: string;\n agentVersions?: string[];\n}\n\nexport interface GetEnvironmentsOptions {\n start?: number;\n limit?: number;\n sort?: { by?: string; order?: 'asc' | 'desc' };\n query?: EnvironmentsQueryParams;\n}\n\nexport async function getEnvironments(\n {\n start,\n limit,\n sort = { by: '', order: 'asc' },\n query = {},\n }: GetEnvironmentsOptions = { query: {} }\n) {\n if (query.tagIds && query.tagIds.length === 0) {\n return { totalCount: 0, value: [] };\n }\n\n const url = buildUrl();\n\n const params: Record = {\n start,\n limit,\n sort: sort.by,\n order: sort.order,\n ...query,\n };\n\n try {\n const response = await axios.get(url, { params });\n const totalCount = response.headers['x-total-count'];\n const totalAvailable = response.headers['x-total-available'];\n\n return {\n totalCount: parseInt(totalCount, 10),\n value: response.data,\n totalAvailable: parseInt(totalAvailable, 10),\n };\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function getAgentVersions() {\n try {\n const response = await axios.get(\n buildUrl(undefined, 'agent_versions')\n );\n return response.data;\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function getEndpoint(id: EnvironmentId) {\n try {\n const { data: endpoint } = await axios.get(buildUrl(id));\n return endpoint;\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function snapshotEndpoints() {\n try {\n await axios.post(buildUrl(undefined, 'snapshot'));\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function snapshotEndpoint(id: EnvironmentId) {\n try {\n await axios.post(buildUrl(id, 'snapshot'));\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function endpointsByGroup(\n groupId: EnvironmentGroupId,\n start: number,\n limit: number,\n query: Omit\n) {\n return getEnvironments({\n start,\n limit,\n query: { groupIds: [groupId], ...query },\n });\n}\n\nexport async function disassociateEndpoint(id: EnvironmentId) {\n try {\n await axios.delete(buildUrl(id, 'association'));\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\ninterface UpdatePayload {\n TLSCACert?: File;\n TLSCert?: File;\n TLSKey?: File;\n\n Name: string;\n PublicURL: string;\n GroupID: EnvironmentGroupId;\n TagIds: TagId[];\n\n EdgeCheckinInterval: number;\n\n TLS: boolean;\n TLSSkipVerify: boolean;\n TLSSkipClientVerify: boolean;\n AzureApplicationID: string;\n AzureTenantID: string;\n AzureAuthenticationKey: string;\n}\n\nasync function uploadTLSFilesForEndpoint(\n id: EnvironmentId,\n tlscaCert?: File,\n tlsCert?: File,\n tlsKey?: File\n) {\n await Promise.all([\n uploadCert('ca', tlscaCert),\n uploadCert('cert', tlsCert),\n uploadCert('key', tlsKey),\n ]);\n\n function uploadCert(type: 'ca' | 'cert' | 'key', cert?: File) {\n if (!cert) {\n return null;\n }\n try {\n return axios.post(`upload/tls/${type}`, cert, {\n params: { folder: id },\n });\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n }\n}\n\nexport async function updateEndpoint(\n id: EnvironmentId,\n payload: UpdatePayload\n) {\n try {\n await uploadTLSFilesForEndpoint(\n id,\n payload.TLSCACert,\n payload.TLSCert,\n payload.TLSKey\n );\n\n const { data: endpoint } = await axios.put(\n buildUrl(id),\n payload\n );\n\n return endpoint;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to update environment');\n }\n}\n\nexport async function deleteEndpoint(id: EnvironmentId) {\n try {\n await axios.delete(buildUrl(id));\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function updatePoolAccess(\n id: EnvironmentId,\n resourcePool: string,\n usersToAdd: UserId[],\n teamsToAdd: TeamId[],\n usersToRemove: UserId[],\n teamsToRemove: TeamId[]\n) {\n try {\n await axios.put(`${buildUrl(id, 'pools')}/${resourcePool}/access`, {\n usersToAdd,\n teamsToAdd,\n usersToRemove,\n teamsToRemove,\n });\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function forceUpdateService(\n id: EnvironmentId,\n serviceID: string,\n pullImage: boolean\n) {\n try {\n await axios.put(buildUrl(id, 'forceupdateservice'), {\n serviceID,\n pullImage,\n });\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function updateSettings(\n id: EnvironmentId,\n settings: EnvironmentSecuritySettings\n) {\n try {\n await axios.put(buildUrl(id, 'settings'), settings);\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n","import { EnvironmentId } from '../types';\n\nexport function buildUrl(id?: EnvironmentId, action?: string) {\n let baseUrl = 'endpoints';\n if (id) {\n baseUrl += `/${id}`;\n }\n\n if (action) {\n baseUrl += `/${action}`;\n }\n\n return baseUrl;\n}\n\nexport function arrayToJson(arr?: Array) {\n if (!arr) {\n return '';\n }\n\n return JSON.stringify(arr);\n}\n\nexport function json2formData(json: Record) {\n const formData = new FormData();\n\n Object.entries(json).forEach(([key, value]) => {\n if (typeof value === 'undefined' || value === null) {\n return;\n }\n\n formData.append(key, value as string);\n });\n\n return formData;\n}\n","import { useStatus } from '@/portainer/services/api/status.service';\nimport { useSettings } from '@/portainer/settings/queries';\n\nexport function useAgentDetails() {\n const settingsQuery = useSettings();\n\n const versionQuery = useStatus((status) => status.Version);\n\n if (!versionQuery.isSuccess || !settingsQuery.isSuccess) {\n return null;\n }\n\n const agentVersion = versionQuery.data;\n\n return {\n agentVersion,\n agentSecret: settingsQuery.data.AgentSecret,\n useEdgeAsyncMode: settingsQuery.data.Edge.AsyncMode,\n };\n}\n","import { useQuery } from 'react-query';\n\nimport { getEndpoint } from '@/portainer/environments/environment.service';\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { withError } from '@/react-tools/react-query';\n\nexport function useEnvironment(id?: EnvironmentId) {\n return useQuery(['environments', id], () => (id ? getEndpoint(id) : null), {\n ...withError('Failed loading environment'),\n staleTime: 50,\n enabled: !!id,\n });\n}\n","import { useQuery } from 'react-query';\n\nimport { withError } from '@/react-tools/react-query';\n\nimport { EnvironmentStatus } from '../types';\nimport {\n EnvironmentsQueryParams,\n getEnvironments,\n} from '../environment.service';\n\nexport const ENVIRONMENTS_POLLING_INTERVAL = 30000; // in ms\n\nexport interface Query extends EnvironmentsQueryParams {\n page?: number;\n pageLimit?: number;\n sort?: string;\n order?: 'asc' | 'desc';\n}\n\ntype GetEndpointsResponse = Awaited>;\n\nexport function refetchIfAnyOffline(data?: GetEndpointsResponse) {\n if (!data) {\n return false;\n }\n\n const hasOfflineEnvironment = data.value.some(\n (env) => env.Status === EnvironmentStatus.Down\n );\n\n if (!hasOfflineEnvironment) {\n return false;\n }\n\n return ENVIRONMENTS_POLLING_INTERVAL;\n}\n\nexport function useEnvironmentList(\n { page = 1, pageLimit = 100, sort, order, ...query }: Query = {},\n refetchInterval?:\n | number\n | false\n | ((data?: GetEndpointsResponse) => false | number),\n staleTime = 0,\n enabled = true\n) {\n const { isLoading, data } = useQuery(\n [\n 'environments',\n {\n page,\n pageLimit,\n sort,\n order,\n ...query,\n },\n ],\n async () => {\n const start = (page - 1) * pageLimit + 1;\n return getEnvironments({\n start,\n limit: pageLimit,\n sort: { by: sort, order },\n query,\n });\n },\n {\n staleTime,\n keepPreviousData: true,\n refetchInterval,\n enabled,\n ...withError('Failure retrieving environments'),\n }\n );\n\n return {\n isLoading,\n environments: data ? data.value : [],\n totalCount: data ? data.totalCount : 0,\n totalAvailable: data ? data.totalAvailable : 0,\n };\n}\n","import { TagId } from '@/portainer/tags/types';\nimport { EnvironmentGroupId } from '@/portainer/environment-groups/types';\nimport { Job } from '@/nomad/types';\n\nexport type EnvironmentId = number;\n\nexport enum EnvironmentType {\n // Docker represents an environment(endpoint) connected to a Docker environment(endpoint)\n Docker = 1,\n // AgentOnDocker represents an environment(endpoint) connected to a Portainer agent deployed on a Docker environment(endpoint)\n AgentOnDocker,\n // Azure represents an environment(endpoint) connected to an Azure environment(endpoint)\n Azure,\n // EdgeAgentOnDocker represents an environment(endpoint) connected to an Edge agent deployed on a Docker environment(endpoint)\n EdgeAgentOnDocker,\n // KubernetesLocal represents an environment(endpoint) connected to a local Kubernetes environment(endpoint)\n KubernetesLocal,\n // AgentOnKubernetes represents an environment(endpoint) connected to a Portainer agent deployed on a Kubernetes environment(endpoint)\n AgentOnKubernetes,\n // EdgeAgentOnKubernetes represents an environment(endpoint) connected to an Edge agent deployed on a Kubernetes environment(endpoint)\n EdgeAgentOnKubernetes,\n // EdgeAgentOnNomad represents an environment(endpoint) connected to an Edge agent deployed on a Nomad environment(endpoint)\n EdgeAgentOnNomad,\n}\n\nexport const EdgeTypes = [\n EnvironmentType.EdgeAgentOnDocker,\n EnvironmentType.EdgeAgentOnKubernetes,\n EnvironmentType.EdgeAgentOnNomad,\n] as const;\n\nexport enum EnvironmentStatus {\n Up = 1,\n Down,\n}\n\nexport interface DockerSnapshot {\n TotalCPU: number;\n TotalMemory: number;\n NodeCount: number;\n ImageCount: number;\n VolumeCount: number;\n RunningContainerCount: number;\n StoppedContainerCount: number;\n HealthyContainerCount: number;\n UnhealthyContainerCount: number;\n Time: number;\n StackCount: number;\n ServiceCount: number;\n Swarm: boolean;\n DockerVersion: string;\n GpuUseAll: boolean;\n GpuUseList: string[];\n}\n\nexport interface KubernetesSnapshot {\n KubernetesVersion: string;\n TotalCPU: number;\n TotalMemory: number;\n Time: number;\n NodeCount: number;\n}\n\nexport interface KubernetesSettings {\n Snapshots?: KubernetesSnapshot[] | null;\n}\n\nexport interface NomadSnapshot {\n JobCount: number;\n GroupCount: number;\n TaskCount: number;\n RunningTaskCount: number;\n NodeCount: number;\n Time: number;\n Jobs: Job[];\n}\n\nexport interface NomadSettings {\n Snapshots: NomadSnapshot[];\n}\n\nexport type EnvironmentEdge = {\n AsyncMode: boolean;\n PingInterval: number;\n SnapshotInterval: number;\n CommandInterval: number;\n};\n\nexport interface EnvironmentSecuritySettings {\n // Whether non-administrator should be able to use bind mounts when creating containers\n allowBindMountsForRegularUsers: boolean;\n // Whether non-administrator should be able to use privileged mode when creating containers\n allowPrivilegedModeForRegularUsers: boolean;\n // Whether non-administrator should be able to browse volumes\n allowVolumeBrowserForRegularUsers: boolean;\n // Whether non-administrator should be able to use the host pid\n allowHostNamespaceForRegularUsers: boolean;\n // Whether non-administrator should be able to use device mapping\n allowDeviceMappingForRegularUsers: boolean;\n // Whether non-administrator should be able to manage stacks\n allowStackManagementForRegularUsers: boolean;\n // Whether non-administrator should be able to use container capabilities\n allowContainerCapabilitiesForRegularUsers: boolean;\n // Whether non-administrator should be able to use sysctl settings\n allowSysctlSettingForRegularUsers: boolean;\n // Whether host management features are enabled\n enableHostManagementFeatures: boolean;\n}\n\nexport type Environment = {\n Agent: { Version: string };\n Id: EnvironmentId;\n Type: EnvironmentType;\n TagIds: TagId[];\n GroupId: EnvironmentGroupId;\n EdgeID?: string;\n EdgeKey: string;\n EdgeCheckinInterval?: number;\n QueryDate?: number;\n LastCheckInDate?: number;\n Name: string;\n Status: EnvironmentStatus;\n URL: string;\n Snapshots: DockerSnapshot[];\n Kubernetes: KubernetesSettings;\n Nomad: NomadSettings;\n PublicURL?: string;\n IsEdgeDevice?: boolean;\n UserTrusted: boolean;\n AMTDeviceGUID?: string;\n Edge: EnvironmentEdge;\n SecuritySettings: EnvironmentSecuritySettings;\n Gpus: { name: string; value: string }[];\n};\n\n/**\n * TS reference of endpoint_create.go#EndpointCreationType iota\n */\nexport enum EnvironmentCreationTypes {\n LocalDockerEnvironment = 1,\n AgentEnvironment,\n AzureEnvironment,\n EdgeAgentEnvironment,\n LocalKubernetesEnvironment,\n KubeConfigEnvironment,\n}\n\nexport enum PlatformType {\n Docker,\n Kubernetes,\n Azure,\n Nomad,\n}\n","import { Environment, EnvironmentType, PlatformType } from './types';\n\nexport function getPlatformType(envType: EnvironmentType) {\n switch (envType) {\n case EnvironmentType.KubernetesLocal:\n case EnvironmentType.AgentOnKubernetes:\n case EnvironmentType.EdgeAgentOnKubernetes:\n return PlatformType.Kubernetes;\n case EnvironmentType.Docker:\n case EnvironmentType.AgentOnDocker:\n case EnvironmentType.EdgeAgentOnDocker:\n return PlatformType.Docker;\n case EnvironmentType.Azure:\n return PlatformType.Azure;\n case EnvironmentType.EdgeAgentOnNomad:\n return PlatformType.Nomad;\n default:\n throw new Error(`Environment Type ${envType} is not supported`);\n }\n}\n\nexport function isDockerEnvironment(envType: EnvironmentType) {\n return getPlatformType(envType) === PlatformType.Docker;\n}\n\nexport function isKubernetesEnvironment(envType: EnvironmentType) {\n return getPlatformType(envType) === PlatformType.Kubernetes;\n}\n\nexport function getPlatformTypeName(envType: EnvironmentType): string {\n return PlatformType[getPlatformType(envType)];\n}\n\nexport function isNomadEnvironment(envType: EnvironmentType) {\n return getPlatformType(envType) === PlatformType.Nomad;\n}\n\nexport function isAgentEnvironment(envType: EnvironmentType) {\n return (\n isEdgeEnvironment(envType) ||\n [EnvironmentType.AgentOnDocker, EnvironmentType.AgentOnKubernetes].includes(\n envType\n )\n );\n}\n\nexport function isEdgeEnvironment(envType: EnvironmentType) {\n return [\n EnvironmentType.EdgeAgentOnDocker,\n EnvironmentType.EdgeAgentOnKubernetes,\n EnvironmentType.EdgeAgentOnNomad,\n ].includes(envType);\n}\n\nexport function isUnassociatedEdgeEnvironment(env: Environment) {\n return isEdgeEnvironment(env.Type) && !env.EdgeID;\n}\n\nexport function getDashboardRoute(environment: Environment) {\n if (isEdgeEnvironment(environment.Type) && !environment.EdgeID) {\n return 'portainer.endpoints.endpoint';\n }\n\n const platform = getPlatformType(environment.Type);\n\n switch (platform) {\n case PlatformType.Azure:\n return 'azure.dashboard';\n case PlatformType.Docker:\n return 'docker.dashboard';\n case PlatformType.Kubernetes:\n return 'kubernetes.dashboard';\n case PlatformType.Nomad:\n return 'nomad.dashboard';\n default:\n throw new Error(`Unsupported platform ${platform}`);\n }\n}\n","export default class PortainerError extends Error {\n err?: Error;\n\n constructor(msg: string, err?: Error) {\n super(msg);\n this.err = err;\n }\n}\n","export enum Edition {\n CE,\n BE,\n}\n\nexport enum FeatureState {\n HIDDEN,\n VISIBLE,\n LIMITED_BE,\n}\n\nexport enum FeatureId {\n K8S_RESOURCE_POOL_LB_QUOTA = 'k8s-resourcepool-Ibquota',\n K8S_RESOURCE_POOL_STORAGE_QUOTA = 'k8s-resourcepool-storagequota',\n K8S_CREATE_FROM_KUBECONFIG = 'k8s-create-from-kubeconfig',\n KAAS_PROVISIONING = 'kaas-provisioning',\n NOMAD = 'nomad',\n RBAC_ROLES = 'rbac-roles',\n REGISTRY_MANAGEMENT = 'registry-management',\n K8S_SETUP_DEFAULT = 'k8s-setup-default',\n S3_BACKUP_SETTING = 's3-backup-setting',\n HIDE_INTERNAL_AUTHENTICATION_PROMPT = 'hide-internal-authentication-prompt',\n TEAM_MEMBERSHIP = 'team-membership',\n HIDE_INTERNAL_AUTH = 'hide-internal-auth',\n EXTERNAL_AUTH_LDAP = 'external-auth-ldap',\n ACTIVITY_AUDIT = 'activity-audit',\n FORCE_REDEPLOYMENT = 'force-redeployment',\n HIDE_AUTO_UPDATE_WINDOW = 'hide-auto-update-window',\n STACK_PULL_IMAGE = 'stack-pull-image',\n STACK_WEBHOOK = 'stack-webhook',\n CONTAINER_WEBHOOK = 'container-webhook',\n POD_SECURITY_POLICY_CONSTRAINT = 'pod-security-policy-constraint',\n HIDE_DOCKER_HUB_ANONYMOUS = 'hide-docker-hub-anonymous',\n}\n","import { Edition, FeatureId, FeatureState } from './enums';\n\nexport const isBE = process.env.PORTAINER_EDITION === 'BE';\ninterface ServiceState {\n currentEdition: Edition;\n features: Record;\n}\n\nconst state: ServiceState = {\n currentEdition: Edition.CE,\n features: >{},\n};\n\nexport async function init(edition: Edition) {\n // will be loaded on runtime\n const currentEdition = edition;\n const features = {\n [FeatureId.K8S_RESOURCE_POOL_LB_QUOTA]: Edition.BE,\n [FeatureId.K8S_RESOURCE_POOL_STORAGE_QUOTA]: Edition.BE,\n [FeatureId.K8S_CREATE_FROM_KUBECONFIG]: Edition.BE,\n [FeatureId.KAAS_PROVISIONING]: Edition.BE,\n [FeatureId.NOMAD]: Edition.BE,\n [FeatureId.ACTIVITY_AUDIT]: Edition.BE,\n [FeatureId.EXTERNAL_AUTH_LDAP]: Edition.BE,\n [FeatureId.HIDE_INTERNAL_AUTH]: Edition.BE,\n [FeatureId.HIDE_INTERNAL_AUTHENTICATION_PROMPT]: Edition.BE,\n [FeatureId.K8S_SETUP_DEFAULT]: Edition.BE,\n [FeatureId.RBAC_ROLES]: Edition.BE,\n [FeatureId.REGISTRY_MANAGEMENT]: Edition.BE,\n [FeatureId.S3_BACKUP_SETTING]: Edition.BE,\n [FeatureId.TEAM_MEMBERSHIP]: Edition.BE,\n [FeatureId.FORCE_REDEPLOYMENT]: Edition.BE,\n [FeatureId.HIDE_AUTO_UPDATE_WINDOW]: Edition.BE,\n [FeatureId.STACK_PULL_IMAGE]: Edition.BE,\n [FeatureId.STACK_WEBHOOK]: Edition.BE,\n [FeatureId.CONTAINER_WEBHOOK]: Edition.BE,\n [FeatureId.POD_SECURITY_POLICY_CONSTRAINT]: Edition.BE,\n [FeatureId.HIDE_DOCKER_HUB_ANONYMOUS]: Edition.BE,\n };\n\n state.currentEdition = currentEdition;\n state.features = features;\n}\n\nexport function selectShow(featureId?: FeatureId) {\n if (!featureId) {\n return FeatureState.VISIBLE;\n }\n\n if (!state.features[featureId]) {\n return FeatureState.HIDDEN;\n }\n\n if (state.features[featureId] <= state.currentEdition) {\n return FeatureState.VISIBLE;\n }\n\n if (state.features[featureId] === Edition.BE) {\n return FeatureState.LIMITED_BE;\n }\n\n return FeatureState.HIDDEN;\n}\n\nexport function isLimitedToBE(featureId?: FeatureId) {\n return selectShow(featureId) === FeatureState.LIMITED_BE;\n}\n","/**\n * runs the provided promises in a sequence, and returns a promise that resolves when all promises have resolved\n *\n * @param promises a list of functions that return promises\n */\nexport function promiseSequence(promises: (() => Promise)[]) {\n return promises.reduce(\n (promise, nextPromise) => promise.then(() => nextPromise()),\n Promise.resolve(undefined as unknown as T)\n );\n}\n","export function pluralize(val: number, word: string, plural = `${word}s`) {\n return [1, -1].includes(Number(val)) ? word : plural;\n}\n\nexport function addPlural(value: number, word: string, plural = `${word}s`) {\n return `${value} ${pluralize(value, word, plural)}`;\n}\n","import clsx from 'clsx';\n\nimport { isoDateFromTimestamp } from '@/portainer/filters/filters';\nimport { Environment } from '@/portainer/environments/types';\nimport { usePublicSettings } from '@/portainer/settings/queries';\nimport { PublicSettingsViewModel } from '@/portainer/models/settings';\n\ninterface Props {\n showLastCheckInDate?: boolean;\n environment: Environment;\n}\n\nexport function EdgeIndicator({\n environment,\n\n showLastCheckInDate = false,\n}: Props) {\n const associated = !!environment.EdgeID;\n\n const isValid = useHasHeartbeat(environment, associated);\n\n if (isValid === null) {\n return null;\n }\n\n if (!associated) {\n return (\n \n \n associated\n \n \n );\n }\n\n return (\n \n \n heartbeat\n \n\n {showLastCheckInDate && !!environment.LastCheckInDate && (\n \n {isoDateFromTimestamp(environment.LastCheckInDate)}\n \n )}\n \n );\n}\n\nfunction useHasHeartbeat(environment: Environment, associated: boolean) {\n const settingsQuery = usePublicSettings({ enabled: associated });\n\n if (!associated) {\n return false;\n }\n\n const { LastCheckInDate, QueryDate } = environment;\n\n const settings = settingsQuery.data;\n\n if (!settings) {\n return null;\n }\n\n const checkInInterval = getCheckinInterval(environment, settings);\n\n if (checkInInterval && QueryDate && LastCheckInDate) {\n return QueryDate - LastCheckInDate <= checkInInterval * 2 + 20;\n }\n\n return false;\n}\n\nfunction getCheckinInterval(\n environment: Environment,\n settings: PublicSettingsViewModel\n) {\n const asyncMode = environment.Edge.AsyncMode;\n\n if (asyncMode) {\n const intervals = [\n environment.Edge.PingInterval > 0\n ? environment.Edge.PingInterval\n : settings.Edge.PingInterval,\n environment.Edge.SnapshotInterval > 0\n ? environment.Edge.SnapshotInterval\n : settings.Edge.SnapshotInterval,\n environment.Edge.CommandInterval > 0\n ? environment.Edge.CommandInterval\n : settings.Edge.CommandInterval,\n ].filter((n) => n > 0);\n\n return intervals.length > 0 ? Math.min(...intervals) : 60;\n }\n\n if (\n !environment.EdgeCheckinInterval ||\n environment.EdgeCheckinInterval === 0\n ) {\n return settings.Edge.CheckinInterval;\n }\n\n return environment.EdgeCheckinInterval;\n}\n","import { createContext, PropsWithChildren, useContext } from 'react';\n\nimport { useLocalStorage } from '@/portainer/hooks/useLocalStorage';\n\ninterface UIState {\n dismissedInfoPanels: Record;\n dismissedInfoHash: string;\n}\n\ntype UIStateService = [UIState, (state: UIState) => void];\n\nconst Context = createContext(null);\n\nexport function useUIState() {\n const context = useContext(Context);\n\n if (context == null) {\n throw new Error('Should be nested under a UIStateProvider component');\n }\n\n return context;\n}\n\nexport function UIStateProvider({ children }: PropsWithChildren) {\n const service = useLocalStorage('UI_STATE', {} as UIState);\n\n return {children};\n}\n","import { useEffect, useState } from 'react';\n\nexport function useDebounce(value: T, delay = 500): T {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const timer = setTimeout(() => setDebouncedValue(value), delay);\n\n return () => {\n clearTimeout(timer);\n };\n }, [value, delay]);\n\n return debouncedValue;\n}\n","import { useCurrentStateAndParams } from '@uirouter/react';\n\nimport { EnvironmentId } from '../environments/types';\n\nexport function useEnvironmentId(): EnvironmentId {\n const {\n params: { endpointId: environmentId },\n } = useCurrentStateAndParams();\n\n if (!environmentId) {\n throw new Error('endpointId url param is required');\n }\n\n return parseInt(environmentId, 10);\n}\n","import { useState, useCallback, useMemo } from 'react';\n\nconst localStoragePrefix = 'portainer';\n\nexport function keyBuilder(key: string) {\n return `${localStoragePrefix}.${key}`;\n}\n\nexport function useLocalStorage(\n key: string,\n defaultValue: T,\n storage = localStorage\n): [T, (value: T) => void] {\n const [value, setValue] = useState(get(key, defaultValue, storage));\n\n const handleChange = useCallback(\n (value) => {\n setValue(value);\n set(key, value, storage);\n },\n [key, storage]\n );\n\n return useMemo(() => [value, handleChange], [value, handleChange]);\n}\n\nexport function get(\n key: string,\n defaultValue: T,\n storage = localStorage\n): T {\n const value = storage.getItem(keyBuilder(key));\n if (!value) {\n return defaultValue;\n }\n\n try {\n return JSON.parse(value);\n } catch (e) {\n return defaultValue;\n }\n}\n\nexport function set(key: string, value: T, storage = localStorage) {\n storage.setItem(keyBuilder(key), JSON.stringify(value));\n}\n","import jwtDecode from 'jwt-decode';\nimport { useCurrentStateAndParams } from '@uirouter/react';\nimport {\n createContext,\n ReactNode,\n useContext,\n useEffect,\n useState,\n useMemo,\n PropsWithChildren,\n} from 'react';\n\nimport { isAdmin } from '@/portainer/users/user.helpers';\n\nimport { getUser } from '../users/user.service';\nimport { User, UserId } from '../users/types';\nimport { EnvironmentId } from '../environments/types';\n\nimport { useLocalStorage } from './useLocalStorage';\n\ninterface State {\n user?: User;\n}\n\nexport const UserContext = createContext(null);\n\nexport function useUser() {\n const context = useContext(UserContext);\n\n if (context === null) {\n throw new Error('should be nested under UserProvider');\n }\n\n const { user } = context;\n if (typeof user === 'undefined') {\n throw new Error('should be authenticated');\n }\n\n return useMemo(\n () => ({\n user,\n isAdmin: isAdmin(user),\n }),\n [user]\n );\n}\n\nexport function useAuthorizations(\n authorizations: string | string[],\n forceEnvironmentId?: EnvironmentId,\n adminOnlyCE = false\n) {\n const { user } = useUser();\n const {\n params: { endpointId },\n } = useCurrentStateAndParams();\n\n if (!user) {\n return false;\n }\n\n return hasAuthorizations(\n user,\n authorizations,\n forceEnvironmentId || endpointId,\n adminOnlyCE\n );\n}\n\nexport function isEnvironmentAdmin(\n user: User,\n environmentId: EnvironmentId,\n adminOnlyCE = true\n) {\n return hasAuthorizations(\n user,\n ['EndpointResourcesAccess'],\n environmentId,\n adminOnlyCE\n );\n}\n\nexport function hasAuthorizations(\n user: User,\n authorizations: string | string[],\n environmentId?: EnvironmentId,\n adminOnlyCE = false\n) {\n const authorizationsArray =\n typeof authorizations === 'string' ? [authorizations] : authorizations;\n\n if (authorizationsArray.length === 0) {\n return true;\n }\n\n if (process.env.PORTAINER_EDITION === 'CE') {\n return !adminOnlyCE || isAdmin(user);\n }\n\n if (!environmentId) {\n return false;\n }\n\n if (isAdmin(user)) {\n return true;\n }\n\n if (\n !user.EndpointAuthorizations ||\n !user.EndpointAuthorizations[environmentId]\n ) {\n return false;\n }\n\n const userEndpointAuthorizations = user.EndpointAuthorizations[environmentId];\n return authorizationsArray.some(\n (authorization) => userEndpointAuthorizations[authorization]\n );\n}\n\ninterface AuthorizedProps {\n authorizations: string | string[];\n environmentId?: EnvironmentId;\n adminOnlyCE?: boolean;\n}\n\nexport function Authorized({\n authorizations,\n environmentId,\n adminOnlyCE = false,\n children,\n}: PropsWithChildren) {\n const isAllowed = useAuthorizations(\n authorizations,\n environmentId,\n adminOnlyCE\n );\n\n return isAllowed ? <>{children} : null;\n}\n\ninterface UserProviderProps {\n children: ReactNode;\n}\n\nexport function UserProvider({ children }: UserProviderProps) {\n const [jwt] = useLocalStorage('JWT', '');\n const [user, setUser] = useState();\n\n useEffect(() => {\n if (jwt !== '') {\n const tokenPayload = jwtDecode(jwt) as { id: number };\n\n loadUser(tokenPayload.id);\n }\n }, [jwt]);\n\n const providerState = useMemo(() => ({ user }), [user]);\n\n if (jwt === '') {\n return null;\n }\n\n if (!providerState.user) {\n return null;\n }\n\n return (\n \n {children}\n \n );\n\n async function loadUser(id: UserId) {\n const user = await getUser(id);\n setUser(user);\n }\n}\n\nexport function useIsAdmin() {\n const { user } = useUser();\n return !!user && isAdmin(user);\n}\n","import axios, { parseAxiosError } from 'Portainer/services/axios';\n\nimport { FDOConfiguration, DeviceConfiguration, Profile } from './model';\n\nconst BASE_URL = '/fdo';\n\nexport async function configureFDO(formValues: FDOConfiguration) {\n try {\n await axios.post(`${BASE_URL}/configure`, formValues);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to configure FDO');\n }\n}\n\nexport async function configureDevice(\n deviceId: string,\n deviceConfig: DeviceConfiguration\n) {\n try {\n await axios.post(`${BASE_URL}/configure/${deviceId}`, deviceConfig);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to configure device');\n }\n}\n\nexport async function createProfile(\n name: string,\n method: string,\n profileFileContent: string\n) {\n const payload = {\n name,\n profileFileContent,\n };\n try {\n await axios.post(`${BASE_URL}/profiles`, payload, {\n params: { method },\n });\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to create profile');\n }\n}\n\nexport async function getProfiles() {\n try {\n const { data: profiles } = await axios.get(\n `${BASE_URL}/profiles`\n );\n return profiles;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to retrieve the profiles');\n }\n}\n\nexport async function getProfile(profileId: number) {\n try {\n const { data: profile } = await axios.get(\n `${BASE_URL}/profiles/${profileId}`\n );\n return profile;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to retrieve profile');\n }\n}\n\nexport async function deleteProfile(profileId: number) {\n try {\n await axios.delete(`${BASE_URL}/profiles/${profileId}`);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to delete profile');\n }\n}\n\nexport async function updateProfile(\n id: number,\n name: string,\n profileFileContent: string\n) {\n const payload = {\n name,\n profileFileContent,\n };\n try {\n await axios.put(`${BASE_URL}/profiles/${id}`, payload);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to update profile');\n }\n}\n\nexport async function duplicateProfile(id: number) {\n try {\n const { data: profile } = await axios.post(\n `${BASE_URL}/profiles/${id}/duplicate`\n );\n return profile;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to duplicate profile');\n }\n}\n","import axios, { parseAxiosError } from 'Portainer/services/axios';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\n\nimport {\n OpenAMTConfiguration,\n AMTInformation,\n AuthorizationResponse,\n Device,\n DeviceFeatures,\n} from './model';\n\nconst BASE_URL = '/open_amt';\n\nexport async function configureAMT(formValues: OpenAMTConfiguration) {\n try {\n await axios.post(`${BASE_URL}/configure`, formValues);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to configure AMT');\n }\n}\n\nexport async function getAMTInfo(environmentId: EnvironmentId) {\n try {\n const { data: amtInformation } = await axios.get(\n `${BASE_URL}/${environmentId}/info`\n );\n\n return amtInformation;\n } catch (e) {\n throw parseAxiosError(\n e as Error,\n 'Unable to retrieve environment information'\n );\n }\n}\n\nexport async function activateDevice(environmentId: EnvironmentId) {\n try {\n await axios.post(`${BASE_URL}/${environmentId}/activate`);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to activate device');\n }\n}\n\nexport async function getDevices(environmentId: EnvironmentId) {\n try {\n const { data: devices } = await axios.get(\n `${BASE_URL}/${environmentId}/devices`\n );\n\n return devices;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to retrieve device information');\n }\n}\n\nexport async function executeDeviceAction(\n environmentId: EnvironmentId,\n deviceGUID: string,\n action: string\n) {\n try {\n const actionPayload = { action };\n await axios.post(\n `${BASE_URL}/${environmentId}/devices/${deviceGUID}/action`,\n actionPayload\n );\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to execute device action');\n }\n}\n\nexport async function enableDeviceFeatures(\n environmentId: EnvironmentId,\n deviceGUID: string,\n features: DeviceFeatures\n) {\n try {\n const featuresPayload = { features };\n const { data: authorizationResponse } =\n await axios.post(\n `${BASE_URL}/${environmentId}/devices/${deviceGUID}/features`,\n featuresPayload\n );\n return authorizationResponse;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to enable device features');\n }\n}\n","import _ from 'lodash';\nimport { AxiosError } from 'axios';\n\nimport axios from '@/portainer/services/axios';\n\nimport { License, LicenseInfo } from './types';\n\ntype Listener = (info: LicenseInfo) => void;\n\ninterface Store {\n data?: LicenseInfo;\n lastLoaded?: number;\n invalidated: boolean;\n listeners: Listener[];\n}\n\nconst store: Store = {\n listeners: [],\n invalidated: true,\n};\n\nexport async function getLicenses() {\n try {\n const { data } = await axios.get(buildUrl());\n\n return data;\n } catch (e) {\n const axiosError = e as AxiosError;\n throw new Error(axiosError.response?.data.message);\n }\n}\n\ninterface AttachResponse {\n licenses: License[];\n failedKeys: Record;\n}\n\nexport async function attachLicense(licenseKeys: string[]) {\n try {\n const { data } = await axios.post(buildUrl(), {\n licenseKeys,\n });\n\n if (Object.keys(data.failedKeys).length === licenseKeys.length) {\n return data;\n }\n\n store.invalidated = true;\n getLicenseInfo();\n return data;\n } catch (e) {\n const axiosError = e as AxiosError;\n if (axiosError.response?.status === 401) {\n throw new Error(\n 'Your session has expired, please refresh the browser and log in again.'\n );\n }\n throw new Error(axiosError.response?.data.message);\n }\n}\n\ninterface RemoveResponse {\n failedKeys: Record;\n}\n\nexport async function removeLicense(licenseKeys: string[]) {\n try {\n const { data } = await axios.post(buildUrl('remove'), {\n licenseKeys,\n });\n if (Object.keys(data.failedKeys).length === licenseKeys.length) {\n return data;\n }\n\n store.invalidated = true;\n getLicenseInfo();\n return data;\n } catch (e) {\n const axiosError = e as AxiosError;\n throw new Error(axiosError.response?.data.message);\n }\n}\n\nexport function resetState() {\n store.invalidated = true;\n store.data = undefined;\n}\n\nexport async function getLicenseInfo() {\n try {\n if (\n store.data &&\n !store.invalidated &&\n store.lastLoaded &&\n Math.abs(store.lastLoaded - Date.now()) < 1000 * 30\n ) {\n return store.data;\n }\n\n const { data: info } = await axios.get(buildUrl('info'));\n store.data = info;\n store.lastLoaded = Date.now();\n store.invalidated = false;\n store.listeners.forEach((listener) => listener(info));\n\n return info;\n } catch (e) {\n const axiosError = e as AxiosError;\n throw new Error(axiosError.response?.data.message);\n }\n}\n\nexport function subscribe(listener: Listener) {\n store.listeners.push(listener);\n}\n\nexport function unsubscribe(listener: Listener) {\n _.remove(store.listeners, listener);\n}\n\n/* @ngInject */\nexport function LicenseService() {\n return {\n licenses: getLicenses,\n attach: attachLicense,\n remove: removeLicense,\n info: getLicenseInfo,\n subscribe,\n unsubscribe,\n resetState,\n };\n}\n\nfunction buildUrl(action = '') {\n let url = 'licenses';\n\n if (action) {\n url += `/${action}`;\n }\n return url;\n}\n","// matches https://github.com/portainer/liblicense/blob/master/liblicense.go#L66-L74\nexport enum Edition {\n CE = 1,\n BE,\n EE,\n}\n\n// matches https://github.com/portainer/liblicense/blob/master/liblicense.go#L60-L64\n\nexport enum LicenseType {\n Trial = 1,\n Subscription,\n Essentials,\n}\n\n// matches https://github.com/portainer/liblicense/blob/master/liblicense.go#L35-L50\nexport interface License {\n id: string;\n company: string;\n created: number;\n email: string;\n expiresAfter: number;\n licenseKey: string;\n nodes: number;\n productEdition: Edition;\n revoked: boolean;\n revokedAt: number;\n type: LicenseType;\n version: number;\n reference: string;\n expiresAt: number;\n}\n\n// matches https://github.com/portainer/portainer-ee/blob/c4575bf528583fe1682267db4ee40a11a905f611/api/portainer.go#L588-L597\nexport interface LicenseInfo {\n productEdition: Edition;\n company: string;\n email: string;\n createdAt: number;\n expiresAt: number;\n nodes: number;\n type: LicenseType;\n valid: boolean;\n enforcedAt: number;\n enforced: boolean;\n}\n","import { useQuery } from 'react-query';\n\nimport { error as notifyError } from '@/portainer/services/notifications';\n\nimport { getNodesCount } from '../services/api/status.service';\n\nimport { getLicenseInfo } from './license.service';\nimport { LicenseType, LicenseInfo } from './types';\n\nexport function useLicenseInfo() {\n const { isLoading, data: info } = useQuery(\n 'licenseInfo',\n () => getLicenseInfo(),\n {\n onError(error) {\n notifyError('Failure', error as Error, 'Failed to get license info');\n },\n }\n );\n\n return { isLoading, info };\n}\n\nfunction useNodesCounts() {\n const { isLoading, data } = useQuery(\n ['status', 'nodes'],\n () => getNodesCount(),\n {\n onError(error) {\n notifyError('Failure', error as Error, 'Failed to get nodes count');\n },\n }\n );\n\n return { nodesCount: data || 0, isLoading };\n}\n\nexport function useIntegratedLicenseInfo() {\n const { isLoading: isLoadingNodes, nodesCount } = useNodesCounts();\n\n const { isLoading: isLoadingLicense, info } = useLicenseInfo();\n if (\n isLoadingLicense ||\n isLoadingNodes ||\n !info ||\n info.type === LicenseType.Trial\n ) {\n return null;\n }\n\n return { licenseInfo: info as LicenseInfo, usedNodes: nodesCount };\n}\n","import { useQuery } from 'react-query';\n\nimport axios, { parseAxiosError } from '../axios';\n\nexport interface NodesCountResponse {\n nodes: number;\n}\n\nexport async function getNodesCount() {\n try {\n const { data } = await axios.get(buildUrl('nodes'));\n return data.nodes;\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\nexport interface StatusResponse {\n Edition: string;\n Version: string;\n InstanceID: string;\n}\n\nexport async function getStatus() {\n try {\n const { data } = await axios.get(buildUrl());\n\n data.Edition = 'Business Edition';\n\n return data;\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\nexport function useStatus(\n select?: (status: StatusResponse) => T\n) {\n return useQuery(['status'], () => getStatus(), { select });\n}\n\nexport interface VersionResponse {\n // Whether portainer has an update available\n UpdateAvailable: boolean;\n // The latest version available\n LatestVersion: string;\n ServerVersion: string;\n DatabaseVersion: string;\n Build: {\n BuildNumber: string;\n ImageTag: string;\n NodejsVersion: string;\n YarnVersion: string;\n WebpackVersion: string;\n GoVersion: string;\n };\n}\n\nexport async function getVersionStatus() {\n try {\n const { data } = await axios.get(buildUrl('version'));\n return data;\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\nexport function useVersionStatus() {\n return useQuery(['version'], () => getVersionStatus());\n}\n\nfunction buildUrl(action?: string) {\n let url = '/status';\n\n if (action) {\n url += `/${action}`;\n }\n\n return url;\n}\n","import axiosOrigin, { AxiosError, AxiosRequestConfig } from 'axios';\nimport { loadProgressBar } from 'axios-progress-bar';\nimport 'axios-progress-bar/dist/nprogress.css';\n\nimport PortainerError from '@/portainer/error';\nimport { get as localStorageGet } from '@/portainer/hooks/useLocalStorage';\n\nimport {\n portainerAgentManagerOperation,\n portainerAgentTargetHeader,\n} from './http-request.helper';\n\nconst axios = axiosOrigin.create({ baseURL: 'api' });\n\nexport default axios;\n\nloadProgressBar(undefined, axios);\n\naxios.interceptors.request.use(async (config) => {\n const newConfig = { headers: config.headers || {}, ...config };\n\n const jwt = localStorageGet('JWT', '');\n if (jwt) {\n newConfig.headers.Authorization = `Bearer ${jwt}`;\n }\n\n return newConfig;\n});\n\nexport function agentInterceptor(config: AxiosRequestConfig) {\n if (!config.url || !config.url.includes('/docker/')) {\n return config;\n }\n\n const newConfig = { headers: config.headers || {}, ...config };\n const target = portainerAgentTargetHeader();\n if (target) {\n newConfig.headers['X-PortainerAgent-Target'] = target;\n }\n\n if (portainerAgentManagerOperation()) {\n newConfig.headers['X-PortainerAgent-ManagerOperation'] = '1';\n }\n\n return newConfig;\n}\n\naxios.interceptors.request.use(agentInterceptor);\n\nexport function parseAxiosError(\n err: Error,\n msg = '',\n parseError = defaultErrorParser\n) {\n let resultErr = err;\n let resultMsg = msg;\n\n if ('isAxiosError' in err) {\n const { error, details } = parseError(err as AxiosError);\n resultErr = error;\n if (msg && details) {\n resultMsg = `${msg}: ${details}`;\n } else {\n resultMsg = msg || details;\n }\n }\n\n return new PortainerError(resultMsg, resultErr);\n}\n\nfunction defaultErrorParser(axiosError: AxiosError) {\n const message = axiosError.response?.data.message || '';\n const details = axiosError.response?.data.details || message;\n const error = new Error(message);\n return { error, details };\n}\n","interface Headers {\n agentTargetQueue: string[];\n agentManagerOperation: boolean;\n registryAuthentication?: string;\n agentTargetLastValue: string;\n}\n\nconst headers: Headers = {\n agentTargetQueue: [],\n agentManagerOperation: false,\n agentTargetLastValue: '',\n};\n\nexport function registryAuthenticationHeader() {\n return headers.registryAuthentication;\n}\n\nexport function setRegistryAuthenticationHeader(headerValue: string) {\n headers.registryAuthentication = headerValue;\n}\n\n// Due to the fact that async HTTP requests are decorated using an interceptor\n// we need to store and retrieve the headers using a first-in-first-out (FIFO) data structure.\n// Otherwise, sequential HTTP requests might end up using the same header value (incorrect in the case\n// of starting multiple containers on different nodes for example).\n// To prevent having to use the HttpRequestHelper.setPortainerAgentTargetHeader before EACH request,\n// we re-use the latest available header in the data structure (handy in thee case of multiple requests affecting\n// the same node in the same view).\nexport function portainerAgentTargetHeader() {\n if (headers.agentTargetQueue.length === 0) {\n return headers.agentTargetLastValue;\n }\n\n if (headers.agentTargetQueue.length === 1) {\n const [lastValue] = headers.agentTargetQueue;\n headers.agentTargetLastValue = lastValue;\n }\n\n return headers.agentTargetQueue.shift() || '';\n}\n\nexport function setPortainerAgentTargetHeader(headerValue: string) {\n if (headerValue) {\n headers.agentTargetQueue.push(headerValue);\n }\n}\n\nexport function setPortainerAgentManagerOperation(set: boolean) {\n headers.agentManagerOperation = set;\n}\n\nexport function portainerAgentManagerOperation() {\n return headers.agentManagerOperation;\n}\n\nexport function resetAgentHeaders() {\n headers.agentTargetQueue = [];\n headers.agentTargetLastValue = '';\n headers.agentManagerOperation = false;\n delete headers.registryAuthentication;\n}\n\n/* @ngInject */\nexport function HttpRequestHelperAngular() {\n return {\n registryAuthenticationHeader,\n setRegistryAuthenticationHeader,\n portainerAgentTargetHeader,\n setPortainerAgentTargetHeader,\n setPortainerAgentManagerOperation,\n portainerAgentManagerOperation,\n resetAgentHeaders,\n };\n}\n","import sanitize from 'sanitize-html';\nimport bootbox from 'bootbox';\n\nimport {\n applyBoxCSS,\n ButtonsOptions,\n confirmButtons,\n buildTitle,\n ModalTypeIcon,\n} from './utils';\n\ntype ConfirmCallback = (confirmed: boolean) => void;\n\ninterface ConfirmAsyncOptions {\n title: string;\n message: string;\n buttons: ButtonsOptions;\n}\n\ninterface ConfirmOptions extends ConfirmAsyncOptions {\n callback: ConfirmCallback;\n}\n\nexport function confirmWebEditorDiscard() {\n const options = {\n title: buildTitle('Are you sure?'),\n message:\n 'You currently have unsaved changes in the editor. Are you sure you want to leave?',\n buttons: {\n confirm: {\n label: 'Yes',\n className: 'btn-danger',\n },\n },\n };\n return new Promise((resolve) => {\n confirm({\n ...options,\n callback: (confirmed) => resolve(confirmed),\n });\n });\n}\n\nexport function confirmAsync(options: ConfirmAsyncOptions) {\n return new Promise((resolve) => {\n confirm({\n ...options,\n title: buildTitle(options.title),\n callback: (confirmed) => resolve(confirmed),\n });\n });\n}\n\nexport function confirmDestructiveAsync(options: ConfirmAsyncOptions) {\n return new Promise((resolve) => {\n confirm({\n ...options,\n title: buildTitle(options.title, ModalTypeIcon.Destructive),\n callback: (confirmed) => resolve(confirmed),\n });\n });\n}\n\nexport function confirm(options: ConfirmOptions) {\n const box = bootbox.confirm({\n title: options.title,\n message: options.message,\n buttons: confirmButtons(options.buttons),\n callback: options.callback,\n });\n\n applyBoxCSS(box);\n}\n\nexport function confirmWarn(options: ConfirmOptions) {\n confirm({ ...options, title: buildTitle(options.title, ModalTypeIcon.Warn) });\n}\n\nexport function confirmDestructive(options: ConfirmOptions) {\n confirm({\n ...options,\n title: buildTitle(options.title, ModalTypeIcon.Destructive),\n });\n}\n\nexport function confirmImageForceRemoval(callback: ConfirmCallback) {\n confirm({\n title: buildTitle('Are you sure?', ModalTypeIcon.Destructive),\n message:\n 'Forcing the removal of the image will remove the image even if it has multiple tags or if it is used by stopped containers.',\n buttons: {\n confirm: {\n label: 'Remove the image',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function cancelRegistryRepositoryAction(callback: ConfirmCallback) {\n confirm({\n title: buildTitle('Are you sure?', ModalTypeIcon.Destructive),\n message:\n 'WARNING: interrupting this operation before it has finished will result in the loss of all tags. Are you sure you want to do this?',\n buttons: {\n confirm: {\n label: 'Stop',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function confirmDeletion(message: string, callback: ConfirmCallback) {\n const messageSanitized = sanitize(message);\n confirm({\n title: buildTitle('Are you sure?', ModalTypeIcon.Destructive),\n message: messageSanitized,\n buttons: {\n confirm: {\n label: 'Remove',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function confirmWithTitle(\n title: string,\n message: string,\n callback: ConfirmCallback\n) {\n const messageSanitized = sanitize(message);\n confirm({\n title: buildTitle(title, ModalTypeIcon.Destructive),\n message: messageSanitized,\n buttons: {\n confirm: {\n label: 'Remove',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function confirmDetachment(message: string, callback: ConfirmCallback) {\n const messageSanitized = sanitize(message);\n confirm({\n title: buildTitle('Are you sure?'),\n message: messageSanitized,\n buttons: {\n confirm: {\n label: 'Detach',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function confirmDisassociate(callback: ConfirmCallback) {\n const message =\n '

Disassociating this Edge environment will mark it as non associated and will clear the registered Edge ID.

' +\n '

Any agent started with the Edge key associated to this environment will be able to re-associate with this environment.

' +\n '

You can re-use the Edge ID and Edge key that you used to deploy the existing Edge agent to associate a new Edge device to this environment.

';\n confirm({\n title: buildTitle('About disassociating'),\n message: sanitize(message),\n buttons: {\n confirm: {\n label: 'Disassociate',\n className: 'btn-primary',\n },\n },\n callback,\n });\n}\n\nexport function confirmUpdate(message: string, callback: ConfirmCallback) {\n const messageSanitized = sanitize(message);\n\n confirm({\n title: buildTitle('Are you sure?'),\n message: messageSanitized,\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-primary',\n },\n },\n callback,\n });\n}\n\nexport function confirmRedeploy(message: string, callback: ConfirmCallback) {\n const messageSanitized = sanitize(message);\n\n confirm({\n title: '',\n message: messageSanitized,\n buttons: {\n confirm: {\n label: 'Redeploy the applications',\n className: 'btn-primary',\n },\n cancel: {\n label: \"I'll do it later\",\n },\n },\n callback,\n });\n}\n\nexport function confirmDeletionAsync(message: string) {\n return new Promise((resolve) => {\n confirmDeletion(message, (confirmed) => resolve(confirmed));\n });\n}\n\nexport function confirmImageExport(callback: ConfirmCallback) {\n confirm({\n title: buildTitle('Caution'),\n message:\n 'The export may take several minutes, do not navigate away whilst the export is in progress.',\n buttons: {\n confirm: {\n label: 'Continue',\n className: 'btn-primary',\n },\n },\n callback,\n });\n}\n\nexport function confirmChangePassword() {\n return confirmAsync({\n title: buildTitle('Are you sure?'),\n message:\n 'You will be logged out after the password change. Do you want to change your password?',\n buttons: {\n confirm: {\n label: 'Change',\n className: 'btn-primary',\n },\n },\n });\n}\n\nexport function confirmForceChangePassword() {\n const box = bootbox.dialog({\n message:\n 'Please update your password to a stronger password to continue using Portainer',\n buttons: {\n confirm: {\n label: 'OK',\n className: 'btn-primary',\n },\n },\n });\n\n applyBoxCSS(box);\n}\n","import sanitize from 'sanitize-html';\nimport bootbox from 'bootbox';\n\nimport {\n applyBoxCSS,\n ButtonsOptions,\n confirmButtons,\n buildTitle,\n ModalTypeIcon,\n} from './utils';\n\ntype PromptCallback = ((value: string) => void) | ((value: string[]) => void);\n\ninterface InputOption {\n text: string;\n value: string;\n}\n\ninterface PromptOptions {\n title: string;\n inputType?:\n | 'text'\n | 'textarea'\n | 'email'\n | 'select'\n | 'checkbox'\n | 'date'\n | 'time'\n | 'number'\n | 'password'\n | 'radio'\n | 'range';\n inputOptions: InputOption[];\n buttons: ButtonsOptions;\n value?: string;\n callback: PromptCallback;\n}\n\nexport async function promptAsync(options: Omit) {\n return new Promise((resolve) => {\n prompt({\n ...options,\n callback: (result: string | string[]) => resolve(result),\n });\n });\n}\n\nexport function prompt(options: PromptOptions) {\n const box = bootbox.prompt({\n title: options.title,\n inputType: options.inputType,\n inputOptions: options.inputOptions,\n buttons: options.buttons ? confirmButtons(options.buttons) : undefined,\n // casting is done because ts definition expects string=>any, but library code can emit different values, based on inputType\n callback: options.callback as (value: string) => void,\n value: options.value,\n });\n\n applyBoxCSS(box);\n\n return box;\n}\n\nexport function confirmContainerDeletion(\n title: string,\n callback: PromptCallback\n) {\n prompt({\n title: buildTitle(title, ModalTypeIcon.Destructive),\n inputType: 'checkbox',\n inputOptions: [\n {\n text: 'Automatically remove non-persistent volumes',\n value: '1',\n },\n ],\n buttons: {\n confirm: {\n label: 'Remove',\n className: 'btn-danger',\n },\n },\n callback,\n });\n}\n\nexport function selectRegistry(options: PromptOptions) {\n prompt(options);\n}\n\nexport function confirmContainerRecreation(\n cannotPullImage: boolean | null,\n callback: PromptCallback\n) {\n const box = prompt({\n title: buildTitle('Are you sure?', ModalTypeIcon.Destructive),\n\n inputType: 'checkbox',\n inputOptions: [\n {\n text: 'Pull latest image',\n value: '1',\n },\n ],\n buttons: {\n confirm: {\n label: 'Recreate',\n className: 'btn-danger',\n },\n },\n callback,\n });\n\n const message = `You're about to recreate this container and any non-persisted data will be lost. This container will be removed and another one will be created using the same configuration.`;\n box.find('.bootbox-body').prepend(`

${message}

`);\n const label = box.find('.form-check-label');\n label.css('padding-left', '5px');\n label.css('padding-right', '25px');\n\n if (cannotPullImage) {\n label.css('cursor', 'not-allowed');\n label.find('i').css('cursor', 'not-allowed');\n const checkbox = box.find('.bootbox-input-checkbox');\n checkbox.prop('disabled', true);\n const formCheck = box.find('.form-check');\n formCheck.prop('style', 'height: 45px;');\n const cannotPullImageMessage = `
\n
\n Cannot pull latest as the image is inaccessible - either it no longer exists or the tag or name is no longer correct.\n \n
`;\n formCheck.append(`${cannotPullImageMessage}`);\n }\n}\n\nexport function confirmServiceForceUpdate(\n message: string,\n callback: PromptCallback\n) {\n const sanitizedMessage = sanitize(message);\n\n const box = prompt({\n title: buildTitle('Are you sure?'),\n inputType: 'checkbox',\n inputOptions: [\n {\n text: 'Pull latest image version',\n value: '1',\n },\n ],\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-primary',\n },\n },\n callback,\n });\n\n customizeCheckboxPrompt(box, sanitizedMessage);\n}\n\nexport function confirmStackUpdate(\n message: string,\n defaultToggle: boolean,\n confirmButtonClass: string | undefined,\n callback: PromptCallback\n) {\n const sanitizedMessage = sanitize(message);\n\n const box = prompt({\n title: buildTitle('Are you sure?'),\n inputType: 'checkbox',\n inputOptions: [\n {\n text: 'Re-pull image and redeploy',\n value: '1',\n },\n ],\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-primary',\n },\n },\n callback,\n });\n\n customizeCheckboxPrompt(box, sanitizedMessage, defaultToggle);\n}\n\nfunction customizeCheckboxPrompt(\n box: JQuery,\n message: string,\n toggleCheckbox = false,\n showCheck = false\n) {\n box.find('.bootbox-body').prepend(`

${message}

`);\n const checkbox = box.find('.bootbox-input-checkbox');\n checkbox.prop('checked', toggleCheckbox);\n\n if (showCheck) {\n checkbox.addClass('visible');\n }\n}\n","import sanitize from 'sanitize-html';\n\ninterface Button {\n label: string;\n className?: string;\n}\n\nexport interface ButtonsOptions {\n confirm: Button;\n cancel?: Button;\n}\n\nexport enum ModalTypeIcon {\n Warn = 'warning',\n Destructive = 'error',\n}\n\nexport function confirmButtons(options: ButtonsOptions) {\n return {\n confirm: {\n label: sanitize(options.confirm.label),\n className:\n options.confirm.className && sanitize(options.confirm.className),\n },\n cancel: {\n label:\n options.cancel && options.cancel.label\n ? sanitize(options.cancel.label)\n : 'Cancel',\n className: 'btn-default',\n },\n };\n}\n\nexport function buildTitle(\n title: string,\n modalType: ModalTypeIcon = ModalTypeIcon.Warn\n) {\n return `\n
\n
${sanitize(title)}
\n
\n `;\n}\n\nexport function applyBoxCSS(box: JQuery) {\n box.css({\n 'vertical-align': 'middle',\n });\n}\n","import _ from 'lodash';\nimport toastr from 'toastr';\nimport sanitize from 'sanitize-html';\n\ntoastr.options = {\n timeOut: 3000,\n closeButton: true,\n progressBar: true,\n tapToDismiss: false,\n // custom button, using the feather icon x.svg inside\n closeHtml: ``,\n};\n\nexport function notifySuccess(title: string, text: string) {\n toastr.success(sanitize(_.escape(text)), sanitize(_.escape(title)));\n}\n\nexport function notifyWarning(title: string, text: string) {\n toastr.warning(sanitize(_.escape(text)), sanitize(title), { timeOut: 6000 });\n}\n\nexport function notifyError(title: string, e?: Error, fallbackText = '') {\n const msg = pickErrorMsg(e) || fallbackText;\n\n // eslint-disable-next-line no-console\n console.error(e);\n\n if (msg !== 'Invalid JWT token') {\n toastr.error(sanitize(_.escape(msg)), sanitize(title), { timeOut: 6000 });\n }\n}\n\nexport const success = notifySuccess;\nexport const error = notifyError;\nexport const warning = notifyWarning;\n\n/* @ngInject */\nexport function Notifications() {\n return {\n success: notifySuccess,\n warning: notifyWarning,\n error: notifyError,\n };\n}\n\nfunction pickErrorMsg(e?: Error) {\n if (!e) {\n return '';\n }\n\n const props = [\n 'err.data.details',\n 'err.data.message',\n 'data.details',\n 'data.message',\n 'data.content',\n 'data.error',\n 'message',\n 'err.data[0].message',\n 'err.data.err',\n 'data.err',\n 'msg',\n ];\n\n let msg = '';\n\n props.forEach((prop) => {\n const val = _.get(e, prop);\n if (typeof val === 'string') {\n msg = msg || val;\n }\n });\n\n return msg;\n}\n","import { useRouter } from '@uirouter/react';\n\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport {\n useCreateCredentialMutation,\n useCloudCredentials,\n} from '../cloudSettings.service';\nimport {\n CreateCredentialPayload,\n KaasProvider,\n providerTitles,\n providerHelpLinks,\n GenericFormValues,\n} from '../types';\nimport { APICredentialsForm } from '../components/APICredentialsForm';\nimport { GCPCredentialsForm } from '../components/GCPCredentialsForm';\nimport { AWSCredentialsForm } from '../components/AWSCredentialsForm';\nimport { AzureCredentialsForm } from '../components/AzureCredentialsForm';\nimport { trimObject } from '../utils';\n\ntype Props = {\n selectedProvider: KaasProvider;\n routeOnSuccess?: string;\n};\n\nexport function CredentialsForm({ selectedProvider, routeOnSuccess }: Props) {\n const router = useRouter();\n\n const Form = getForm(selectedProvider);\n const title = providerTitles[selectedProvider];\n const helpLink = providerHelpLinks[selectedProvider];\n\n const createCredentialMutation = useCreateCredentialMutation();\n const cloudCredentialsQuery = useCloudCredentials();\n const credentialNames =\n cloudCredentialsQuery.data\n ?.filter((c) => c.provider === selectedProvider)\n .map((c: CreateCredentialPayload) => c.name) || [];\n\n return (\n <>\n Credential details\n \n See our{' '}\n \n documentation for obtaining {title} credentials.\n {' '}\n Any credentials that you set up will be usable by all admin users{' '}\n (although the actual values themselves cannot be viewed).\n \n \n \n );\n\n function onSubmit(values: GenericFormValues) {\n const payload: CreateCredentialPayload = {\n provider: selectedProvider,\n name: values.name.trim(),\n credentials: trimObject(values.credentials),\n };\n createCredentialMutation.mutate(payload, {\n onSuccess: () => {\n if (routeOnSuccess) {\n router.stateService.go(routeOnSuccess);\n }\n },\n });\n }\n}\n\nfunction getForm(provider: KaasProvider) {\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n return GCPCredentialsForm;\n\n case KaasProvider.AWS:\n return AWSCredentialsForm;\n\n case KaasProvider.AZURE:\n return AzureCredentialsForm;\n\n case KaasProvider.CIVO:\n case KaasProvider.DIGITAL_OCEAN:\n case KaasProvider.LINODE:\n default:\n return APICredentialsForm;\n }\n}\n","import { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport axios, { parseAxiosError } from '@/portainer/services/axios';\nimport { success as notifySuccess } from '@/portainer/services/notifications';\n\nimport {\n CreateCredentialPayload,\n Credential,\n UpdateCredentialPayload,\n} from './types';\n\nexport async function createCredential(credential: CreateCredentialPayload) {\n try {\n await axios.post(buildUrl(), credential);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to create credential');\n }\n}\n\nexport async function getCloudCredentials() {\n try {\n const { data } = await axios.get(buildUrl());\n return data;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to get credentials');\n }\n}\n\nexport async function deleteCredential(credential: Credential) {\n try {\n await axios.delete(buildUrl(credential.id));\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to delete credential');\n }\n}\n\nexport async function getCloudCredential(id: number) {\n try {\n const { data } = await axios.get(buildUrl(id));\n return data;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to get credential');\n }\n}\n\nexport async function updateCredential(\n credential: Partial,\n id: number\n) {\n try {\n const { data } = await axios.put(buildUrl(id), credential);\n return data;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to update credential');\n }\n}\n\nexport function useUpdateCredentialMutation() {\n const queryClient = useQueryClient();\n\n return useMutation(\n ({\n credential,\n id,\n }: {\n credential: Partial;\n id: number;\n }) => updateCredential(credential, id),\n {\n onSuccess: (_, data) => {\n notifySuccess(\n 'Credentials updated successfully',\n data.credential.name || ''\n );\n return queryClient.invalidateQueries(['cloudcredentials']);\n },\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to update credential',\n },\n },\n }\n );\n}\n\nexport function useDeleteCredentialMutation() {\n const queryClient = useQueryClient();\n\n return useMutation(deleteCredential, {\n onSuccess: (_, credential) => {\n notifySuccess('Credentials deleted successfully', credential.name);\n return queryClient.invalidateQueries(['cloudcredentials']);\n },\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to delete credential',\n },\n },\n });\n}\n\nexport function useCloudCredential(id: number) {\n return useQuery(['cloudcredentials', id], () => getCloudCredential(id), {\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to retrieve cloud credential',\n },\n },\n });\n}\n\nexport function useCloudCredentials() {\n return useQuery('cloudcredentials', () => getCloudCredentials(), {\n staleTime: 20,\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to retrieve cloud credentials',\n },\n },\n });\n}\n\nexport function useCreateCredentialMutation() {\n const queryClient = useQueryClient();\n\n return useMutation(createCredential, {\n onSuccess: (_, payload) => {\n notifySuccess('Credentials created successfully', payload.name);\n return queryClient.invalidateQueries(['cloudcredentials']);\n },\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to create credential',\n },\n },\n });\n}\n\nfunction buildUrl(credentialId?: number) {\n let url = 'cloudcredentials';\n if (credentialId) {\n url += `/${credentialId}`;\n }\n return url;\n}\n","import { Field, Form, Formik } from 'formik';\nimport { useRouter } from '@uirouter/react';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Button } from '@@/buttons';\n\nimport { APIFormValues, KaasProvider, providerTitles } from '../types';\n\nimport { validationSchema } from './APICredentialsForm.validation';\n\nconst exampleApiKeys: Partial> = {\n civo: 'DgJ33kwIhnHumQFyc8ihGwWJql9cC8UJDiBhN8YImKqiX',\n linode: '92gsh9r9u5helgs4eibcuvlo403vm45hrmc6mzbslotnrqmkwc1ovqgmolcyq0wc',\n digitalocean:\n 'dop_v1_n9rq7dkcbg3zb3bewtk9nnvmfkyfnr94d42n28lym22vhqu23rtkllsldygqm22v',\n};\n\nconst defaultInitialValues = {\n name: '',\n credentials: {\n apiKey: '',\n },\n};\n\ntype Props = {\n selectedProvider: KaasProvider;\n isEditing?: boolean;\n isLoading: boolean;\n onSubmit: (formValues: APIFormValues) => void;\n credentialNames: string[];\n initialValues?: APIFormValues;\n placeholderText?: string;\n};\n\nexport function APICredentialsForm({\n selectedProvider,\n isEditing = false,\n isLoading,\n onSubmit,\n credentialNames,\n initialValues = defaultInitialValues,\n placeholderText = `e.g. ${exampleApiKeys[selectedProvider]}`,\n}: Props) {\n const router = useRouter();\n return (\n validationSchema(credentialNames, isEditing)}\n onSubmit={(values) => onSubmit(values)}\n validateOnMount\n >\n {({ values, errors, handleSubmit, isValid, dirty }) => (\n
\n {isEditing && (\n \n \n \n )}\n \n \n \n \n \n \n\n
\n
\n \n {isEditing ? 'Update credentials' : 'Add credentials'}\n \n {isEditing && (\n \n router.stateService.go('portainer.settings.cloud')\n }\n >\n Cancel\n \n )}\n
\n
\n \n )}\n \n );\n}\n","import { object, string } from 'yup';\n\nexport function noDuplicateNamesSchema(names: string[]) {\n return string()\n .required('Name is required')\n .test('not existing name', 'Name is already in use', (newName) =>\n names.every((name) => name !== newName)\n );\n}\n\nexport function validationSchema(names: string[], isEditing = false) {\n if (isEditing) {\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n apiKey: string(),\n })\n .required(),\n });\n }\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n apiKey: string().required('API key is required'),\n })\n .required(),\n });\n}\n","import { Field, Form, Formik } from 'formik';\nimport { useRouter } from '@uirouter/react';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Button } from '@@/buttons';\n\nimport { AccessKeyFormValues, KaasProvider, providerTitles } from '../types';\n\nimport { validationSchema } from './AWSCredentialsForm.validation';\n\ntype Props = {\n selectedProvider: KaasProvider;\n isEditing?: boolean;\n isLoading: boolean;\n onSubmit: (formValues: AccessKeyFormValues) => void;\n credentialNames: string[];\n initialValues?: AccessKeyFormValues;\n placeholderText?: string;\n};\n\nconst defaultInitialValues = {\n name: '',\n credentials: {\n accessKeyId: '',\n secretAccessKey: '',\n },\n};\n\nexport function AWSCredentialsForm({\n selectedProvider,\n isEditing = false,\n isLoading,\n onSubmit,\n credentialNames,\n initialValues = defaultInitialValues,\n placeholderText = 'e.g. 5nq6uR3YQVhTNqRY2Q1lcft5rAp3Hq8S+8VUEDSW',\n}: Props) {\n const router = useRouter();\n return (\n validationSchema(credentialNames, isEditing)}\n onSubmit={(values) => onSubmit(values)}\n validateOnMount\n >\n {({ values, errors, handleSubmit, isValid, dirty }) => (\n
\n {isEditing && (\n \n \n \n )}\n \n \n \n\n <>\n \n \n \n \n \n \n \n\n
\n
\n \n {isEditing ? 'Update credentials' : 'Add credentials'}\n \n {isEditing && (\n \n router.stateService.go('portainer.settings.cloud')\n }\n >\n Cancel\n \n )}\n
\n
\n \n )}\n \n );\n}\n","import { object, string } from 'yup';\n\nimport { noDuplicateNamesSchema } from './APICredentialsForm.validation';\n\nexport function validationSchema(names: string[], isEditing = false) {\n if (isEditing) {\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n accessKeyId: string().required('Access key id is required'),\n secretAccessKey: string(),\n })\n .required(),\n });\n }\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n accessKeyId: string().required('Access key id is required'),\n secretAccessKey: string().required('Secret access key is required'),\n })\n .required(),\n });\n}\n","import { Field, Form, Formik } from 'formik';\nimport { useRouter } from '@uirouter/react';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Button } from '@@/buttons';\n\nimport { AzureFormValues, KaasProvider, providerTitles } from '../types';\n\nimport { validationSchema } from './AzureCredentialsForm.validation';\n\ntype Props = {\n selectedProvider: KaasProvider;\n isEditing?: boolean;\n isLoading: boolean;\n onSubmit: (formValues: AzureFormValues) => void;\n credentialNames: string[];\n initialValues?: AzureFormValues;\n placeholderText?: string;\n};\n\nconst defaultInitialValues = {\n name: '',\n credentials: {\n clientID: '',\n clientSecret: '',\n tenantID: '',\n subscriptionID: '',\n },\n};\n\nexport function AzureCredentialsForm({\n selectedProvider,\n isEditing = false,\n isLoading,\n onSubmit,\n credentialNames,\n initialValues = defaultInitialValues,\n placeholderText = 'e.g. WWE8Q~0J4GdItGa2UZiZU6pFYewu7c4cvmCSPbZF',\n}: Props) {\n const router = useRouter();\n\n return (\n validationSchema(credentialNames, isEditing)}\n onSubmit={(values) => onSubmit(values)}\n validateOnMount\n >\n {({ values, errors, handleSubmit, isValid, dirty }) => (\n
\n {isEditing && (\n \n \n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n\n
\n
\n \n {isEditing ? 'Update credentials' : 'Add credentials'}\n \n {isEditing && (\n \n router.stateService.go('portainer.settings.cloud')\n }\n >\n Cancel\n \n )}\n
\n
\n \n )}\n \n );\n}\n","import { object, string } from 'yup';\n\nimport { noDuplicateNamesSchema } from './APICredentialsForm.validation';\n\nexport function validationSchema(names: string[], isEditing = false) {\n if (isEditing) {\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n clientID: string().required('Client ID is required'),\n clientSecret: string(),\n tenantID: string().required('Tenant ID key is required'),\n subscriptionID: string().required('Subscription ID is required'),\n })\n .required(),\n });\n }\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n clientID: string().required('Client ID is required'),\n clientSecret: string().required('Client secret is required'),\n tenantID: string().required('Tenant ID key is required'),\n subscriptionID: string().required('Subscription ID is required'),\n })\n .required(),\n });\n}\n","export function readFileAsArrayBuffer(\n file: File\n): Promise {\n return new Promise((resolve, reject) => {\n const reader = new FileReader();\n reader.readAsArrayBuffer(file);\n reader.onload = () => {\n resolve(reader.result);\n };\n reader.onerror = (error) => reject(error);\n });\n}\n","import { useState } from 'react';\nimport { Field, Form, Formik } from 'formik';\nimport { useRouter } from '@uirouter/react';\n\nimport { error as notifyError } from '@/portainer/services/notifications';\nimport { readFileAsArrayBuffer } from '@/portainer/services/fileUploadReact';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FileUploadField } from '@@/form-components/FileUpload';\nimport { Button } from '@@/buttons';\n\nimport {\n ServiceAccountFormValues,\n KaasProvider,\n providerTitles,\n} from '../types';\n\nimport { validationSchema } from './GCPCredentialsForm.validation';\n\ntype Props = {\n selectedProvider: KaasProvider;\n isEditing?: boolean;\n isLoading: boolean;\n onSubmit: (formValues: ServiceAccountFormValues) => void;\n credentialNames: string[];\n initialValues?: ServiceAccountFormValues;\n};\n\nconst defaultInitialValues = {\n name: '',\n credentials: {\n jsonKeyBase64: '',\n },\n};\n\nexport function GCPCredentialsForm({\n selectedProvider,\n isEditing = false,\n isLoading,\n onSubmit,\n credentialNames,\n initialValues = defaultInitialValues,\n}: Props) {\n const [serviceKeyFile, setserviceKeyFile] = useState();\n const router = useRouter();\n\n return (\n validationSchema(credentialNames, isEditing)}\n onSubmit={(values) => onSubmit(values)}\n validateOnMount\n >\n {({ values, errors, handleSubmit, setFieldValue, isValid, dirty }) => (\n
\n {isEditing && (\n \n \n \n )}\n \n \n \n\n \n handleFileUpload(file, setFieldValue)}\n />\n \n\n
\n
\n \n {isEditing ? 'Update credentials' : 'Add credentials'}\n \n {isEditing && (\n \n router.stateService.go('portainer.settings.cloud')\n }\n >\n Cancel\n \n )}\n
\n
\n \n )}\n \n );\n\n async function handleFileUpload(\n file: File,\n setFieldValue: (\n field: string,\n value: unknown,\n shouldValidate?: boolean\n ) => void\n ) {\n if (file) {\n setserviceKeyFile(file);\n try {\n const arrayBufferContent = await readFileAsArrayBuffer(file);\n if (arrayBufferContent && typeof arrayBufferContent !== 'string') {\n const base64Content = arrayBufferToBase64(arrayBufferContent);\n setFieldValue('credentials.jsonKeyBase64', base64Content);\n } else {\n notifyError('Unable to read the uploaded file');\n }\n } catch (error) {\n notifyError('Unable to read the uploaded file');\n }\n }\n }\n}\n\nfunction arrayBufferToBase64(buffer: ArrayBuffer) {\n let binary = '';\n const bytes = new Uint8Array(buffer);\n const len = bytes.byteLength;\n for (let i = 0; i < len; i += 1) {\n binary += String.fromCharCode(bytes[i]);\n }\n return window.btoa(binary);\n}\n","import { object, string } from 'yup';\n\nimport { noDuplicateNamesSchema } from './APICredentialsForm.validation';\n\nexport function validationSchema(names: string[], isEditing = false) {\n if (isEditing) {\n object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n jsonKeyBase64: string(),\n })\n .required(),\n });\n }\n return object().shape({\n name: noDuplicateNamesSchema(names),\n credentials: object()\n .shape({\n jsonKeyBase64: string().required('Service account key is required'),\n })\n .required(),\n });\n}\n","import {\n PaginationTableSettings,\n SortableTableSettings,\n} from '@@/datatables/types-old';\n\nexport interface CredentialTableSettings\n extends SortableTableSettings,\n PaginationTableSettings {}\n\nexport enum KaasProvider {\n CIVO = 'civo',\n LINODE = 'linode',\n DIGITAL_OCEAN = 'digitalocean',\n GOOGLE_CLOUD = 'gke',\n AWS = 'amazon',\n AZURE = 'azure',\n}\n\nexport const providerTitles: Record = {\n civo: 'Civo',\n linode: 'Linode',\n digitalocean: 'DigitalOcean',\n gke: 'Google Cloud',\n amazon: 'AWS',\n azure: 'Azure',\n};\n\nexport const providerHelpLinks: Record = {\n civo: 'https://docs.portainer.io/admin/settings/cloud/civo',\n linode: 'https://docs.portainer.io/admin/settings/cloud/linode',\n digitalocean: 'https://docs.portainer.io/admin/settings/cloud/digitalocean',\n gke: 'https://docs.portainer.io/admin/settings/cloud/gke',\n amazon: 'https://docs.portainer.io/admin/settings/cloud/eks',\n azure: 'https://docs.portainer.io/admin/settings/cloud/aks',\n};\n\nexport type APICredentials = {\n apiKey: string;\n};\n\nexport type AccessKeyCredentials = {\n accessKeyId: string;\n secretAccessKey: string;\n};\n\nexport type ServiceAccountCredentials = {\n jsonKeyBase64: string;\n};\n\nexport type AzureCredentials = {\n clientID: string;\n clientSecret: string;\n tenantID: string;\n subscriptionID: string;\n};\n\nexport interface APIFormValues {\n name: string;\n credentials: APICredentials;\n}\n\nexport interface AccessKeyFormValues {\n name: string;\n credentials: AccessKeyCredentials;\n}\n\nexport interface ServiceAccountFormValues {\n name: string;\n credentials: ServiceAccountCredentials;\n}\n\nexport interface AzureFormValues {\n name: string;\n credentials: AzureCredentials;\n}\n\nexport type CredentialDetails =\n | APICredentials\n | AccessKeyCredentials\n | ServiceAccountCredentials\n | AzureCredentials;\n\nexport type GenericFormValues = {\n name: string;\n credentials: CredentialDetails;\n};\n\nexport interface CreateCredentialPayload {\n name: string;\n provider: KaasProvider;\n credentials: CredentialDetails;\n}\n\nexport interface UpdateCredentialPayload {\n name?: string;\n provider?: KaasProvider;\n credentials?: Partial;\n}\n\n// using a type instead of interface to conform to the Record types required in the datatable component\nexport type Credential = {\n id: number;\n created: number;\n name: string;\n provider: KaasProvider;\n credentials: CredentialDetails;\n};\n","import _ from 'lodash';\n\nimport { CredentialDetails } from './types';\n\n// trimObject trims the string values in an object (shallow) and returns the trimmed object\nexport function trimObject>(obj: T) {\n return _.mapValues(obj, (value) => {\n if (typeof value === 'string') {\n return value.trim();\n }\n return value;\n });\n}\n\nexport const sensitiveFields = [\n 'jsonKeyBase64',\n 'apiKey',\n 'secretAccessKey',\n 'clientSecret',\n];\n\nexport function sensitiveFieldChanged(credentials: CredentialDetails) {\n const newCredentialsSensitive = _.pick(credentials, sensitiveFields);\n\n return Object.values(newCredentialsSensitive).some((sensitiveValue) => {\n if (sensitiveValue.trim().length === 0) {\n return false;\n }\n return true;\n });\n}\n","import { PublicSettingsViewModel } from '@/portainer/models/settings';\n\nimport axios, { parseAxiosError } from '../services/axios';\n\nimport { PublicSettingsResponse, DefaultRegistry, Settings } from './types';\n\nexport async function getPublicSettings() {\n try {\n const { data } = await axios.get(\n buildUrl('public')\n );\n return new PublicSettingsViewModel(data);\n } catch (e) {\n throw parseAxiosError(\n e as Error,\n 'Unable to retrieve application settings'\n );\n }\n}\n\nexport async function getSettings() {\n try {\n const { data } = await axios.get(buildUrl());\n return data;\n } catch (e) {\n throw parseAxiosError(\n e as Error,\n 'Unable to retrieve application settings'\n );\n }\n}\n\nexport async function updateSettings(settings: Partial) {\n try {\n await axios.put(buildUrl(), settings);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to update application settings');\n }\n}\n\nexport async function updateDefaultRegistry(\n defaultRegistry: Partial\n) {\n try {\n await axios.put(buildUrl('default_registry'), defaultRegistry);\n } catch (e) {\n throw parseAxiosError(\n e as Error,\n 'Unable to update default registry settings'\n );\n }\n}\n\nfunction buildUrl(subResource?: string, action?: string) {\n let url = 'settings';\n if (subResource) {\n url += `/${subResource}`;\n }\n\n if (action) {\n url += `/${action}`;\n }\n\n return url;\n}\n","import { useQuery, useMutation, useQueryClient } from 'react-query';\n\nimport {\n mutationOptions,\n withError,\n withInvalidate,\n} from '@/react-tools/react-query';\n\nimport { PublicSettingsViewModel } from '../models/settings';\n\nimport {\n updateSettings,\n getSettings,\n getPublicSettings,\n updateDefaultRegistry,\n} from './settings.service';\nimport { DefaultRegistry, Settings } from './types';\n\nexport function usePublicSettings({\n enabled,\n select,\n}: {\n select?: (settings: PublicSettingsViewModel) => T;\n enabled?: boolean;\n} = {}) {\n return useQuery(['settings', 'public'], () => getPublicSettings(), {\n select,\n ...withError('Unable to retrieve public settings'),\n enabled,\n });\n}\n\nexport function useSettings(\n select?: (settings: Settings) => T,\n enabled = true\n) {\n return useQuery(['settings'], getSettings, {\n select,\n enabled,\n staleTime: 50,\n ...withError('Unable to retrieve settings'),\n });\n}\n\nexport function useUpdateSettingsMutation() {\n const queryClient = useQueryClient();\n\n return useMutation(\n updateSettings,\n mutationOptions(\n withInvalidate(queryClient, [['settings'], ['cloud']]),\n withError('Unable to update settings')\n )\n );\n}\n\nexport function useUpdateDefaultRegistrySettingsMutation() {\n const queryClient = useQueryClient();\n\n return useMutation(\n (payload: Partial) => updateDefaultRegistry(payload),\n mutationOptions(\n withInvalidate(queryClient, [['settings']]),\n withError('Unable to update default registry settings')\n )\n );\n}\n","import axios, { parseAxiosError } from '@/portainer/services/axios';\n\nimport { Team, TeamId } from './types';\n\nexport async function getTeams() {\n try {\n const { data } = await axios.get(buildUrl());\n return data;\n } catch (error) {\n throw parseAxiosError(error as Error);\n }\n}\n\nfunction buildUrl(id?: TeamId) {\n let url = '/teams';\n\n if (id) {\n url += `/${id}`;\n }\n\n return url;\n}\n","import { useQuery } from 'react-query';\n\nimport { getTeams } from './teams.service';\nimport { Team } from './types';\n\nexport function useTeams(\n enabled = true,\n select: (data: Team[]) => T = (data) => data as unknown as T\n) {\n const teams = useQuery(['teams'], () => getTeams(), {\n meta: {\n error: { title: 'Failure', message: 'Unable to load teams' },\n },\n enabled,\n select,\n });\n\n return teams;\n}\n","import { UserId } from '../users/types';\n\nexport type TeamId = number;\n\nexport enum Role {\n TeamLeader = 1,\n TeamMember,\n}\n\nexport interface Team {\n Id: TeamId;\n Name: string;\n}\n\nexport interface TeamMembership {\n Id: number;\n UserID: UserId;\n TeamID: TeamId;\n Role: Role;\n}\n","import { useQuery } from 'react-query';\n\nimport { Role as TeamRole, TeamMembership } from '../teams/types';\n\nimport { User, UserId } from './types';\nimport { isAdmin } from './user.helpers';\nimport { getUserMemberships, getUsers } from './user.service';\n\ninterface UseUserMembershipOptions {\n select?(userMemberships: TeamMembership[]): TSelect;\n enabled?: boolean;\n}\n\nexport function useUserMembership(\n userId: UserId,\n { enabled, select }: UseUserMembershipOptions = {}\n) {\n return useQuery(\n ['users', userId, 'memberships'],\n () => getUserMemberships(userId),\n { select, enabled }\n );\n}\n\nexport function useIsTeamLeader(user: User) {\n const query = useUserMembership(user.Id, {\n enabled: !isAdmin(user),\n select: (memberships) =>\n memberships.some((membership) => membership.Role === TeamRole.TeamLeader),\n });\n\n return isAdmin(user) ? true : query.data;\n}\n\nexport function useUsers(\n includeAdministrator: boolean,\n enabled = true,\n select: (data: User[]) => T = (data) => data as unknown as T\n) {\n const users = useQuery(['users'], () => getUsers(includeAdministrator), {\n meta: {\n error: { title: 'Failure', message: 'Unable to load users' },\n },\n enabled,\n select,\n });\n\n return users;\n}\n","import { EnvironmentId } from '../environments/types';\n\nexport type UserId = number;\n\nexport enum Role {\n Admin = 1,\n Standard,\n}\n\ninterface AuthorizationMap {\n [authorization: string]: boolean;\n}\n\nexport interface User {\n Id: UserId;\n Username: string;\n Role: Role;\n EndpointAuthorizations: {\n [endpointId: EnvironmentId]: AuthorizationMap;\n };\n // UserTheme: string;\n // this.EndpointAuthorizations = data.EndpointAuthorizations;\n // this.PortainerAuthorizations = data.PortainerAuthorizations;\n // if (data.Role === 1) {\n // this.RoleName = 'administrator';\n // } else {\n // this.RoleName = 'user';\n // }\n // this.AuthenticationMethod = data.AuthenticationMethod;\n // this.Checked = false;\n // this.EndpointAuthorizations = data.EndpointAuthorizations;\n}\n","import { Role, User } from './types';\n\nexport function filterNonAdministratorUsers(users: User[]) {\n return users.filter((user) => user.Role !== Role.Admin);\n}\n\nexport function isAdmin(user?: User): boolean {\n return !!user && user.Role === 1;\n}\n","import axios, { parseAxiosError } from '@/portainer/services/axios';\n\nimport { TeamMembership } from '../teams/types';\n\nimport { User, UserId } from './types';\nimport { filterNonAdministratorUsers } from './user.helpers';\n\nexport async function getUsers(includeAdministrators = false) {\n try {\n const { data } = await axios.get(buildUrl());\n\n return includeAdministrators ? data : filterNonAdministratorUsers(data);\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to retrieve users');\n }\n}\n\nexport async function getUser(id: UserId) {\n try {\n const { data: user } = await axios.get(buildUrl(id));\n\n return user;\n } catch (e) {\n throw parseAxiosError(e as Error, 'Unable to retrieve user details');\n }\n}\n\nexport async function getUserMemberships(id: UserId) {\n try {\n const { data } = await axios.get(\n buildUrl(id, 'memberships')\n );\n return data;\n } catch (err) {\n throw parseAxiosError(err as Error, 'Unable to retrieve user memberships');\n }\n}\n\nfunction buildUrl(id?: UserId, entity?: string) {\n let url = '/users';\n\n if (id) {\n url += `/${id}`;\n }\n\n if (entity) {\n url += `/${entity}`;\n }\n\n return url;\n}\n","import {\n MutationCache,\n MutationOptions,\n QueryCache,\n QueryClient,\n QueryKey,\n QueryOptions,\n} from 'react-query';\n\nimport { notifyError } from '@/portainer/services/notifications';\n\nexport function withError(fallbackMessage?: string, title = 'Failure') {\n return {\n onError(error: unknown) {\n notifyError(title, error as Error, fallbackMessage);\n },\n };\n}\n\nexport function withGlobalError(fallbackMessage?: string, title = 'Failure') {\n return {\n meta: {\n error: { message: fallbackMessage, title },\n },\n };\n}\n\ntype OptionalReadonly = T | Readonly;\n\nexport function withInvalidate(\n queryClient: QueryClient,\n queryKeysToInvalidate: OptionalReadonly[]\n) {\n return {\n onSuccess() {\n return Promise.all(\n queryKeysToInvalidate.map((keys) => queryClient.invalidateQueries(keys))\n );\n },\n };\n}\n\nexport function mutationOptions<\n TData = unknown,\n TError = unknown,\n TVariables = void,\n TContext = unknown\n>(...options: MutationOptions[]) {\n return mergeOptions(options);\n}\n\nexport function queryOptions<\n TQueryFnData = unknown,\n TError = unknown,\n TData = TQueryFnData,\n TQueryKey extends QueryKey = QueryKey\n>(...options: QueryOptions[]) {\n return mergeOptions(options);\n}\n\nfunction mergeOptions(options: T[]) {\n return options.reduce(\n (acc, option) => ({\n ...acc,\n ...option,\n }),\n {}\n );\n}\n\nexport function createQueryClient() {\n return new QueryClient({\n defaultOptions: {\n queries: {\n staleTime: 20,\n },\n },\n mutationCache: new MutationCache({\n onError: (error, variable, context, mutation) => {\n handleError(error, mutation.meta?.error);\n },\n }),\n queryCache: new QueryCache({\n onError: (error, mutation) => {\n handleError(error, mutation.meta?.error);\n },\n }),\n });\n}\n\nfunction handleError(error: unknown, errorMeta?: unknown) {\n if (errorMeta && typeof errorMeta === 'object') {\n const { title = 'Failure', message } = errorMeta as {\n title?: string;\n message?: string;\n };\n\n notifyError(title, error as Error, message);\n }\n}\n","import { QueryClientProvider } from 'react-query';\nimport { UIRouterContextComponent } from '@uirouter/react-hybrid';\nimport { PropsWithChildren, StrictMode } from 'react';\n\nimport { UserProvider } from '@/portainer/hooks/useUser';\nimport { UIStateProvider } from '@/portainer/hooks/UIStateProvider';\n\nimport { createQueryClient } from './react-query';\n\nconst queryClient = createQueryClient();\n\nexport function RootProvider({ children }: PropsWithChildren) {\n return (\n \n \n \n \n {children}\n \n \n \n \n );\n}\n","import ReactDOM from 'react-dom';\nimport { IComponentOptions, IController } from 'angular';\nimport { Suspense } from 'react';\nimport _ from 'lodash';\n\nimport { RootProvider } from './RootProvider';\n\nfunction toProps(\n propNames: string[],\n controller: IController,\n $q: ng.IQService\n) {\n return Object.fromEntries(\n propNames.map((key) => {\n const prop = controller[key];\n if (typeof prop !== 'function') {\n return [key, prop];\n }\n\n return [\n key,\n (...args: unknown[]) =>\n $q((resolve) => resolve(controller[key](...args))),\n ];\n })\n );\n}\n\ntype PropNames = Exclude;\n\n/**\n * react2angular is used to bind a React component to an AngularJS component\n * it used in an AngularJS module definition:\n *\n * `.component('componentName', react2angular(ComponentName, ['prop1', 'prop2']))`\n *\n * if the second parameter has any ts errors check that the component has the correct props\n */\nexport function react2angular[]>(\n Component: React.ComponentType,\n propNames: U & ([PropNames] extends [U[number]] ? unknown : PropNames)\n): IComponentOptions & { name: string } {\n const bindings = Object.fromEntries(propNames.map((key) => [key, '<']));\n\n return {\n bindings,\n controller: Controller,\n name: _.camelCase(Component.displayName || Component.name),\n };\n\n /* @ngInject */\n function Controller(\n this: IController,\n $element: HTMLElement[],\n $q: ng.IQService\n ) {\n const el = $element[0];\n this.$onChanges = () => {\n const props = toProps(propNames, this, $q);\n ReactDOM.render(\n \n \n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n \n \n ,\n el\n );\n };\n this.$onDestroy = () => ReactDOM.unmountComponentAtNode(el);\n }\n}\n\nexport const r2a = react2angular;\n","import { PropsWithChildren } from 'react';\nimport clsx from 'clsx';\n\nimport './BEFeatureIndicator.css';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\n\nimport { getFeatureDetails } from './utils';\n\nexport interface Props {\n featureId?: FeatureId;\n showIcon?: boolean;\n className?: string;\n}\n\nexport function BEFeatureIndicator({\n featureId,\n children,\n showIcon = true,\n className = '',\n}: PropsWithChildren) {\n const { url, limitedToBE } = getFeatureDetails(featureId);\n\n if (!limitedToBE) {\n return null;\n }\n\n return (\n \n {children}\n {showIcon && (\n \n )}\n \n Business Edition Feature\n \n \n );\n}\n","import { FeatureId } from '@/portainer/feature-flags/enums';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nconst BE_URL = 'https://www.portainer.io/business-upsell?from=';\n\nexport function getFeatureDetails(featureId?: FeatureId) {\n if (!featureId) {\n return {};\n }\n const url = `${BE_URL}${featureId}`;\n\n const limitedToBE = isLimitedToBE(featureId);\n\n return { url, limitedToBE };\n}\n","import { Icon, IconProps } from '@@/Icon';\n\ntype Props = IconProps;\n\nexport function BadgeIcon({ icon, featherIcon }: Props) {\n return (\n \n \n
\n );\n}\n","import { Edit, FileText, Globe, Upload } from 'react-feather';\n\nimport GitIcon from '@/assets/ico/git.svg?c';\n\nimport { BadgeIcon } from '../BadgeIcon';\nimport { BoxSelectorOption } from '../types';\n\nexport const editor: BoxSelectorOption<'editor'> = {\n id: 'method_editor',\n icon: ,\n label: 'Web editor',\n description: 'Use our Web editor',\n value: 'editor',\n};\nexport const upload: BoxSelectorOption<'upload'> = {\n id: 'method_upload',\n icon: ,\n label: 'Upload',\n description: 'Upload from your computer',\n value: 'upload',\n};\nexport const git: BoxSelectorOption<'repository'> = {\n id: 'method_repository',\n icon: ,\n label: 'Repository',\n description: 'Use a git repository',\n value: 'repository',\n};\n\nexport const template: BoxSelectorOption<'template'> = {\n id: 'method_template',\n icon: ,\n label: 'Template',\n description: 'Use an Edge stack template',\n value: 'template',\n};\n\nexport const url: BoxSelectorOption<'url'> = {\n id: 'method_url',\n icon: ,\n label: 'URL',\n description: 'Specify a URL to a file',\n value: 'url',\n};\n","import Kubernetes from '@/assets/ico/vendor/kubernetes.svg?c';\nimport DockerCompose from '@/assets/ico/vendor/docker-compose.svg?c';\n\nimport { BoxSelectorOption } from '../types';\n\nexport const kubernetes: BoxSelectorOption<'kubernetes'> = {\n id: 'method_kubernetes',\n icon: Kubernetes,\n label: 'Kubernetes',\n description: 'Kubernetes manifest format',\n value: 'kubernetes',\n};\n\nexport const compose: BoxSelectorOption<'compose'> = {\n id: 'method_compose',\n icon: DockerCompose,\n label: 'Compose',\n description: 'docker-compose format',\n value: 'compose',\n};\n","import { HelpCircle } from 'react-feather';\nimport ReactTooltip from 'react-tooltip';\n\ninterface Props {\n tooltipId: string;\n}\n\nexport function LimitedToBeIndicator({ tooltipId }: Props) {\n return (\n <>\n
\n
\n Pro Feature\n \n
\n
\n \n Business Edition feature.
\n This feature is currently limited to Business Edition users only.\n \n \n );\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren } from 'react';\nimport ReactTooltip from 'react-tooltip';\n\nimport './BoxSelectorItem.css';\n\nimport { BoxSelectorOption } from './types';\n\ninterface Props {\n radioName: string;\n option: BoxSelectorOption;\n onChange?(value: T): void;\n selectedValue: T;\n disabled?: boolean;\n tooltip?: string;\n className?: string;\n type?: 'radio' | 'checkbox';\n}\n\nexport function BoxOption({\n radioName,\n option,\n onChange = () => {},\n selectedValue,\n disabled,\n tooltip,\n className,\n type = 'radio',\n children,\n}: PropsWithChildren>) {\n const tooltipId = `box-option-${radioName}-${option.id}`;\n return (\n \n onChange(option.value)}\n />\n\n \n {tooltip && (\n \n {tooltip}\n \n )}\n \n );\n}\n","import clsx from 'clsx';\n\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\nimport { Icon } from '@/react/components/Icon';\n\nimport './BoxSelectorItem.css';\n\nimport { BoxSelectorOption } from './types';\nimport { LimitedToBeIndicator } from './LimitedToBeIndicator';\nimport { BoxOption } from './BoxOption';\n\ninterface Props {\n radioName: string;\n option: BoxSelectorOption;\n onChange?(value: T, limitedToBE: boolean): void;\n selectedValue: T;\n disabled?: boolean;\n tooltip?: string;\n}\n\nexport function BoxSelectorItem({\n radioName,\n option,\n onChange = () => {},\n selectedValue,\n disabled,\n tooltip,\n}: Props) {\n const limitedToBE = isLimitedToBE(option.feature);\n\n const beIndicatorTooltipId = `box-selector-item-${radioName}-${option.id}-limited`;\n return (\n onChange(value, limitedToBE)}\n tooltip={tooltip}\n >\n <>\n {limitedToBE && (\n \n )}\n
\n
\n {!!option.icon && (\n \n )}\n
\n
{option.label}
\n

{option.description}

\n
\n \n \n );\n}\n","import clsx from 'clsx';\n\nimport './BoxSelector.css';\nimport styles from './BoxSelector.module.css';\nimport { BoxSelectorItem } from './BoxSelectorItem';\nimport { BoxSelectorOption } from './types';\n\nexport interface Props {\n radioName: string;\n value: T;\n onChange(value: T, limitedToBE: boolean): void;\n options: BoxSelectorOption[];\n}\n\nexport function BoxSelector({\n radioName,\n value,\n options,\n onChange,\n}: Props) {\n return (\n
\n
\n \n {options\n .filter((option) => !option.hide)\n .map((option) => (\n \n ))}\n
\n
\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-components-BoxSelector-BoxSelector-module__root\"};","import clsx from 'clsx';\n\nimport { Button } from '@@/buttons';\nimport { useCopy } from '@@/buttons/CopyButton/useCopy';\n\nimport styles from './Code.module.css';\n\ninterface Props {\n showCopyButton?: boolean;\n children: string;\n}\n\nexport function Code({ children, showCopyButton }: Props) {\n const { handleCopy, copiedSuccessfully } = useCopy(children);\n\n return (\n
\n {children}\n\n {showCopyButton && (\n \n )}\n
\n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"code\":\"app-react-components-Code-Code-module__code\",\"root\":\"app-react-components-Code-Code-module__root\",\"copyButton\":\"app-react-components-Code-Code-module__copy-button\"};","import { PropsWithChildren } from 'react';\n\nimport './DashboardGrid.css';\n\nexport function DashboardGrid({ children }: PropsWithChildren) {\n return
{children}
;\n}\n","import { ReactNode } from 'react';\nimport clsx from 'clsx';\n\nimport { Icon, IconProps } from '@/react/components/Icon';\nimport { pluralize } from '@/portainer/helpers/strings';\n\ninterface Props extends IconProps {\n value?: number;\n type: string;\n children?: ReactNode;\n}\n\nexport function DashboardItem({\n value,\n icon,\n type,\n children,\n featherIcon,\n}: Props) {\n return (\n \n
\n \n \n
\n\n
\n \n {typeof value !== 'undefined' ? value : '-'}\n
\n \n {pluralize(value || 0, type)}\n \n \n\n
{children}
\n \n \n );\n}\n","import { ReactNode } from 'react';\n\ninterface Props {\n children?: ReactNode;\n label: string;\n}\n\nexport function DetailsRow({ label, children }: Props) {\n return (\n \n {label}\n {children && {children}}\n \n );\n}\n","import { DetailsTable as MainComponent } from './DetailsTable';\nimport { DetailsRow } from './DetailsRow';\n\ninterface DetailsTableSubcomponents {\n Row: typeof DetailsRow;\n}\n\nconst DetailsTable = MainComponent as typeof MainComponent &\n DetailsTableSubcomponents;\n\nDetailsTable.Row = DetailsRow;\n\nexport { DetailsTable };\n","import { PropsWithChildren } from 'react';\n\ntype Props = {\n headers?: string[];\n dataCy?: string;\n};\n\nexport function DetailsTable({\n headers = [],\n dataCy,\n children,\n}: PropsWithChildren) {\n return (\n \n {headers.length > 0 && (\n \n \n {headers.map((header) => (\n \n ))}\n \n \n )}\n {children}\n
{header}
\n );\n}\n","var _path, _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgAgent = function SvgAgent(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#agent_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"m15.005 13.25-6.25 7.5h5.625l-.625 5 6.25-7.5H14.38l.625-5Z\",\n stroke: \"#0086C9\",\n strokeWidth: 1.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"agent_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n transform: \"translate(6.88 12)\",\n d: \"M0 0h15v15H0z\"\n })))));\n};\n\nexport default SvgAgent;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgApi = function SvgApi(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M9.328 23.154v-.126c0-1.061 0-1.592.206-1.997.182-.356.472-.646.828-.828.405-.206.936-.206 1.997-.206h4.042c1.061 0 1.592 0 1.997.206.357.182.646.472.828.828.207.405.207.936.207 1.997v.126m-10.105 0a1.263 1.263 0 1 0 0 2.527 1.263 1.263 0 0 0 0-2.527Zm10.105 0a1.263 1.263 0 1 0 0 2.527 1.263 1.263 0 0 0 0-2.527Zm-5.053 0a1.263 1.263 0 1 0 0 2.527 1.263 1.263 0 0 0 0-2.527Zm0 0V16.84m-3.79 0h7.58c.588 0 .882 0 1.114-.096.31-.129.556-.374.684-.684.096-.232.096-.526.096-1.115s0-.883-.096-1.115a1.263 1.263 0 0 0-.684-.684c-.232-.096-.526-.096-1.114-.096h-7.58c-.588 0-.882 0-1.114.097-.31.128-.556.374-.684.683-.096.232-.096.526-.096 1.115s0 .883.096 1.115c.128.31.374.555.684.684.232.096.526.096 1.115.096Z\",\n stroke: \"#0086C9\",\n strokeWidth: 1.15,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgApi;","var _path, _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgEdgeAgent = function SvgEdgeAgent(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#edge-agent_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.13 18.25h-.788a5 5 0 1 0-4.837 6.25h5.625a3.125 3.125 0 0 0 0-6.25Z\",\n stroke: \"#0086C9\",\n strokeWidth: 1.333,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"edge-agent_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n transform: \"translate(6.88 12)\",\n d: \"M0 0h15v15H0z\"\n })))));\n};\n\nexport default SvgEdgeAgent;","var _path, _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgImport = function SvgImport(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 37 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.882 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C7.1 33.453.795 27.143.795 19.365.795 11.587 7.1 5.28 14.882 5.28Z\",\n fill: \"#E0F2FE\"\n })), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#import_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n d: \"m17.38 22-2.5-2.5m0 0-2.5 2.5m2.5-2.5v5.626m5.244-1.631a3.125 3.125 0 0 0-1.494-5.87h-.787a5 5 0 1 0-8.588 4.563\",\n stroke: \"#0086C9\",\n strokeWidth: 1.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"import_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n transform: \"translate(7.38 12)\",\n d: \"M0 0h15v15H0z\"\n })))));\n};\n\nexport default SvgImport;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgSocket = function SvgSocket(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.38 23.503c2.6 0 4.708-2.108 4.708-4.709v-2.442h-2.355m-2.353 7.15a4.708 4.708 0 0 1-4.708-4.708v-2.442h7.061m-2.353 7.15c0 1.457 0 3.07 2.353 3.07h1.046m-1.046-10.22v-2.925m-4.711 2.925v-2.925\",\n stroke: \"#0086C9\",\n strokeWidth: 1.33,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgSocket;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgArrowsUpdown = function SvgArrowsUpdown(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M50 87.5v-75m0 75 17.678-17.678M50 87.5 32.322 69.822M50 12.5 32.322 30.178M50 12.5l17.678 17.678\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgArrowsUpdown;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgArrowRightLong = function SvgArrowRightLong(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2.015 12H23m0 0-7-7m7 7-7 7\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgArrowRightLong;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgBomb = function SvgBomb(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M39.584 91.666c17.258 0 31.25-13.99 31.25-31.25 0-17.258-13.992-31.25-31.25-31.25-17.26 0-31.25 13.992-31.25 31.25 0 17.26 13.99 31.25 31.25 31.25Z\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.834 62.5c0-11.506 9.327-20.834 20.833-20.834M71.65 9.349V4.166M85.416 14.74l3.665-3.664m-3.822 31.093 3.665 3.664M57.83 14.74l-3.665-3.664M90.651 28.35h5.182m-32.83 8.648L75 25\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgBomb;","var _rect, _path, _rect2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgChecked = function SvgChecked(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 17 16\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _rect || (_rect = /*#__PURE__*/React.createElement(\"rect\", {\n x: 1.214,\n y: 0.5,\n width: 15,\n height: 15,\n rx: 7.5,\n fill: \"#0086C9\"\n })), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m12.047 5.5-4.583 4.583L5.381 8\",\n stroke: \"#fff\",\n strokeWidth: 1.667,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _rect2 || (_rect2 = /*#__PURE__*/React.createElement(\"rect\", {\n x: 1.214,\n y: 0.5,\n width: 15,\n height: 15,\n rx: 7.5,\n stroke: \"#0086C9\"\n })));\n};\n\nexport default SvgChecked;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgCircleNotch = function SvgCircleNotch(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M37.199 10.337C20.449 15.738 8.333 31.454 8.333 50c0 23.012 18.655 41.667 41.667 41.667S91.667 73.012 91.667 50c0-18.546-12.117-34.262-28.866-39.663\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgCircleNotch;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgClockRewind = function SvgClockRewind(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m22.7 13.5-2-2-2 2M21 12a9 9 0 1 1-1.245-4.57M12 7v5l3 2\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgClockRewind;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgCompress = function SvgCompress(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M87.769 12.231 66.935 33.065m0 0H87.77m-20.834 0V12.23m-54.639.065 10.417 10.417L33.13 33.13m0 0V12.296m0 20.834H12.296m75.108 54.274L66.571 66.571m0 0v20.833m0-20.833h20.833M12.635 87.365 33.47 66.53m0 0H12.635m20.834 0v20.834\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgCompress;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgCubes = function SvgCubes(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m11.7 13.533-4.734 2.63m0 0-4.732-2.63m4.732 2.63v5.289m5.012-3.03v-4.52m0 4.52c0 .19 0 .286-.028.371a.558.558 0 0 1-.12.203c-.06.066-.144.112-.31.205L7.4 21.49c-.159.088-.238.132-.321.149a.557.557 0 0 1-.225 0c-.083-.017-.162-.061-.32-.15l-4.12-2.288c-.167-.093-.25-.14-.311-.205a.557.557 0 0 1-.12-.203c-.028-.085-.028-.18-.028-.37v-4.52c0-.191 0-.287.028-.372a.557.557 0 0 1 .12-.202c.06-.066.144-.113.31-.205l4.12-2.29c.159-.087.238-.13.321-.148a.557.557 0 0 1 .225 0c.083.017.162.061.32.149l4.12 2.289c.167.092.25.139.311.205a.558.558 0 0 1 .12.202c.028.085.028.18.028.372m0 4.52c0 .19 0 .285.028.37a.556.556 0 0 0 .119.203c.06.066.144.112.31.205l4.121 2.289c.158.088.237.132.32.149.075.015.151.015.225 0 .084-.017.163-.061.32-.15l4.12-2.288c.168-.093.25-.14.312-.205a.558.558 0 0 0 .119-.203c.028-.085.028-.18.028-.37v-4.52c0-.191 0-.287-.028-.372a.558.558 0 0 0-.12-.202c-.06-.066-.143-.113-.31-.205l-4.12-2.29c-.159-.087-.237-.13-.321-.148a.558.558 0 0 0-.224 0c-.084.017-.163.061-.32.149l-4.121 2.289c-.167.092-.25.139-.311.205a.556.556 0 0 0-.12.202c-.027.085-.027.18-.027.372m4.755-8.695L12 7.838m0 0-4.733-2.63M12 7.838v5.29m9.721.405-4.732 2.63m0 0-4.733-2.63m4.733 2.63v5.289m.022-11.355v-4.52c0-.19 0-.285-.028-.37a.556.556 0 0 0-.12-.203c-.06-.066-.143-.112-.31-.205l-4.12-2.289c-.158-.088-.237-.132-.32-.149a.557.557 0 0 0-.225 0c-.084.017-.163.061-.32.15l-4.12 2.288c-.168.093-.251.14-.312.205a.557.557 0 0 0-.119.203c-.028.085-.028.18-.028.37v4.52c0 .191 0 .287.028.372a.557.557 0 0 0 .12.202c.06.066.143.113.31.205l4.12 2.29c.158.087.237.13.32.148.075.015.151.015.225 0 .084-.017.163-.061.32-.149l4.121-2.289c.167-.092.25-.139.31-.205a.557.557 0 0 0 .12-.202c.028-.085.028-.18.028-.372Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgCubes;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgCustom = function SvgCustom(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.778-6.306 14.084-14.083 14.084C6.6 33.453.295 27.143.295 19.365.295 11.586 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M18.059 25.043h-7.645c-.44 0-.847-.17-1.158-.481a1.625 1.625 0 0 1-.478-1.158V15.76c0-.435.171-.847.482-1.157.31-.311.722-.482 1.158-.482h3.822a.549.549 0 0 1 0 1.095h-3.822a.54.54 0 0 0-.388.16.54.54 0 0 0-.16.388v7.642a.54.54 0 0 0 .16.387.54.54 0 0 0 .388.16h7.641a.54.54 0 0 0 .387-.16.54.54 0 0 0 .16-.387v-3.823a.549.549 0 0 1 1.096 0v3.823c0 .436-.171.848-.482 1.158-.31.31-.721.482-1.157.482l-.004-.004Zm-5.458-3.275a.547.547 0 0 1-.53-.68l.544-2.184a.544.544 0 0 1 .143-.255l5.186-5.186c.645-.645 1.765-.645 2.41 0 .32.32.499.75.499 1.203 0 .454-.178.883-.5 1.204l-5.185 5.186a.546.546 0 0 1-.255.143l-2.183.548a.58.58 0 0 1-.133.017l.004.004Zm1.04-2.452-.29 1.154 1.154-.29 5.078-5.078a.607.607 0 0 0 .178-.432.607.607 0 0 0-.178-.433.628.628 0 0 0-.865 0l-5.078 5.079Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgCustom;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDataflow1 = function SvgDataflow1(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 20h-.2c-1.68 0-2.52 0-3.162-.327a3 3 0 0 1-1.311-1.311C12 17.72 12 16.88 12 15.2V8.8c0-1.68 0-2.52.327-3.162a3 3 0 0 1 1.311-1.311C14.28 4 15.12 4 16.8 4h.2m0 16a2 2 0 1 0 4 0 2 2 0 0 0-4 0Zm0-16a2 2 0 1 0 4 0 2 2 0 0 0-4 0ZM7 12h10M7 12a2 2 0 1 1-4 0 2 2 0 0 1 4 0Zm10 0a2 2 0 1 0 4 0 2 2 0 0 0-4 0Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgDataflow1;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDataflow2 = function SvgDataflow2(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 18v-.2c0-1.68 0-2.52.327-3.162a3 3 0 0 1 1.311-1.311C6.28 13 7.12 13 8.8 13h6.4c1.68 0 2.52 0 3.162.327a3 3 0 0 1 1.311 1.311C20 15.28 20 16.12 20 17.8v.2M4 18a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm16 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm-8 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm0 0V8M6 8h12c.932 0 1.398 0 1.765-.152a2 2 0 0 0 1.083-1.083C21 6.398 21 5.932 21 5c0-.932 0-1.398-.152-1.765a2 2 0 0 0-1.083-1.083C19.398 2 18.932 2 18 2H6c-.932 0-1.398 0-1.765.152a2 2 0 0 0-1.083 1.083C3 3.602 3 4.068 3 5c0 .932 0 1.398.152 1.765a2 2 0 0 0 1.083 1.083C4.602 8 5.068 8 6 8Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgDataflow2;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgExpand = function SvgExpand(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M66.667 33.333 87.5 12.5m0 0H66.667m20.833 0v20.833m-54.167 0L12.5 12.5m0 0v20.833m0-20.833h20.833m0 54.167L12.5 87.5m0 0h20.833m-20.833 0V66.667m54.167 0L87.5 87.5m0 0V66.667m0 20.833H66.667\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgExpand;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgFileCode = function SvgFileCode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58.333 9.457v17.21c0 2.334 0 3.5.455 4.392a4.167 4.167 0 0 0 1.82 1.82c.892.455 2.059.455 4.392.455h17.21M58.334 72.917 68.75 62.5 58.333 52.084m-16.666 0L31.25 62.5l10.417 10.417m41.666-31.3v30.05c0 7 0 10.5-1.362 13.175a12.5 12.5 0 0 1-5.463 5.462c-2.674 1.363-6.174 1.363-13.175 1.363H36.667c-7.001 0-10.501 0-13.175-1.363a12.5 12.5 0 0 1-5.463-5.462c-1.362-2.674-1.362-6.174-1.362-13.175V28.333c0-7 0-10.5 1.362-13.174a12.5 12.5 0 0 1 5.463-5.463c2.674-1.362 6.174-1.362 13.175-1.362h13.382c3.057 0 4.586 0 6.025.345a12.5 12.5 0 0 1 3.613 1.496c1.261.773 2.342 1.854 4.504 4.016l13.284 13.285c2.162 2.162 3.243 3.242 4.016 4.504a12.498 12.498 0 0 1 1.497 3.613c.345 1.439.345 2.967.345 6.025Z\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgFileCode;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgFileSignature = function SvgFileSignature(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M58.333 9.457v17.21c0 2.334 0 3.5.455 4.392a4.167 4.167 0 0 0 1.82 1.82c.892.455 2.058.455 4.392.455h17.21M37.5 66.667 45.833 75l18.75-18.75m-6.25-47.916H36.667c-7.001 0-10.501 0-13.175 1.362a12.5 12.5 0 0 0-5.463 5.463c-1.362 2.673-1.362 6.174-1.362 13.175v43.333c0 7 0 10.5 1.362 13.175a12.5 12.5 0 0 0 5.463 5.462c2.674 1.363 6.174 1.363 13.175 1.363h26.666c7.001 0 10.501 0 13.175-1.363a12.5 12.5 0 0 0 5.463-5.462c1.362-2.674 1.362-6.174 1.362-13.175V33.333l-25-25Z\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgFileSignature;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgFileUpload = function SvgFileUpload(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n xmlns: \"http://www.w3.org/2000/svg\",\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\",\n className: \"file-upload_svg__feather file-upload_svg__feather-book\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4 19.5A2.5 2.5 0 0 1 6.5 17H20\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M6.5 2H20v20H6.5A2.5 2.5 0 0 1 4 19.5v-15A2.5 2.5 0 0 1 6.5 2z\"\n })));\n};\n\nexport default SvgFileUpload;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgFlask = function SvgFlask(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M37.5 25v18.755c0 2.296 0 3.444-.286 4.507a8.333 8.333 0 0 1-1.232 2.631c-.634.9-1.516 1.636-3.28 3.105L17.299 66.836c-1.764 1.47-2.646 2.204-3.28 3.105a8.333 8.333 0 0 0-1.232 2.63c-.286 1.064-.286 2.212-.286 4.508v1.255c0 4.667 0 7 .908 8.783a8.334 8.334 0 0 0 3.642 3.642c1.783.908 4.116.908 8.783.908h48.334c4.667 0 7 0 8.783-.908a8.334 8.334 0 0 0 3.642-3.642c.908-1.783.908-4.116.908-8.784V77.08c0-2.296 0-3.444-.286-4.507a8.333 8.333 0 0 0-1.232-2.631c-.634-.901-1.516-1.636-3.28-3.105L67.299 53.998c-1.764-1.47-2.646-2.204-3.28-3.105a8.335 8.335 0 0 1-1.232-2.63c-.286-1.064-.286-2.212-.286-4.508V25m-27.917 0h30.834c1.166 0 1.75 0 2.195-.227.392-.2.711-.518.91-.91.228-.446.228-1.03.228-2.196v-10c0-1.167 0-1.75-.227-2.196-.2-.392-.519-.71-.91-.91-.446-.227-1.03-.227-2.196-.227H34.583c-1.166 0-1.75 0-2.195.227-.392.2-.711.518-.91.91-.228.446-.228 1.03-.228 2.196v10c0 1.167 0 1.75.227 2.196.2.392.518.71.91.91.446.227 1.03.227 2.196.227ZM22.917 70.834h54.166c1.936 0 2.904 0 3.71.16a8.333 8.333 0 0 1 6.547 6.547c.16.805.16 1.773.16 3.71 0 1.935 0 2.903-.16 3.708a8.333 8.333 0 0 1-6.548 6.548c-.805.16-1.773.16-3.709.16H22.917c-1.936 0-2.904 0-3.71-.16a8.333 8.333 0 0 1-6.547-6.548c-.16-.805-.16-1.773-.16-3.709 0-1.936 0-2.904.16-3.709a8.333 8.333 0 0 1 6.548-6.547c.805-.16 1.773-.16 3.709-.16Z\",\n stroke: \"currentColor\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgFlask;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgHacker = function SvgHacker(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M43.542 76.025c4.057-1.836 9.097-1.836 13.154 0m-17.007-6.086c5.137 4.023 5.137 10.545 0 14.569-5.137 4.023-13.466 4.023-18.603 0-5.137-4.024-5.137-10.546 0-14.57 5.137-4.022 13.466-4.022 18.603 0Zm39.463 0c5.137 4.023 5.137 10.545 0 14.569-5.137 4.023-13.466 4.023-18.603 0-5.137-4.024-5.137-10.546 0-14.57 5.137-4.022 13.466-4.022 18.603 0ZM28.714 40.747C15.866 42.067 8.27 45.065 8.27 47.982c0 4.276 18.683 7.743 41.729 7.743s41.73-3.467 41.73-7.743c0-2.51-6.697-5.406-16.676-6.82M28.854 40.24l8.519-25.635 8.47 5.987s5.948-2.493 9.317-3.95c4.767-2.063 11.72-4.167 11.72-4.167l3.991 13.882 3.99 13.883\",\n stroke: \"#000\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgHacker;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgHeartbeat = function SvgHeartbeat(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.5 11.5h-1l-1.5 3-2-6-1.5 3h-1m3.493-6.364c-2-2.338-5.333-2.966-7.838-.826s-2.858 5.719-.89 8.25c1.485 1.912 5.706 5.751 7.683 7.515.363.324.545.486.758.55.184.055.39.055.575 0 .212-.064.394-.226.757-.55 1.977-1.764 6.198-5.603 7.684-7.515 1.967-2.531 1.658-6.132-.89-8.25-2.549-2.118-5.84-1.512-7.839.826Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgHeartbeat;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgLaptop = function SvgLaptop(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 25\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21 16.592v-8.8c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874c-.428-.218-.988-.218-2.108-.218H6.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C3 6.112 3 6.672 3 7.792v8.8m1.667 4h14.666c.62 0 .93 0 1.185-.068a2 2 0 0 0 1.414-1.415c.068-.254.068-.564.068-1.184 0-.31 0-.465-.034-.592a1 1 0 0 0-.707-.707c-.127-.034-.282-.034-.592-.034H3.333c-.31 0-.465 0-.592.034a1 1 0 0 0-.707.707C2 17.46 2 17.615 2 17.925c0 .62 0 .93.068 1.184a2 2 0 0 0 1.414 1.415c.255.068.565.068 1.185.068Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgLaptop;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgLaptopCode = function SvgLaptopCode(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 25 25\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M21.089 16.592v-8.8c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874c-.428-.218-.988-.218-2.108-.218h-11.6c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874c-.218.428-.218.988-.218 2.108v8.8m1.666 4h14.667c.62 0 .93 0 1.184-.068a2 2 0 0 0 1.414-1.415c.069-.254.069-.564.069-1.184 0-.31 0-.465-.034-.592a1 1 0 0 0-.708-.707c-.127-.034-.282-.034-.592-.034H3.422c-.31 0-.465 0-.592.034a1 1 0 0 0-.707.707c-.034.127-.034.282-.034.592 0 .62 0 .93.068 1.184a2 2 0 0 0 1.414 1.415c.254.068.564.068 1.184.068Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m14.089 13.582 2.5-2.5-2.5-2.5m-4 0-2.5 2.5 2.5 2.5\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgLaptopCode;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgMagic = function SvgMagic(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m13 14-3-3m5.01-7.5V2m3.94 3.06L20.01 4m-1.06 9 1.06 1.06m-9-9L9.95 4m10.56 5h1.5M6.131 20.869l9.238-9.238c.396-.396.594-.594.668-.822a1 1 0 0 0 0-.618c-.074-.228-.272-.426-.668-.822l-.737-.738c-.397-.396-.595-.594-.823-.668a1 1 0 0 0-.618 0c-.228.074-.426.272-.822.668L3.13 17.87c-.396.396-.594.594-.668.822a1 1 0 0 0 0 .618c.074.228.272.426.668.822l.738.738c.396.396.594.594.822.668a1 1 0 0 0 .618 0c.228-.074.426-.272.822-.668Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgMagic;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgMagicWand = function SvgMagicWand(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m54.167 58.334-12.5-12.5m20.876-31.25v-6.25m16.414 12.752 4.42-4.42m-4.42 37.5 4.42 4.42m-37.5-37.5-4.42-4.42M85.46 37.5h6.25M25.548 86.953l38.488-38.489c1.65-1.65 2.475-2.475 2.784-3.426a4.167 4.167 0 0 0 0-2.575c-.309-.952-1.134-1.777-2.784-3.427l-3.072-3.072c-1.65-1.65-2.475-2.475-3.426-2.784a4.167 4.167 0 0 0-2.575 0c-.952.31-1.777 1.134-3.427 2.784L13.047 74.453c-1.65 1.65-2.475 2.475-2.784 3.426a4.166 4.166 0 0 0 0 2.575c.31.952 1.134 1.777 2.784 3.427l3.072 3.072c1.65 1.65 2.476 2.475 3.427 2.784a4.167 4.167 0 0 0 2.575 0c.951-.31 1.776-1.134 3.427-2.784Z\",\n stroke: \"#000\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgMagicWand;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgMemory = function SvgMemory(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.5 18.3v2.58m2.5-9.84v-3M5.5 18.3v2.58M10 18.3v2.58m0-2.58h5.2c1.68 0 4.658 0 5.3-.327a3 3 0 0 0 1.311-1.311c.243-.477.305-1.183.322-2.142M10 18.3H8.8c-1.68 0-4.52 0-5.162-.327a3 3 0 0 1-1.311-1.311c-.243-.477-.305-1.183-.321-2.142M19 18.3v2.58m-6.88-9.84v-3m-5.04 3v-3m-5.074 6.48C2 14.188 2 13.932 2 13.5V8.8c0-1.68 0-2.52.327-3.162a3 3 0 0 1 1.311-1.311C4.28 4 7.12 4 8.8 4h6.4c1.68 0 4.658 0 5.3.327a3 3 0 0 1 1.311 1.311c.327.642.327 1.482.327 3.162v4.7c0 .432 0 .688-.006 1.02m-20.126 0h20.127\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgMemory;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgObjectGroup = function SvgObjectGroup(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M19 7v10M5 7v10M17 5H7m10 14H7M4.6 7h.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C7 6.24 7 5.96 7 5.4v-.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C6.24 3 5.96 3 5.4 3h-.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 3.76 3 4.04 3 4.6v.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 7 4.04 7 4.6 7Zm0 14h.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C7 20.24 7 19.96 7 19.4v-.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C6.24 17 5.96 17 5.4 17h-.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C3 17.76 3 18.04 3 18.6v.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C3.76 21 4.04 21 4.6 21Zm14-14h.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 6.24 21 5.96 21 5.4v-.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 3 19.96 3 19.4 3h-.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C17 3.76 17 4.04 17 4.6v.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C17.76 7 18.04 7 18.6 7Zm0 14h.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C21 20.24 21 19.96 21 19.4v-.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C20.24 17 19.96 17 19.4 17h-.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C17 17.76 17 18.04 17 18.6v.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437C17.76 21 18.04 21 18.6 21Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgObjectGroup;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgPalette = function SvgPalette(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M2 12c0 5.523 4.477 10 10 10a3 3 0 0 0 3-3v-.5c0-.464 0-.697.026-.892a3 3 0 0 1 2.582-2.582c.195-.026.428-.026.892-.026h.5a3 3 0 0 0 3-3c0-5.523-4.477-10-10-10S2 6.477 2 12Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M7 13a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM16 9a1 1 0 1 0 0-2 1 1 0 0 0 0 2ZM10 8a1 1 0 1 0 0-2 1 1 0 0 0 0 2Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgPalette;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgPlug = function SvgPlug(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M12 17.856a7.872 7.872 0 0 0 7.872-7.872V5.9h-3.937M12 17.856a7.872 7.872 0 0 1-7.872-7.872V5.9h11.807M12 17.856c0 2.436 0 5.133 3.935 5.133h1.287M15.935 5.9V1.01M8.057 5.9V1.01\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgPlug;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgRestore = function SvgRestore(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M16 5.443v-.8c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874c-.428-.218-.988-.218-2.108-.218h-1.6c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C8 2.963 8 3.523 8 4.643v.8m-5 0h18m-2 0v11.2c0 1.68 0 2.52-.327 3.162a3 3 0 0 1-1.311 1.311c-.642.327-1.482.327-3.162.327H9.8c-1.68 0-2.52 0-3.162-.327a3 3 0 0 1-1.311-1.31C5 19.163 5 18.322 5 16.642v-11.2m7 11.062v-6m0 0 3 3m-3-3-3 3\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgRestore;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgRestoreWindow = function SvgRestoreWindow(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M10.5 2.003c-.675.009-1.08.048-1.408.215a2 2 0 0 0-.874.874c-.167.328-.206.733-.215 1.408M19.5 2.003c.675.009 1.08.048 1.408.215a2 2 0 0 1 .874.874c.167.328.206.733.215 1.408m0 9c-.009.675-.048 1.08-.215 1.408a2 2 0 0 1-.874.874c-.328.167-.733.206-1.408.215M22 8v2m-8-8h2M5.2 22h7.6c1.12 0 1.68 0 2.108-.218a2 2 0 0 0 .874-.874C16 20.48 16 19.92 16 18.8v-7.6c0-1.12 0-1.68-.218-2.108a2 2 0 0 0-.874-.874C14.48 8 13.92 8 12.8 8H5.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C2 9.52 2 10.08 2 11.2v7.6c0 1.12 0 1.68.218 2.108a2 2 0 0 0 .874.874C3.52 22 4.08 22 5.2 22Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgRestoreWindow;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgRocket = function SvgRocket(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m13 11-9.5 9.5M14.018 3.538a22.614 22.614 0 0 1 3.483 2.855 22.61 22.61 0 0 1 2.876 3.515M9.255 7.896 6.38 6.938a1 1 0 0 0-.962.185L2.56 9.541a1 1 0 0 0 .3 1.701l2.708.998m6.113 6.112.997 2.708a1 1 0 0 0 1.702.3l2.417-2.857a1 1 0 0 0 .186-.962l-.959-2.875M19.348 2.27l-4.906.817a2.443 2.443 0 0 0-1.383.741L6.446 10.9a4.652 4.652 0 0 0 6.576 6.575l7.07-6.613c.391-.367.652-.853.74-1.382l.818-4.907a2 2 0 0 0-2.302-2.301Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgRocket;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgRoute = function SvgRoute(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M11.5 5h.434c3.048 0 4.571 0 5.15.547a2 2 0 0 1 .586 1.845c-.156.781-1.4 1.66-3.888 3.42l-4.064 2.876c-2.488 1.76-3.732 2.639-3.888 3.42a2 2 0 0 0 .586 1.845c.579.547 2.102.547 5.15.547h.934M8 5a3 3 0 1 1-6 0 3 3 0 0 1 6 0Zm14 14a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgRoute;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgShare = function SvgShare(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M20.791 12.607c.244-.209.366-.313.411-.438a.5.5 0 0 0 0-.338c-.045-.124-.167-.23-.41-.438L12.32 4.132c-.42-.36-.63-.54-.809-.545a.5.5 0 0 0-.4.184C11 3.91 11 4.186 11 4.74v4.296a9.666 9.666 0 0 0-8 9.516v.612a11.4 11.4 0 0 1 8-4.092v4.19c0 .553 0 .83.112.968a.5.5 0 0 0 .4.184c.178-.005.388-.185.809-.545l8.47-7.26Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgShare;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgSort = function SvgSort(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 4v16m0 0-4-4m4 4 4-4M7 20V4m0 0L3 8m4-4 4 4\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgSort;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgTachometer = function SvgTachometer(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17.745 16a7.026 7.026 0 0 0 1.094-5.5M6.255 16a7 7 0 0 1 6.982-10.891M16.5 7.5 12 12m10 0c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Zm-9 0a1 1 0 1 1-2 0 1 1 0 0 1 2 0Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgTachometer;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgTemplate = function SvgTemplate(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.778-6.306 14.084-14.083 14.084C6.6 33.453.295 27.143.295 19.365.295 11.586 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M19.353 15.103a.611.611 0 0 0-.703-.703l-2.07.345a14.46 14.46 0 0 1 2.428 2.432l.345-2.074Zm-.79 3.496a13.128 13.128 0 0 0-1.555-1.87 13.13 13.13 0 0 0-1.85-1.542l-2.273 2.43a.546.546 0 0 1-.015.015l-1.694 1.81a2.218 2.218 0 0 0-.297 2.631l3.404-3.403a.6.6 0 1 1 .848.848l-3.39 3.39a2.218 2.218 0 0 0 2.57-.331l1.808-1.692a.626.626 0 0 1 .02-.02l2.424-2.266Zm-1.334 2.89 2.182-2.04a2.08 2.08 0 0 0 .63-1.178l.496-2.97a1.811 1.811 0 0 0-2.084-2.085l-2.972.495a2.08 2.08 0 0 0-1.176.63l-2.041 2.183-1.376-.459a1.205 1.205 0 0 0-1.16.223l-1.73 1.464a1.206 1.206 0 0 0 .361 2.052l1.102.406a3.42 3.42 0 0 0 .55 2.73L8.53 24.424a.6.6 0 1 0 .848.848l1.49-1.49a3.421 3.421 0 0 0 2.675.512l.406 1.1a1.206 1.206 0 0 0 2.052.362l1.464-1.73c.271-.321.356-.76.223-1.16l-.459-1.376Zm-.964.902-1.135 1.062a3.43 3.43 0 0 1-.479.375l.424 1.15.001.003.003.001m.004 0 .002-.002 1.464-1.73a.006.006 0 0 0 0-.005l-.284-.854m-6.34-3.29a3.43 3.43 0 0 1 .375-.478l1.062-1.135-.854-.285-.005.001-1.73 1.464-.003.002\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgTemplate;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgTag2 = function SvgTag2(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M8 8h.01M2 5.2v4.475c0 .489 0 .733.055.963.05.204.13.4.24.579.123.201.296.374.642.72l7.669 7.669c1.188 1.188 1.782 1.782 2.467 2.004a3 3 0 0 0 1.854 0c.685-.222 1.28-.816 2.467-2.004l2.212-2.212c1.188-1.188 1.782-1.782 2.004-2.467a3 3 0 0 0 0-1.854c-.222-.685-.816-1.28-2.004-2.467l-7.669-7.669c-.346-.346-.519-.519-.72-.642a2.001 2.001 0 0 0-.579-.24C10.409 2 10.165 2 9.676 2H5.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C2 3.52 2 4.08 2 5.2Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgTag2;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgTags = function SvgTags(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m21 11-7.594-7.594c-.519-.519-.778-.778-1.081-.964a3.001 3.001 0 0 0-.867-.36C11.112 2 10.745 2 10.012 2H6m1.928 7.857h.01M3 8.7v1.975c0 .489 0 .733.055.963.05.204.13.4.24.579.123.201.296.374.642.72l7.8 7.8c.792.792 1.188 1.188 1.645 1.337a2 2 0 0 0 1.236 0c.457-.149.853-.545 1.645-1.337l2.474-2.474c.792-.792 1.188-1.188 1.337-1.645a2 2 0 0 0 0-1.236c-.149-.457-.545-.853-1.337-1.645l-7.3-7.3c-.346-.346-.519-.519-.72-.642a2.001 2.001 0 0 0-.579-.24c-.23-.055-.474-.055-.963-.055H6.2c-1.12 0-1.68 0-2.108.218a2 2 0 0 0-.874.874C3 7.02 3 7.58 3 8.7Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgTags;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgTools = function SvgTools(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m6 6 4.5 4.5M6 6H3L2 3l1-1 3 1v3Zm13.259-3.259-2.628 2.628c-.396.396-.594.594-.668.822a1 1 0 0 0 0 .618c.074.228.272.426.668.822l.238.238c.396.396.594.594.822.668a1 1 0 0 0 .618 0c.228-.074.426-.272.822-.668L21.59 5.41a5.5 5.5 0 0 1-6.16 7.485c-.485-.096-.729-.144-.876-.13a.836.836 0 0 0-.373.114c-.13.07-.261.201-.523.463L6.5 20.5a2.121 2.121 0 0 1-3-3l7.157-7.157c.262-.262.393-.393.463-.524a.836.836 0 0 0 .113-.372c.015-.148-.033-.39-.129-.877a5.5 5.5 0 0 1 8.155-5.83ZM12 15l5.5 5.5a2.121 2.121 0 0 0 3-3l-4.525-4.525a5.475 5.475 0 0 1-.934-.17c-.39-.107-.816-.03-1.101.255L12 15Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgTools;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgUpload = function SvgUpload(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 37 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.882 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C7.1 33.453.795 27.143.795 19.365.795 11.587 7.1 5.28 14.882 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M12.796 13.281a5.599 5.599 0 0 1 5.491 3.745h.344a3.725 3.725 0 0 1 1.78 6.995.6.6 0 1 1-.574-1.053 2.524 2.524 0 0 0-1.207-4.742h-.787a.6.6 0 0 1-.58-.45 4.4 4.4 0 1 0-7.558 4.015.6.6 0 1 1-.899.795 5.6 5.6 0 0 1 3.99-9.305Zm1.66 5.796a.6.6 0 0 1 .849 0l2.5 2.5a.6.6 0 1 1-.849.848l-1.475-1.476v4.177a.6.6 0 0 1-1.2 0v-4.177l-1.476 1.476a.6.6 0 0 1-.849-.848l2.5-2.5Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgUpload;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgUrl = function SvgUrl(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.778-6.306 14.084-14.083 14.084C6.6 33.453.295 27.143.295 19.365.295 11.586 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M8.762 18.765h2.548a10.162 10.162 0 0 1 1.706-4.885 5.655 5.655 0 0 0-4.254 4.885Zm5.618-4.722a8.963 8.963 0 0 0-1.866 4.722h3.733a8.963 8.963 0 0 0-1.867-4.722Zm1.867 5.922a8.963 8.963 0 0 1-1.867 4.721 8.963 8.963 0 0 1-1.866-4.721h3.733Zm-4.937 0H8.762a5.655 5.655 0 0 0 4.254 4.884 10.162 10.162 0 0 1-1.706-4.884Zm4.435 4.884a10.163 10.163 0 0 0 1.706-4.884h2.548a5.655 5.655 0 0 1-4.254 4.884Zm4.254-6.084H17.45a10.163 10.163 0 0 0-1.706-4.885 5.654 5.654 0 0 1 4.254 4.885Zm-12.469.6a6.85 6.85 0 1 1 13.7 0 6.85 6.85 0 0 1-13.7 0Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgUrl;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgUserCircle = function SvgUserCircle(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M5.316 19.438A4.001 4.001 0 0 1 9 17h6a4.001 4.001 0 0 1 3.684 2.438M16 9.5a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm6 2.5c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2s10 4.477 10 10Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgUserCircle;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgUserLock = function SvgUserLock(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 24 24\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2M21.25 8.5V6.75a1.75 1.75 0 1 0-3.5 0V8.5M13 7a4 4 0 1 1-8 0 4 4 0 0 1 8 0Zm4.6 5.5h3.8c.56 0 .84 0 1.054-.109a1 1 0 0 0 .437-.437C23 11.74 23 11.46 23 10.9v-.8c0-.56 0-.84-.109-1.054a1 1 0 0 0-.437-.437C22.24 8.5 21.96 8.5 21.4 8.5h-3.8c-.56 0-.84 0-1.054.109a1 1 0 0 0-.437.437C16 9.26 16 9.54 16 10.1v.8c0 .56 0 .84.109 1.054a1 1 0 0 0 .437.437c.214.109.494.109 1.054.109Z\",\n stroke: \"currentColor\",\n strokeWidth: 2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgUserLock;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgKubernetes2 = function SvgKubernetes2(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 100 100\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M50 8.334v83.333m29.463-71.13L20.537 79.463M91.667 50H8.333m71.13 29.463L20.537 20.537M50 84.722c19.177 0 34.722-15.546 34.722-34.722 0-19.177-15.545-34.723-34.722-34.723-19.176 0-34.722 15.546-34.722 34.723 0 19.176 15.546 34.722 34.722 34.722Z\",\n stroke: \"#000\",\n strokeWidth: 8.2,\n strokeLinecap: \"round\",\n strokeLinejoin: \"round\"\n })));\n};\n\nexport default SvgKubernetes2;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgPlaceholder = function SvgPlaceholder(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 752 752\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M552.21 372.31c-1.11-1.848-2.586-2.957-4.434-3.324l-36.203-9.235c-4.062-1.109-8.128 1.477-8.867 5.543l-8.129 32.88-31.395-7.762-1.476-.371c-1.848-.371-4.063 0-5.543.738-1.848 1.11-2.957 2.586-3.324 4.433l-8.13 32.88-32.878-8.13c-4.063-1.109-8.13 1.477-8.868 5.544l-8.863 32.508-32.879-8.13c-1.848-.37-4.062 0-5.543.739-1.848 1.11-2.957 2.586-3.324 4.434l-.738 2.957-8.496 34.723c-1.11 4.062 1.476 8.128 5.543 8.867l143.33 35.832c1.847.37 3.324.738 5.171.738 9.235 0 17.73-6.281 19.95-15.516l36.202-144.81c.368-1.848-.003-3.691-1.109-5.539zm-137.05 63.535 32.137 8.129c1.848.738 4.434.371 6.281-.738s3.324-3.325 3.324-5.543l6.282-25.488 20.688 27.336-10.344 41.375-65.754-16.625zm87.547 83.117c-.738 3.324-4.063 5.172-7.02 4.434l-136.31-33.984 5.172-20.316 113.04 28.445c.371 0 1.11.37 1.477.37h.371c.371 0 .738 0 1.477-.37h.37c.74 0 1.11-.371 1.477-.739 1.848-1.11 2.957-2.586 3.325-4.433l12.93-52.086c.37-2.215 0-4.434-1.11-6.281l-18.102-23.641 17.73 4.433c4.063 1.11 8.13-1.476 8.867-5.543l8.13-32.879 22.163 5.543zM351.62 434.37c4.063 0 7.387-3.324 7.387-7.387V393h33.617c4.062 0 7.386-3.324 7.386-7.386v-33.617h33.617c4.063 0 7.387-3.325 7.387-7.387v-33.984h30.293c4.063 0 7.387-3.324 7.387-7.387v-65.39a20.653 20.653 0 0 0-20.688-20.689h-235.31a20.653 20.653 0 0 0-20.688 20.688v215a20.653 20.653 0 0 0 20.688 20.688h87.55c4.063 0 7.388-3.324 7.388-7.387V434.75zm33.617-56.148H351.62c-4.063 0-7.387 3.324-7.387 7.387v33.984h-91.242v-22.535l28.812-21.797 25.121 14.406c2.957 1.476 6.281 1.11 8.867-1.11l55.043-53.195 14.406 11.453zm-82.379 80.16h-80.164c-3.324 0-5.91-2.586-5.91-5.91v-214.62c0-3.324 2.586-5.91 5.91-5.91h235.31c3.324 0 5.91 2.585 5.91 5.91v58.367h-29.922c-4.062 0-7.387 3.324-7.387 7.386v33.984h-29.55l-21.798-17.363c-2.957-2.214-7.019-2.214-9.605.372l-56.148 53.566-24.383-14.04c-2.586-1.476-5.91-1.476-8.129.372L241.16 387.46c-1.848 1.476-2.957 3.695-2.957 5.91v33.988c0 1.848.738 3.695 2.215 5.172 1.476 1.476 3.324 2.215 5.172 2.215h57.258z\",\n fill: \"currentColor\",\n stroke: \"currentColor\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M277 329.09c18.469 0 33.246-15.145 33.246-33.246 0-18.469-15.145-33.246-33.246-33.246-18.469 0-33.246 15.145-33.246 33.246-.371 18.102 14.777 33.246 33.246 33.246zm0-52.086c10.344 0 18.469 8.496 18.469 18.469 0 10.344-8.496 18.469-18.469 18.469-10.344 0-18.469-8.496-18.469-18.469-.371-10.34 8.125-18.469 18.469-18.469z\",\n fill: \"currentColor\",\n stroke: \"currentColor\"\n })));\n};\n\nexport default SvgPlaceholder;","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgInternal = function SvgInternal(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M14.382 5.28c7.777 0 14.083 6.306 14.083 14.085 0 7.779-6.306 14.085-14.083 14.085C6.6 33.453.295 27.143.295 19.365.295 11.587 6.6 5.28 14.382 5.28Z\",\n fill: \"#E0F2FE\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M14.38 14.085c-3.026 0-5.479 2.425-5.479 5.416 0 2.991 2.453 5.416 5.48 5.416 3.026 0 5.479-2.425 5.479-5.416 0-2.991-2.453-5.416-5.48-5.416Zm-6.563 5.416c0-3.583 2.939-6.487 6.563-6.487 3.625 0 6.564 2.904 6.564 6.487s-2.939 6.487-6.563 6.487c-3.625 0-6.564-2.904-6.564-6.487Zm6.563-2.916c.3 0 .542.24.542.535v3.468l1.484-1.466a.546.546 0 0 1 .766 0 .531.531 0 0 1 0 .758l-2.408 2.38a.547.547 0 0 1-.767 0l-2.408-2.38a.531.531 0 0 1 0-.758.546.546 0 0 1 .766 0l1.484 1.466V17.12c0-.296.242-.535.541-.535Z\",\n fill: \"#0086C9\"\n })));\n};\n\nexport default SvgInternal;","// theme icons\nimport automode from '@/assets/ico/theme/auto.svg?c';\nimport darkmode from '@/assets/ico/theme/darkmode.svg?c';\nimport lightmode from '@/assets/ico/theme/lightmode.svg?c';\nimport highcontrastmode from '@/assets/ico/theme/highcontrastmode.svg?c';\n// wizard icons\nimport agent from '@/assets/ico/wizard/agent.svg?c';\nimport api from '@/assets/ico/wizard/api.svg?c';\nimport edgeagent from '@/assets/ico/wizard/edge-agent.svg?c';\nimport cloudimport from '@/assets/ico/wizard/import.svg?c';\nimport socket from '@/assets/ico/wizard/socket.svg?c';\n// general icons\nimport arrowsupdown from '@/assets/ico/arrows-updown.svg?c';\nimport arrowright from '@/assets/ico/arrow-right-long.svg?c';\nimport bomb from '@/assets/ico/bomb.svg?c';\nimport checked from '@/assets/ico/checked.svg?c';\nimport circlenotch from '@/assets/ico/circle-notch.svg?c';\nimport clockrewind from '@/assets/ico/clock-rewind.svg?c';\nimport compress from '@/assets/ico/compress.svg?c';\nimport cubes from '@/assets/ico/cubes.svg?c';\nimport custom from '@/assets/ico/custom.svg?c';\nimport dataflow from '@/assets/ico/dataflow-1.svg?c';\nimport dataflow2 from '@/assets/ico/dataflow-2.svg?c';\nimport expand from '@/assets/ico/expand.svg?c';\nimport filecode from '@/assets/ico/file-code.svg?c';\nimport filesignature from '@/assets/ico/file-signature.svg?c';\nimport fileupload from '@/assets/ico/file-upload.svg?c';\nimport flask from '@/assets/ico/flask.svg?c';\nimport git from '@/assets/ico/git.svg?c';\nimport hacker from '@/assets/ico/hacker.svg?c';\nimport heartbeat from '@/assets/ico/heartbeat.svg?c';\nimport laptop from '@/assets/ico/laptop.svg?c';\nimport laptopcode from '@/assets/ico/laptop-code.svg?c';\nimport ldap from '@/assets/ico/ldap.svg?c';\nimport magic from '@/assets/ico/magic.svg?c';\nimport magicwand from '@/assets/ico/magic-wand.svg?c';\nimport memory from '@/assets/ico/memory.svg?c';\nimport objectgroup from '@/assets/ico/object-group.svg?c';\nimport palette from '@/assets/ico/palette.svg?c';\nimport plug from '@/assets/ico/plug.svg?c';\nimport restore from '@/assets/ico/restore.svg?c';\nimport restorewindow from '@/assets/ico/restore-window.svg?c';\nimport rocket from '@/assets/ico/rocket.svg?c';\nimport route from '@/assets/ico/route.svg?c';\nimport share from '@/assets/ico/share.svg?c';\nimport sort from '@/assets/ico/sort.svg?c';\nimport tachometer from '@/assets/ico/tachometer.svg?c';\nimport template from '@/assets/ico/template.svg?c';\nimport tag from '@/assets/ico/tag-2.svg?c';\nimport tag2 from '@/assets/ico/tags.svg?c';\nimport tools from '@/assets/ico/tools.svg?c';\nimport upload from '@/assets/ico/upload.svg?c';\nimport url from '@/assets/ico/url.svg?c';\nimport usercircle from '@/assets/ico/user-circle.svg?c';\nimport userlock from '@/assets/ico/user-lock.svg?c';\nimport kubernetes2 from '@/assets/ico/kubernetes-2.svg?c';\nimport Placeholder from '@/assets/ico/placeholder.svg?c'; // Placeholder is used when an icon name cant be matched\n// vendor icons\nimport aws from '@/assets/ico/vendor/aws.svg?c';\nimport azure from '@/assets/ico/vendor/azure.svg?c';\nimport civo from '@/assets/ico/vendor/civo.svg?c';\nimport digitalocean from '@/assets/ico/vendor/digitalocean.svg?c';\nimport docker from '@/assets/ico/vendor/docker.svg?c';\nimport dockercompose from '@/assets/ico/vendor/docker-compose.svg?c';\nimport ecr from '@/assets/ico/vendor/ecr.svg?c';\nimport github from '@/assets/ico/vendor/github.svg?c';\nimport gitlab from '@/assets/ico/vendor/gitlab.svg?c';\nimport google from '@/assets/ico/vendor/google.svg?c';\nimport googlecloud from '@/assets/ico/vendor/googlecloud.svg?c';\nimport kubernetes from '@/assets/ico/vendor/kubernetes.svg?c';\nimport helm from '@/assets/ico/vendor/helm.svg?c';\nimport linode from '@/assets/ico/vendor/linode.svg?c';\nimport microsoft from '@/assets/ico/vendor/microsoft.svg?c';\nimport nomad from '@/assets/ico/vendor/nomad.svg?c';\nimport openldap from '@/assets/ico/vendor/openldap.svg?c';\nimport proget from '@/assets/ico/vendor/proget.svg?c';\nimport quay from '@/assets/ico/vendor/quay.svg?c';\nimport internal from '@/assets/ico/vendor/internal.svg?c';\n\nconst placeholder = Placeholder;\n\nexport const SvgIcons = {\n agent,\n api,\n edgeagent,\n cloudimport,\n socket,\n automode,\n darkmode,\n lightmode,\n highcontrastmode,\n dataflow,\n dataflow2,\n arrowsupdown,\n arrowright,\n bomb,\n checked,\n circlenotch,\n clockrewind,\n compress,\n cubes,\n custom,\n expand,\n filecode,\n filesignature,\n fileupload,\n flask,\n git,\n hacker,\n heartbeat,\n laptop,\n laptopcode,\n ldap,\n magic,\n magicwand,\n memory,\n objectgroup,\n palette,\n placeholder,\n plug,\n restore,\n restorewindow,\n rocket,\n route,\n share,\n sort,\n tachometer,\n template,\n tag,\n tag2,\n tools,\n upload,\n url,\n usercircle,\n userlock,\n aws,\n azure,\n civo,\n digitalocean,\n docker,\n dockercompose,\n ecr,\n github,\n gitlab,\n google,\n googlecloud,\n kubernetes,\n helm,\n linode,\n microsoft,\n nomad,\n openldap,\n proget,\n quay,\n internal,\n kubernetes2,\n};\n\ninterface SvgProps {\n icon: keyof typeof SvgIcons;\n className?: string;\n}\n\nfunction Svg({ icon, className }: SvgProps) {\n const SvgIcon = SvgIcons[icon];\n\n if (!SvgIcon) {\n return (\n \n \n \n );\n }\n\n return (\n \n \n \n );\n}\n\nexport default Svg;\n","import clsx from 'clsx';\nimport { ComponentType, ReactNode } from 'react';\nimport * as featherIcons from 'react-feather';\nimport { isValidElementType } from 'react-is';\n\nimport Svg, { SvgIcons } from './Svg';\n\nexport interface IconProps {\n icon: ReactNode | ComponentType;\n featherIcon?: boolean;\n}\n\nexport type IconMode =\n | 'alt'\n | 'primary'\n | 'primary-alt'\n | 'secondary'\n | 'secondary-alt'\n | 'warning'\n | 'warning-alt'\n | 'danger'\n | 'danger-alt'\n | 'success'\n | 'success-alt';\n\nexport type IconSize = 'xs' | 'sm' | 'md' | 'lg' | 'xl';\n\ninterface Props {\n icon: ReactNode | ComponentType<{ size?: string | number }>;\n feather?: boolean;\n className?: string;\n size?: IconSize;\n mode?: IconMode;\n}\n\nexport function Icon({ icon, feather, className, mode, size }: Props) {\n const classes = clsx(\n className,\n 'icon',\n { [`icon-${mode}`]: mode },\n { [`icon-${size}`]: size }\n );\n\n if (typeof icon !== 'string') {\n const Icon = isValidElementType(icon) ? icon : null;\n\n return (\n \n {Icon == null ? <>{icon} : }\n \n );\n }\n\n if (icon.indexOf('svg-') === 0) {\n const svgIcon = icon.replace('svg-', '');\n return (\n \n );\n }\n\n if (feather) {\n const iconName = icon\n .split('-')\n .map((s) => s.slice(0, 1).toUpperCase() + s.slice(1))\n .join('') as keyof typeof featherIcons;\n const IconComponent = featherIcons[iconName];\n if (!IconComponent) {\n throw new Error(`Feather icon not found: ${iconName}`);\n }\n return ;\n }\n\n return (\n \n );\n}\n","import { PropsWithChildren } from 'react';\n\nimport { Widget, WidgetBody } from './Widget';\nimport { Button } from './buttons';\n\ninterface Props {\n title?: string;\n onDismiss?(): void;\n bodyClassName?: string;\n wrapperStyle?: Record;\n}\n\nexport function InformationPanel({\n title,\n onDismiss,\n wrapperStyle,\n bodyClassName,\n children,\n}: PropsWithChildren) {\n return (\n
\n
\n \n \n
\n {title && (\n
\n {title}\n {!!onDismiss && (\n \n \n \n )}\n
\n )}\n
{children}
\n
\n
\n
\n
\n
\n );\n}\n","import clsx from 'clsx';\n\nimport styles from './ProgressBar.module.css';\n\ninterface Props {\n current: number;\n total: number;\n}\n\nexport function ProgressBar({ current, total }: Props) {\n const percent = current > total ? 100 : Math.floor((current / total) * 100);\n\n const inlineStyle =\n current > total\n ? {\n width: '100%',\n backgroundColor: '#f04438',\n }\n : {\n width: `${percent}%`,\n backgroundColor: '#0086c9',\n };\n\n const progressStyle =\n current > total\n ? clsx('progress', styles.progressAlert)\n : clsx('progress', styles.progressInfo);\n\n return (\n
\n \n {' '}\n
\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"progressInfo\":\"app-react-components-ProgressBar-ProgressBar-module__progress-info\",\"progressAlert\":\"app-react-components-ProgressBar-ProgressBar-module__progress-alert\"};","import moment from 'moment';\n\nimport { LicenseInfo, LicenseType } from '@/portainer/license-management/types';\n\nexport function getLicenseUpgradeURL(\n licenseInfo: LicenseInfo,\n usedNodes: number\n) {\n let licenseType = 'trial';\n switch (licenseInfo.type) {\n case LicenseType.Trial:\n licenseType = 'trial';\n break;\n case LicenseType.Subscription:\n licenseType = 'subscription';\n break;\n case LicenseType.Essentials:\n licenseType = 'essentials';\n break;\n default:\n break;\n }\n\n const detail = JSON.stringify(licenseInfo);\n return `https://www.portainer.io/portainer-business-buy-more?used_nodes=${usedNodes}&type=${licenseType}&details=${detail}`;\n}\n\nexport function calculateCountdownTime(enforcedAt: number) {\n const given = moment.unix(enforcedAt);\n const currentHour = moment().startOf('hour');\n const totalHours = Math.trunc(\n moment.duration(given.diff(currentHour)).asHours()\n );\n\n const remainingDay = Math.trunc(totalHours / 24);\n const remainingHour = totalHours % 24;\n if (remainingDay === 0 && remainingHour > 0) {\n return pluralizeTimeUnit(remainingHour, 'hour');\n }\n if (remainingHour === 0 && remainingDay > 0) {\n return pluralizeTimeUnit(remainingDay, 'day');\n }\n if (remainingHour > 0 && remainingDay > 0) {\n return `${pluralizeTimeUnit(remainingDay, 'day')} and ${pluralizeTimeUnit(\n remainingHour,\n 'hour'\n )}`;\n }\n return '0 days';\n}\n\nfunction pluralizeTimeUnit(value: number, unit: string) {\n if (value > 1) {\n return `${value} ${unit}s`;\n }\n if (value > 0 && value <= 1) {\n return `${value} ${unit}`;\n }\n return `${0} ${unit}`;\n}\n\nexport function getProductionEdition(edition: number) {\n let productionEdition = '';\n switch (edition) {\n case 1:\n productionEdition = 'Business Edition';\n break;\n case 2:\n productionEdition = 'Enterprise Edition';\n break;\n default:\n break;\n }\n return productionEdition;\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"licenseInfoPanel\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-info-panel\",\"licenseAlertPanel\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-alert-panel\",\"licenseHomeInfo\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-home-info\",\"licenseInfoContent\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-info-content\",\"licenseTitle\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-title\",\"divider\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__divider\",\"extra\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__extra\",\"extraLessTwoMonths\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__extra-less-two-months\",\"alertExtra\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__alert-extra\",\"alertExtraText\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__alert-extra-text\",\"licenseBlock\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__license-block\",\"icon\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__icon\",\"content\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__content\",\"button\":\"app-react-components-LicenseInfoPanel-LicenseInfoPanel-module__button\"};","import moment from 'moment';\nimport { Award, AlertCircle, AlertTriangle, ArrowUpRight } from 'react-feather';\nimport clsx from 'clsx';\n\nimport { LicenseInfo, LicenseType } from '@/portainer/license-management/types';\nimport { r2a } from '@/react-tools/react2angular';\n\nimport { Icon } from '@@/Icon';\nimport { ProgressBar } from '@@/ProgressBar';\n\nimport { calculateCountdownTime, getLicenseUpgradeURL } from './utils';\nimport styles from './LicenseInfoPanel.module.css';\n\ninterface Props {\n template: string;\n licenseInfo: LicenseInfo;\n usedNodes: number;\n}\n\nexport function LicenseInfoPanel({ template, licenseInfo, usedNodes }: Props) {\n let widget = null;\n switch (template) {\n case 'info':\n widget = buildInfoWidget(licenseInfo, usedNodes);\n break;\n case 'alert':\n widget = buildAlertWidget(licenseInfo, usedNodes);\n break;\n case 'enforcement':\n widget = buildCountdownWidget(licenseInfo, usedNodes);\n break;\n default:\n break;\n }\n\n return (\n
\n
{widget}
\n
\n );\n}\n\nfunction buildInfoWidget(licenseInfo: LicenseInfo, usedNodes: number) {\n const contentSection = buildInfoContent(licenseInfo, usedNodes);\n const expiredAt = moment.unix(licenseInfo.expiresAt);\n const expiredAtStr = expiredAt.format('YYYY-MM-DD');\n const remainingDays = expiredAt.diff(moment().startOf('day'), 'days');\n\n let licenseExpiredInfo = (\n
\n \n \n One or more your licenses will expire on {expiredAtStr}\n \n
\n );\n\n if (remainingDays >= 60) {\n licenseExpiredInfo = (\n
\n \n One or more your licenses will expire on {expiredAtStr}\n \n
\n );\n }\n\n return (\n
\n
\n {contentSection}\n
\n \n {usedNodes} / {licenseInfo.nodes} nodes used\n \n\n \n
\n
\n
\n {licenseExpiredInfo}\n
\n );\n}\n\nfunction buildAlertWidget(licenseInfo: LicenseInfo, usedNodes: number) {\n const contentSection = buildInfoContent(licenseInfo, usedNodes);\n\n return (\n
\n
{contentSection}
\n
\n \n {usedNodes} / {licenseInfo.nodes} nodes used\n \n
\n \n
\n \n \n You have exceeded the node allowance of your current license. Please\n contact Portainer to upgrade your license.\n \n
\n
\n );\n}\n\nfunction buildCountdownWidget(licenseInfo: LicenseInfo, usedNodes: number) {\n const licenseUpgradeURL = getLicenseUpgradeURL(licenseInfo, usedNodes);\n const remainingTime = calculateCountdownTime(licenseInfo.enforcedAt);\n\n return (\n
\n
\n
\n \n
\n\n
\n
\n \n {remainingTime} remaining\n \n
\n
\n \n You have exceeded the node allowance of your license and your\n users will be unable to log into their accounts in {remainingTime}\n . Please contact Portainer to upgrade your license.\n \n
\n
\n\n
\n \n Buy or renew licenses\n \n
\n
\n
\n );\n}\n\nfunction buildInfoContent(info: LicenseInfo, usedNodes: number) {\n const icon =\n usedNodes > info.nodes ? (\n \n ) : (\n \n );\n\n const licenseUpgradeURL = getLicenseUpgradeURL(info, usedNodes);\n\n return (\n
\n
{icon}
\n\n
\n
\n License information\n
\n
\n Portainer licensed to {info.company}\n {info.type !== LicenseType.Trial\n ? ` for up to ${info.nodes} ${info.nodes > 1 ? 'Nodes' : 'Node'}.`\n : null}\n
\n
\n\n
\n \n \n Upgrade licenses\n \n
\n
\n );\n}\n\nexport const LicenseInfoPanelAngular = r2a(LicenseInfoPanel, [\n 'template',\n 'licenseInfo',\n 'usedNodes',\n]);\n","import { PropsWithChildren } from 'react';\nimport { UISref, UISrefProps } from '@uirouter/react';\n\ninterface Props {\n title?: string;\n}\n\nexport function Link({\n title = '',\n children,\n ...props\n}: PropsWithChildren & UISrefProps) {\n return (\n // eslint-disable-next-line react/jsx-props-no-spreading\n \n {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}\n {children}\n \n );\n}\n","import clsx from 'clsx';\nimport { ReactNode } from 'react';\n\nimport styles from './NavTabs.module.css';\n\nexport interface Option {\n label: string | ReactNode;\n children?: ReactNode;\n id: string | number;\n}\n\ninterface Props {\n options: Option[];\n selectedId?: string | number;\n onSelect?(id: string | number): void;\n}\n\nexport function NavTabs({ options, selectedId, onSelect = () => {} }: Props) {\n const selected = options.find((option) => option.id === selectedId);\n\n return (\n
\n
    \n {options.map((option) => (\n \n {/* rule disabled because `nav-tabs` requires an anchor */}\n {/* eslint-disable-next-line jsx-a11y/anchor-is-valid */}\n handleSelect(option)}\n onKeyDown={(e) => {\n if (e.key === 'Enter' || e.key === ' ') {\n handleSelect(option);\n }\n }}\n role=\"button\"\n tabIndex={0}\n >\n {option.label}\n \n \n ))}\n
\n {selected && selected.children && (\n
{selected.children}
\n )}\n
\n );\n\n function handleSelect(option: Option) {\n if (option.children) {\n onSelect(option.id);\n }\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"parent\":\"app-react-components-NavTabs-NavTabs-module__parent\"};","import { useEffect, useState } from 'react';\nimport moment from 'moment';\nimport clsx from 'clsx';\nimport { AlertTriangle } from 'react-feather';\n\nimport { LicenseInfo } from '@/portainer/license-management/types';\nimport { useLicenseInfo } from '@/portainer/license-management/use-license.service';\n\nimport styles from './LicenseExpirationPanel.module.css';\n\nexport function LicenseExpirationPanelContainer() {\n const { remainingDays, isLoading } = useRemainingDays();\n\n return (\n \n );\n}\n\ninterface Props {\n remainingDays: number;\n isLoading?: boolean;\n}\n\nexport function LicenseExpirationPanel({ remainingDays, isLoading }: Props) {\n if (isLoading || !remainingDays || remainingDays >= 30) {\n return null;\n }\n\n const expirationMessage = buildMessage(remainingDays);\n\n return (\n
\n
\n \n \n {expirationMessage} Please contact Portainer to renew your license.\n \n
\n
\n );\n}\n\nfunction buildMessage(days: number) {\n return `One or more of your licenses ${expiringText(days)}.`;\n\n function expiringText(days: number) {\n if (days < 0) {\n return 'has expired';\n }\n\n if (days === 0) {\n return 'expires TODAY';\n }\n\n return `will expire in ${days === 1 ? '1 day' : `${days} days`}`;\n }\n}\n\nfunction useRemainingDays() {\n const { info, isLoading } = useLicenseInfo();\n\n const [remainingDays, setRemainingDays] = useState(0);\n\n useEffect(() => {\n if (info) {\n parseInfo(info);\n }\n }, [info]);\n\n return { remainingDays, isLoading };\n\n function parseInfo(info: LicenseInfo) {\n const expiresAt = moment.unix(info.expiresAt);\n setRemainingDays(expiresAt.diff(moment().startOf('day'), 'days'));\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"container\":\"app-react-components-PageHeader-LicenseExpirationPanel-module__container\",\"item\":\"app-react-components-PageHeader-LicenseExpirationPanel-module__item\",\"root\":\"app-react-components-PageHeader-LicenseExpirationPanel-module__root\",\"message\":\"app-react-components-PageHeader-LicenseExpirationPanel-module__message\"};","import { Fragment } from 'react';\n\nimport { Link } from '@@/Link';\n\nexport interface Crumb {\n label: string;\n link?: string;\n linkParams?: Record;\n}\ninterface Props {\n breadcrumbs: (Crumb | string)[] | string;\n}\n\nexport function Breadcrumbs({ breadcrumbs }: Props) {\n const breadcrumbsArray = Array.isArray(breadcrumbs)\n ? breadcrumbs\n : [breadcrumbs];\n\n return (\n
\n {breadcrumbsArray.map((crumb, index) => (\n \n {renderCrumb(crumb)}\n {index !== breadcrumbsArray.length - 1 && >}\n \n ))}\n
\n );\n}\n\nfunction renderCrumb(crumb: Crumb | string) {\n if (!crumb) {\n return '';\n }\n\n if (typeof crumb === 'string') {\n return crumb;\n }\n\n if (crumb.link) {\n return (\n \n {crumb.label}\n \n );\n }\n\n return crumb.label;\n}\n","import { PropsWithChildren, createContext, useContext } from 'react';\nimport clsx from 'clsx';\n\nimport { LicenseExpirationPanelContainer } from './LicenseExpirationPanel';\nimport styles from './HeaderContainer.module.css';\n\nconst Context = createContext(null);\n\nexport function useHeaderContext() {\n const context = useContext(Context);\n\n if (context == null) {\n throw new Error('Should be nested inside a HeaderContainer component');\n }\n}\n\ninterface Props {\n id?: string;\n}\n\nexport function HeaderContainer({ id, children }: PropsWithChildren) {\n return (\n \n
\n
\n
\n
{children}
\n \n
\n
\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"header\":\"app-react-components-PageHeader-HeaderContainer-module__header\",\"meta\":\"app-react-components-PageHeader-HeaderContainer-module__meta\",\"login\":\"app-react-components-PageHeader-HeaderContainer-module__login\",\"user\":\"app-react-components-PageHeader-HeaderContainer-module__user\",\"item\":\"app-react-components-PageHeader-HeaderContainer-module__item\",\"dropdownMenu\":\"app-react-components-PageHeader-HeaderContainer-module__dropdown-menu\",\"dropdownHeader\":\"app-react-components-PageHeader-HeaderContainer-module__dropdown-header\",\"link\":\"app-react-components-PageHeader-HeaderContainer-module__link\"};","import {\n Menu,\n MenuButton,\n MenuList,\n MenuLink as ReachMenuLink,\n} from '@reach/menu-button';\nimport { UISrefProps, useSref } from '@uirouter/react';\nimport clsx from 'clsx';\nimport { User, ChevronDown } from 'react-feather';\n\nimport { AutomationTestingProps } from '@/types';\nimport { useUser } from '@/portainer/hooks/useUser';\n\nimport styles from './HeaderTitle.module.css';\n\nexport function UserMenu() {\n const { user } = useUser();\n\n return (\n \n \n \n \n
\n {user && {user.Username}}\n \n \n\n \n \n\n \n \n \n );\n}\n\ninterface MenuLinkProps extends AutomationTestingProps, UISrefProps {\n label: string;\n}\n\nfunction MenuLink({\n to,\n label,\n params,\n options,\n 'data-cy': dataCy,\n}: MenuLinkProps) {\n const anchorProps = useSref(to, params, options);\n\n return (\n \n {label}\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"menuButton\":\"app-react-components-PageHeader-HeaderTitle-module__menu-button\",\"menuIcon\":\"app-react-components-PageHeader-HeaderTitle-module__menu-icon\",\"menuList\":\"app-react-components-PageHeader-HeaderTitle-module__menu-list\",\"menuLink\":\"app-react-components-PageHeader-HeaderTitle-module__menu-link\",\"arrowDown\":\"app-react-components-PageHeader-HeaderTitle-module__arrow-down\"};","import { PropsWithChildren } from 'react';\n\nimport { useHeaderContext } from './HeaderContainer';\nimport { UserMenu } from './UserMenu';\n\ninterface Props {\n title: string;\n}\n\nexport function HeaderTitle({ title, children }: PropsWithChildren) {\n useHeaderContext();\n\n return (\n
\n
\n
\n {title}\n
\n {children && {children}}\n
\n {!window.ddExtension && }\n
\n );\n}\n","import { useRouter } from '@uirouter/react';\nimport { RefreshCw } from 'react-feather';\n\nimport { Button } from '../buttons';\n\nimport { Breadcrumbs } from './Breadcrumbs';\nimport { Crumb } from './Breadcrumbs/Breadcrumbs';\nimport { HeaderContainer } from './HeaderContainer';\nimport { HeaderTitle } from './HeaderTitle';\nimport styles from './PageHeader.module.css';\n\ninterface Props {\n id?: string;\n reload?: boolean;\n loading?: boolean;\n onReload?(): Promise | void;\n breadcrumbs?: (Crumb | string)[] | string;\n title: string;\n}\n\nexport function PageHeader({\n id,\n title,\n breadcrumbs = [],\n reload,\n loading,\n onReload,\n}: Props) {\n const router = useRouter();\n\n function onClickedRefresh() {\n return onReload ? onReload() : router.stateService.reload();\n }\n\n return (\n \n \n\n \n {reload && (\n \n \n \n )}\n \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"reloadButton\":\"app-react-components-PageHeader-PageHeader-module__reloadButton\"};","interface Props {\n value: number;\n onChange(value: number): void;\n showAll?: boolean;\n}\n\nexport function ItemsPerPageSelector({ value, onChange, showAll }: Props) {\n return (\n \n Items per page\n onChange(Number(e.target.value))}\n data-cy=\"paginationSelect\"\n >\n {showAll ? : null}\n {[10, 25, 50, 100].map((v) => (\n \n ))}\n \n \n );\n}\n","/**\n * Given the position in the sequence of pagination links, figure out what page number corresponds to that position.\n *\n * @param position\n * @param currentPage\n * @param paginationRange\n * @param totalPages\n */\nexport function calculatePageNumber(\n position: number,\n currentPage: number,\n paginationRange: number,\n totalPages: number\n) {\n const halfWay = Math.ceil(paginationRange / 2);\n if (position === paginationRange) {\n return totalPages;\n }\n\n if (position === 1) {\n return position;\n }\n\n if (paginationRange < totalPages) {\n if (totalPages - halfWay < currentPage) {\n return totalPages - paginationRange + position;\n }\n\n if (halfWay < currentPage) {\n return currentPage - halfWay + position;\n }\n\n return position;\n }\n\n return position;\n}\n","import clsx from 'clsx';\nimport { ReactNode } from 'react';\n\ninterface Props {\n active?: boolean;\n children: ReactNode;\n disabled?: boolean;\n onPageChange(page: number): void;\n page: number | '...';\n}\n\nexport function PageButton({\n children,\n page,\n disabled,\n active,\n onPageChange,\n}: Props) {\n return (\n
  • \n typeof page === 'number' && onPageChange(page)}\n disabled={disabled}\n >\n {children}\n \n
  • \n );\n}\n","import { useFormik } from 'formik';\nimport { ChangeEvent, KeyboardEvent } from 'react';\nimport { object, number } from 'yup';\n\nimport { Button } from '@@/buttons';\nimport { Input } from '@@/form-components/Input';\n\ninterface Values {\n page: number | '';\n}\n\ninterface Props {\n onChange(page: number): void;\n totalPages: number;\n}\n\nexport function PageInput({ onChange, totalPages }: Props) {\n const { handleSubmit, setFieldValue, values, isValid } = useFormik({\n initialValues: { page: '' },\n onSubmit: async ({ page }) => page && onChange(page),\n validateOnMount: true,\n validationSchema: () =>\n object({ page: number().required().max(totalPages).min(1) }),\n });\n\n return (\n
    \n \n \n \n \n );\n\n function preventNotNumber(e: KeyboardEvent) {\n if (e.key.match(/^\\D$/)) {\n e.preventDefault();\n }\n }\n\n function handleChange(e: ChangeEvent) {\n const value = parseInt(e.target.value, 10);\n setFieldValue('page', Number.isNaN(value) ? '' : value);\n }\n}\n","import { generatePagesArray } from './generatePagesArray';\nimport { PageButton } from './PageButton';\nimport { PageInput } from './PageInput';\n\ninterface Props {\n boundaryLinks?: boolean;\n currentPage: number;\n directionLinks?: boolean;\n itemsPerPage: number;\n onPageChange(page: number): void;\n totalCount: number;\n maxSize: number;\n isInputVisible?: boolean;\n}\n\nexport function PageSelector({\n currentPage,\n totalCount,\n itemsPerPage,\n onPageChange,\n maxSize = 5,\n directionLinks = true,\n boundaryLinks = false,\n isInputVisible = false,\n}: Props) {\n const pages = generatePagesArray(\n currentPage,\n totalCount,\n itemsPerPage,\n maxSize\n );\n const last = pages[pages.length - 1];\n\n if (pages.length <= 1) {\n return null;\n }\n\n return (\n <>\n {isInputVisible && (\n onPageChange(page)}\n totalPages={Math.ceil(totalCount / itemsPerPage)}\n />\n )}\n
      \n {boundaryLinks ? (\n \n «\n \n ) : null}\n {directionLinks ? (\n \n ‹\n \n ) : null}\n {pages.map((pageNumber, index) => (\n \n {pageNumber}\n \n ))}\n\n {directionLinks ? (\n \n ›\n \n ) : null}\n {boundaryLinks ? (\n \n »\n \n ) : null}\n
    \n \n );\n}\n","import { calculatePageNumber } from './calculatePageNumber';\n\nexport /**\n * Generate an array of page numbers (or the '...' string) which is used in an ng-repeat to generate the\n * links used in pagination\n *\n * @param currentPage\n * @param rowsPerPage\n * @param paginationRange\n * @param collectionLength\n * @returns {Array}\n */\nfunction generatePagesArray(\n currentPage: number,\n collectionLength: number,\n rowsPerPage: number,\n paginationRange: number\n): (number | '...')[] {\n const pages: (number | '...')[] = [];\n const totalPages = Math.ceil(collectionLength / rowsPerPage);\n const halfWay = Math.ceil(paginationRange / 2);\n\n let position;\n if (currentPage <= halfWay) {\n position = 'start';\n } else if (totalPages - halfWay < currentPage) {\n position = 'end';\n } else {\n position = 'middle';\n }\n\n const ellipsesNeeded = paginationRange < totalPages;\n\n for (let i = 1; i <= totalPages && i <= paginationRange; i += 1) {\n const pageNumber = calculatePageNumber(\n i,\n currentPage,\n paginationRange,\n totalPages\n );\n\n const openingEllipsesNeeded =\n i === 2 && (position === 'middle' || position === 'end');\n const closingEllipsesNeeded =\n i === paginationRange - 1 &&\n (position === 'middle' || position === 'start');\n if (ellipsesNeeded && (openingEllipsesNeeded || closingEllipsesNeeded)) {\n pages.push('...');\n } else {\n pages.push(pageNumber);\n }\n }\n\n return pages;\n}\n","import { ItemsPerPageSelector } from './ItemsPerPageSelector';\nimport { PageSelector } from './PageSelector';\n\ninterface Props {\n onPageChange(page: number): void;\n onPageLimitChange(value: number): void;\n page: number;\n pageLimit: number;\n showAll?: boolean;\n totalCount: number;\n isPageInputVisible?: boolean;\n}\n\nexport function PaginationControls({\n pageLimit,\n page,\n onPageLimitChange,\n showAll,\n onPageChange,\n totalCount,\n isPageInputVisible,\n}: Props) {\n return (\n
    \n
    \n \n\n {pageLimit !== 0 && (\n \n )}\n
    \n
    \n );\n\n function handlePageLimitChange(value: number) {\n onPageLimitChange(value);\n onPageChange(1);\n }\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren } from 'react';\n\nimport { Icon } from '@@/Icon';\n\ntype Color = 'orange' | 'blue';\n\nexport interface Props {\n color?: Color;\n}\n\nexport function TextTip({\n color = 'orange',\n children,\n}: PropsWithChildren) {\n let iconClass: string;\n\n switch (color) {\n case 'blue':\n iconClass = 'icon-primary';\n break;\n case 'orange':\n iconClass = 'icon-warning';\n break;\n default:\n iconClass = 'icon-warning';\n }\n\n return (\n

    \n \n {children}\n

    \n );\n}\n","import ReactTooltip from 'react-tooltip';\nimport { HelpCircle } from 'react-feather';\nimport clsx from 'clsx';\nimport _ from 'lodash';\n\nimport styles from './Tooltip.module.css';\n\ntype Position = 'top' | 'right' | 'bottom' | 'left';\n\nexport interface Props {\n position?: Position;\n message: string;\n className?: string;\n}\n\nexport function Tooltip({ message, position = 'bottom', className }: Props) {\n const id = _.uniqueId('tooltip-');\n\n return (\n \n \n \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"tooltipWrapper\":\"app-react-components-Tip-Tooltip-Tooltip-module__tooltip-wrapper\",\"tooltip\":\"app-react-components-Tip-Tooltip-Tooltip-module__tooltip\",\"icon\":\"app-react-components-Tip-Tooltip-Tooltip-module__icon\"};","import { User, UserId } from '@/portainer/users/types';\n\nimport { Select } from '@@/form-components/ReactSelect';\n\ninterface Props {\n name?: string;\n value: UserId[];\n onChange(value: UserId[]): void;\n users: User[];\n dataCy?: string;\n inputId?: string;\n placeholder?: string;\n}\n\nexport function UsersSelector({\n name,\n value,\n onChange,\n users,\n dataCy,\n inputId,\n placeholder,\n}: Props) {\n return (\n user.Username}\n getOptionValue={(user) => `${user.Id}`}\n options={users}\n value={users.filter((user) => value.includes(user.Id))}\n closeMenuOnSelect={false}\n onChange={(selectedUsers) =>\n onChange(selectedUsers.map((user) => user.Id))\n }\n data-cy={dataCy}\n inputId={inputId}\n placeholder={placeholder}\n />\n );\n}\n","import clsx from 'clsx';\n\nimport styles from './ViewLoading.module.css';\n\ninterface Props {\n message?: string;\n}\n\nexport function ViewLoading({ message }: Props) {\n return (\n
    \n
    \n
    \n
    \n
    \n
    \n
    \n {message && (\n \n {message}\n \n \n )}\n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-components-ViewLoading-ViewLoading-module__root\",\"message\":\"app-react-components-ViewLoading-ViewLoading-module__message\"};","export function Loading() {\n return (\n
    \n
    \n
    \n
    \n );\n}\n","import { createContext, PropsWithChildren, useContext } from 'react';\n\nconst Context = createContext(null);\n\nexport function useWidgetContext() {\n const context = useContext(Context);\n\n if (context == null) {\n throw new Error('Should be inside a Widget component');\n }\n}\n\nexport function Widget({ children }: PropsWithChildren) {\n return (\n \n
    {children}
    \n
    \n );\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren } from 'react';\n\nimport { useWidgetContext } from './Widget';\nimport { Loading } from './Loading';\n\ninterface Props {\n loading?: boolean;\n className?: string;\n}\n\nexport function WidgetBody({\n loading,\n className,\n children,\n}: PropsWithChildren) {\n useWidgetContext();\n\n return (\n
    \n {loading ? :
    {children}
    }\n
    \n );\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren, ReactNode } from 'react';\n\nimport { Icon } from '@/react/components/Icon';\n\nimport { useWidgetContext } from './Widget';\n\ninterface Props {\n title: ReactNode;\n icon: ReactNode;\n featherIcon?: boolean;\n className?: string;\n}\n\nexport function WidgetTitle({\n title,\n icon,\n className,\n children,\n featherIcon,\n}: PropsWithChildren) {\n useWidgetContext();\n\n return (\n
    \n
    \n \n
    \n \n
    \n {title}\n
    \n {children}\n
    \n
    \n );\n}\n","import { Widget as MainComponent } from './Widget';\nimport { WidgetBody } from './WidgetBody';\nimport { WidgetFooter } from './WidgetFooter';\nimport { WidgetTitle } from './WidgetTitle';\nimport { WidgetTaskbar } from './WidgetTaskbar';\nimport { Loading } from './Loading';\n\ninterface WithSubcomponents {\n Body: typeof WidgetBody;\n Footer: typeof WidgetFooter;\n Title: typeof WidgetTitle;\n Taskbar: typeof WidgetTaskbar;\n Loading: typeof Loading;\n}\n\nconst Widget = MainComponent as typeof MainComponent & WithSubcomponents;\n\nWidget.Body = WidgetBody;\nWidget.Footer = WidgetFooter;\nWidget.Title = WidgetTitle;\nWidget.Taskbar = WidgetTaskbar;\nWidget.Loading = Loading;\n\nexport {\n Widget,\n WidgetBody,\n WidgetFooter,\n WidgetTitle,\n WidgetTaskbar,\n Loading,\n};\n","import { PropsWithChildren } from 'react';\n\nimport { useWidgetContext } from './Widget';\n\nexport function WidgetFooter({ children }: PropsWithChildren) {\n useWidgetContext();\n\n return
    {children}
    ;\n}\n","import { PropsWithChildren } from 'react';\n\nimport { useWidgetContext } from './Widget';\n\ninterface Props {\n className?: string;\n}\n\nexport function WidgetTaskbar({\n children,\n className,\n}: PropsWithChildren) {\n useWidgetContext();\n\n return (\n
    \n
    \n
    {children}
    \n
    \n
    \n );\n}\n","import {\n AriaAttributes,\n ComponentType,\n MouseEventHandler,\n PropsWithChildren,\n ReactNode,\n} from 'react';\nimport clsx from 'clsx';\n\nimport { AutomationTestingProps } from '@/types';\nimport './Button.css';\n\nimport { Icon } from '@@/Icon';\n\ntype Type = 'submit' | 'button' | 'reset';\ntype Color =\n | 'default'\n | 'primary'\n | 'secondary'\n | 'danger'\n | 'link'\n | 'light'\n | 'dangerlight'\n | 'none';\ntype Size = 'xsmall' | 'small' | 'medium' | 'large';\n\nexport interface Props extends AriaAttributes, AutomationTestingProps {\n icon?: ReactNode | ComponentType;\n featherIcon?: boolean;\n\n color?: Color;\n size?: Size;\n disabled?: boolean;\n title?: string;\n className?: string;\n type?: Type;\n onClick?: MouseEventHandler;\n}\n\nexport function Button({\n type = 'button',\n color = 'primary',\n size = 'small',\n disabled = false,\n className,\n onClick,\n title,\n icon,\n featherIcon,\n children,\n\n ...ariaProps\n}: PropsWithChildren) {\n return (\n \n {icon && (\n \n )}\n {children}\n \n );\n}\n\nfunction getIconSize(size: Size) {\n switch (size) {\n case 'xsmall':\n return 'xs';\n case 'medium':\n return 'md';\n case 'large':\n return 'lg';\n case 'small':\n default:\n return 'sm';\n }\n}\n\nfunction sizeClass(size?: Size) {\n switch (size) {\n case 'large':\n return 'btn-lg';\n case 'medium':\n return 'btn-md';\n case 'xsmall':\n return 'btn-xs';\n default:\n return 'btn-sm';\n }\n}\n","import { PropsWithChildren } from 'react';\nimport clsx from 'clsx';\n\nexport type Size = 'xsmall' | 'small' | 'large';\nexport interface Props {\n size?: Size;\n className?: string;\n}\n\nexport function ButtonGroup({\n size = 'small',\n children,\n className,\n}: PropsWithChildren) {\n return (\n
    \n {children}\n
    \n );\n}\n\nfunction sizeClass(size: Size | undefined) {\n switch (size) {\n case 'xsmall':\n return 'btn-group-xs';\n case 'large':\n return 'btn-group-lg';\n default:\n return '';\n }\n}\n","import { PropsWithChildren } from 'react';\nimport clsx from 'clsx';\n\nimport { Icon } from '@@/Icon';\n\nimport { Button } from '../Button';\n\nimport styles from './CopyButton.module.css';\nimport { useCopy } from './useCopy';\n\nexport interface Props {\n copyText: string;\n fadeDelay?: number;\n displayText?: string;\n className?: string;\n}\n\nexport function CopyButton({\n copyText,\n fadeDelay = 1000,\n displayText = 'copied',\n className,\n children,\n}: PropsWithChildren) {\n const { handleCopy, copiedSuccessfully } = useCopy(copyText, fadeDelay);\n\n return (\n
    \n \n \n {children}\n \n\n \n \n {displayText && {displayText}}\n \n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"fadeout\":\"app-react-components-buttons-CopyButton-CopyButton-module__fadeout\",\"fadeOut\":\"app-react-components-buttons-CopyButton-CopyButton-module__fadeOut\",\"container\":\"app-react-components-buttons-CopyButton-CopyButton-module__container\",\"copyButton\":\"app-react-components-buttons-CopyButton-CopyButton-module__copy-button\"};","import { useEffect, useState } from 'react';\n\nexport function useCopy(copyText: string, fadeDelay = 1000) {\n const [copiedSuccessfully, setCopiedSuccessfully] = useState(false);\n\n useEffect(() => {\n const fadeoutTime = setTimeout(\n () => setCopiedSuccessfully(false),\n fadeDelay\n );\n // clear timeout when component unmounts\n return () => {\n clearTimeout(fadeoutTime);\n };\n }, [copiedSuccessfully, fadeDelay]);\n\n function handleCopy() {\n // https://developer.mozilla.org/en-US/docs/Web/API/Clipboard\n // https://caniuse.com/?search=clipboard\n if (navigator.clipboard) {\n navigator.clipboard.writeText(copyText);\n } else {\n // https://stackoverflow.com/a/57192718\n const inputEl = document.createElement('textarea');\n inputEl.value = copyText;\n document.body.appendChild(inputEl);\n inputEl.select();\n document.execCommand('copy');\n inputEl.hidden = true;\n document.body.removeChild(inputEl);\n }\n setCopiedSuccessfully(true);\n }\n\n return { handleCopy, copiedSuccessfully };\n}\n","import { PropsWithChildren } from 'react';\n\nimport { type Props as ButtonProps, Button } from './Button';\n\ninterface Props extends ButtonProps {\n loadingText: string;\n isLoading: boolean;\n}\n\nexport function LoadingButton({\n loadingText,\n isLoading,\n disabled,\n type = 'submit',\n children,\n ...buttonProps\n}: PropsWithChildren) {\n return (\n \n {isLoading ? (\n <>\n \n {loadingText}\n \n ) : (\n children\n )}\n \n );\n}\n","import clsx from 'clsx';\n\nimport { Icon } from '@@/Icon';\n\nimport styles from './AddButton.module.css';\n\nexport interface Props {\n className?: string;\n label: string;\n disabled?: boolean;\n onClick: () => void;\n}\n\nexport function AddButton({ label, onClick, className, disabled }: Props) {\n return (\n \n \n {label}\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"addButton\":\"app-react-components-buttons-AddButton-module__add-button\"};","import clsx from 'clsx';\nimport { Menu, MenuButton, MenuList } from '@reach/menu-button';\nimport { ColumnInstance } from 'react-table';\nimport { Columns } from 'react-feather';\n\nimport { Checkbox } from '@@/form-components/Checkbox';\n\nimport { useTableContext } from './TableContainer';\n\ninterface Props {\n columns: ColumnInstance[];\n onChange: (value: string[]) => void;\n value: string[];\n}\n\nexport function ColumnVisibilityMenu({\n columns,\n onChange,\n value,\n}: Props) {\n useTableContext();\n\n return (\n \n {({ isExpanded }) => (\n <>\n \n \n \n \n
    \n
    Show / Hide Columns
    \n
    \n {columns.map((column) => (\n
    \n \n handleChangeColumnVisibility(\n column.id,\n e.target.checked\n )\n }\n />\n
    \n ))}\n
    \n
    \n
    \n \n )}\n
    \n );\n\n function handleChangeColumnVisibility(colId: string, visible: boolean) {\n if (visible) {\n onChange(value.filter((id) => id !== colId));\n return;\n }\n\n onChange([...value, colId]);\n }\n}\n","import {\n useTable,\n useFilters,\n useGlobalFilter,\n useSortBy,\n usePagination,\n Column,\n Row,\n TableInstance,\n TableState,\n} from 'react-table';\nimport { ReactNode } from 'react';\nimport { useRowSelectColumn } from '@lineup-lite/hooks';\n\nimport { PaginationControls } from '@@/PaginationControls';\n\nimport { Table } from './Table';\nimport { multiple } from './filter-types';\nimport { SearchBar, useSearchBarState } from './SearchBar';\nimport { SelectedRowsCount } from './SelectedRowsCount';\nimport { TableSettingsProvider } from './useZustandTableSettings';\nimport { useRowSelect } from './useRowSelect';\nimport { PaginationTableSettings, SortableTableSettings } from './types';\n\ninterface DefaultTableSettings\n extends SortableTableSettings,\n PaginationTableSettings {}\n\ninterface TitleOptionsVisible {\n title: string;\n icon?: string;\n hide?: never;\n}\n\ntype TitleOptions = TitleOptionsVisible | { hide: true };\n\ninterface Props<\n D extends Record,\n TSettings extends DefaultTableSettings\n> {\n dataset: D[];\n storageKey: string;\n columns: readonly Column[];\n renderTableSettings?(instance: TableInstance): ReactNode;\n renderTableActions?(selectedRows: D[]): ReactNode;\n settingsStore: TSettings;\n disableSelect?: boolean;\n getRowId?(row: D): string;\n isRowSelectable?(row: Row): boolean;\n emptyContentLabel?: string;\n titleOptions: TitleOptions;\n initialTableState?: Partial>;\n isLoading?: boolean;\n totalCount?: number;\n}\n\nexport function Datatable<\n D extends Record,\n TSettings extends DefaultTableSettings\n>({\n columns,\n dataset,\n storageKey,\n renderTableSettings,\n renderTableActions,\n settingsStore,\n disableSelect,\n getRowId = defaultGetRowId,\n isRowSelectable = () => true,\n titleOptions,\n emptyContentLabel,\n initialTableState = {},\n isLoading,\n totalCount = dataset.length,\n}: Props) {\n const [searchBarValue, setSearchBarValue] = useSearchBarState(storageKey);\n\n const tableInstance = useTable(\n {\n defaultCanFilter: false,\n columns,\n data: dataset,\n filterTypes: { multiple },\n initialState: {\n pageSize: settingsStore.pageSize || 10,\n sortBy: [settingsStore.sortBy],\n globalFilter: searchBarValue,\n ...initialTableState,\n },\n isRowSelectable,\n autoResetSelectedRows: false,\n getRowId,\n stateReducer: (newState, action) => {\n switch (action.type) {\n case 'setGlobalFilter':\n setSearchBarValue(action.filterValue);\n break;\n case 'toggleSortBy':\n settingsStore.setSortBy(action.columnId, action.desc);\n break;\n case 'setPageSize':\n settingsStore.setPageSize(action.pageSize);\n break;\n default:\n break;\n }\n return newState;\n },\n },\n useFilters,\n useGlobalFilter,\n useSortBy,\n usePagination,\n useRowSelect,\n !disableSelect ? useRowSelectColumn : emptyPlugin\n );\n\n const {\n selectedFlatRows,\n getTableProps,\n getTableBodyProps,\n headerGroups,\n page,\n prepareRow,\n gotoPage,\n setPageSize,\n setGlobalFilter,\n state: { pageIndex, pageSize },\n } = tableInstance;\n\n const tableProps = getTableProps();\n const tbodyProps = getTableBodyProps();\n\n const selectedItems = selectedFlatRows.map((row) => row.original);\n\n return (\n
    \n
    \n \n \n {isTitleVisible(titleOptions) && (\n \n \n {renderTableActions && (\n \n {renderTableActions(selectedItems)}\n \n )}\n \n {!!renderTableSettings && renderTableSettings(tableInstance)}\n \n \n )}\n \n \n {headerGroups.map((headerGroup) => {\n const { key, className, role, style } =\n headerGroup.getHeaderGroupProps();\n return (\n \n key={key}\n className={className}\n role={role}\n style={style}\n headers={headerGroup.headers}\n />\n );\n })}\n \n \n \n rows={page}\n isLoading={isLoading}\n prepareRow={prepareRow}\n emptyContent={emptyContentLabel}\n renderRow={(row, { key, className, role, style }) => (\n \n cells={row.cells}\n key={key}\n className={className}\n role={role}\n style={style}\n />\n )}\n />\n \n \n \n \n gotoPage(p - 1)}\n totalCount={totalCount}\n onPageLimitChange={setPageSize}\n />\n \n \n \n
    \n
    \n );\n}\n\nfunction isTitleVisible(\n titleSettings: TitleOptions\n): titleSettings is TitleOptionsVisible {\n return !titleSettings.hide;\n}\n\nfunction defaultGetRowId>(row: D): string {\n if (row.id && (typeof row.id === 'string' || typeof row.id === 'number')) {\n return row.id.toString();\n }\n\n if (row.Id && (typeof row.Id === 'string' || typeof row.Id === 'number')) {\n return row.Id.toString();\n }\n\n if (row.ID && (typeof row.ID === 'string' || typeof row.ID === 'number')) {\n return row.ID.toString();\n }\n\n return '';\n}\n\nfunction emptyPlugin() {}\n\nemptyPlugin.pluginName = 'emptyPlugin';\n","import { PropsWithChildren } from 'react';\nimport { Row } from 'react-table';\n\nimport styles from './ExpandingCell.module.css';\n\ninterface Props = Record> {\n row: Row;\n showExpandArrow: boolean;\n}\n\nexport function ExpandingCell<\n D extends Record = Record\n>({ row, showExpandArrow, children }: PropsWithChildren>) {\n return (\n <>\n {showExpandArrow && (\n \n )}\n {children}\n \n );\n\n function arrowClass(isExpanded: boolean) {\n if (isExpanded) {\n return 'fa-angle-down';\n }\n return 'fa-angle-right';\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"expandButton\":\"app-react-components-datatables-ExpandingCell-module__expand-button\"};","import clsx from 'clsx';\nimport { useMemo } from 'react';\nimport { Menu, MenuButton, MenuPopover } from '@reach/menu-button';\nimport { ColumnInstance } from 'react-table';\n\nexport function DefaultFilter({\n column: { filterValue, setFilter, preFilteredRows, id },\n}: {\n column: ColumnInstance;\n}) {\n const options = useMemo(() => {\n const options = new Set();\n preFilteredRows.forEach((row) => {\n options.add(row.values[id]);\n });\n\n return Array.from(options);\n }, [id, preFilteredRows]);\n\n return (\n \n );\n}\n\ninterface MultipleSelectionFilterProps {\n options: string[];\n value: string[];\n filterKey: string;\n onChange: (value: string[]) => void;\n}\n\nfunction MultipleSelectionFilter({\n options,\n value = [],\n filterKey,\n onChange,\n}: MultipleSelectionFilterProps) {\n const enabled = value.length > 0;\n return (\n
    \n \n \n Filter\n \n \n \n
    \n
    Filter by state
    \n
    \n {options.map((option, index) => (\n
    \n handleChange(option)}\n />\n \n
    \n ))}\n
    \n
    \n
    \n
    \n
    \n );\n\n function handleChange(option: string) {\n if (value.includes(option)) {\n onChange(value.filter((o) => o !== option));\n\n return;\n }\n\n onChange([...value, option]);\n }\n}\n","import { PropsWithChildren } from 'react';\n\nimport './InnerDatatable.css';\n\nexport function InnerDatatable({ children }: PropsWithChildren) {\n return
    {children}
    ;\n}\n","import { createContext, PropsWithChildren, useContext } from 'react';\n\nexport function createRowContext() {\n const Context = createContext(null);\n\n return { RowProvider, useRowContext };\n\n function RowProvider({\n children,\n context,\n }: PropsWithChildren<{ context: TContext }>) {\n return {children};\n }\n\n function useRowContext() {\n const context = useContext(Context);\n if (!context) {\n throw new Error('should be nested under RowProvider');\n }\n\n return context;\n }\n}\n","import { Search } from 'react-feather';\nimport { useEffect, useMemo, useState } from 'react';\nimport _ from 'lodash';\n\nimport { useLocalStorage } from '@/portainer/hooks/useLocalStorage';\nimport { AutomationTestingProps } from '@/types';\n\ninterface Props extends AutomationTestingProps {\n value: string;\n placeholder?: string;\n onChange(value: string): void;\n}\n\nexport function SearchBar({\n value,\n placeholder = 'Search...',\n onChange,\n 'data-cy': dataCy,\n}: Props) {\n const [searchValue, setSearchValue] = useDebounce(value, onChange);\n\n return (\n
    \n \n setSearchValue(e.target.value)}\n placeholder={placeholder}\n data-cy={dataCy}\n />\n
    \n );\n}\n\nfunction useDebounce(defaultValue: string, onChange: (value: string) => void) {\n const [searchValue, setSearchValue] = useState(defaultValue);\n\n useEffect(() => {\n setSearchValue(defaultValue);\n }, [defaultValue]);\n\n const onChangeDebounces = useMemo(\n () => _.debounce(onChange, 300),\n [onChange]\n );\n\n return [searchValue, handleChange] as const;\n\n function handleChange(value: string) {\n setSearchValue(value);\n onChangeDebounces(value);\n }\n}\n\nexport function useSearchBarState(\n key: string\n): [string, (value: string) => void] {\n const filterKey = keyBuilder(key);\n const [value, setValue] = useLocalStorage(filterKey, '', sessionStorage);\n\n return [value, setValue];\n\n function keyBuilder(key: string) {\n return `datatable_text_filter_${key}`;\n }\n}\n","interface SelectedRowsCountProps {\n value: number;\n}\n\nexport function SelectedRowsCount({ value }: SelectedRowsCountProps) {\n return value !== 0 ? (\n
    {value} item(s) selected
    \n ) : null;\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren } from 'react';\nimport { TableProps } from 'react-table';\n\nimport { useTableContext, TableContainer } from './TableContainer';\nimport { TableActions } from './TableActions';\nimport { TableTitleActions } from './TableTitleActions';\nimport { TableHeaderCell } from './TableHeaderCell';\nimport { TableSettingsMenu } from './TableSettingsMenu';\nimport { TableTitle } from './TableTitle';\nimport { TableHeaderRow } from './TableHeaderRow';\nimport { TableRow } from './TableRow';\nimport { TableContent } from './TableContent';\nimport { TableFooter } from './TableFooter';\n\nfunction MainComponent({\n children,\n className,\n role,\n style,\n}: PropsWithChildren) {\n useTableContext();\n\n return (\n
    \n \n {children}\n \n
    \n );\n}\n\ninterface SubComponents {\n Container: typeof TableContainer;\n Actions: typeof TableActions;\n TitleActions: typeof TableTitleActions;\n HeaderCell: typeof TableHeaderCell;\n SettingsMenu: typeof TableSettingsMenu;\n Title: typeof TableTitle;\n Row: typeof TableRow;\n HeaderRow: typeof TableHeaderRow;\n Content: typeof TableContent;\n Footer: typeof TableFooter;\n}\n\nexport const Table: typeof MainComponent & SubComponents =\n MainComponent as typeof MainComponent & SubComponents;\n\nTable.Actions = TableActions;\nTable.TitleActions = TableTitleActions;\nTable.Container = TableContainer;\nTable.HeaderCell = TableHeaderCell;\nTable.SettingsMenu = TableSettingsMenu;\nTable.Title = TableTitle;\nTable.Row = TableRow;\nTable.HeaderRow = TableHeaderRow;\nTable.Content = TableContent;\nTable.Footer = TableFooter;\n","import clsx from 'clsx';\nimport { Children, PropsWithChildren } from 'react';\n\nimport { useTableContext } from './TableContainer';\n\ninterface Props {\n className?: string;\n}\n\nexport function TableActions({\n children,\n className,\n}: PropsWithChildren) {\n useTableContext();\n\n if (Children.count(children) === 0) {\n return null;\n }\n\n return
    {children}
    ;\n}\n","import { createContext, PropsWithChildren, useContext } from 'react';\n\nimport { Widget, WidgetBody } from '@@/Widget';\n\nconst Context = createContext(null);\n\nexport function useTableContext() {\n const context = useContext(Context);\n\n if (context == null) {\n throw new Error('Should be nested inside a TableContainer component');\n }\n}\n\nexport function TableContainer({ children }: PropsWithChildren) {\n return (\n \n
    \n \n {children}\n \n
    \n
    \n );\n}\n","import { PropsWithChildren } from 'react';\nimport { Row, TableRowProps } from 'react-table';\n\ninterface Props = Record> {\n isLoading?: boolean;\n rows: Row[];\n emptyContent?: string;\n prepareRow(row: Row): void;\n renderRow(row: Row, rowProps: TableRowProps): React.ReactNode;\n}\n\nexport function TableContent<\n T extends Record = Record\n>({\n isLoading = false,\n rows,\n emptyContent = 'No items available',\n prepareRow,\n renderRow,\n}: Props) {\n if (isLoading) {\n return Loading...;\n }\n\n if (!rows.length) {\n return {emptyContent};\n }\n\n return (\n <>\n {rows.map((row) => {\n prepareRow(row);\n const { key, className, role, style } = row.getRowProps();\n return renderRow(row, { key, className, role, style });\n })}\n \n );\n}\n\nfunction TableContentOneColumn({ children }: PropsWithChildren) {\n // using MAX_SAFE_INTEGER to make sure the single column will be the size of the table\n return (\n \n \n {children}\n \n \n );\n}\n","import { PropsWithChildren } from 'react';\n\nimport { useTableContext } from './TableContainer';\n\nexport function TableFooter({ children }: PropsWithChildren) {\n useTableContext();\n\n return
    {children}
    ;\n}\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgSortArrowDown = function SvgSortArrowDown(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 8 12\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M4.473.727a.593.593 0 1 0-1.186 0h1.186ZM3.88 11.274l-.406.432c.233.22.599.214.826-.013l-.42-.42Zm3.056-2.218a.593.593 0 1 0-.839-.839l.84.84Zm-5.45-.851a.593.593 0 1 0-.814.864l.813-.864Zm1.8-7.478v10.547h1.187V.727H3.287Zm2.811 7.49-2.636 2.637.839.84 2.636-2.638-.839-.839Zm-1.81 2.625L1.485 8.205l-.813.864 2.802 2.637.813-.864Z\",\n fill: \"#D0D5DD\"\n })));\n};\n\nexport default SvgSortArrowDown;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgSortArrowUp = function SvgSortArrowUp(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 8 12\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M3.526 11.273a.593.593 0 0 0 1.187 0H3.526ZM4.12.727l.406-.432A.593.593 0 0 0 3.7.307l.42.42ZM1.063 2.944a.593.593 0 1 0 .84.839l-.84-.84Zm5.451.851a.593.593 0 1 0 .814-.864l-.814.864Zm-1.801 7.478V.727H3.526v10.546h1.187Zm-2.81-7.49 2.636-2.637L3.7.307 1.063 2.944l.84.839Zm1.81-2.624 2.801 2.636.814-.864L4.526.295l-.813.864Z\",\n fill: \"#D0D5DD\"\n })));\n};\n\nexport default SvgSortArrowUp;","// extracted by mini-css-extract-plugin\nexport default {\"sortIcon\":\"app-react-components-datatables-TableHeaderSortIcons-module__sort-icon\",\"activeSortIcon\":\"app-react-components-datatables-TableHeaderSortIcons-module__active-sort-icon\"};","import clsx from 'clsx';\n\nimport SortDownIcon from './sort-arrow-down.svg?c';\nimport SortUpIcon from './sort-arrow-up.svg?c';\nimport styles from './TableHeaderSortIcons.module.css';\n\ninterface Props {\n sorted: boolean;\n descending: boolean;\n}\n\nexport function TableHeaderSortIcons({ sorted, descending }: Props) {\n return (\n
    \n \n \n
    \n );\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren, ReactNode } from 'react';\nimport { TableHeaderProps } from 'react-table';\n\nimport { useTableContext } from './TableContainer';\nimport { TableHeaderSortIcons } from './TableHeaderSortIcons';\nimport styles from './TableHeaderCell.module.css';\n\ninterface Props {\n canFilter: boolean;\n canSort: boolean;\n headerProps: TableHeaderProps;\n isSorted: boolean;\n isSortedDesc?: boolean;\n onSortClick: (desc: boolean) => void;\n render: () => ReactNode;\n renderFilter: () => ReactNode;\n}\n\nexport function TableHeaderCell({\n headerProps: { className, role, style },\n canSort,\n render,\n onSortClick,\n isSorted,\n isSortedDesc,\n canFilter,\n renderFilter,\n}: Props) {\n useTableContext();\n\n return (\n \n
    \n \n {render()}\n \n {canFilter ? renderFilter() : null}\n
    \n \n );\n}\n\ninterface SortWrapperProps {\n canSort: boolean;\n isSorted: boolean;\n isSortedDesc?: boolean;\n onClick?: (desc: boolean) => void;\n}\n\nfunction SortWrapper({\n canSort,\n children,\n onClick = () => {},\n isSorted,\n isSortedDesc,\n}: PropsWithChildren) {\n if (!canSort) {\n return <>{children};\n }\n\n return (\n onClick(!isSortedDesc)}\n className={clsx(\n '!bg-transparent w-full h-full !ml-0 !px-0 border-none focus:border-none',\n styles.sortable,\n isSorted && styles.sortingActive\n )}\n >\n
    \n {children}\n \n
    \n \n );\n}\n\ninterface TableColumnHeaderAngularProps {\n colTitle: string;\n canSort: boolean;\n isSorted?: boolean;\n isSortedDesc?: boolean;\n}\n\nexport function TableColumnHeaderAngular({\n canSort,\n isSorted,\n colTitle,\n isSortedDesc,\n}: TableColumnHeaderAngularProps) {\n return (\n
    \n \n {colTitle}\n \n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"sortable\":\"app-react-components-datatables-TableHeaderCell-module__sortable\",\"sortingActive\":\"app-react-components-datatables-TableHeaderCell-module__sortingActive\"};","import { HeaderGroup, TableHeaderProps } from 'react-table';\n\nimport { useTableContext } from './TableContainer';\nimport { TableHeaderCell } from './TableHeaderCell';\n\ninterface Props = Record> {\n headers: HeaderGroup[];\n onSortChange?(colId: string, desc: boolean): void;\n}\n\nexport function TableHeaderRow<\n D extends Record = Record\n>({\n headers,\n onSortChange,\n className,\n role,\n style,\n}: Props & TableHeaderProps) {\n useTableContext();\n\n return (\n \n {headers.map((column) => (\n {\n column.toggleSortBy(desc);\n if (onSortChange) {\n onSortChange(column.id, desc);\n }\n }}\n isSorted={column.isSorted}\n isSortedDesc={column.isSortedDesc}\n render={() => column.render('Header')}\n canFilter={!column.disableFilters}\n renderFilter={() => column.render('Filter')}\n />\n ))}\n \n );\n}\n","import { Cell, TableRowProps } from 'react-table';\n\nimport { useTableContext } from './TableContainer';\n\ninterface Props = Record>\n extends Omit {\n cells: Cell[];\n}\n\nexport function TableRow<\n D extends Record = Record\n>({ cells, className, role, style }: Props) {\n useTableContext();\n\n return (\n \n {cells.map((cell) => {\n const cellProps = cell.getCellProps({\n className: cell.className,\n });\n\n return (\n \n {cell.render('Cell')}\n \n );\n })}\n \n );\n}\n","import clsx from 'clsx';\nimport { Menu, MenuButton, MenuList } from '@reach/menu-button';\nimport { PropsWithChildren, ReactNode } from 'react';\nimport { MoreVertical } from 'react-feather';\n\nimport { useTableContext } from './TableContainer';\n\ninterface Props {\n quickActions?: ReactNode;\n}\n\nexport function TableSettingsMenu({\n quickActions,\n children,\n}: PropsWithChildren) {\n useTableContext();\n\n return (\n \n {({ isExpanded }) => (\n <>\n \n \n \n \n
    \n
    Table settings
    \n
    {children}
    \n {quickActions && (\n
    \n
    Quick actions
    \n
    {quickActions}
    \n
    \n )}\n
    \n
    \n \n )}\n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"alertVisible\":\"app-react-components-datatables-TableSettingsMenuAutoRefresh-module__alert-visible\",\"alertHidden\":\"app-react-components-datatables-TableSettingsMenuAutoRefresh-module__alert-hidden\"};","import clsx from 'clsx';\nimport { useState } from 'react';\n\nimport { Checkbox } from '@@/form-components/Checkbox';\n\nimport styles from './TableSettingsMenuAutoRefresh.module.css';\n\ninterface Props {\n onChange(value: number): void;\n value: number;\n}\n\nexport function TableSettingsMenuAutoRefresh({ onChange, value }: Props) {\n const [isCheckVisible, setIsCheckVisible] = useState(false);\n\n const isEnabled = value > 0;\n\n return (\n <>\n onChange(e.target.checked ? 10 : 0)}\n />\n\n {isEnabled && (\n
    \n \n handleChange(e.target.value)}\n >\n \n \n \n \n \n \n setIsCheckVisible(false)}\n >\n \n \n
    \n )}\n \n );\n\n function handleChange(value: string) {\n onChange(Number(value));\n setIsCheckVisible(true);\n }\n}\n","import { ComponentType, PropsWithChildren, ReactNode } from 'react';\n\nimport { Icon } from '@@/Icon';\n\nimport { useTableContext } from './TableContainer';\n\ninterface Props {\n icon?: ReactNode | ComponentType;\n featherIcon?: boolean;\n label: string;\n}\n\nexport function TableTitle({\n icon,\n featherIcon,\n label,\n children,\n}: PropsWithChildren) {\n useTableContext();\n\n return (\n
    \n
    \n {icon && (\n
    \n \n
    \n )}\n\n {label}\n
    \n {children}\n
    \n );\n}\n","import { Children, PropsWithChildren } from 'react';\n\nimport { useTableContext } from './TableContainer';\n\nexport function TableTitleActions({ children }: PropsWithChildren) {\n useTableContext();\n\n if (Children.count(children) === 0) {\n return null;\n }\n\n return
    {children}
    ;\n}\n","import { Row } from 'react-table';\n\nexport function multiple<\n D extends Record = Record\n>(rows: Row[], columnIds: string[], filterValue: string[] = []) {\n if (filterValue.length === 0 || columnIds.length === 0) {\n return rows;\n }\n\n return rows.filter((row) => {\n const value = row.values[columnIds[0]];\n return filterValue.includes(value);\n });\n}\n","/* eslint no-param-reassign: [\"error\", { \"props\": false }] */\nimport { ChangeEvent, useCallback, useMemo } from 'react';\nimport {\n actions,\n makePropGetter,\n ensurePluginOrder,\n useGetLatest,\n useMountedLayoutEffect,\n Hooks,\n TableInstance,\n TableState,\n ActionType,\n ReducerTableState,\n IdType,\n Row,\n PropGetter,\n TableToggleRowsSelectedProps,\n TableToggleAllRowsSelectedProps,\n} from 'react-table';\n\ntype DefaultType = Record;\n\ninterface UseRowSelectTableInstance\n extends TableInstance {\n isAllRowSelected: boolean;\n selectSubRows: boolean;\n getSubRows(row: Row): Row[];\n isRowSelectable?(row: Row): boolean;\n}\n\nconst pluginName = 'useRowSelect';\n\n// Actions\nactions.resetSelectedRows = 'resetSelectedRows';\nactions.toggleAllRowsSelected = 'toggleAllRowsSelected';\nactions.toggleRowSelected = 'toggleRowSelected';\nactions.toggleAllPageRowsSelected = 'toggleAllPageRowsSelected';\n\nexport function useRowSelect(hooks: Hooks) {\n hooks.getToggleRowSelectedProps = [\n defaultGetToggleRowSelectedProps as PropGetter<\n D,\n TableToggleRowsSelectedProps\n >,\n ];\n hooks.getToggleAllRowsSelectedProps = [\n defaultGetToggleAllRowsSelectedProps as PropGetter<\n D,\n TableToggleAllRowsSelectedProps\n >,\n ];\n hooks.getToggleAllPageRowsSelectedProps = [\n defaultGetToggleAllPageRowsSelectedProps as PropGetter<\n D,\n TableToggleAllRowsSelectedProps\n >,\n ];\n hooks.stateReducers.push(\n reducer as (\n newState: TableState,\n action: ActionType,\n previousState?: TableState,\n instance?: TableInstance\n ) => ReducerTableState | undefined\n );\n hooks.useInstance.push(useInstance as (instance: TableInstance) => void);\n hooks.prepareRow.push(prepareRow);\n}\n\nuseRowSelect.pluginName = pluginName;\n\nfunction defaultGetToggleRowSelectedProps(\n props: D,\n { instance, row }: { instance: UseRowSelectTableInstance; row: Row }\n) {\n const {\n manualRowSelectedKey = 'isSelected',\n isRowSelectable = defaultIsRowSelectable,\n } = instance;\n let checked = false;\n\n if (row.original && row.original[manualRowSelectedKey]) {\n checked = true;\n } else {\n checked = row.isSelected;\n }\n\n return [\n props,\n {\n onChange: (e: ChangeEvent) => {\n row.toggleRowSelected(e.target.checked);\n },\n style: {\n cursor: 'pointer',\n },\n checked,\n title: 'Toggle Row Selected',\n indeterminate: row.isSomeSelected,\n disabled: !isRowSelectable(row),\n },\n ];\n}\n\nfunction defaultGetToggleAllRowsSelectedProps(\n props: D,\n { instance }: { instance: UseRowSelectTableInstance }\n) {\n return [\n props,\n {\n onChange: (e: ChangeEvent) => {\n instance.toggleAllRowsSelected(e.target.checked);\n },\n style: {\n cursor: 'pointer',\n },\n checked: instance.isAllRowsSelected,\n title: 'Toggle All Rows Selected',\n indeterminate: Boolean(\n !instance.isAllRowsSelected &&\n Object.keys(instance.state.selectedRowIds).length\n ),\n },\n ];\n}\n\nfunction defaultGetToggleAllPageRowsSelectedProps(\n props: D,\n { instance }: { instance: UseRowSelectTableInstance }\n) {\n return [\n props,\n {\n onChange(e: ChangeEvent) {\n instance.toggleAllPageRowsSelected(e.target.checked);\n },\n style: {\n cursor: 'pointer',\n },\n checked: instance.isAllPageRowsSelected,\n title: 'Toggle All Current Page Rows Selected',\n indeterminate: Boolean(\n !instance.isAllPageRowsSelected &&\n instance.page.some(({ id }) => instance.state.selectedRowIds[id])\n ),\n },\n ];\n}\n\nfunction reducer>(\n state: TableState,\n action: ActionType,\n _previousState?: TableState,\n instance?: UseRowSelectTableInstance\n) {\n if (action.type === actions.init) {\n return {\n ...state,\n selectedRowIds: , boolean>>{},\n };\n }\n\n if (action.type === actions.resetSelectedRows) {\n return {\n ...state,\n selectedRowIds: instance?.initialState.selectedRowIds || {},\n };\n }\n\n if (action.type === actions.toggleAllRowsSelected) {\n const { value: setSelected } = action;\n\n if (!instance) {\n return state;\n }\n\n const {\n isAllRowsSelected,\n rowsById,\n nonGroupedRowsById = rowsById,\n isRowSelectable = defaultIsRowSelectable,\n } = instance;\n\n const selectAll =\n typeof setSelected !== 'undefined' ? setSelected : !isAllRowsSelected;\n\n // Only remove/add the rows that are visible on the screen\n // Leave all the other rows that are selected alone.\n const selectedRowIds = { ...state.selectedRowIds };\n\n Object.keys(nonGroupedRowsById).forEach((rowId: IdType) => {\n if (selectAll) {\n const row = rowsById[rowId];\n if (isRowSelectable(row)) {\n selectedRowIds[rowId] = true;\n }\n } else {\n delete selectedRowIds[rowId];\n }\n });\n\n return {\n ...state,\n selectedRowIds,\n };\n }\n\n if (action.type === actions.toggleRowSelected) {\n if (!instance) {\n return state;\n }\n\n const { id, value: setSelected } = action;\n const {\n rowsById,\n selectSubRows = true,\n getSubRows,\n isRowSelectable = defaultIsRowSelectable,\n } = instance;\n\n const isSelected = state.selectedRowIds[id];\n const shouldExist =\n typeof setSelected !== 'undefined' ? setSelected : !isSelected;\n\n if (isSelected === shouldExist) {\n return state;\n }\n\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n // eslint-disable-next-line no-inner-declarations\n function handleRowById(id: IdType) {\n const row = rowsById[id];\n\n if (!isRowSelectable(row)) {\n return;\n }\n\n if (!row.isGrouped) {\n if (shouldExist) {\n newSelectedRowIds[id] = true;\n } else {\n delete newSelectedRowIds[id];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((row) => handleRowById(row.id));\n }\n }\n\n handleRowById(id);\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n\n if (action.type === actions.toggleAllPageRowsSelected) {\n if (!instance) {\n return state;\n }\n\n const { value: setSelected } = action;\n const {\n page,\n rowsById,\n selectSubRows = true,\n isAllPageRowsSelected,\n getSubRows,\n } = instance;\n\n const selectAll =\n typeof setSelected !== 'undefined' ? setSelected : !isAllPageRowsSelected;\n\n const newSelectedRowIds = { ...state.selectedRowIds };\n\n // eslint-disable-next-line no-inner-declarations\n function handleRowById(id: IdType) {\n const row = rowsById[id];\n\n if (!row.isGrouped) {\n if (selectAll) {\n newSelectedRowIds[id] = true;\n } else {\n delete newSelectedRowIds[id];\n }\n }\n\n if (selectSubRows && getSubRows(row)) {\n getSubRows(row).forEach((row) => handleRowById(row.id));\n }\n }\n\n page.forEach((row) => handleRowById(row.id));\n\n return {\n ...state,\n selectedRowIds: newSelectedRowIds,\n };\n }\n return state;\n}\n\nfunction useInstance>(\n instance: UseRowSelectTableInstance\n) {\n const {\n data,\n rows,\n getHooks,\n plugins,\n rowsById,\n nonGroupedRowsById = rowsById,\n autoResetSelectedRows = true,\n state: { selectedRowIds },\n selectSubRows = true,\n dispatch,\n page,\n getSubRows,\n isRowSelectable = defaultIsRowSelectable,\n } = instance;\n\n ensurePluginOrder(\n plugins,\n ['useFilters', 'useGroupBy', 'useSortBy', 'useExpanded', 'usePagination'],\n 'useRowSelect'\n );\n\n const selectedFlatRows = useMemo(() => {\n const selectedFlatRows = >>[];\n\n rows.forEach((row) => {\n const isSelected = selectSubRows\n ? getRowIsSelected(row, selectedRowIds, getSubRows)\n : !!selectedRowIds[row.id];\n row.isSelected = !!isSelected;\n row.isSomeSelected = isSelected === null;\n\n if (isSelected) {\n selectedFlatRows.push(row);\n }\n });\n\n return selectedFlatRows;\n }, [rows, selectSubRows, selectedRowIds, getSubRows]);\n\n let isAllRowsSelected = Boolean(\n Object.keys(nonGroupedRowsById).length && Object.keys(selectedRowIds).length\n );\n\n let isAllPageRowsSelected = isAllRowsSelected;\n\n if (isAllRowsSelected) {\n if (\n Object.keys(nonGroupedRowsById).some((id) => {\n const row = rowsById[id];\n\n return !selectedRowIds[id] && isRowSelectable(row);\n })\n ) {\n isAllRowsSelected = false;\n }\n }\n\n if (!isAllRowsSelected) {\n if (\n page &&\n page.length &&\n page.some(({ id }) => {\n const row = rowsById[id];\n\n return !selectedRowIds[id] && isRowSelectable(row);\n })\n ) {\n isAllPageRowsSelected = false;\n }\n }\n\n const getAutoResetSelectedRows = useGetLatest(autoResetSelectedRows);\n\n useMountedLayoutEffect(() => {\n if (getAutoResetSelectedRows()) {\n dispatch({ type: actions.resetSelectedRows });\n }\n }, [dispatch, data]);\n\n const toggleAllRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllRowsSelected, value }),\n [dispatch]\n );\n\n const toggleAllPageRowsSelected = useCallback(\n (value) => dispatch({ type: actions.toggleAllPageRowsSelected, value }),\n [dispatch]\n );\n\n const toggleRowSelected = useCallback(\n (id, value) => dispatch({ type: actions.toggleRowSelected, id, value }),\n [dispatch]\n );\n\n const getInstance = useGetLatest(instance);\n\n const getToggleAllRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllRowsSelectedProps,\n { instance: getInstance() }\n );\n\n const getToggleAllPageRowsSelectedProps = makePropGetter(\n getHooks().getToggleAllPageRowsSelectedProps,\n { instance: getInstance() }\n );\n\n Object.assign(instance, {\n selectedFlatRows,\n isAllRowsSelected,\n isAllPageRowsSelected,\n toggleRowSelected,\n toggleAllRowsSelected,\n getToggleAllRowsSelectedProps,\n getToggleAllPageRowsSelectedProps,\n toggleAllPageRowsSelected,\n });\n}\n\nfunction prepareRow>(\n row: Row,\n { instance }: { instance: TableInstance }\n) {\n row.toggleRowSelected = (set) => instance.toggleRowSelected(row.id, set);\n\n row.getToggleRowSelectedProps = makePropGetter(\n instance.getHooks().getToggleRowSelectedProps,\n { instance, row }\n );\n}\n\nfunction getRowIsSelected>(\n row: Row,\n selectedRowIds: Record, boolean>,\n getSubRows: (row: Row) => Array>\n) {\n if (selectedRowIds[row.id]) {\n return true;\n }\n\n const subRows = getSubRows(row);\n\n if (subRows && subRows.length) {\n let allChildrenSelected = true;\n let someSelected = false;\n\n subRows.forEach((subRow) => {\n // Bail out early if we know both of these\n if (someSelected && !allChildrenSelected) {\n return;\n }\n\n if (getRowIsSelected(subRow, selectedRowIds, getSubRows)) {\n someSelected = true;\n } else {\n allChildrenSelected = false;\n }\n });\n\n if (allChildrenSelected) {\n return true;\n }\n\n return someSelected ? null : false;\n }\n\n return false;\n}\n\nfunction defaultIsRowSelectable(row: Row) {\n return !row.original.disabled;\n}\n","import {\n Context,\n createContext,\n ReactNode,\n useCallback,\n useContext,\n useMemo,\n useState,\n} from 'react';\n\nimport { useLocalStorage } from '@/portainer/hooks/useLocalStorage';\n\ninterface TableSettingsContextInterface {\n settings: T;\n setTableSettings(partialSettings: Partial): void;\n setTableSettings(mutation: (settings: T) => T): void;\n}\n\nconst TableSettingsContext = createContext\n> | null>(null);\n\nexport function useTableSettings() {\n const Context = getContextType();\n\n const context = useContext(Context);\n\n if (context === null) {\n throw new Error('must be nested under TableSettingsProvider');\n }\n\n return context;\n}\n\ninterface ProviderProps {\n children: ReactNode;\n defaults?: T;\n storageKey: string;\n}\n\nexport function TableSettingsProvider({\n children,\n defaults,\n storageKey,\n}: ProviderProps) {\n const Context = getContextType();\n\n const [storage, setStorage] = useLocalStorage(\n keyBuilder(storageKey),\n defaults as T\n );\n\n const [settings, setTableSettings] = useState(storage);\n\n const handleChange = useCallback(\n (mutation: Partial | ((settings: T) => T)): void => {\n setTableSettings((settings) => {\n const newTableSettings =\n mutation instanceof Function\n ? mutation(settings)\n : { ...settings, ...mutation };\n\n setStorage(newTableSettings);\n\n return newTableSettings;\n });\n },\n [setStorage]\n );\n\n const contextValue = useMemo(\n () => ({\n settings,\n setTableSettings: handleChange,\n }),\n [settings, handleChange]\n );\n\n return {children};\n\n function keyBuilder(key: string) {\n return `datatable_TableSettings_${key}`;\n }\n}\n\nfunction getContextType() {\n return TableSettingsContext as unknown as Context<\n TableSettingsContextInterface\n >;\n}\n","import { Context, createContext, ReactNode, useContext, useMemo } from 'react';\n\ninterface TableSettingsContextInterface {\n settings: T;\n}\n\nconst TableSettingsContext = createContext\n> | null>(null);\n\nexport function useTableSettings() {\n const Context = getContextType();\n\n const context = useContext(Context);\n\n if (context === null) {\n throw new Error('must be nested under TableSettingsProvider');\n }\n\n return context;\n}\n\ninterface ProviderProps {\n children: ReactNode;\n settings: T;\n}\n\nexport function TableSettingsProvider({\n children,\n settings,\n}: ProviderProps) {\n const Context = getContextType();\n\n const contextValue = useMemo(\n () => ({\n settings,\n }),\n [settings]\n );\n\n return {children};\n}\n\nfunction getContextType() {\n return TableSettingsContext as unknown as Context<\n TableSettingsContextInterface\n >;\n}\n","import clsx from 'clsx';\nimport { PropsWithChildren, ReactNode } from 'react';\n\nimport { ButtonGroup, Size } from '@@/buttons/ButtonGroup';\n\nimport styles from './ButtonSelector.module.css';\n\nexport interface Option {\n value: T;\n label?: ReactNode;\n}\n\ninterface Props {\n value: T;\n onChange(value: T): void;\n options: Option[];\n size?: Size;\n disabled?: boolean;\n readOnly?: boolean;\n}\n\nexport function ButtonSelector({\n value,\n onChange,\n size,\n options,\n disabled,\n readOnly,\n}: Props) {\n return (\n \n {options.map((option) => (\n onChange(option.value)}\n disabled={disabled}\n readOnly={readOnly}\n >\n {option.label || option.value.toString()}\n \n ))}\n \n );\n}\n\ninterface OptionItemProps {\n selected: boolean;\n onChange(): void;\n disabled?: boolean;\n readOnly?: boolean;\n}\n\nfunction OptionItem({\n selected,\n children,\n onChange,\n disabled,\n readOnly,\n}: PropsWithChildren) {\n return (\n \n {children}\n \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"group\":\"app-react-components-form-components-ButtonSelector-ButtonSelector-module__group\"};","import {\n forwardRef,\n useRef,\n useEffect,\n MutableRefObject,\n ChangeEventHandler,\n HTMLProps,\n} from 'react';\n\ninterface Props extends HTMLProps {\n checked?: boolean;\n indeterminate?: boolean;\n title?: string;\n label?: string;\n id: string;\n className?: string;\n role?: string;\n onChange?: ChangeEventHandler;\n}\n\nexport const Checkbox = forwardRef(\n (\n { indeterminate, title, label, id, checked, onChange, ...props }: Props,\n ref\n ) => {\n const defaultRef = useRef(null);\n let resolvedRef = ref as MutableRefObject;\n if (!ref) {\n resolvedRef = defaultRef;\n }\n\n useEffect(() => {\n if (resolvedRef === null || resolvedRef.current === null) {\n return;\n }\n\n if (typeof indeterminate !== 'undefined') {\n resolvedRef.current.indeterminate = indeterminate;\n }\n }, [resolvedRef, indeterminate]);\n\n return (\n
    \n \n \n
    \n );\n }\n);\n","import { ChangeEvent, createRef } from 'react';\n\nimport { Button } from '@@/buttons';\nimport { Icon } from '@@/Icon';\n\nimport styles from './FileUploadField.module.css';\n\nexport interface Props {\n onChange(value: File): void;\n value?: File;\n accept?: string;\n title?: string;\n required?: boolean;\n inputId: string;\n}\n\nexport function FileUploadField({\n onChange,\n value,\n accept,\n title = 'Select a file',\n required = false,\n inputId,\n}: Props) {\n const fileRef = createRef();\n\n return (\n
    \n \n \n {title}\n \n\n \n {value ? value.name : }\n \n
    \n );\n\n function handleButtonClick() {\n if (fileRef && fileRef.current) {\n fileRef.current.click();\n }\n }\n\n function changeHandler(event: ChangeEvent) {\n if (event.target && event.target.files && event.target.files.length > 0) {\n onChange(event.target.files[0]);\n }\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"fileInput\":\"app-react-components-form-components-FileUpload-FileUploadField-module__file-input\",\"fileButton\":\"app-react-components-form-components-FileUpload-FileUploadField-module__file-button\"};","// extracted by mini-css-extract-plugin\nexport default {};","import { PropsWithChildren, ReactNode } from 'react';\nimport clsx from 'clsx';\n\nimport { Tooltip } from '@@/Tip/Tooltip';\n\nimport { FormError } from '../FormError';\n\nimport styles from './FormControl.module.css';\n\ntype Size = 'small' | 'medium' | 'large';\n\nexport interface Props {\n inputId?: string;\n label: string | ReactNode;\n size?: Size;\n tooltip?: string;\n children: ReactNode;\n errors?: string | ReactNode;\n required?: boolean;\n classes?: string;\n}\n\nexport function FormControl({\n inputId,\n label,\n size = 'small',\n tooltip = '',\n children,\n errors,\n classes,\n required = false,\n}: PropsWithChildren) {\n return (\n <>\n
    \n \n {label}\n\n {required && *}\n\n {tooltip && }\n \n\n
    {children}
    \n
    \n {errors && (\n
    \n
    \n {errors}\n
    \n
    \n )}\n \n );\n}\n\nfunction sizeClassLabel(size?: Size) {\n switch (size) {\n case 'large':\n return 'col-sm-5 col-lg-4';\n case 'medium':\n return 'col-sm-4 col-lg-3';\n default:\n return 'col-sm-3 col-lg-2';\n }\n}\n\nfunction sizeClassChildren(size?: Size) {\n switch (size) {\n case 'large':\n return 'col-sm-7 col-lg-8';\n case 'medium':\n return 'col-sm-8 col-lg-9';\n default:\n return 'col-sm-9 col-lg-10';\n }\n}\n","import { PropsWithChildren } from 'react';\n\nimport { Icon } from '@@/Icon';\n\nexport function FormError({ children }: PropsWithChildren) {\n return (\n

    \n \n {children}\n

    \n );\n}\n","import { PropsWithChildren, useState } from 'react';\n\nimport { FormSectionTitle } from '../FormSectionTitle';\n\ninterface Props {\n title: string;\n isFoldable?: boolean;\n}\n\nexport function FormSection({\n title,\n children,\n isFoldable = false,\n}: PropsWithChildren) {\n const [isExpanded, setIsExpanded] = useState(!isFoldable);\n\n return (\n <>\n \n {isFoldable && (\n setIsExpanded(!isExpanded)}\n className=\"border-0 mx-2 bg-transparent inline-flex justify-center items-center w-2\"\n >\n \n \n )}\n\n {title}\n \n\n {isExpanded && children}\n \n );\n}\n","import { PropsWithChildren } from 'react';\n\ninterface Props {\n htmlFor?: string;\n}\n\nexport function FormSectionTitle({\n children,\n htmlFor,\n}: PropsWithChildren) {\n if (htmlFor) {\n return (\n \n {children}\n \n );\n }\n return
    {children}
    ;\n}\n","import clsx from 'clsx';\nimport { SelectHTMLAttributes } from 'react';\n\nexport interface Option {\n value: T;\n label: string;\n}\n\ninterface Props {\n options: Option[];\n}\n\nexport function Select({\n options,\n className,\n ...props\n}: Props & SelectHTMLAttributes) {\n return (\n \n {options.map((item) => (\n \n ))}\n \n );\n}\n","import clsx from 'clsx';\nimport { InputHTMLAttributes } from 'react';\n\nexport function Input({\n className,\n ...props\n}: InputHTMLAttributes) {\n return (\n \n );\n}\n","import clsx from 'clsx';\nimport { createContext, PropsWithChildren, useContext } from 'react';\n\nconst Context = createContext(null);\n\ntype Size = 'small' | 'large';\n\nexport function useInputGroupContext() {\n const context = useContext(Context);\n\n if (context == null) {\n throw new Error('Should be inside a InputGroup component');\n }\n}\n\ninterface Props {\n size?: Size;\n className?: string;\n}\n\nexport function InputGroup({\n children,\n size,\n className,\n}: PropsWithChildren) {\n return (\n \n
    \n {children}\n
    \n
    \n );\n}\n\nfunction sizeClass(size?: Size) {\n switch (size) {\n case 'large':\n return 'input-group-lg';\n case 'small':\n return 'input-group-sm';\n default:\n return '';\n }\n}\n","import { Input } from '../Input';\n\nimport { InputGroup as MainComponent } from './InputGroup';\nimport { InputGroupAddon } from './InputGroupAddon';\nimport { InputGroupButtonWrapper } from './InputGroupButtonWrapper';\n\ninterface InputGroupSubComponents {\n Addon: typeof InputGroupAddon;\n ButtonWrapper: typeof InputGroupButtonWrapper;\n Input: typeof Input;\n className: string | undefined;\n}\n\nconst InputGroup: typeof MainComponent & InputGroupSubComponents =\n MainComponent as typeof MainComponent & InputGroupSubComponents;\n\nInputGroup.Addon = InputGroupAddon;\nInputGroup.ButtonWrapper = InputGroupButtonWrapper;\nInputGroup.Input = Input;\n\nexport { InputGroup };\n","import { PropsWithChildren } from 'react';\n\nimport { useInputGroupContext } from './InputGroup';\n\nexport function InputGroupAddon({ children }: PropsWithChildren) {\n useInputGroupContext();\n\n return {children};\n}\n","import { PropsWithChildren } from 'react';\n\nimport { useInputGroupContext } from './InputGroup';\n\nexport function InputGroupButtonWrapper({\n children,\n}: PropsWithChildren) {\n useInputGroupContext();\n\n return {children};\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"items\":\"app-react-components-form-components-InputList-InputList-module__items\",\"label\":\"app-react-components-form-components-InputList-InputList-module__label\",\"itemLine\":\"app-react-components-form-components-InputList-InputList-module__item-line\",\"hasError\":\"app-react-components-form-components-InputList-InputList-module__has-error\",\"itemActions\":\"app-react-components-form-components-InputList-InputList-module__item-actions\",\"defaultItem\":\"app-react-components-form-components-InputList-InputList-module__default-item\"};","import { ComponentType } from 'react';\nimport clsx from 'clsx';\nimport { FormikErrors } from 'formik';\n\nimport { AddButton, Button } from '@@/buttons';\nimport { Icon } from '@@/Icon';\nimport { Tooltip } from '@@/Tip/Tooltip';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { Input } from '../Input';\nimport { FormError } from '../FormError';\n\nimport styles from './InputList.module.css';\nimport { arrayMove } from './utils';\n\nexport interface ItemProps {\n item: T;\n onChange(value: T): void;\n error?: string | FormikErrors;\n disabled?: boolean;\n readOnly?: boolean;\n}\ntype Key = string | number;\ntype ChangeType = 'delete' | 'create' | 'update';\nexport type DefaultType = { value: string };\n\ntype OnChangeEvent =\n | {\n item: T;\n type: ChangeType;\n }\n | {\n type: 'move';\n fromIndex: number;\n to: number;\n };\n\ntype RenderItemFunction = (\n item: T,\n onChange: (value: T) => void,\n error?: string | FormikErrors\n) => React.ReactNode;\n\ninterface Props {\n label: string;\n value: T[];\n onChange(value: T[], e: OnChangeEvent): void;\n itemBuilder?(): T;\n renderItem?: RenderItemFunction;\n item?: ComponentType>;\n tooltip?: string;\n addLabel?: string;\n itemKeyGetter?(item: T, index: number): Key;\n movable?: boolean;\n errors?: FormikErrors[] | string | string[];\n textTip?: string;\n isAddButtonHidden?: boolean;\n disabled?: boolean;\n readOnly?: boolean;\n}\n\nexport function InputList({\n label,\n value,\n onChange,\n itemBuilder = defaultItemBuilder as unknown as () => T,\n renderItem = renderDefaultItem as unknown as RenderItemFunction,\n item: Item,\n tooltip,\n addLabel = 'Add item',\n itemKeyGetter = (item: T, index: number) => index,\n movable,\n errors,\n textTip,\n isAddButtonHidden = false,\n disabled,\n readOnly,\n}: Props) {\n return (\n
    \n
    \n
    \n {label}\n {tooltip && }\n
    \n {!(isAddButtonHidden || readOnly) && (\n \n )}\n
    \n\n {textTip && (\n
    \n {textTip}\n
    \n )}\n\n
    \n {value.map((item, index) => {\n const key = itemKeyGetter(item, index);\n const error = typeof errors === 'object' ? errors[index] : undefined;\n\n return (\n \n {Item ? (\n handleChangeItem(key, value)}\n error={error}\n disabled={disabled}\n readOnly={readOnly}\n />\n ) : (\n renderItem(\n item,\n (value: T) => handleChangeItem(key, value),\n error\n )\n )}\n
    \n {!readOnly && movable && (\n <>\n handleMoveUp(index)}\n className=\"vertical-center btn-only-icon\"\n >\n \n \n handleMoveDown(index)}\n className=\"vertical-center btn-only-icon\"\n >\n \n \n \n )}\n {!readOnly && (\n handleRemoveItem(key, item)}\n disabled={disabled}\n >\n \n \n )}\n
    \n
    \n );\n })}\n
    \n
    \n );\n\n function handleMoveUp(index: number) {\n if (index <= 0) {\n return;\n }\n handleMove(index, index - 1);\n }\n\n function handleMoveDown(index: number) {\n if (index >= value.length - 1) {\n return;\n }\n handleMove(index, index + 1);\n }\n\n function handleMove(from: number, to: number) {\n if (!movable) {\n return;\n }\n\n onChange(arrayMove(value, from, to), {\n type: 'move',\n fromIndex: from,\n to,\n });\n }\n\n function handleRemoveItem(key: Key, item: T) {\n onChange(\n value.filter((item, index) => {\n const itemKey = itemKeyGetter(item, index);\n return itemKey !== key;\n }),\n { type: 'delete', item }\n );\n }\n\n function handleAdd() {\n const newItem = itemBuilder();\n onChange([...value, newItem], { type: 'create', item: newItem });\n }\n\n function handleChangeItem(key: Key, newItemValue: T) {\n const newItems = value.map((item, index) => {\n const itemKey = itemKeyGetter(item, index);\n if (itemKey !== key) {\n return item;\n }\n return newItemValue;\n });\n onChange(newItems, {\n type: 'update',\n item: newItemValue,\n });\n }\n}\n\nfunction defaultItemBuilder(): DefaultType {\n return { value: '' };\n}\n\nfunction DefaultItem({\n item,\n onChange,\n error,\n disabled,\n readOnly,\n}: ItemProps) {\n return (\n <>\n onChange({ value: e.target.value })}\n className={styles.defaultItem}\n disabled={disabled}\n readOnly={readOnly}\n />\n {error && {error}}\n \n );\n}\n\nfunction renderDefaultItem(\n item: DefaultType,\n onChange: (value: DefaultType) => void,\n error?: FormikErrors\n) {\n return ;\n}\n","export function arrayMove(array: Array, from: number, to: number) {\n if (!checkValidIndex(array, from) || !checkValidIndex(array, to)) {\n throw new Error('index is out of bounds');\n }\n\n const item = array[from];\n const { length } = array;\n\n const diff = from - to;\n\n if (diff > 0) {\n // move left\n return [\n ...array.slice(0, to),\n item,\n ...array.slice(to, from),\n ...array.slice(from + 1, length),\n ];\n }\n\n if (diff < 0) {\n // move right\n const targetIndex = to + 1;\n return [\n ...array.slice(0, from),\n ...array.slice(from + 1, targetIndex),\n item,\n ...array.slice(targetIndex, length),\n ];\n }\n\n return [...array];\n\n function checkValidIndex(array: Array, index: number) {\n return index >= 0 && index <= array.length;\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-components-form-components-ReactSelect-module__root\"};","import ReactSelectCreatable, { CreatableProps } from 'react-select/creatable';\nimport ReactSelect, { GroupBase, Props as SelectProps } from 'react-select';\nimport clsx from 'clsx';\nimport { RefAttributes } from 'react';\nimport ReactSelectType from 'react-select/dist/declarations/src/Select';\n\nimport styles from './ReactSelect.module.css';\n\nexport function Select<\n Option = unknown,\n IsMulti extends boolean = false,\n Group extends GroupBase
    \n \n );\n\n function handleSelectAll() {\n environments.forEach((env) => toggleSelection(env.Id, !isAllPageSelected));\n }\n\n function handleDownload() {\n confirmKubeconfigSelection();\n }\n\n async function confirmKubeconfigSelection() {\n if (selectionSize === 0) {\n notifications.warning('No environment was selected', '');\n return;\n }\n try {\n await kcService.downloadKubeconfigFile(\n Object.keys(selection).map(Number)\n );\n onClose();\n } catch (e) {\n notifications.error('Failed downloading kubeconfig file', e as Error);\n }\n }\n}\n\nexport function expiryMessage(expiry: string) {\n const prefix = 'The kubeconfig file will';\n switch (expiry) {\n case '24h':\n return `${prefix} expire in 1 day.`;\n case '168h':\n return `${prefix} expire in 7 days.`;\n case '720h':\n return `${prefix} expire in 30 days.`;\n case '8640h':\n return `${prefix} expire in 1 year.`;\n case '0':\n default:\n return `${prefix} not expire.`;\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"checkbox\":\"app-portainer-home-EnvironmentList-KubeconfigButton-KubeconfigPrompt-module__checkbox\",\"dialog\":\"app-portainer-home-EnvironmentList-KubeconfigButton-KubeconfigPrompt-module__dialog\"};","import { useState } from 'react';\nimport { Download } from 'react-feather';\n\nimport { Environment } from '@/portainer/environments/types';\nimport { Query } from '@/portainer/environments/queries/useEnvironmentList';\nimport { isKubernetesEnvironment } from '@/portainer/environments/utils';\nimport { trackEvent } from '@/angulartics.matomo/analytics-services';\n\nimport { Button } from '@@/buttons';\n\nimport { KubeconfigPrompt } from './KubeconfigPrompt';\nimport '@reach/dialog/styles.css';\n\nexport interface Props {\n environments: Environment[];\n envQueryParams: Query;\n}\nexport function KubeconfigButton({ environments, envQueryParams }: Props) {\n const [isOpen, setIsOpen] = useState(false);\n\n if (!environments) {\n return null;\n }\n\n if (!isKubeconfigButtonVisible(environments)) {\n return null;\n }\n\n return (\n <>\n \n {prompt()}\n \n );\n\n function handleClick() {\n if (!environments) {\n return;\n }\n\n trackEvent('kubernetes-kubectl-kubeconfig-multi', {\n category: 'kubernetes',\n });\n\n setIsOpen(true);\n }\n\n function handleClose() {\n setIsOpen(false);\n }\n\n function isKubeconfigButtonVisible(environments: Environment[]) {\n if (window.location.protocol !== 'https:') {\n return false;\n }\n return environments.some((env) => isKubernetesEnvironment(env.Type));\n }\n\n function prompt() {\n return (\n isOpen && (\n \n )\n );\n }\n}\n","import { InformationPanel } from '@@/InformationPanel';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nexport function NoEnvironmentsInfoPanel({ isAdmin }: { isAdmin: boolean }) {\n return (\n \n \n {isAdmin ? (\n \n No environment available for management. Please head over the{' '}\n environment wizard to\n add an environment.\n \n ) : (\n \n You do not have access to any environment. Please contact your\n administrator.\n \n )}\n \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"actionBar\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__actionBar\",\"description\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__description\",\"refreshEnvironmentsButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__refresh-environments-button\",\"filterContainer\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__filter-container\",\"filterLeft\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__filter-left\",\"filterRight\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__filter-right\",\"filterButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__filter-button\",\"clearButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__clear-button\",\"actionButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__action-button\",\"kubeconfigButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__kubeconfig-button\",\"refreshButton\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__refresh-button\",\"filterSearchbar\":\"app-portainer-home-EnvironmentList-EnvironmentList-module__filterSearchbar\"};","import { ReactNode, useEffect, useState } from 'react';\nimport clsx from 'clsx';\nimport { RefreshCcw } from 'react-feather';\nimport _ from 'lodash';\n\nimport { usePaginationLimitState } from '@/portainer/hooks/usePaginationLimitState';\nimport {\n Environment,\n EnvironmentType,\n EnvironmentStatus,\n PlatformType,\n EdgeTypes,\n} from '@/portainer/environments/types';\nimport { EnvironmentGroupId } from '@/portainer/environment-groups/types';\nimport { useIsAdmin } from '@/portainer/hooks/useUser';\nimport {\n HomepageFilter,\n useHomePageFilter,\n} from '@/portainer/home/HomepageFilter';\nimport { useDebounce } from '@/portainer/hooks/useDebounce';\nimport {\n refetchIfAnyOffline,\n useEnvironmentList,\n} from '@/portainer/environments/queries/useEnvironmentList';\nimport { useGroups } from '@/portainer/environment-groups/queries';\nimport { useTags } from '@/portainer/tags/queries';\nimport { Filter } from '@/portainer/home/types';\nimport { useAgentVersionsList } from '@/portainer/environments/queries/useAgentVersionsList';\nimport { EnvironmentsQueryParams } from '@/portainer/environments/environment.service';\n\nimport { TableFooter } from '@@/datatables/TableFooter';\nimport { TableActions, TableContainer, TableTitle } from '@@/datatables';\nimport {\n FilterSearchBar,\n useSearchBarState,\n} from '@@/datatables/FilterSearchBar';\nimport { Button } from '@@/buttons';\nimport { PaginationControls } from '@@/PaginationControls';\nimport { SortbySelector } from '@@/datatables/SortbySelector';\n\nimport { EnvironmentItem } from './EnvironmentItem';\nimport { KubeconfigButton } from './KubeconfigButton';\nimport { NoEnvironmentsInfoPanel } from './NoEnvironmentsInfoPanel';\nimport styles from './EnvironmentList.module.css';\n\ninterface Props {\n onClickItem(environment: Environment): void;\n onRefresh(): void;\n}\n\nconst status = [\n { value: EnvironmentStatus.Up, label: 'Up' },\n { value: EnvironmentStatus.Down, label: 'Down' },\n];\n\nconst sortByOptions = [\n { value: 1, label: 'Name' },\n { value: 2, label: 'Group' },\n { value: 3, label: 'Status' },\n];\n\nenum ConnectionType {\n API,\n Agent,\n EdgeAgent,\n EdgeDevice,\n}\n\nconst storageKey = 'home_endpoints';\n\nexport function EnvironmentList({ onClickItem, onRefresh }: Props) {\n const isAdmin = useIsAdmin();\n\n const [platformTypes, setPlatformTypes] = useHomePageFilter<\n Filter[]\n >('platformType', []);\n const [searchBarValue, setSearchBarValue] = useSearchBarState(storageKey);\n const [pageLimit, setPageLimit] = usePaginationLimitState(storageKey);\n const [page, setPage] = useState(1);\n const debouncedTextFilter = useDebounce(searchBarValue);\n\n const [connectionTypes, setConnectionTypes] = useHomePageFilter<\n Filter[]\n >('connectionTypes', []);\n\n const [statusFilter, setStatusFilter] = useHomePageFilter<\n EnvironmentStatus[]\n >('status', []);\n const [tagFilter, setTagFilter] = useHomePageFilter('tag', []);\n const [groupFilter, setGroupFilter] = useHomePageFilter(\n 'group',\n []\n );\n const [sortByFilter, setSortByFilter] = useSearchBarState('sortBy');\n const [sortByDescending, setSortByDescending] = useHomePageFilter(\n 'sortOrder',\n false\n );\n const [sortByButton, setSortByButton] = useHomePageFilter(\n 'sortByButton',\n false\n );\n\n const [statusState, setStatusState] = useHomePageFilter(\n 'status_state',\n []\n );\n const [tagState, setTagState] = useHomePageFilter('tag_state', []);\n const [groupState, setGroupState] = useHomePageFilter(\n 'group_state',\n []\n );\n const [sortByState, setSortByState] = useHomePageFilter(\n 'sort_by_state',\n undefined\n );\n const [agentVersions, setAgentVersions] = useHomePageFilter[]>(\n 'agentVersions',\n []\n );\n\n const groupsQuery = useGroups();\n\n const environmentsQueryParams: EnvironmentsQueryParams = {\n types: getTypes(\n platformTypes.map((p) => p.value),\n connectionTypes.map((p) => p.value)\n ),\n search: debouncedTextFilter,\n status: statusFilter,\n tagIds: tagFilter?.length ? tagFilter : undefined,\n groupIds: groupFilter,\n provisioned: true,\n edgeDevice: false,\n tagsPartialMatch: true,\n agentVersions: agentVersions.map((a) => a.value),\n };\n\n const tagsQuery = useTags();\n\n const { isLoading, environments, totalCount, totalAvailable } =\n useEnvironmentList(\n {\n page,\n pageLimit,\n sort: sortByFilter,\n order: sortByDescending ? 'desc' : 'asc',\n ...environmentsQueryParams,\n },\n refetchIfAnyOffline\n );\n\n const agentVersionsQuery = useAgentVersionsList();\n\n useEffect(() => {\n setPage(1);\n }, [searchBarValue]);\n\n const groupOptions = [...(groupsQuery.data || [])];\n const uniqueGroup = [\n ...new Map(groupOptions.map((item) => [item.Id, item])).values(),\n ].map(({ Id: value, Name: label }) => ({\n value,\n label,\n }));\n\n const tagOptions = [...(tagsQuery.tags || [])];\n const uniqueTag = [\n ...new Map(tagOptions.map((item) => [item.ID, item])).values(),\n ].map(({ ID: value, Name: label }) => ({\n value,\n label,\n }));\n\n const connectionTypeOptions = getConnectionTypeOptions(platformTypes);\n const platformTypeOptions = getPlatformTypeOptions(connectionTypes);\n\n return (\n <>\n {totalAvailable === 0 && }\n
    \n
    \n \n \n\n \n
    \n Click on an environment to manage\n
    \n
    \n
    \n {isAdmin && (\n \n \n Refresh\n \n )}\n
    \n
    \n \n
    \n
    \n \n
    \n
    \n
    \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n
    \n
    \n \n filterOptions={\n agentVersionsQuery.data?.map((v) => ({\n label: v,\n value: v,\n })) || []\n }\n onChange={setAgentVersions}\n placeHolder=\"Agent Version\"\n value={agentVersions}\n />\n
    \n \n Clear all\n \n
    \n \n
    \n
    \n
    \n {renderItems(\n isLoading,\n totalCount,\n environments.map((env) => (\n g.Id === env.GroupId)?.Name\n }\n onClick={onClickItem}\n />\n ))\n )}\n
    \n\n \n \n \n
    \n
    \n
    \n \n );\n\n function getTypes(\n platformTypes: PlatformType[],\n connectionTypes: ConnectionType[]\n ) {\n if (platformTypes.length === 0 && connectionTypes.length === 0) {\n return [];\n }\n\n const typesByPlatform = {\n [PlatformType.Docker]: [\n EnvironmentType.Docker,\n EnvironmentType.AgentOnDocker,\n EnvironmentType.EdgeAgentOnDocker,\n ],\n [PlatformType.Azure]: [EnvironmentType.Azure],\n [PlatformType.Kubernetes]: [\n EnvironmentType.KubernetesLocal,\n EnvironmentType.AgentOnKubernetes,\n EnvironmentType.EdgeAgentOnKubernetes,\n ],\n [PlatformType.Nomad]: [EnvironmentType.EdgeAgentOnNomad],\n };\n\n const typesByConnection = {\n [ConnectionType.API]: [\n EnvironmentType.Azure,\n EnvironmentType.KubernetesLocal,\n EnvironmentType.Docker,\n ],\n [ConnectionType.Agent]: [\n EnvironmentType.AgentOnDocker,\n EnvironmentType.AgentOnKubernetes,\n ],\n [ConnectionType.EdgeAgent]: EdgeTypes,\n [ConnectionType.EdgeDevice]: EdgeTypes,\n };\n\n const selectedTypesByPlatform = platformTypes.flatMap(\n (platformType) => typesByPlatform[platformType]\n );\n const selectedTypesByConnection = connectionTypes.flatMap(\n (connectionType) => typesByConnection[connectionType]\n );\n\n if (selectedTypesByPlatform.length === 0) {\n return selectedTypesByConnection;\n }\n\n if (selectedTypesByConnection.length === 0) {\n return selectedTypesByPlatform;\n }\n\n return _.intersection(selectedTypesByConnection, selectedTypesByPlatform);\n }\n\n function statusOnChange(filterOptions: Filter[]) {\n setStatusState(filterOptions);\n if (filterOptions.length === 0) {\n setStatusFilter([]);\n } else {\n const filteredStatus = [\n ...new Set(\n filterOptions.map(\n (filterOptions: { value: number }) => filterOptions.value\n )\n ),\n ];\n setStatusFilter(filteredStatus);\n }\n }\n\n function groupOnChange(filterOptions: Filter[]) {\n setGroupState(filterOptions);\n if (filterOptions.length === 0) {\n setGroupFilter([]);\n } else {\n const filteredGroups = [\n ...new Set(\n filterOptions.map(\n (filterOptions: { value: number }) => filterOptions.value\n )\n ),\n ];\n setGroupFilter(filteredGroups);\n }\n }\n\n function tagOnChange(filterOptions: Filter[]) {\n setTagState(filterOptions);\n if (filterOptions.length === 0) {\n setTagFilter([]);\n } else {\n const filteredTags = [\n ...new Set(\n filterOptions.map(\n (filterOptions: { value: number }) => filterOptions.value\n )\n ),\n ];\n setTagFilter(filteredTags);\n }\n }\n\n function clearFilter() {\n setPlatformTypes([]);\n setStatusState([]);\n setStatusFilter([]);\n setTagState([]);\n setTagFilter([]);\n setGroupState([]);\n setGroupFilter([]);\n setAgentVersions([]);\n setConnectionTypes([]);\n }\n\n function sortOnchange(filterOptions: Filter) {\n if (filterOptions !== null) {\n setSortByFilter(filterOptions.label);\n setSortByButton(true);\n setSortByState(filterOptions);\n } else {\n setSortByFilter('');\n setSortByButton(true);\n setSortByState(undefined);\n }\n }\n\n function sortOnDescending() {\n setSortByDescending(!sortByDescending);\n }\n}\n\nfunction getConnectionTypeOptions(platformTypes: Filter[]) {\n const platformTypeConnectionType = {\n [PlatformType.Docker]: [\n ConnectionType.API,\n ConnectionType.Agent,\n ConnectionType.EdgeAgent,\n ConnectionType.EdgeDevice,\n ],\n [PlatformType.Azure]: [ConnectionType.API],\n [PlatformType.Kubernetes]: [\n ConnectionType.Agent,\n ConnectionType.EdgeAgent,\n ConnectionType.EdgeDevice,\n ],\n [PlatformType.Nomad]: [ConnectionType.EdgeAgent, ConnectionType.EdgeDevice],\n };\n\n const connectionTypesDefaultOptions = [\n { value: ConnectionType.API, label: 'API' },\n { value: ConnectionType.Agent, label: 'Agent' },\n { value: ConnectionType.EdgeAgent, label: 'Edge Agent' },\n ];\n\n if (platformTypes.length === 0) {\n return connectionTypesDefaultOptions;\n }\n\n return _.compact(\n _.intersection(\n ...platformTypes.map((p) => platformTypeConnectionType[p.value])\n ).map((c) => connectionTypesDefaultOptions.find((o) => o.value === c))\n );\n}\n\nfunction getPlatformTypeOptions(connectionTypes: Filter[]) {\n const platformDefaultOptions = [\n { value: PlatformType.Docker, label: 'Docker' },\n { value: PlatformType.Azure, label: 'Azure' },\n { value: PlatformType.Kubernetes, label: 'Kubernetes' },\n { value: PlatformType.Nomad, label: 'Nomad' },\n ];\n\n if (connectionTypes.length === 0) {\n return platformDefaultOptions;\n }\n\n const connectionTypePlatformType = {\n [ConnectionType.API]: [PlatformType.Docker, PlatformType.Azure],\n [ConnectionType.Agent]: [PlatformType.Docker, PlatformType.Kubernetes],\n [ConnectionType.EdgeAgent]: [\n PlatformType.Kubernetes,\n PlatformType.Nomad,\n PlatformType.Docker,\n ],\n [ConnectionType.EdgeDevice]: [\n PlatformType.Nomad,\n PlatformType.Docker,\n PlatformType.Kubernetes,\n ],\n };\n\n return _.compact(\n _.intersection(\n ...connectionTypes.map((p) => connectionTypePlatformType[p.value])\n ).map((c) => platformDefaultOptions.find((o) => o.value === c))\n );\n}\n\nfunction renderItems(\n isLoading: boolean,\n totalCount: number,\n\n items: ReactNode\n) {\n if (isLoading) {\n return (\n
    \n Loading...\n
    \n );\n }\n\n if (!totalCount) {\n return (\n
    \n No environments available.\n
    \n );\n }\n\n return items;\n}\n","import { useQuery } from 'react-query';\n\nimport { getAgentVersions } from '../environment.service';\n\nexport function useAgentVersionsList() {\n return useQuery(['environments', 'agentVersions'], () => getAgentVersions());\n}\n","import { react2angular } from '@/react-tools/react2angular';\n\nimport { EnvironmentList } from './EnvironmentList';\n\nexport { EnvironmentList };\n\nexport const EnvironmentListAngular = react2angular(EnvironmentList, [\n 'onClickItem',\n 'onRefresh',\n]);\n","import clsx from 'clsx';\n\nimport styles from './EdgeLoadingSpinner.module.css';\n\nexport function EdgeLoadingSpinner() {\n return (\n
    \n Connecting to the Edge environment...\n \n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-portainer-home-EdgeLoadingSpinner-module__root\"};","import axios, { parseAxiosError } from '../services/axios';\n\nimport { Motd } from './types';\n\nexport async function getMotd() {\n try {\n const { data } = await axios.get('/motd');\n return data;\n } catch (err) {\n throw parseAxiosError(\n err as Error,\n 'Unable to retrieve information message'\n );\n }\n}\n","import { useQuery } from 'react-query';\nimport _ from 'lodash';\n\nimport { useUIState } from '@/portainer/hooks/UIStateProvider';\n\nimport { InformationPanel } from '@@/InformationPanel';\n\nimport { getMotd } from './home.service';\n\nexport function MotdPanel() {\n const motd = useMotd();\n\n const [uiState, setUIState] = useUIState();\n\n if (!motd || motd.Message === '' || motd.Hash === uiState.dismissedInfoHash) {\n return null;\n }\n\n return (\n <>\n {!!motd.Style && }\n onDismiss(motd.Hash)}\n title={motd.Title}\n wrapperStyle={camelCaseKeys(motd.ContentLayout)}\n bodyClassName=\"motd-body\"\n >\n \n {/* eslint-disable-next-line react/no-danger */}\n

    \n \n \n \n );\n\n function onDismiss(hash: string) {\n setUIState({\n ...uiState,\n dismissedInfoHash: hash,\n });\n }\n}\n\nfunction useMotd() {\n const { data } = useQuery('motd', () => getMotd());\n return data;\n}\n\nfunction camelCaseKeys(obj: Record = {}) {\n return Object.fromEntries(\n Object.entries(obj).map(([key, value]) => {\n const camelCased = _.camelCase(key);\n return [camelCased, value];\n })\n );\n}\n","import { LicenseInfoPanel } from '@@/LicenseInfoPanel/LicenseInfoPanel';\n\nimport { useIntegratedLicenseInfo } from '../license-management/use-license.service';\n\nexport function LicenseNodePanel() {\n const integratedInfo = useIntegratedLicenseInfo();\n\n if (\n !integratedInfo ||\n integratedInfo.licenseInfo.enforcedAt === 0 ||\n integratedInfo.usedNodes <= integratedInfo.licenseInfo.nodes\n ) {\n return null;\n }\n\n const template = 'enforcement';\n\n return (\n \n );\n}\n","import axios, { parseAxiosError } from '../axios';\n\ninterface StatusResponse {\n Failed: boolean;\n TimestampUTC: string;\n}\n\nexport async function getBackupStatus() {\n try {\n const { data } = await axios.get(buildUrl('s3', 'status'));\n return data;\n } catch (error) {\n throw parseAxiosError(error as Error, 'Unable to retrieve backup status');\n }\n}\n\nfunction buildUrl(resource?: string, action?: string) {\n let url = '/backup';\n\n if (resource) {\n url += `/${resource}`;\n }\n\n if (action) {\n url += `/${action}`;\n }\n\n return url;\n}\n","import { useQuery } from 'react-query';\n\nimport { error as notifyError } from '@/portainer/services/notifications';\n\nimport { InformationPanel } from '@@/InformationPanel';\nimport { TextTip } from '@@/Tip/TextTip';\nimport { Link } from '@@/Link';\n\nimport { getBackupStatus } from '../services/api/backup.service';\nimport { isoDate } from '../filters/filters';\n\nexport function BackupFailedPanel() {\n const { status, isLoading } = useBackupStatus();\n\n if (isLoading || !status || !status.Failed) {\n return null;\n }\n\n return (\n \n \n The latest automated backup has failed at {isoDate(status.TimestampUTC)}\n . For details please see the log files and have a look at the{' '}\n settings to verify the backup\n configuration.\n \n \n );\n}\n\nfunction useBackupStatus() {\n const { data, isLoading } = useQuery(\n ['backup', 'status'],\n () => getBackupStatus(),\n {\n onError(error) {\n notifyError('Failure', error as Error, 'Failed to get license info');\n },\n }\n );\n\n return { status: data, isLoading };\n}\n","import { useRouter } from '@uirouter/react';\nimport { useState } from 'react';\n\nimport { r2a } from '@/react-tools/react2angular';\n\nimport { PageHeader } from '@@/PageHeader';\n\nimport * as notifications from '../services/notifications';\nimport { Environment } from '../environments/types';\nimport { snapshotEndpoints } from '../environments/environment.service';\nimport { isEdgeEnvironment } from '../environments/utils';\nimport { confirmAsync } from '../services/modal.service/confirm';\nimport { buildTitle } from '../services/modal.service/utils';\n\nimport { EnvironmentList } from './EnvironmentList';\nimport { EdgeLoadingSpinner } from './EdgeLoadingSpinner';\nimport { MotdPanel } from './MotdPanel';\nimport { LicenseNodePanel } from './LicenseNodePanel';\nimport { BackupFailedPanel } from './BackupFailedPanel';\n\nexport function HomeView() {\n const [connectingToEdgeEndpoint, setConnectingToEdgeEndpoint] =\n useState(false);\n\n const router = useRouter();\n return (\n <>\n \n\n {process.env.PORTAINER_EDITION !== 'CE' && }\n\n \n\n {process.env.PORTAINER_EDITION !== 'CE' && }\n\n {connectingToEdgeEndpoint ? (\n \n ) : (\n \n )}\n \n );\n\n async function confirmTriggerSnapshot() {\n const result = await confirmEndpointSnapshot();\n if (!result) {\n return;\n }\n try {\n await snapshotEndpoints();\n notifications.success('Success', 'Environments updated');\n router.stateService.reload();\n } catch (err) {\n notifications.error(\n 'Failure',\n err as Error,\n 'An error occurred during environment snapshot'\n );\n }\n }\n\n function handleClickItem(environment: Environment) {\n if (isEdgeEnvironment(environment.Type)) {\n setConnectingToEdgeEndpoint(true);\n }\n }\n}\n\nexport const HomeViewAngular = r2a(HomeView, []);\n\nasync function confirmEndpointSnapshot() {\n return confirmAsync({\n title: buildTitle('Are you sure?'),\n message:\n 'Triggering a manual refresh will poll each environment to retrieve its information, this may take a few moments.',\n buttons: {\n confirm: {\n label: 'Continue',\n className: 'btn-primary',\n },\n },\n });\n}\n","import angular from 'angular';\n\nimport { EnvironmentListAngular } from './EnvironmentList';\nimport { HomeViewAngular } from './HomeView';\n\nexport default angular\n .module('portainer.app.home', [])\n .component('homeView', HomeViewAngular)\n .component('environmentList', EnvironmentListAngular).name;\n","import angular from 'angular';\n\nimport { AccessControlPanelAngular } from './AccessControlPanel/AccessControlPanel';\n\nexport const accessControlModule = angular\n .module('portainer.access-control', [])\n .component('accessControlPanel', AccessControlPanelAngular).name;\n","import clsx from 'clsx';\nimport _ from 'lodash';\n\nimport { useCreateTagMutation, useTags } from '@/portainer/tags/queries';\nimport { TagId } from '@/portainer/tags/types';\nimport { Icon } from '@/react/components/Icon';\n\nimport { Creatable, Select } from '@@/form-components/ReactSelect';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Link } from '@@/Link';\n\nimport styles from './TagSelector.module.css';\n\ninterface Props {\n value: TagId[];\n allowCreate?: boolean;\n onChange(value: TagId[]): void;\n}\n\ninterface Option {\n value: TagId;\n label: string;\n}\n\nexport function TagSelector({ value, allowCreate = false, onChange }: Props) {\n // change the struct because react-select has a bug with Creatable (https://github.com/JedWatson/react-select/issues/3417#issuecomment-461868989)\n const tagsQuery = useTags((tags) =>\n tags?.map((opt) => ({ label: opt.Name, value: opt.ID }))\n );\n\n const createTagMutation = useCreateTagMutation();\n\n if (!tagsQuery.tags) {\n return null;\n }\n\n const { tags } = tagsQuery;\n\n const selectedTags = _.compact(\n value?.map((id) => tags.find((tag) => tag.value === id))\n );\n\n const SelectComponent = allowCreate ? Creatable : Select;\n\n if (!tags.length && !allowCreate) {\n return (\n

    \n
    \n No tags available. Head over to the\n \n Tags view\n \n to add tags\n
    \n
    \n );\n }\n\n return (\n <>\n {value.length > 0 && (\n \n {selectedTags.map((tag) => (\n handleRemove(tag.value)}\n key={tag.value}\n >\n {tag.label}\n \n \n ))}\n \n )}\n\n \n !value.includes(tag.value))}\n closeMenuOnSelect={false}\n onChange={handleAdd}\n noOptionsMessage={() => 'No tags available'}\n formatCreateLabel={(inputValue) => `Create \"${inputValue}\"`}\n onCreateOption={handleCreateOption}\n />\n \n \n );\n\n function handleAdd(tag?: Option | null) {\n if (!tag) {\n return;\n }\n onChange([...value, tag.value]);\n }\n\n function handleRemove(tagId: TagId) {\n onChange(value.filter((id) => id !== tagId));\n }\n\n function handleCreateOption(inputValue: string) {\n if (!allowCreate) {\n return;\n }\n createTagMutation.mutate(inputValue, {\n onSuccess(tag) {\n handleAdd({ label: tag.Name, value: tag.ID });\n },\n });\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"removeTagBtn\":\"app-react-components-TagSelector-TagSelector-module__remove-tag-btn\"};","import { r2a } from '@/react-tools/react2angular';\n\nimport { FileUploadField } from '@@/form-components/FileUpload';\n\nexport const fileUploadField = r2a(FileUploadField, [\n 'onChange',\n 'value',\n 'title',\n 'required',\n 'accept',\n 'inputId',\n]);\n","import { r2a } from '@/react-tools/react2angular';\n\nimport { SwitchField } from '@@/form-components/SwitchField';\n\nexport const switchField = r2a(SwitchField, [\n 'tooltip',\n 'checked',\n 'label',\n 'name',\n 'labelClass',\n 'fieldClass',\n 'dataCy',\n 'disabled',\n 'onChange',\n 'featureId',\n 'switchClass',\n]);\n","import { FormikErrors } from 'formik';\n\nimport { FormError } from '@@/form-components/FormError';\nimport { Input } from '@@/form-components/Input';\nimport { InputList } from '@@/form-components/InputList';\nimport { ItemProps } from '@@/form-components/InputList/InputList';\n\nexport interface VariableDefinition {\n name: string;\n label: string;\n defaultValue: string;\n description: string;\n}\n\ninterface Props {\n value: VariableDefinition[];\n onChange: (value: VariableDefinition[]) => void;\n errors?: FormikErrors[];\n isVariablesNamesFromParent?: boolean;\n}\n\nexport function CustomTemplatesVariablesDefinitionField({\n onChange,\n value,\n errors,\n isVariablesNamesFromParent,\n}: Props) {\n return (\n (\n \n )}\n itemBuilder={() => ({\n label: '',\n name: '',\n defaultValue: '',\n description: '',\n })}\n errors={errors}\n textTip=\"List should map the mustache variables in the template file, if default value is empty, the variable will be required.\"\n isAddButtonHidden={isVariablesNamesFromParent}\n />\n );\n}\n\ninterface DefinitionItemProps extends ItemProps {\n isNameReadonly?: boolean;\n}\n\nfunction Item({ item, onChange, error, isNameReadonly }: DefinitionItemProps) {\n const errorObj = typeof error === 'object' ? error : {};\n\n return (\n
    \n
    \n \n {errorObj?.name && {errorObj.name}}\n
    \n
    \n \n {errorObj?.label && {errorObj.label}}\n
    \n
    \n \n {errorObj?.description && {errorObj.description}}\n
    \n
    \n \n {errorObj?.defaultValue && (\n {errorObj.defaultValue}\n )}\n
    \n
    \n );\n\n function handleChange(e: React.ChangeEvent) {\n onChange({ ...item, [e.target.name]: e.target.value });\n }\n}\n","import {\n IComponentOptions,\n IComponentController,\n IFormController,\n IScope,\n IOnChangesObject,\n} from 'angular';\n\nimport { VariableDefinition } from '@/react/portainer/custom-templates/components/CustomTemplatesVariablesDefinitionField/CustomTemplatesVariablesDefinitionField';\n\nclass VariablesFieldController implements IComponentController {\n formCtrl!: IFormController;\n\n value!: Record;\n\n definitions!: VariableDefinition[];\n\n onChange!: (value: Record) => void;\n\n $scope: IScope;\n\n /* @ngInject */\n constructor($scope: IScope) {\n this.handleChange = this.handleChange.bind(this);\n\n this.$scope = $scope;\n }\n\n handleChange(value: Record) {\n this.$scope.$evalAsync(() => {\n this.onChange(value);\n });\n }\n\n $onChanges({ value }: IOnChangesObject) {\n if (value.currentValue) {\n this.checkValidity(value.currentValue);\n }\n }\n\n checkValidity(value: Record) {\n this.formCtrl.$setValidity(\n 'templateVariables',\n Object.entries(value).every(\n ([name, value]) =>\n !!value ||\n this.definitions.some(\n (def) => def.name === name && !!def.defaultValue\n )\n ),\n this.formCtrl\n );\n }\n}\n\nexport const VariablesFieldAngular: IComponentOptions = {\n template: ``,\n bindings: {\n value: '<',\n definitions: '<',\n onChange: '<',\n },\n require: {\n formCtrl: '^form',\n },\n controller: VariablesFieldController,\n};\n","import angular from 'angular';\n\nimport { r2a } from '@/react-tools/react2angular';\nimport { CustomTemplatesVariablesDefinitionField } from '@/react/portainer/custom-templates/components/CustomTemplatesVariablesDefinitionField';\nimport { CustomTemplatesVariablesField } from '@/react/portainer/custom-templates/components/CustomTemplatesVariablesField';\n\nimport { VariablesFieldAngular } from './variables-field';\n\nexport const customTemplatesModule = angular\n .module('portainer.app.react.components.custom-templates', [])\n .component(\n 'customTemplatesVariablesFieldReact',\n r2a(CustomTemplatesVariablesField, ['value', 'onChange', 'definitions'])\n )\n .component('customTemplatesVariablesField', VariablesFieldAngular)\n .component(\n 'customTemplatesVariablesDefinitionField',\n r2a(CustomTemplatesVariablesDefinitionField, [\n 'onChange',\n 'value',\n 'errors',\n 'isVariablesNamesFromParent',\n ])\n ).name;\n","import { FormControl } from '@@/form-components/FormControl';\nimport { FormSection } from '@@/form-components/FormSection/FormSection';\nimport { Input } from '@@/form-components/Input';\n\nimport { VariableDefinition } from '../CustomTemplatesVariablesDefinitionField/CustomTemplatesVariablesDefinitionField';\n\nexport type Variables = Record;\n\ninterface Props {\n value: Variables;\n definitions?: VariableDefinition[];\n onChange: (value: Variables) => void;\n}\n\nexport function CustomTemplatesVariablesField({\n value,\n definitions,\n onChange,\n}: Props) {\n if (!definitions || !definitions.length) {\n return null;\n }\n\n return (\n \n {definitions.map((def) => {\n const inputId = `${def.name}-input`;\n const variable = value[def.name] || '';\n return (\n \n \n onChange({\n ...value,\n [def.name]: e.target.value,\n })\n }\n />\n \n );\n })}\n \n );\n}\n","import angular from 'angular';\nimport { react2angular } from 'react2angular';\n\nimport { r2a } from '@/react-tools/react2angular';\nimport { Icon } from '@/react/components/Icon';\nimport { ReactQueryDevtoolsWrapper } from '@/react/components/ReactQueryDevtoolsWrapper';\n\nimport { PageHeader } from '@@/PageHeader';\nimport { TagSelector } from '@@/TagSelector';\nimport { LicenseExpirationPanelContainer } from '@@/PageHeader/LicenseExpirationPanel';\nimport { Loading } from '@@/Widget/Loading';\nimport { PasswordCheckHint } from '@@/PasswordCheckHint';\nimport { ViewLoading } from '@@/ViewLoading';\nimport { Tooltip } from '@@/Tip/Tooltip';\nimport { TableColumnHeaderAngular } from '@@/datatables/TableHeaderCell';\nimport { DashboardItem } from '@@/DashboardItem';\nimport { SearchBar } from '@@/datatables/SearchBar';\nimport { FallbackImage } from '@@/FallbackImage';\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nimport { fileUploadField } from './file-upload-field';\nimport { switchField } from './switch-field';\nimport { customTemplatesModule } from './custom-templates';\n\nexport const componentsModule = angular\n .module('portainer.app.react.components', [customTemplatesModule])\n .component(\n 'tagSelector',\n r2a(TagSelector, ['allowCreate', 'onChange', 'value'])\n )\n .component(\n 'portainerTooltip',\n react2angular(Tooltip, ['message', 'position', 'className'])\n )\n .component('fileUploadField', fileUploadField)\n .component('porSwitchField', switchField)\n .component('licenseExpirationPanel', r2a(LicenseExpirationPanelContainer, []))\n .component(\n 'passwordCheckHint',\n r2a(PasswordCheckHint, ['forceChangePassword', 'passwordValid'])\n )\n .component('rdLoading', r2a(Loading, []))\n .component(\n 'tableColumnHeader',\n react2angular(TableColumnHeaderAngular, [\n 'colTitle',\n 'canSort',\n 'isSorted',\n 'isSortedDesc',\n ])\n )\n .component('viewLoading', r2a(ViewLoading, ['message']))\n .component(\n 'pageHeader',\n r2a(PageHeader, [\n 'id',\n 'title',\n 'breadcrumbs',\n 'loading',\n 'onReload',\n 'reload',\n ])\n )\n .component(\n 'fallbackImage',\n r2a(FallbackImage, [\n 'src',\n 'fallbackIcon',\n 'alt',\n 'size',\n 'className',\n 'fallbackMode',\n 'fallbackClassName',\n 'feather',\n ])\n )\n .component(\n 'prIcon',\n react2angular(Icon, ['className', 'feather', 'icon', 'mode', 'size'])\n )\n .component('reactQueryDevTools', r2a(ReactQueryDevtoolsWrapper, []))\n .component(\n 'dashboardItem',\n r2a(DashboardItem, ['featherIcon', 'icon', 'type', 'value', 'children'])\n )\n .component(\n 'datatableSearchbar',\n r2a(SearchBar, ['data-cy', 'onChange', 'value', 'placeholder'])\n )\n .component(\n 'boxSelectorBadgeIcon',\n react2angular(BadgeIcon, ['featherIcon', 'icon'])\n ).name;\n","import { usePublicSettings } from '@/portainer/settings/queries';\n\nimport { Icon } from '@@/Icon';\n\ninterface Props {\n passwordValid: boolean;\n forceChangePassword?: boolean;\n}\n\nexport function PasswordCheckHint({\n passwordValid,\n forceChangePassword,\n}: Props) {\n const settingsQuery = usePublicSettings();\n const minPasswordLength = settingsQuery.data?.RequiredPasswordLength;\n\n return (\n
    \n

    \n \n {forceChangePassword &&\n 'An administrator has changed your password requirements, '}\n The password must be at least {minPasswordLength} characters long.\n {passwordValid && (\n \n )}\n

    \n
    \n );\n}\n","import clsx from 'clsx';\nimport { useEffect, useState } from 'react';\n\nimport { Icon, IconMode, IconSize } from './Icon';\n\ninterface Props {\n // props for the image to load\n src: string; // a link to an external image\n fallbackIcon: string;\n alt?: string;\n size?: IconSize;\n className?: string;\n // additional fallback icon props\n fallbackMode?: IconMode;\n fallbackClassName?: string;\n feather?: boolean;\n}\n\nexport function FallbackImage({\n src,\n fallbackIcon,\n alt,\n size,\n className,\n fallbackMode,\n fallbackClassName,\n feather,\n}: Props) {\n const [error, setError] = useState(false);\n\n const classes = clsx(className, { [`icon-${size}`]: size });\n\n useEffect(() => {\n setError(false);\n }, [src]);\n\n if (!error) {\n return (\n setError(true)}\n />\n );\n }\n\n // fallback icon if there is an error loading the image\n return (\n \n );\n}\n","import { ReactQueryDevtools } from 'react-query/devtools';\n\nexport function ReactQueryDevtoolsWrapper() {\n const showReactQueryDevtools =\n process.env.SHOW_REACT_QUERY_DEV_TOOLS === 'true';\n\n return <>{showReactQueryDevtools && };\n}\n","import clsx from 'clsx';\nimport { ComponentType } from 'react';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nimport { BEFeatureIndicator } from '@@/BEFeatureIndicator';\n\nimport styles from './Option.module.css';\n\nexport interface SelectorItemType {\n icon: string | ComponentType<{ selected?: boolean; className?: string }>;\n title: string;\n description: string;\n}\n\ninterface Props extends SelectorItemType {\n active?: boolean;\n onClick?(): void;\n featureId?: FeatureId;\n}\n\nexport function Option({\n icon,\n active,\n description,\n title,\n onClick = () => {},\n featureId,\n}: Props) {\n const Icon = typeof icon !== 'string' ? icon : null;\n const isLimited = isLimitedToBE(featureId);\n return (\n \n
    \n {Icon ? (\n \n ) : (\n \n )}\n
    \n\n
    \n

    {title}

    \n
    {description}
    \n {isLimited && (\n \n )}\n
    \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-portainer-environments-wizard-components-Option-Option-module__root\",\"feature\":\"app-react-portainer-environments-wizard-components-Option-Option-module__feature\",\"teaser\":\"app-react-portainer-environments-wizard-components-Option-Option-module__teaser\",\"active\":\"app-react-portainer-environments-wizard-components-Option-Option-module__active\",\"icon\":\"app-react-portainer-environments-wizard-components-Option-Option-module__icon\",\"iconComponent\":\"app-react-portainer-environments-wizard-components-Option-Option-module__icon-component\"};","import { Gpu } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\nimport axios, { parseAxiosError } from '@/portainer/services/axios';\nimport { type EnvironmentGroupId } from '@/portainer/environment-groups/types';\nimport { type TagId } from '@/portainer/tags/types';\nimport { EdgeAsyncIntervalsValues } from '@/edge/components/EdgeAsyncIntervalsForm';\n\nimport { type Environment, EnvironmentCreationTypes } from '../types';\n\nimport { arrayToJson, buildUrl, json2formData } from './utils';\n\nexport interface EnvironmentMetadata {\n groupId?: EnvironmentGroupId;\n tagIds?: TagId[];\n}\n\ninterface CreateLocalDockerEnvironment {\n name: string;\n socketPath?: string;\n publicUrl?: string;\n meta?: EnvironmentMetadata;\n gpus?: Gpu[];\n}\n\nexport async function createLocalDockerEnvironment({\n name,\n socketPath = '',\n publicUrl = '',\n meta = { tagIds: [] },\n gpus = [],\n}: CreateLocalDockerEnvironment) {\n const url = prefixPath(socketPath);\n\n return createEnvironment(\n name,\n EnvironmentCreationTypes.LocalDockerEnvironment,\n {\n url,\n publicUrl,\n meta,\n gpus,\n }\n );\n\n function prefixPath(path: string) {\n if (path === '') {\n return path;\n }\n\n // Windows named pipe\n if (path.startsWith('//./pipe/')) {\n return `npipe://${path}`;\n }\n\n return `unix://${path}`;\n }\n}\n\ninterface CreateLocalKubernetesEnvironment {\n name: string;\n meta?: EnvironmentMetadata;\n}\n\nexport async function createLocalKubernetesEnvironment({\n name,\n meta = { tagIds: [] },\n}: CreateLocalKubernetesEnvironment) {\n return createEnvironment(\n name,\n EnvironmentCreationTypes.LocalKubernetesEnvironment,\n { meta, tls: { skipClientVerify: true, skipVerify: true } }\n );\n}\n\ninterface AzureSettings {\n applicationId: string;\n tenantId: string;\n authenticationKey: string;\n}\n\ninterface CreateAzureEnvironment {\n name: string;\n azure: AzureSettings;\n meta?: EnvironmentMetadata;\n}\n\nexport interface CreateKubeConfigEnvironment {\n name: string;\n kubeConfig: string;\n meta: EnvironmentMetadata;\n}\n\nexport async function createAzureEnvironment({\n name,\n azure,\n meta = { tagIds: [] },\n}: CreateAzureEnvironment) {\n return createEnvironment(name, EnvironmentCreationTypes.AzureEnvironment, {\n meta,\n azure,\n });\n}\n\nexport async function createKubeConfigEnvironment({\n name,\n kubeConfig,\n meta = { tagIds: [] },\n}: CreateKubeConfigEnvironment) {\n return createEnvironment(\n name,\n EnvironmentCreationTypes.KubeConfigEnvironment,\n {\n meta,\n kubeConfig,\n }\n );\n}\n\ninterface TLSSettings {\n skipVerify?: boolean;\n skipClientVerify?: boolean;\n caCertFile?: File;\n certFile?: File;\n keyFile?: File;\n}\n\nexport interface EnvironmentOptions {\n url?: string;\n publicUrl?: string;\n meta?: EnvironmentMetadata;\n azure?: AzureSettings;\n tls?: TLSSettings;\n gpus?: Gpu[];\n isEdgeDevice?: boolean;\n kubeConfig?: string;\n pollFrequency?: number;\n edge?: EdgeAsyncIntervalsValues;\n asyncMode?: boolean;\n}\n\ninterface CreateRemoteEnvironment {\n name: string;\n creationType: Exclude<\n EnvironmentCreationTypes,\n EnvironmentCreationTypes.EdgeAgentEnvironment\n >;\n url: string;\n options?: Omit;\n}\n\nexport async function createRemoteEnvironment({\n creationType,\n name,\n url,\n options = {},\n}: CreateRemoteEnvironment) {\n return createEnvironment(name, creationType, {\n ...options,\n url: `tcp://${url}`,\n });\n}\n\nexport interface CreateAgentEnvironmentValues {\n name: string;\n environmentUrl: string;\n meta: EnvironmentMetadata;\n gpus: Gpu[];\n}\n\nexport function createAgentEnvironment({\n name,\n environmentUrl,\n meta = { tagIds: [] },\n}: CreateAgentEnvironmentValues) {\n return createRemoteEnvironment({\n name,\n url: environmentUrl,\n creationType: EnvironmentCreationTypes.AgentEnvironment,\n options: {\n meta,\n tls: {\n skipVerify: true,\n skipClientVerify: true,\n },\n },\n });\n}\n\ninterface CreateEdgeAgentEnvironment {\n name: string;\n portainerUrl: string;\n meta?: EnvironmentMetadata;\n pollFrequency: number;\n gpus?: Gpu[];\n isEdgeDevice?: boolean;\n edge?: EdgeAsyncIntervalsValues;\n asyncMode?: boolean;\n}\n\nexport function createEdgeAgentEnvironment({\n name,\n portainerUrl,\n meta = { tagIds: [] },\n gpus = [],\n isEdgeDevice,\n pollFrequency,\n edge,\n asyncMode,\n}: CreateEdgeAgentEnvironment) {\n return createEnvironment(\n name,\n EnvironmentCreationTypes.EdgeAgentEnvironment,\n {\n url: portainerUrl,\n gpus,\n isEdgeDevice,\n pollFrequency,\n edge,\n asyncMode,\n ...meta,\n }\n );\n}\n\nasync function createEnvironment(\n name: string,\n creationType: EnvironmentCreationTypes,\n options?: EnvironmentOptions\n) {\n let payload: Record = {\n Name: name,\n EndpointCreationType: creationType,\n };\n\n if (options) {\n const { groupId, tagIds = [] } = options.meta || {};\n\n payload = {\n ...payload,\n URL: options.url,\n PublicURL: options.publicUrl,\n GroupID: groupId,\n TagIds: arrayToJson(tagIds),\n CheckinInterval: options.pollFrequency,\n IsEdgeDevice: options.isEdgeDevice,\n Gpus: arrayToJson(options.gpus),\n KubeConfig: options.kubeConfig,\n };\n\n const { tls, azure, asyncMode } = options;\n\n if (tls) {\n payload = {\n ...payload,\n TLS: true,\n TLSSkipVerify: tls.skipVerify,\n TLSSkipClientVerify: tls.skipClientVerify,\n TLSCACertFile: tls.caCertFile,\n TLSCertFile: tls.certFile,\n TLSKeyFile: tls.keyFile,\n };\n }\n\n if (azure) {\n payload = {\n ...payload,\n AzureApplicationID: azure.applicationId,\n AzureTenantID: azure.tenantId,\n AzureAuthenticationKey: azure.authenticationKey,\n };\n }\n\n if (asyncMode) {\n payload = {\n ...payload,\n EdgePingInterval: options.edge?.PingInterval,\n EdgeSnapshotInterval: options.edge?.SnapshotInterval,\n EdgeCommandInterval: options.edge?.CommandInterval,\n };\n }\n }\n\n const formPayload = json2formData(payload);\n try {\n const { data } = await axios.post(buildUrl(), formPayload);\n\n return data;\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n","import { useEffect, useState } from 'react';\nimport { useMutation } from 'react-query';\n\nimport { useEnvironmentList } from '@/portainer/environments/queries/useEnvironmentList';\nimport { Environment, EnvironmentType } from '@/portainer/environments/types';\nimport {\n createLocalDockerEnvironment,\n createLocalKubernetesEnvironment,\n} from '@/portainer/environments/environment.service/create';\n\nexport function useConnectLocalEnvironment(): {\n status: 'error' | 'loading' | 'success';\n type?: EnvironmentType;\n} {\n const [localEnvironment, setLocalEnvironment] = useState();\n\n const { isLoading, environment } = useFetchLocalEnvironment();\n\n const createLocalEnvironmentMutation = useMutation(createLocalEnvironment);\n\n const { mutate } = createLocalEnvironmentMutation;\n\n useEffect(() => {\n if (isLoading || localEnvironment) {\n return;\n }\n\n if (environment) {\n setLocalEnvironment(environment);\n return;\n }\n\n mutate(undefined, {\n onSuccess(environment) {\n setLocalEnvironment(environment);\n },\n });\n }, [environment, isLoading, localEnvironment, mutate]);\n\n return {\n status: getStatus(isLoading, createLocalEnvironmentMutation.status),\n type: localEnvironment?.Type,\n };\n}\n\nfunction getStatus(\n isLoading: boolean,\n mutationStatus: 'loading' | 'error' | 'success' | 'idle'\n): 'loading' | 'error' | 'success' {\n if (isLoading || mutationStatus === 'loading') {\n return 'loading';\n }\n\n if (mutationStatus === 'error') {\n return 'error';\n }\n\n return 'success';\n}\n\nasync function createLocalEnvironment() {\n try {\n return await createLocalKubernetesEnvironment({ name: 'local' });\n } catch (err) {\n return await createLocalDockerEnvironment({ name: 'local' });\n }\n}\n\nfunction useFetchLocalEnvironment() {\n const { environments, isLoading } = useEnvironmentList(\n {\n page: 0,\n pageLimit: 1,\n types: [EnvironmentType.Docker, EnvironmentType.KubernetesLocal],\n },\n false,\n Infinity\n );\n\n return {\n isLoading,\n environment: environments.length > 0 ? environments[0] : undefined,\n };\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"wizardButton\":\"app-react-portainer-environments-wizard-HomeView-HomeView-module__wizard-button\",\"link\":\"app-react-portainer-environments-wizard-HomeView-HomeView-module__link\"};","import { EnvironmentType } from '@/portainer/environments/types';\nimport { useAnalytics } from '@/angulartics.matomo/analytics-services';\n\nimport { PageHeader } from '@@/PageHeader';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { Link } from '@@/Link';\n\nimport { Option } from '../components/Option';\n\nimport { useConnectLocalEnvironment } from './useFetchOrCreateLocalEnvironment';\nimport styles from './HomeView.module.css';\n\nexport function HomeView() {\n const localEnvironmentAdded = useConnectLocalEnvironment();\n const { trackEvent } = useAnalytics();\n return (\n <>\n \n\n
    \n
    \n \n \n \n
    \n
    \n Welcome to Portainer\n
    \n
    \n {localEnvironmentAdded.status === 'success' && (\n

    \n We have connected your local environment of{' '}\n {getTypeLabel(localEnvironmentAdded.type)} to Portainer.\n

    \n )}\n\n {localEnvironmentAdded.status === 'error' && (\n

    \n We could not connect your local environment to Portainer.\n
    \n Please ensure your environment is correctly exposed. For\n help with installation visit\n \n https://documentation.portainer.io/quickstart\n \n

    \n )}\n\n

    \n Get started below with your local portainer or connect more\n container environments.\n

    \n
    \n\n
    \n {localEnvironmentAdded.status === 'success' && (\n \n trackLocalEnvironmentAnalytics()}\n />\n \n )}\n \n \n \n
    \n
    \n
    \n
    \n
    \n
    \n \n );\n\n function trackLocalEnvironmentAnalytics() {\n trackEvent('endpoint-wizard-endpoint-select', {\n category: 'portainer',\n metadata: { environment: 'Get-started-local-environment' },\n });\n }\n}\n\nfunction getTypeLabel(type?: EnvironmentType) {\n switch (type) {\n case EnvironmentType.Docker:\n return 'Docker';\n case EnvironmentType.KubernetesLocal:\n return 'Kubernetes';\n default:\n return '';\n }\n}\n","import { useCurrentStateAndParams } from '@uirouter/react';\n\nexport function useCreateEdgeDeviceParam() {\n const {\n params: { edgeDevice: edgeDeviceParam },\n } = useCurrentStateAndParams();\n\n const createEdgeDevice = edgeDeviceParam ? edgeDeviceParam === 'true' : false;\n\n return createEdgeDevice;\n}\n","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgKaasIcon = function SvgKaasIcon(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 22 17\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M11 0a8 8 0 0 0-7.978 7.407A5 5 0 0 0 5 17h11.5a5.5 5.5 0 0 0 2.366-10.466A8.002 8.002 0 0 0 11 0Zm.5 4.406a.5.5 0 0 0-1 0V4.7a4.308 4.308 0 0 0-2.187.906l-.208-.208a.5.5 0 0 0-.707.707l.208.209A4.308 4.308 0 0 0 6.7 8.5h-.294a.5.5 0 0 0 0 1H6.7c.094.821.418 1.572.906 2.187l-.208.208a.5.5 0 1 0 .707.707l.208-.208a4.307 4.307 0 0 0 2.187.906v.294a.5.5 0 1 0 1 0V13.3a4.309 4.309 0 0 0 2.187-.906l.208.208a.5.5 0 0 0 .707-.707l-.208-.208A4.308 4.308 0 0 0 15.3 9.5h.294a.5.5 0 0 0 0-1H15.3a4.307 4.307 0 0 0-.906-2.186l.208-.209a.5.5 0 0 0-.707-.707l-.208.209A4.308 4.308 0 0 0 11.5 4.7v-.294Zm-1 1.303a3.311 3.311 0 0 0-1.474.61L10.5 7.794V5.71ZM8.32 7.027A3.311 3.311 0 0 0 7.708 8.5h2.084L8.319 7.027ZM7.708 9.5c.082.546.297 1.049.61 1.474L9.793 9.5H7.709Zm1.317 2.18c.426.314.928.53 1.474.611v-2.084l-1.474 1.474Zm2.474.611a3.311 3.311 0 0 0 1.473-.61L11.5 10.208v2.083Zm2.18-1.317c.314-.425.529-.928.61-1.474h-2.083l1.473 1.474Zm.61-2.474a3.311 3.311 0 0 0-.61-1.473L12.207 8.5h2.084Zm-1.317-2.18L11.5 7.793V5.71a3.311 3.311 0 0 1 1.473.61Z\",\n fill: \"currentColor\"\n })));\n};\n\nexport default SvgKaasIcon;","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nimport KaaSIcon from './kaas-icon.svg?c';\n\nexport const environmentTypes = [\n {\n id: 'docker',\n title: 'Docker',\n formTitle: 'Connect to your Docker environment',\n icon: 'fab fa-docker',\n description:\n 'Connect to Docker Standalone / Swarm via URL/IP, API or Socket',\n },\n {\n id: 'kubernetes',\n title: 'Kubernetes',\n formTitle: 'Connect to your Kubernetes environment',\n icon: 'fas fa-dharmachakra',\n description: 'Connect to a kubernetes environment via URL/IP',\n },\n {\n id: 'aci',\n title: 'ACI',\n formTitle: 'Connect to your ACI environment',\n description: 'Connect to ACI environment via API',\n icon: 'fab fa-microsoft',\n },\n {\n id: 'nomad',\n title: 'Nomad',\n formTitle: 'Connect to your Nomad environment',\n description: 'Connect to HashiCorp Nomad environment via API',\n icon: 'nomad-icon',\n featureId: FeatureId.NOMAD,\n },\n {\n id: 'kaas',\n title: 'KaaS',\n formTitle: 'Provision a KaaS environment',\n description: 'Provision a Kubernetes environment with a cloud provider',\n icon: KaaSIcon,\n featureId: FeatureId.KAAS_PROVISIONING,\n },\n] as const;\n","import { FormSection } from '@@/form-components/FormSection';\n\nimport { Option } from '../components/Option';\n\nimport { environmentTypes } from './environment-types';\n\nexport type EnvironmentSelectorValue = typeof environmentTypes[number]['id'];\n\ninterface Props {\n value: EnvironmentSelectorValue[];\n onChange(value: EnvironmentSelectorValue[]): void;\n createEdgeDevice?: boolean;\n}\n\nconst hasEdge: EnvironmentSelectorValue[] = ['docker', 'kubernetes', 'nomad'];\n\nexport function EnvironmentSelector({\n value,\n onChange,\n createEdgeDevice,\n}: Props) {\n return (\n
    \n \n

    \n You can onboard different types of environments, select all that\n apply.\n

    \n
    \n {filterEdgeDevicesIfNeed(environmentTypes, createEdgeDevice).map(\n (eType) => (\n handleClick(eType.id)}\n />\n )\n )}\n
    \n
    \n
    \n );\n\n function handleClick(eType: EnvironmentSelectorValue) {\n if (value.includes(eType)) {\n onChange(value.filter((v) => v !== eType));\n return;\n }\n\n onChange([...value, eType]);\n }\n}\n\nfunction filterEdgeDevicesIfNeed(\n types: typeof environmentTypes,\n createEdgeDevice?: boolean\n) {\n if (!createEdgeDevice) {\n return types;\n }\n\n return types.filter((eType) => hasEdge.includes(eType.id));\n}\n","import clsx from 'clsx';\n\nimport styles from './Stepper.module.css';\n\nexport interface Step {\n title: string;\n}\n\ninterface Props {\n currentStep: number;\n steps: Step[];\n}\n\nexport function Stepper({ currentStep, steps }: Props) {\n return (\n
    \n {steps.map((step, index) => (\n \n
    \n
    {index + 1}
    \n
    {step.title}
    \n
    \n
    \n ))}\n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"stepperWrapper\":\"app-react-components-Stepper-Stepper-module__stepper-wrapper\",\"stepWrapper\":\"app-react-components-Stepper-Stepper-module__step-wrapper\",\"step\":\"app-react-components-Stepper-Stepper-module__step\",\"stepName\":\"app-react-components-Stepper-Stepper-module__step-name\",\"active\":\"app-react-components-Stepper-Stepper-module__active\",\"stepCounter\":\"app-react-components-Stepper-Stepper-module__step-counter\",\"completed\":\"app-react-components-Stepper-Stepper-module__completed\"};","import { useQueryClient, useMutation, MutationFunction } from 'react-query';\n\nimport {\n createRemoteEnvironment,\n createLocalDockerEnvironment,\n createAzureEnvironment,\n createAgentEnvironment,\n createEdgeAgentEnvironment,\n createLocalKubernetesEnvironment,\n createKubeConfigEnvironment,\n} from '../environment.service/create';\n\nexport function useCreateAzureEnvironmentMutation() {\n return useGenericCreationMutation(createAzureEnvironment);\n}\n\nexport function useCreateLocalDockerEnvironmentMutation() {\n return useGenericCreationMutation(createLocalDockerEnvironment);\n}\n\nexport function useCreateLocalKubernetesEnvironmentMutation() {\n return useGenericCreationMutation(createLocalKubernetesEnvironment);\n}\n\nexport function useCreateKubeConfigEnvironmentMutation() {\n return useGenericCreationMutation(createKubeConfigEnvironment);\n}\n\nexport function useCreateRemoteEnvironmentMutation(\n creationType: Parameters[0]['creationType']\n) {\n return useGenericCreationMutation(\n (\n params: Omit<\n Parameters[0],\n 'creationType'\n >\n ) => createRemoteEnvironment({ creationType, ...params })\n );\n}\n\nexport function useCreateAgentEnvironmentMutation() {\n return useGenericCreationMutation(createAgentEnvironment);\n}\n\nexport function useCreateEdgeAgentEnvironmentMutation() {\n return useGenericCreationMutation(createEdgeAgentEnvironment);\n}\n\nfunction useGenericCreationMutation(\n mutation: MutationFunction\n) {\n const queryClient = useQueryClient();\n\n return useMutation(mutation, {\n onSuccess() {\n return queryClient.invalidateQueries(['environments']);\n },\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to create environment',\n },\n },\n });\n}\n","import { useField } from 'formik';\n\nimport { useGroups } from '@/portainer/environment-groups/queries';\nimport { EnvironmentGroupId } from '@/portainer/environment-groups/types';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Select } from '@@/form-components/Input';\n\nexport function GroupField() {\n const [fieldProps, metaProps, helpers] =\n useField('meta.groupId');\n\n const groupsQuery = useGroups();\n if (!groupsQuery.data) {\n return null;\n }\n\n const options = groupsQuery.data.map((group) => ({\n value: group.Id,\n label: group.Name,\n }));\n\n return (\n \n handleChange(e.target.value)}\n />\n \n );\n\n function handleChange(value: string) {\n helpers.setValue(value ? parseInt(value, 10) : 1);\n }\n}\n","import { useField } from 'formik';\nimport { PropsWithChildren } from 'react';\n\nimport { useUser } from '@/portainer/hooks/useUser';\n\nimport { TagSelector } from '@@/TagSelector';\nimport { FormSection } from '@@/form-components/FormSection';\n\nimport { GroupField } from './GroupsField';\n\nexport function MetadataFieldset({ children }: PropsWithChildren) {\n const [tagProps, , tagHelpers] = useField('meta.tagIds');\n\n const { isAdmin } = useUser();\n\n return (\n \n {children}\n\n \n\n tagHelpers.setValue(value)}\n />\n \n );\n}\n","import { PropsWithChildren } from 'react';\n\nimport { FormSection } from '@@/form-components/FormSection';\n\nimport { MetadataFieldset } from './MetadataFieldset';\n\nexport function MoreSettingsSection({ children }: PropsWithChildren) {\n return (\n \n
    \n {children}\n\n \n
    \n
    \n );\n}\n","import { useField } from 'formik';\n\nimport {\n Gpu,\n GpusList,\n} from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\n\nimport { FormSection } from '@@/form-components/FormSection';\n\nexport function Hardware() {\n const [field, , helpers] = useField('gpus');\n\n function onChange(value: Gpu[]) {\n helpers.setValue(value);\n }\n\n return (\n \n \n \n );\n}\n","import { Field, useField } from 'formik';\nimport { string } from 'yup';\n\nimport { getEnvironments } from '@/portainer/environments/environment.service';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\n\ninterface Props {\n readonly?: boolean;\n tooltip?: string;\n placeholder?: string;\n}\n\nexport function NameField({\n readonly,\n tooltip,\n placeholder = 'e.g. docker-prod01 / kubernetes-cluster01',\n}: Props) {\n const [, meta] = useField('name');\n\n const id = 'name-input';\n\n return (\n \n \n \n );\n}\n\nexport async function isNameUnique(name?: string) {\n if (!name) {\n return true;\n }\n\n try {\n const result = await getEnvironments({ limit: 1, query: { name } });\n if (result.totalCount > 0) {\n return false;\n }\n } catch (e) {\n // if backend fails to respond, assume name is unique, name validation happens also in the backend\n }\n return true;\n}\n\nexport function nameValidation() {\n return string()\n .required('Name is required')\n .test(\n 'unique-name',\n 'Name should be unique',\n async (name) => (await isNameUnique(name)) || false\n );\n}\n","import { Field, useField } from 'formik';\nimport { string } from 'yup';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\n\ninterface Props {\n fieldName: string;\n readonly?: boolean;\n}\n\nexport function validation() {\n return string()\n .test(\n 'url',\n 'URL should be a valid URI and cannot include localhost',\n (value) => {\n if (!value) {\n return false;\n }\n try {\n const url = new URL(value);\n return url.hostname !== 'localhost';\n } catch {\n return false;\n }\n }\n )\n .required('URL is required');\n}\n\nexport function PortainerUrlField({ fieldName, readonly }: Props) {\n const [, metaProps] = useField(fieldName);\n const id = `${fieldName}-input`;\n\n return (\n \n \n \n );\n}\n","import { NameField } from '../../NameField';\n\nimport { PortainerUrlField } from './PortainerUrlField';\n\ninterface EdgeAgentFormProps {\n readonly?: boolean;\n}\n\nexport function EdgeAgentFieldset({ readonly }: EdgeAgentFormProps) {\n return (\n <>\n \n \n \n );\n}\n","import { object, number, array, SchemaOf } from 'yup';\n\nimport { EnvironmentMetadata } from '@/portainer/environments/environment.service/create';\n\nexport function metadataValidation(): SchemaOf {\n return object({\n groupId: number(),\n tagIds: array().of(number()).default([]),\n });\n}\n","import { number, object, SchemaOf } from 'yup';\n\nimport { edgeAsyncIntervalsValidation } from '@/edge/components/EdgeAsyncIntervalsForm';\nimport { gpusListValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\n\nimport { metadataValidation } from '../../MetadataFieldset/validation';\nimport { nameValidation } from '../../NameField';\n\nimport { validation as urlValidation } from './PortainerUrlField';\nimport { FormValues } from './types';\n\nexport function validationSchema(): SchemaOf {\n return object().shape({\n name: nameValidation(),\n portainerUrl: urlValidation(),\n pollFrequency: number().required(),\n meta: metadataValidation(),\n gpus: gpusListValidation(),\n edge: edgeAsyncIntervalsValidation(),\n });\n}\n","import { Formik, Form } from 'formik';\n\nimport { Environment } from '@/portainer/environments/types';\nimport { useCreateEdgeAgentEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { baseHref } from '@/portainer/helpers/pathHelper';\nimport { EdgeCheckinIntervalField } from '@/edge/components/EdgeCheckInIntervalField';\nimport {\n EdgeAsyncIntervalsForm,\n EDGE_ASYNC_INTERVAL_USE_DEFAULT,\n} from '@/edge/components/EdgeAsyncIntervalsForm';\nimport { useSettings } from '@/portainer/settings/queries';\nimport { useCreateEdgeDeviceParam } from '@/react/portainer/environments/wizard/hooks/useCreateEdgeDeviceParam';\n\nimport { FormSection } from '@@/form-components/FormSection';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Icon } from '@@/Icon';\n\nimport { MoreSettingsSection } from '../../MoreSettingsSection';\nimport { Hardware } from '../../Hardware/Hardware';\n\nimport { EdgeAgentFieldset } from './EdgeAgentFieldset';\nimport { validationSchema } from './EdgeAgentForm.validation';\nimport { FormValues } from './types';\n\ninterface Props {\n onCreate(environment: Environment): void;\n readonly: boolean;\n showGpus?: boolean;\n hideAsyncMode?: boolean;\n}\n\nconst initialValues = buildInitialValues();\n\nexport function EdgeAgentForm({\n onCreate,\n readonly,\n hideAsyncMode,\n showGpus = false,\n}: Props) {\n const edgeSettingsQuery = useSettings((settings) => settings.Edge);\n const createEdgeDevice = useCreateEdgeDeviceParam();\n\n const createMutation = useCreateEdgeAgentEnvironmentMutation();\n\n if (!edgeSettingsQuery.data) {\n return null;\n }\n\n const edgeSettings = edgeSettingsQuery.data;\n\n return (\n \n initialValues={initialValues}\n onSubmit={handleSubmit}\n validateOnMount\n validationSchema={validationSchema}\n >\n {({ isValid, setFieldValue, values }) => (\n
    \n \n\n \n \n {!hideAsyncMode && edgeSettings.AsyncMode && createEdgeDevice ? (\n setFieldValue('edge', values)}\n />\n ) : (\n setFieldValue('pollFrequency', value)}\n value={values.pollFrequency}\n />\n )}\n \n {showGpus && }\n \n\n {!readonly && (\n
    \n
    \n \n \n Create\n \n
    \n
    \n )}\n \n )}\n \n );\n\n function handleSubmit(values: typeof initialValues) {\n createMutation.mutate(\n {\n ...values,\n isEdgeDevice: createEdgeDevice,\n asyncMode: edgeSettings.AsyncMode,\n },\n {\n onSuccess(environment) {\n onCreate(environment);\n },\n }\n );\n }\n}\n\nexport function buildInitialValues(): FormValues {\n return {\n name: '',\n portainerUrl: defaultPortainerUrl(),\n pollFrequency: 0,\n meta: {\n groupId: 1,\n tagIds: [],\n },\n edge: {\n CommandInterval: EDGE_ASYNC_INTERVAL_USE_DEFAULT,\n PingInterval: EDGE_ASYNC_INTERVAL_USE_DEFAULT,\n SnapshotInterval: EDGE_ASYNC_INTERVAL_USE_DEFAULT,\n },\n gpus: [],\n };\n\n function defaultPortainerUrl() {\n const baseHREF = baseHref();\n return window.location.origin + (baseHREF !== '/' ? baseHREF : '');\n }\n}\n","import { v4 as uuid } from 'uuid';\nimport { useReducer, useState } from 'react';\n\nimport { Environment } from '@/portainer/environments/types';\nimport { EdgeScriptForm } from '@/react/edge/components/EdgeScriptForm';\nimport { CommandTab } from '@/react/edge/components/EdgeScriptForm/scripts';\nimport { OS, EdgeInfo } from '@/react/edge/components/EdgeScriptForm/types';\nimport { useCreateEdgeDeviceParam } from '@/react/portainer/environments/wizard/hooks/useCreateEdgeDeviceParam';\n\nimport { Button } from '@@/buttons';\n\nimport { EdgeAgentForm } from './EdgeAgentForm';\n\ninterface Props {\n onCreate: (environment: Environment) => void;\n commands: CommandTab[] | Partial>;\n isNomadTokenVisible?: boolean;\n showGpus?: boolean;\n}\n\nexport function EdgeAgentTab({\n onCreate,\n commands,\n isNomadTokenVisible,\n showGpus = false,\n}: Props) {\n const [edgeInfo, setEdgeInfo] = useState();\n\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n\n const createEdgeDevice = useCreateEdgeDeviceParam();\n\n return (\n <>\n \n\n {edgeInfo && (\n <>\n \n\n
    \n\n
    \n
    \n \n
    \n
    \n \n )}\n \n );\n\n function handleCreate(environment: Environment) {\n setEdgeInfo({ key: environment.EdgeKey, id: environment.EdgeID || uuid() });\n onCreate(environment);\n }\n\n function handleReset() {\n setEdgeInfo(undefined);\n clearForm();\n }\n}\n","import { EnvironmentCreationTypes } from '@/portainer/environments/types';\n\nimport { BoxSelectorOption } from '@@/BoxSelector';\n\nimport { useCreateEdgeDeviceParam } from '../hooks/useCreateEdgeDeviceParam';\n\nexport function useFilterEdgeOptionsIfNeeded(\n options: BoxSelectorOption[],\n edgeValue: T\n) {\n const createEdgeDevice = useCreateEdgeDeviceParam();\n\n if (!createEdgeDevice) {\n return options;\n }\n\n return options.filter((option) => option.value === edgeValue);\n}\n","import { Field, useField } from 'formik';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\n\nexport function EnvironmentUrlField() {\n const [, meta] = useField('environmentUrl');\n\n return (\n : or :\"\n >\n \n \n );\n}\n","import { object, SchemaOf, string } from 'yup';\n\nimport { gpusListValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\nimport { CreateAgentEnvironmentValues } from '@/portainer/environments/environment.service/create';\n\nimport { metadataValidation } from '../MetadataFieldset/validation';\nimport { nameValidation } from '../NameField';\n\nexport function validation(): SchemaOf {\n return object({\n name: nameValidation(),\n environmentUrl: environmentValidation(),\n meta: metadataValidation(),\n gpus: gpusListValidation(),\n });\n}\n\nfunction environmentValidation() {\n return string()\n .required('This field is required')\n .test(\n 'address',\n 'Environment address must be of the form : or :.',\n (environmentUrl) => validateAddress(environmentUrl)\n );\n}\n\nexport function validateAddress(address: string | undefined) {\n if (typeof address === 'undefined') {\n return false;\n }\n\n if (address.indexOf('://') > -1) {\n return false;\n }\n\n const [host, port] = address.split(':');\n\n if (\n host.length === 0 ||\n Number.isNaN(parseInt(port, 10)) ||\n port.match(/^[0-9]+$/) == null ||\n parseInt(port, 10) < 1 ||\n parseInt(port, 10) > 65535\n ) {\n return false;\n }\n\n return true;\n}\n","import { Form, Formik } from 'formik';\nimport { useReducer } from 'react';\n\nimport { useCreateAgentEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport { Environment } from '@/portainer/environments/types';\nimport { CreateAgentEnvironmentValues } from '@/portainer/environments/environment.service/create';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Icon } from '@@/Icon';\n\nimport { NameField } from '../NameField';\nimport { MoreSettingsSection } from '../MoreSettingsSection';\nimport { Hardware } from '../Hardware/Hardware';\n\nimport { EnvironmentUrlField } from './EnvironmentUrlField';\nimport { validation } from './AgentForm.validation';\n\ninterface Props {\n onCreate(environment: Environment): void;\n showGpus?: boolean;\n}\n\nconst initialValues: CreateAgentEnvironmentValues = {\n environmentUrl: '',\n name: '',\n meta: {\n groupId: 1,\n tagIds: [],\n },\n gpus: [],\n};\n\nexport function AgentForm({ onCreate, showGpus = false }: Props) {\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n\n const mutation = useCreateAgentEnvironmentMutation();\n\n return (\n \n {({ isValid, dirty }) => (\n
    \n \n \n\n {showGpus && }\n\n
    \n
    \n \n {' '}\n Connect\n \n
    \n
    \n \n )}\n \n );\n\n function handleSubmit(values: CreateAgentEnvironmentValues) {\n mutation.mutate(values, {\n onSuccess(environment) {\n notifySuccess('Environment created', environment.Name);\n clearForm();\n onCreate(environment);\n },\n });\n }\n}\n","import { useState } from 'react';\n\nimport { useAgentDetails } from '@/portainer/environments/queries/useAgentDetails';\n\nimport { CopyButton } from '@@/buttons/CopyButton';\nimport { Code } from '@@/Code';\nimport { NavTabs } from '@@/NavTabs';\n\nconst deployments = [\n {\n id: 'linux',\n label: 'Linux',\n command: linuxCommand,\n },\n {\n id: 'win',\n label: 'Windows',\n command: winCommand,\n },\n];\n\nexport function DeploymentScripts() {\n const [deployType, setDeployType] = useState(deployments[0].id);\n\n const agentDetailsQuery = useAgentDetails();\n\n if (!agentDetailsQuery) {\n return null;\n }\n\n const { agentVersion, agentSecret } = agentDetailsQuery;\n\n const options = deployments.map((c) => {\n const code = c.command(agentVersion, agentSecret);\n\n return {\n id: c.id,\n label: c.label,\n children: ,\n };\n });\n\n return (\n setDeployType(id)}\n selectedId={deployType}\n />\n );\n}\n\ninterface DeployCodeProps {\n code: string;\n}\n\nfunction DeployCode({ code }: DeployCodeProps) {\n return (\n <>\n \n CLI script for installing agent on your environment with Docker Swarm:\n \n
    \n {code}\n
    \n Copy command\n \n );\n}\n\nfunction linuxCommand(agentVersion: string, agentSecret: string) {\n const secret =\n agentSecret === '' ? '' : `\\\\\\n -e AGENT_SECRET=${agentSecret} `;\n\n return `docker network create \\\\\n--driver overlay \\\\\n portainer_agent_network\n\ndocker service create \\\\\n --name portainer_agent \\\\\n --network portainer_agent_network \\\\\n -p 9001:9001/tcp ${secret}\\\\\n --mode global \\\\\n --constraint 'node.platform.os == linux' \\\\\n --mount type=bind,src=//var/run/docker.sock,dst=/var/run/docker.sock \\\\\n --mount type=bind,src=//var/lib/docker/volumes,dst=/var/lib/docker/volumes \\\\\n portainer/agent:${agentVersion}\n`;\n}\n\nfunction winCommand(agentVersion: string, agentSecret: string) {\n const secret =\n agentSecret === '' ? '' : `\\\\\\n -e AGENT_SECRET=${agentSecret} `;\n\n return `docker network create \\\\\n--driver overlay \\\\\n portainer_agent_network && \\\\\ndocker service create \\\\\n --name portainer_agent \\\\\n --network portainer_agent_network \\\\\n -p 9001:9001/tcp ${secret}\\\\\n --mode global \\\\\n --constraint 'node.platform.os == windows' \\\\\n --mount type=npipe,src=\\\\\\\\.\\\\pipe\\\\docker_engine,dst=\\\\\\\\.\\\\pipe\\\\docker_engine \\\\\n --mount type=bind,src=C:\\\\ProgramData\\\\docker\\\\volumes,dst=C:\\\\ProgramData\\\\docker\\\\volumes \\\\\n portainer/agent:${agentVersion}\n`;\n}\n","import { Environment } from '@/portainer/environments/types';\n\nimport { AgentForm } from '../../shared/AgentForm/AgentForm';\n\nimport { DeploymentScripts } from './DeploymentScripts';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function AgentTab({ onCreate }: Props) {\n return (\n <>\n \n\n
    \n \n
    \n \n );\n}\n","import { useFormikContext } from 'formik';\n\nimport { file, withFileSize } from '@/portainer/helpers/yup-file-validation';\n\nimport { FileUploadField } from '@@/form-components/FileUpload';\nimport { SwitchField } from '@@/form-components/SwitchField';\nimport { FormControl } from '@@/form-components/FormControl';\n\nimport { FormValues } from './types';\n\nexport function TLSFieldset() {\n const { values, setFieldValue, errors } = useFormikContext();\n\n return (\n <>\n
    \n
    \n setFieldValue('tls', checked)}\n />\n
    \n
    \n\n {values.tls && (\n <>\n
    \n
    \n setFieldValue('skipVerify', checked)}\n />\n
    \n
    \n\n {!values.skipVerify && (\n <>\n \n setFieldValue('caCertFile', file)}\n value={values.caCertFile}\n />\n \n \n setFieldValue('certFile', file)}\n value={values.certFile}\n />\n \n \n setFieldValue('keyFile', file)}\n value={values.keyFile}\n />\n \n \n )}\n \n )}\n \n );\n}\n\nconst MAX_FILE_SIZE = 5_242_880; // 5MB\n\nfunction certValidation() {\n return withFileSize(file(), MAX_FILE_SIZE).when(['tls', 'skipVerify'], {\n is: (tls: boolean, skipVerify: boolean) => tls && !skipVerify,\n then: (schema) => schema.required('File is required'),\n });\n}\n\nexport function validation() {\n return {\n caCertFile: certValidation(),\n certFile: certValidation(),\n keyFile: certValidation(),\n };\n}\n","import { mixed } from 'yup';\nimport { MixedSchema } from 'yup/lib/mixed';\n\ntype FileSchema = MixedSchema;\n\nexport function file(): FileSchema {\n return mixed();\n}\n\nexport function withFileSize(fileValidation: FileSchema, maxSize: number) {\n return fileValidation.test(\n 'fileSize',\n 'Selected file is too big.',\n validateFileSize\n );\n\n function validateFileSize(file?: File) {\n if (!file) {\n return true;\n }\n\n return file.size <= maxSize;\n }\n}\n","import { boolean, object, SchemaOf, string } from 'yup';\n\nimport { gpusListValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\n\nimport { metadataValidation } from '../../shared/MetadataFieldset/validation';\nimport { nameValidation } from '../../shared/NameField';\n\nimport { validation as certsValidation } from './TLSFieldset';\nimport { FormValues } from './types';\n\nexport function validation(): SchemaOf {\n return object({\n name: nameValidation(),\n url: string().required('This field is required.'),\n tls: boolean().default(false),\n skipVerify: boolean(),\n meta: metadataValidation(),\n ...certsValidation(),\n gpus: gpusListValidation(),\n });\n}\n","import { Field, Form, Formik } from 'formik';\nimport { useReducer } from 'react';\n\nimport { useCreateRemoteEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { Hardware } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/Hardware';\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport {\n Environment,\n EnvironmentCreationTypes,\n} from '@/portainer/environments/types';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { Icon } from '@@/Icon';\n\nimport { NameField } from '../../shared/NameField';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\n\nimport { validation } from './APIForm.validation';\nimport { FormValues } from './types';\nimport { TLSFieldset } from './TLSFieldset';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function APIForm({ onCreate }: Props) {\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n const initialValues: FormValues = {\n url: '',\n name: '',\n tls: false,\n meta: {\n groupId: 1,\n tagIds: [],\n },\n gpus: [],\n };\n\n const mutation = useCreateRemoteEnvironmentMutation(\n EnvironmentCreationTypes.LocalDockerEnvironment\n );\n\n return (\n \n {({ isValid, dirty }) => (\n
    \n \n\n \n \n \n\n \n\n \n \n \n\n
    \n
    \n \n {' '}\n Connect\n \n
    \n
    \n \n )}\n \n );\n\n function handleSubmit(values: FormValues) {\n const tls = getTlsValues();\n\n mutation.mutate(\n {\n name: values.name,\n url: values.url,\n options: {\n tls,\n meta: values.meta,\n gpus: values.gpus,\n },\n },\n {\n onSuccess(environment) {\n notifySuccess('Environment created', environment.Name);\n clearForm();\n onCreate(environment);\n },\n }\n );\n function getTlsValues() {\n if (!values.tls) {\n return undefined;\n }\n\n return {\n skipVerify: values.skipVerify,\n ...getCertFiles(),\n };\n\n function getCertFiles() {\n if (values.skipVerify) {\n return {};\n }\n\n return {\n caCertFile: values.caCertFile,\n certFile: values.certFile,\n keyFile: values.keyFile,\n };\n }\n }\n }\n}\n","import { useState } from 'react';\n\nimport { useAgentDetails } from '@/portainer/environments/queries/useAgentDetails';\n\nimport { CopyButton } from '@@/buttons/CopyButton';\nimport { Code } from '@@/Code';\nimport { NavTabs } from '@@/NavTabs';\n\nconst deployments = [\n {\n id: 'linux',\n label: 'Linux',\n command: `-v \"/var/run/docker.sock:/var/run/docker.sock\"`,\n },\n {\n id: 'win',\n label: 'Windows',\n command: '-v \\\\.\\\\pipe\\\\docker_engine:\\\\.\\\\pipe\\\\docker_engine',\n },\n];\n\nexport function DeploymentScripts() {\n const [deployType, setDeployType] = useState(deployments[0].id);\n\n const agentDetailsQuery = useAgentDetails();\n\n if (!agentDetailsQuery) {\n return null;\n }\n\n const options = deployments.map((c) => ({\n id: c.id,\n label: c.label,\n children: ,\n }));\n\n return (\n setDeployType(id)}\n selectedId={deployType}\n />\n );\n}\n\ninterface DeployCodeProps {\n code: string;\n}\n\nfunction DeployCode({ code }: DeployCodeProps) {\n return (\n <>\n \n When using the socket, ensure that you have started the Portainer\n container with the following Docker flag:\n \n\n {code}\n Copy command\n \n );\n}\n","import { Environment } from '@/portainer/environments/types';\n\nimport { APIForm } from './APIForm';\nimport { DeploymentScripts } from './DeploymentScripts';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function APITab({ onCreate }: Props) {\n return (\n <>\n \n\n
    \n \n
    \n \n );\n}\n","import { boolean, object, SchemaOf, string } from 'yup';\n\nimport { gpusListValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\n\nimport { metadataValidation } from '../../shared/MetadataFieldset/validation';\nimport { nameValidation } from '../../shared/NameField';\n\nimport { FormValues } from './types';\n\nexport function validation(): SchemaOf {\n return object({\n name: nameValidation(),\n meta: metadataValidation(),\n overridePath: boolean().default(false),\n socketPath: string()\n .default('')\n .when('overridePath', (overridePath, schema) =>\n overridePath\n ? schema.required(\n 'Socket Path is required when override path is enabled'\n )\n : schema\n ),\n gpus: gpusListValidation(),\n });\n}\n","import { Field, Form, Formik, useFormikContext } from 'formik';\nimport { useReducer } from 'react';\n\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport { useCreateLocalDockerEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { Environment } from '@/portainer/environments/types';\nimport { Hardware } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/Hardware';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input } from '@@/form-components/Input';\nimport { SwitchField } from '@@/form-components/SwitchField';\nimport { Icon } from '@@/Icon';\n\nimport { NameField } from '../../shared/NameField';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\n\nimport { validation } from './SocketForm.validation';\nimport { FormValues } from './types';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function SocketForm({ onCreate }: Props) {\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n const initialValues: FormValues = {\n name: '',\n socketPath: '',\n overridePath: false,\n meta: { groupId: 1, tagIds: [] },\n gpus: [],\n };\n\n const mutation = useCreateLocalDockerEnvironmentMutation();\n\n return (\n \n {({ isValid, dirty }) => (\n
    \n \n\n \n\n \n \n \n\n
    \n
    \n \n {' '}\n Connect\n \n
    \n
    \n \n )}\n \n );\n\n function handleSubmit(values: FormValues) {\n mutation.mutate(\n {\n name: values.name,\n socketPath: values.overridePath ? values.socketPath : '',\n gpus: values.gpus,\n },\n {\n onSuccess(environment) {\n notifySuccess('Environment created', environment.Name);\n clearForm();\n onCreate(environment);\n },\n }\n );\n }\n}\n\nfunction OverrideSocketFieldset() {\n const { values, setFieldValue, errors } = useFormikContext();\n\n return (\n <>\n
    \n
    \n setFieldValue('overridePath', checked)}\n label=\"Override default socket path\"\n />\n
    \n
    \n {values.overridePath && (\n \n \n \n )}\n \n );\n}\n","import { Environment } from '@/portainer/environments/types';\n\nimport { DeploymentScripts } from '../APITab/DeploymentScripts';\n\nimport { SocketForm } from './SocketForm';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function SocketTab({ onCreate }: Props) {\n return (\n <>\n \n\n
    \n \n
    \n \n );\n}\n","import { useState } from 'react';\n\nimport { Environment } from '@/portainer/environments/types';\nimport { commandsTabs } from '@/react/edge/components/EdgeScriptForm/scripts';\n\nimport { BoxSelector, type BoxSelectorOption } from '@@/BoxSelector';\n\nimport { AnalyticsStateKey } from '../types';\nimport { EdgeAgentTab } from '../shared/EdgeAgentTab';\nimport { useFilterEdgeOptionsIfNeeded } from '../useOnlyEdgeOptions';\n\nimport { AgentTab } from './AgentTab';\nimport { APITab } from './APITab';\nimport { SocketTab } from './SocketTab';\n\ninterface Props {\n onCreate(environment: Environment, analytics: AnalyticsStateKey): void;\n}\n\nconst defaultOptions: BoxSelectorOption<\n 'agent' | 'api' | 'socket' | 'edgeAgent'\n>[] = [\n {\n id: 'agent',\n icon: 'svg-agent',\n label: 'Agent',\n description: '',\n value: 'agent',\n },\n {\n id: 'api',\n icon: 'svg-api',\n label: 'API',\n description: '',\n value: 'api',\n },\n {\n id: 'socket',\n icon: 'svg-socket',\n label: 'Socket',\n description: '',\n value: 'socket',\n },\n {\n id: 'edgeAgent',\n icon: 'svg-edgeagent',\n label: 'Edge Agent',\n description: '',\n value: 'edgeAgent',\n },\n];\n\nexport function WizardDocker({ onCreate }: Props) {\n const options = useFilterEdgeOptionsIfNeeded(defaultOptions, 'edgeAgent');\n\n const [creationType, setCreationType] = useState(options[0].value);\n\n const tab = getTab(creationType);\n\n return (\n
    \n setCreationType(v)}\n options={options}\n value={creationType}\n radioName=\"creation-type\"\n />\n\n {tab}\n
    \n );\n\n function getTab(creationType: 'agent' | 'api' | 'socket' | 'edgeAgent') {\n switch (creationType) {\n case 'agent':\n return (\n onCreate(environment, 'dockerAgent')}\n />\n );\n case 'api':\n return (\n onCreate(environment, 'dockerApi')}\n />\n );\n case 'socket':\n return (\n onCreate(environment, 'localEndpoint')}\n />\n );\n case 'edgeAgent':\n return (\n onCreate(environment, 'dockerEdgeAgent')}\n commands={{\n linux: [commandsTabs.swarmLinux, commandsTabs.standaloneLinux],\n win: [commandsTabs.swarmWindows, commandsTabs.standaloneWindow],\n }}\n />\n );\n default:\n return null;\n }\n }\n}\n","import { Field, Form, Formik } from 'formik';\nimport { useReducer, useState } from 'react';\nimport { object, SchemaOf, string } from 'yup';\n\nimport { buildOption } from '@/portainer/components/BoxSelector';\nimport { useCreateAzureEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport { Environment } from '@/portainer/environments/types';\nimport { EnvironmentMetadata } from '@/portainer/environments/environment.service/create';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Input } from '@@/form-components/Input';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { BoxSelector } from '@@/BoxSelector';\nimport { Icon } from '@@/Icon';\n\nimport { NameField, nameValidation } from '../shared/NameField';\nimport { AnalyticsStateKey } from '../types';\nimport { metadataValidation } from '../shared/MetadataFieldset/validation';\nimport { MoreSettingsSection } from '../shared/MoreSettingsSection';\n\ninterface FormValues {\n name: string;\n applicationId: string;\n tenantId: string;\n authenticationKey: string;\n meta: EnvironmentMetadata;\n}\n\nconst initialValues: FormValues = {\n name: '',\n applicationId: '',\n tenantId: '',\n authenticationKey: '',\n meta: {\n groupId: 1,\n tagIds: [],\n },\n};\n\nconst options = [buildOption('api', 'svg-api', 'API', '', 'api')];\n\ninterface Props {\n onCreate(environment: Environment, analytics: AnalyticsStateKey): void;\n}\n\nexport function WizardAzure({ onCreate }: Props) {\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n\n const [creationType, setCreationType] = useState(options[0].id);\n const mutation = useCreateAzureEnvironmentMutation();\n\n return (\n
    \n setCreationType(value)}\n value={creationType}\n />\n\n \n initialValues={initialValues}\n onSubmit={handleSubmit}\n key={formKey}\n validateOnMount\n validationSchema={validationSchema}\n >\n {({ errors, dirty, isValid }) => (\n
    \n \n\n \n \n \n\n \n \n \n\n \n \n \n\n \n\n
    \n
    \n \n {' '}\n Connect\n \n
    \n
    \n \n )}\n \n
    \n );\n\n function handleSubmit({\n applicationId,\n authenticationKey,\n meta,\n name,\n tenantId,\n }: typeof initialValues) {\n mutation.mutate(\n {\n name,\n azure: {\n applicationId,\n authenticationKey,\n tenantId,\n },\n meta,\n },\n {\n onSuccess(environment) {\n notifySuccess('Environment created', environment.Name);\n clearForm();\n onCreate(environment, 'aciApi');\n },\n }\n );\n }\n}\n\nfunction validationSchema(): SchemaOf {\n return object({\n name: nameValidation(),\n applicationId: string().required('Application ID is required'),\n tenantId: string().required('Tenant ID is required'),\n authenticationKey: string().required('Authentication Key is required'),\n meta: metadataValidation(),\n });\n}\n","import { useState } from 'react';\n\nimport { getAgentShortVersion } from '@/portainer/views/endpoints/helpers';\nimport { useAgentDetails } from '@/portainer/environments/queries/useAgentDetails';\n\nimport { CopyButton } from '@@/buttons/CopyButton';\nimport { Code } from '@@/Code';\nimport { TextTip } from '@@/Tip/TextTip';\nimport { NavTabs } from '@@/NavTabs';\n\nconst deployments = [\n {\n id: 'k8sLoadBalancer',\n label: 'Kubernetes via load balancer',\n command: kubeLoadBalancerCommand,\n showAgentSecretMessage: true,\n },\n {\n id: 'k8sNodePort',\n label: 'Kubernetes via node port',\n command: kubeNodePortCommand,\n showAgentSecretMessage: true,\n },\n];\n\nexport function DeploymentScripts() {\n const [deployType, setDeployType] = useState(deployments[0].id);\n\n const agentDetailsQuery = useAgentDetails();\n\n if (!agentDetailsQuery) {\n return null;\n }\n\n const { agentVersion, agentSecret } = agentDetailsQuery;\n\n const options = deployments.map((c) => {\n const code = c.command(agentVersion);\n\n return {\n id: c.id,\n label: c.label,\n children: (\n \n ),\n };\n });\n\n return (\n <>\n \n Ensure that you have deployed the Portainer agent in your cluster first.\n Refer to the platform related command below to deploy it.\n \n\n setDeployType(id)}\n selectedId={deployType}\n />\n \n );\n}\n\nfunction kubeNodePortCommand(agentVersion: string) {\n const agentShortVersion = getAgentShortVersion(agentVersion);\n\n return `kubectl apply -f https://downloads.portainer.io/ee${agentShortVersion}/portainer-agent-k8s-nodeport.yaml`;\n}\n\nfunction kubeLoadBalancerCommand(agentVersion: string) {\n const agentShortVersion = getAgentShortVersion(agentVersion);\n\n return `kubectl apply -f https://downloads.portainer.io/ee${agentShortVersion}/portainer-agent-k8s-lb.yaml`;\n}\n\ninterface LoadBalancerProps {\n agentSecret?: string;\n showAgentSecretMessage?: boolean;\n code: string;\n}\n\nfunction DeployCode({\n agentSecret,\n showAgentSecretMessage,\n code,\n}: LoadBalancerProps) {\n return (\n <>\n {showAgentSecretMessage && agentSecret && (\n

    \n \n Note that the environment variable AGENT_SECRET will need to be set to\n {agentSecret}. Please update the manifest that will be\n downloaded from the following script.\n

    \n )}\n {code}\n Copy command\n \n );\n}\n","import { Environment } from '@/portainer/environments/types';\n\nimport { AgentForm } from '../shared/AgentForm';\n\nimport { DeploymentScripts } from './DeploymentScripts';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nexport function AgentPanel({ onCreate }: Props) {\n return (\n <>\n \n\n
    \n \n
    \n \n );\n}\n","import { object, SchemaOf, string } from 'yup';\n\nimport { CreateKubeConfigEnvironment } from '@/portainer/environments/environment.service/create';\n\nimport { metadataValidation } from '../../shared/MetadataFieldset/validation';\nimport { nameValidation } from '../../shared/NameField';\n\nexport function validation(): SchemaOf {\n return object({\n name: nameValidation(),\n kubeConfig: string().required('Kubeconfig file is required.'),\n meta: metadataValidation(),\n });\n}\n","import { Form, Formik } from 'formik';\nimport { useReducer, useState } from 'react';\n\nimport { useCreateKubeConfigEnvironmentMutation } from '@/portainer/environments/queries/useCreateEnvironmentMutation';\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport { Environment } from '@/portainer/environments/types';\nimport { CreateKubeConfigEnvironment } from '@/portainer/environments/environment.service/create';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { FileUploadField } from '@@/form-components/FileUpload/FileUploadField';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { Icon } from '@@/Icon';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { NameField } from '../../shared/NameField';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\n\nimport { validation } from './KubeConfig.validation';\n\ninterface Props {\n onCreate(environment: Environment): void;\n}\n\nconst initialValues: CreateKubeConfigEnvironment = {\n kubeConfig: '',\n name: '',\n meta: {\n groupId: 1,\n tagIds: [],\n },\n};\n\nasync function readFileContent(file: File) {\n return new Promise((resolve, reject) => {\n const fileReader = new FileReader();\n fileReader.onload = (e) => {\n if (e.target == null || e.target.result == null) {\n resolve('');\n return;\n }\n const base64 = e.target.result.toString();\n const index = base64.indexOf('base64,');\n // ignore first 7 characters (base64,)\n const cert = base64.substring(index + 7, base64.length);\n resolve(cert);\n };\n fileReader.onerror = () => {\n reject(new Error('error reading provisioning certificate file'));\n };\n fileReader.readAsDataURL(file);\n });\n}\n\nexport function KubeConfigForm({ onCreate }: Props) {\n const [formKey, clearForm] = useReducer((state) => state + 1, 0);\n const [kubeConfigFile, setKubeConfigFile] = useState();\n\n const mutation = useCreateKubeConfigEnvironmentMutation();\n\n async function handleFileUpload(\n file: File,\n setFieldValue: (\n field: string,\n value: unknown,\n shouldValidate?: boolean\n ) => void\n ) {\n if (file) {\n setKubeConfigFile(file);\n const fileContent = await readFileContent(file);\n setFieldValue('kubeConfig', fileContent);\n }\n }\n\n return (\n \n {({ isValid, dirty, setFieldValue, errors }) => (\n
    \n
    \n
    \n \n \n \n Import the kubeconfig file\n \n of an existing Kubernetes cluster located on-premise or on a\n cloud platform. This will create a corresponding environment\n in Portainer and install the agent on the cluster. Please\n ensure:\n \n \n
    \n
    \n
      \n
    • You have a load balancer enabled in your cluster
    • \n
    • You specify current-context in your kubeconfig
    • \n
    • \n The kubeconfig is self-contained - including any required\n credentials.\n
    • \n
    \n

    \n Note: Officially supported cloud providers are Civo, Linode,\n DigitalOcean and Microsoft Azure (others are not guaranteed to\n work at present)\n

    \n
    \n
    \n\n \n\n \n handleFileUpload(file, setFieldValue)}\n />\n \n\n \n\n
    \n
    \n \n {' '}\n Connect\n \n
    \n
    \n \n )}\n \n );\n\n function handleSubmit(values: CreateKubeConfigEnvironment) {\n mutation.mutate(values, {\n onSuccess(environment) {\n notifySuccess('Kubeconfig import started', environment.Name);\n clearForm();\n setKubeConfigFile(undefined);\n onCreate(environment);\n },\n });\n }\n}\n","import { useState } from 'react';\n\nimport {\n Environment,\n EnvironmentCreationTypes,\n} from '@/portainer/environments/types';\nimport { commandsTabs } from '@/react/edge/components/EdgeScriptForm/scripts';\n\nimport { BoxSelector } from '@@/BoxSelector';\nimport { BoxSelectorOption } from '@@/BoxSelector/types';\n\nimport { AnalyticsStateKey } from '../types';\nimport { EdgeAgentTab } from '../shared/EdgeAgentTab';\nimport { useFilterEdgeOptionsIfNeeded } from '../useOnlyEdgeOptions';\n\nimport { AgentPanel } from './AgentPanel';\nimport { KubeConfigForm } from './KubeConfig/index';\n\ninterface Props {\n onCreate(environment: Environment, analytics: AnalyticsStateKey): void;\n}\n\nconst defaultOptions: BoxSelectorOption[] = [\n {\n id: 'agent_endpoint',\n icon: 'svg-agent',\n label: 'Agent',\n value: EnvironmentCreationTypes.AgentEnvironment,\n description: '',\n },\n {\n id: 'edgeAgent',\n icon: 'svg-edgeagent',\n label: 'Edge Agent',\n description: '',\n value: EnvironmentCreationTypes.EdgeAgentEnvironment,\n },\n {\n id: 'kubeconfig_endpoint',\n icon: 'svg-cloudimport',\n label: 'Import',\n value: EnvironmentCreationTypes.KubeConfigEnvironment,\n description: 'Import an existing Kubernetes config',\n },\n];\n\nexport function WizardKubernetes({ onCreate }: Props) {\n const options = useFilterEdgeOptionsIfNeeded(\n defaultOptions,\n EnvironmentCreationTypes.EdgeAgentEnvironment\n );\n\n const [creationType, setCreationType] = useState(options[0].value);\n\n const tab = getTab(creationType);\n\n return (\n
    \n setCreationType(v)}\n options={options}\n value={creationType}\n radioName=\"creation-type\"\n />\n\n {tab}\n
    \n );\n\n function getTab(type: typeof options[number]['value']) {\n switch (type) {\n case EnvironmentCreationTypes.AgentEnvironment:\n return (\n onCreate(environment, 'kubernetesAgent')}\n />\n );\n case EnvironmentCreationTypes.EdgeAgentEnvironment:\n return (\n \n onCreate(environment, 'kubernetesEdgeAgent')\n }\n commands={[{ ...commandsTabs.k8sLinux, label: 'Linux' }]}\n />\n );\n case EnvironmentCreationTypes.KubeConfigEnvironment:\n return (\n onCreate(environment, 'kubernetesAgent')}\n />\n );\n default:\n throw new Error('Creation type not supported');\n }\n }\n}\n","import { useState } from 'react';\n\nimport {\n Environment,\n EnvironmentCreationTypes,\n} from '@/portainer/environments/types';\nimport {\n buildLinuxNomadCommand,\n CommandTab,\n} from '@/react/edge/components/EdgeScriptForm/scripts';\n\nimport { BoxSelector } from '@@/BoxSelector';\n\nimport { AnalyticsStateKey } from '../types';\nimport { EdgeAgentTab } from '../shared/EdgeAgentTab';\nimport { useFilterEdgeOptionsIfNeeded } from '../useOnlyEdgeOptions';\n\ninterface Props {\n onCreate(environment: Environment, analytics: AnalyticsStateKey): void;\n}\n\nconst commands: CommandTab[] = [\n {\n id: 'nomad',\n label: 'Linux',\n command: buildLinuxNomadCommand,\n },\n];\n\nconst defaultOptions = [\n {\n description: 'Portainer Edge Agent',\n icon: 'svg-edgeagent',\n id: 'id',\n label: 'Edge Agent',\n value: EnvironmentCreationTypes.EdgeAgentEnvironment,\n },\n];\n\nexport function WizardNomad({ onCreate }: Props) {\n const options = useFilterEdgeOptionsIfNeeded(\n defaultOptions,\n EnvironmentCreationTypes.EdgeAgentEnvironment\n );\n\n const [selected, setSelected] = useState(options[0].value);\n\n return (\n
    \n setSelected(value)}\n options={options}\n value={selected}\n radioName=\"creation-type\"\n />\n\n onCreate(environment, 'nomadEdgeAgent')}\n isNomadTokenVisible\n />\n
    \n );\n}\n","import clsx from 'clsx';\n\nimport {\n environmentTypeIcon,\n endpointTypeName,\n stripProtocol,\n} from '@/portainer/filters/filters';\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { EdgeIndicator } from '@/portainer/home/EnvironmentList/EnvironmentItem';\nimport {\n isEdgeEnvironment,\n isUnassociatedEdgeEnvironment,\n} from '@/portainer/environments/utils';\nimport {\n ENVIRONMENTS_POLLING_INTERVAL,\n useEnvironmentList,\n} from '@/portainer/environments/queries/useEnvironmentList';\n\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\n\nimport styles from './WizardEndpointsList.module.css';\n\ninterface Props {\n environmentIds: EnvironmentId[];\n}\n\nexport function WizardEndpointsList({ environmentIds }: Props) {\n const { environments } = useEnvironmentList(\n { endpointIds: environmentIds },\n (environments) => {\n if (!environments) {\n return false;\n }\n\n if (!environments.value.some(isUnassociatedEdgeEnvironment)) {\n return false;\n }\n\n return ENVIRONMENTS_POLLING_INTERVAL;\n },\n 0,\n environmentIds.length > 0\n );\n\n return (\n \n \n \n {environments.map((environment) => (\n
    \n
    \n \n
    \n
    {environment.Name}
    \n
    \n URL: {stripProtocol(environment.URL)}\n
    \n
    \n Type: {endpointTypeName(environment.Type)}\n
    \n {isEdgeEnvironment(environment.Type) && (\n
    \n \n
    \n )}\n
    \n ))}\n
    \n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"wizardListWrapper\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-wrapper\",\"wizardListEdgeStatus\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-edge-status\",\"wizardListImage\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-image\",\"wizardListTitle\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-title\",\"wizardListSubtitle\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-subtitle\",\"wizardListType\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-WizardEndpointsList-WizardEndpointsList-module__wizard-list-type\"};","import { EnvironmentMetadata } from '@/portainer/environments/environment.service/create';\n\nimport { Option } from '@@/form-components/Input/Select';\n\nexport enum KaaSFormType {\n API = 'api',\n EKS = 'eks',\n GKE = 'gke',\n AZURE = 'azure',\n}\n\ninterface CreateBaseClusterFormValues {\n kubernetesVersion: string;\n region: string;\n credentialId: number;\n nodeCount: number;\n}\n\nexport interface CreateApiClusterFormValues {\n networkId: string;\n nodeSize: string;\n}\n\nexport interface CreateAzureClusterFormValues {\n resourceGroup: string;\n resourceGroupName?: string;\n tier: string;\n poolName: string;\n dnsPrefix: string;\n availabilityZones: string[];\n resourceGroupInput: string;\n nodeSize: string;\n}\n\nexport interface CreateGKEClusterFormValues {\n cpu: number;\n ram: number;\n hdd: number;\n networkId: string;\n nodeSize: string;\n}\n\nexport interface CreateEKSClusterFormValues {\n amiType: string;\n instanceType: string;\n nodeVolumeSize: number;\n}\n\nexport interface FormValues extends CreateBaseClusterFormValues {\n name: string;\n meta: EnvironmentMetadata;\n\n azure: CreateAzureClusterFormValues;\n google: CreateGKEClusterFormValues;\n api: CreateApiClusterFormValues;\n amazon: CreateEKSClusterFormValues;\n}\n\n// Create KaaS cluster payloads\nexport type CreateApiClusterPayload = CreateApiClusterFormValues;\n\nexport interface CreateAzureClusterPayload\n extends CreateAzureClusterFormValues {\n name: string;\n}\n\nexport interface CreateGKEClusterPayload extends CreateBaseClusterFormValues {\n cpu?: number;\n ram?: number;\n hdd: number;\n networkId: string;\n}\n\nexport interface CreateEksClusterPayload extends CreateEKSClusterFormValues {\n name: string;\n}\n\nexport type CreateClusterPayload =\n | CreateApiClusterPayload\n | CreateEksClusterPayload\n | CreateAzureClusterPayload\n | CreateGKEClusterPayload;\n\n// Kaas info response\ntype KaasNetwork = {\n region: string;\n networks: { id: string; name: string }[];\n};\n\ntype NodeSize = {\n name: string;\n value: string;\n};\n\ntype AzureNodeSize = {\n name: string;\n value: string;\n zones: string[] | null;\n};\n\ntype KaasNodeSize = {\n name: string;\n value: string;\n};\n\ntype KaasRegion = {\n name: string;\n value: string;\n};\n\ntype KubernetesVersion = {\n name: string;\n value: string;\n};\n\n// the number of cpu cores per node\ninterface CPUInfo {\n default: number;\n min: number;\n max: number;\n}\n\n// the amount of RAM per node\ninterface RAMInfo {\n default: number;\n min: number;\n max: number;\n}\n\n// the amount of disk space per node\ninterface HDDInfo {\n default: number;\n min: number;\n max: number;\n}\n\ninterface KaasBaseInfoResponse {\n regions: KaasRegion[];\n kubernetesVersions: KubernetesVersion[];\n}\n\ntype InstanceType = {\n name: string;\n value: string;\n compatibleAmiTypes: string[];\n};\n\ntype AMIType = {\n name: string;\n value: string;\n};\n\nexport type InstanceTypeRegions = Record;\n\nexport interface KaasApiInfoResponse extends KaasBaseInfoResponse {\n networks?: KaasNetwork[];\n nodeSizes: NodeSize[];\n}\n\nexport interface KaasAzureInfoResponse extends KaasBaseInfoResponse {\n nodeSizes: Record; // key is the region\n resourceGroups: string[];\n tiers: string[];\n}\n\nexport interface KaasGKEInfoResponse extends KaasBaseInfoResponse {\n cpu: CPUInfo;\n hdd: HDDInfo;\n ram: RAMInfo;\n networks: Array;\n nodeSizes: Array;\n}\n\nexport interface KaasEksInfoResponse extends KaasBaseInfoResponse {\n amiTypes: AMIType[];\n instanceTypes: InstanceTypeRegions;\n}\n\nexport type KaasInfoResponse =\n | KaasApiInfoResponse\n | KaasGKEInfoResponse\n | KaasAzureInfoResponse\n | KaasEksInfoResponse;\n\nexport function isAPIKaasInfoResponse(\n kaasInfoResponse: KaasInfoResponse\n): kaasInfoResponse is KaasApiInfoResponse {\n return 'nodeSizes' in kaasInfoResponse;\n}\n\n// returns true if the response is a gke info response\nexport function isAzureKaasInfoResponse(\n kaasInfoResponse: KaasInfoResponse\n): kaasInfoResponse is KaasAzureInfoResponse {\n return 'resourceGroups' in kaasInfoResponse;\n}\n\nexport function isGKEKaasInfoResponse(\n kaasInfoResponse: KaasInfoResponse\n): kaasInfoResponse is KaasGKEInfoResponse {\n return 'cpu' in kaasInfoResponse;\n}\n\nexport function isEksKaasInfoResponse(\n kaasInfoResponse: KaasInfoResponse\n): kaasInfoResponse is KaasEksInfoResponse {\n return 'amiTypes' in kaasInfoResponse;\n}\n\n// KaaS cluster info\nexport type NetworkInfo = Record[]>;\n\ninterface BaseKaasInfo {\n kubernetesVersions: Option[];\n regions: Option[];\n}\n\nexport interface APIKaasInfo extends BaseKaasInfo {\n networks?: NetworkInfo;\n nodeSizes: Option[];\n}\n\nexport interface AzureKaasInfo extends BaseKaasInfo {\n nodeSizes: Record;\n resourceGroups: Option[];\n tiers: string[];\n}\n\nexport interface GKEKaasInfo extends BaseKaasInfo {\n nodeSizes: Array>;\n networks: NetworkInfo;\n cpu: CPUInfo;\n hdd: HDDInfo;\n ram: RAMInfo;\n}\n\nexport interface EKSKaasInfo extends BaseKaasInfo {\n amiTypes: Array>;\n instanceTypes: InstanceTypeRegions;\n}\n\nexport type KaasInfo = APIKaasInfo | AzureKaasInfo | GKEKaasInfo | EKSKaasInfo;\n\nexport function isAPIKaasInfo(kaasInfo: KaasInfo): kaasInfo is APIKaasInfo {\n return 'nodeSizes' in kaasInfo;\n}\n\nexport function isAzureKaasInfo(kaasInfo: KaasInfo): kaasInfo is AzureKaasInfo {\n return 'resourceGroups' in kaasInfo;\n}\n\nexport function isGKEKaasInfo(kaasInfo: KaasInfo): kaasInfo is GKEKaasInfo {\n return 'cpu' in kaasInfo;\n}\n\nexport function isEKSKaasInfo(kaasInfo: KaasInfo): kaasInfo is EKSKaasInfo {\n return 'amiTypes' in kaasInfo;\n}\n","import { KaasProvider } from '@/portainer/settings/cloud/types';\nimport Civo from '@/assets/ico/vendor/civo.svg?c';\nimport Linode from '@/assets/ico/vendor/linode.svg?c';\nimport Digitalocean from '@/assets/ico/vendor/digitalocean.svg?c';\nimport Googlecloud from '@/assets/ico/vendor/googlecloud.svg?c';\nimport Aws from '@/assets/ico/vendor/aws.svg?c';\nimport Azure from '@/assets/ico/vendor/azure.svg?c';\n\nimport { BoxSelector, BoxSelectorOption } from '@@/BoxSelector';\n\ninterface Props {\n provider: KaasProvider;\n onChange(value: KaasProvider): void;\n}\n\nconst cloudProviderOptions: BoxSelectorOption[] = [\n {\n id: KaasProvider.CIVO,\n icon: Civo,\n label: 'Civo',\n description: 'Civo Kubernetes',\n value: KaasProvider.CIVO,\n },\n {\n id: KaasProvider.LINODE,\n icon: Linode,\n label: 'Linode',\n description: 'Linode Kubernetes Engine (LKE)',\n value: KaasProvider.LINODE,\n },\n {\n id: KaasProvider.DIGITAL_OCEAN,\n icon: Digitalocean,\n label: 'DigitalOcean',\n description: 'DigitalOcean Kubernetes (DOKS)',\n value: KaasProvider.DIGITAL_OCEAN,\n },\n {\n id: KaasProvider.GOOGLE_CLOUD,\n icon: Googlecloud,\n label: 'Google Cloud',\n description: 'Google Kubernetes Engine (GKE)',\n value: KaasProvider.GOOGLE_CLOUD,\n },\n {\n id: KaasProvider.AWS,\n icon: Aws,\n label: 'Amazon Web Services (AWS)',\n description: 'Elastic Kubernetes Service (EKS)',\n value: KaasProvider.AWS,\n },\n {\n id: KaasProvider.AZURE,\n icon: Azure,\n label: 'Microsoft Azure',\n description: 'Azure Kubernetes Service (AKS)',\n value: KaasProvider.AZURE,\n },\n];\n\nexport function KaasProvidersSelector({ onChange, provider }: Props) {\n return (\n onChange(provider)}\n value={provider}\n />\n );\n}\n","import { trackEvent } from '@/angulartics.matomo/analytics-services';\nimport { KaasProvider } from '@/portainer/settings/cloud/types';\n\nimport { FormValues, KaaSFormType } from './types';\n\nexport function sendKaasProvisionAnalytics(\n values: FormValues,\n provider: KaasProvider\n) {\n trackEvent('portainer-endpoint-creation', {\n category: 'portainer',\n metadata: { type: 'agent', platform: 'kubernetes' },\n });\n\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n trackGoogleCloudProvision(values);\n break;\n case KaasProvider.CIVO:\n case KaasProvider.LINODE:\n case KaasProvider.DIGITAL_OCEAN:\n trackApiProvision(provider, values);\n break;\n case KaasProvider.AZURE:\n trackAzureProvision(values);\n break;\n case KaasProvider.AWS:\n trackAmazonProvision(values);\n break;\n default:\n break;\n }\n}\n\nfunction trackAzureProvision(values: FormValues) {\n trackEvent('provision-kaas-cluster', {\n category: 'kubernetes',\n metadata: {\n provider: KaasProvider.AZURE,\n region: values.region,\n 'availability-zones': values.azure.availabilityZones,\n teir: values.azure.tier,\n 'node-count': values.nodeCount,\n 'node-size': values.azure.nodeSize,\n },\n });\n}\n\nfunction trackGoogleCloudProvision(values: FormValues) {\n trackEvent('provision-kaas-cluster', {\n category: 'kubernetes',\n metadata: {\n provider: KaasProvider.GOOGLE_CLOUD,\n region: values.region,\n cpu: values.google.cpu,\n ram: values.google.ram,\n hdd: values.google.hdd,\n 'node-size': values.google.nodeSize,\n 'node-count': values.nodeCount,\n },\n });\n}\n\nfunction trackApiProvision(provider: KaasProvider, values: FormValues) {\n trackEvent('provision-kaas-cluster', {\n category: 'kubernetes',\n metadata: {\n provider,\n region: values.region,\n 'node-size': values.api.nodeSize,\n 'node-count': values.nodeCount,\n },\n });\n}\n\nfunction trackAmazonProvision(values: FormValues) {\n trackEvent('provision-kaas-cluster', {\n category: 'kubernetes',\n metadata: {\n provider: KaasProvider.AWS,\n region: values.region,\n 'node-size': values.amazon.instanceType,\n 'node-count': values.nodeCount,\n },\n });\n}\n\nexport function providerFormType(provider: KaasProvider) {\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n return KaaSFormType.GKE;\n case KaasProvider.AWS:\n return KaaSFormType.EKS;\n case KaasProvider.AZURE:\n return KaaSFormType.AZURE;\n case KaasProvider.DIGITAL_OCEAN:\n case KaasProvider.LINODE:\n case KaasProvider.CIVO:\n default:\n return KaaSFormType.API;\n }\n}\n","import { KaasProvider } from '@/portainer/settings/cloud/types';\n\nimport { Option } from '@@/form-components/Input/Select';\n\nimport {\n KaasInfo,\n KaasInfoResponse,\n isAzureKaasInfoResponse,\n NetworkInfo,\n isGKEKaasInfoResponse,\n isEksKaasInfoResponse,\n CreateApiClusterPayload,\n CreateAzureClusterPayload,\n CreateEksClusterPayload,\n CreateGKEClusterPayload,\n FormValues,\n} from './types';\n\nfunction buildOption(value: string, label?: string): Option {\n return { value, label: label ?? value };\n}\n\nexport function parseKaasInfoResponse(response: KaasInfoResponse): KaasInfo {\n const kubernetesVersions = response.kubernetesVersions.map((v) =>\n buildOption(v.value, v.name)\n );\n const regions = response.regions.map((v) => buildOption(v.value, v.name));\n\n if (isAzureKaasInfoResponse(response)) {\n return {\n ...response,\n kubernetesVersions,\n resourceGroups:\n response.resourceGroups?.map((rg) => buildOption(rg, rg)) || [],\n regions,\n nodeSizes: response.nodeSizes,\n };\n }\n\n if (isEksKaasInfoResponse(response)) {\n return {\n kubernetesVersions,\n instanceTypes: response.instanceTypes,\n regions,\n amiTypes: response.amiTypes.map((v) => buildOption(v.value, v.name)),\n };\n }\n\n const nodeSizes = response.nodeSizes.map((v) => buildOption(v.value, v.name));\n const networks =\n response.networks?.reduce((acc, n) => {\n const networkRegion = {\n [n.region]: n.networks.map((n) => buildOption(n.id, n.name)),\n } as NetworkInfo;\n return { ...acc, ...networkRegion };\n }, {} as NetworkInfo) || {};\n\n if (isGKEKaasInfoResponse(response)) {\n return {\n ...response,\n kubernetesVersions,\n nodeSizes,\n networks,\n regions,\n };\n }\n\n // API response type\n return {\n networks,\n nodeSizes,\n regions,\n kubernetesVersions,\n };\n}\n\nexport function getPayloadParse(provider: KaasProvider) {\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n return googlePayload;\n case KaasProvider.CIVO:\n case KaasProvider.LINODE:\n case KaasProvider.DIGITAL_OCEAN:\n return apiPayload;\n case KaasProvider.AZURE:\n return azurePayload;\n case KaasProvider.AWS:\n return amazonPayload;\n default:\n throw new Error('Unsupported provider');\n }\n\n function googlePayload({\n azure,\n api,\n amazon,\n google: { cpu, ram, ...google },\n ...values\n }: FormValues): CreateGKEClusterPayload {\n if (google.nodeSize === 'custom') {\n return { cpu, ram, ...google, ...values };\n }\n\n return { ...google, ...values };\n }\n\n function apiPayload({\n amazon,\n azure,\n google,\n api,\n ...values\n }: FormValues): CreateApiClusterPayload {\n return { ...api, ...values };\n }\n\n function azurePayload({\n amazon,\n azure,\n google,\n api,\n ...values\n }: FormValues): CreateAzureClusterPayload {\n let resourceGroup = '';\n let { resourceGroupName } = azure;\n if (azure.resourceGroupInput === 'select') {\n resourceGroup = azure.resourceGroup;\n resourceGroupName = '';\n }\n\n return {\n ...azure,\n ...values,\n resourceGroup,\n resourceGroupName,\n };\n }\n\n function amazonPayload({\n amazon,\n azure,\n google,\n api,\n ...values\n }: FormValues): CreateEksClusterPayload {\n return {\n ...amazon,\n ...values,\n };\n }\n}\n","import axios, { parseAxiosError } from '@/portainer/services/axios';\nimport { KaasProvider, Credential } from '@/portainer/settings/cloud/types';\nimport { Environment } from '@/portainer/environments/types';\n\nimport { KaasInfoResponse, CreateClusterPayload } from './types';\nimport { parseKaasInfoResponse } from './converter';\n\nfunction buildUrl(provider: KaasProvider, action: string) {\n return `/cloud/${provider}/${action}`;\n}\n\nexport async function createKaasEnvironment(\n payload: CreateClusterPayload,\n provider: KaasProvider\n) {\n try {\n const { data } = await axios.post(\n buildUrl(provider, 'cluster'),\n payload\n );\n return data;\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n\nexport async function getKaasInfo(\n { provider, id }: Credential,\n force?: boolean\n) {\n try {\n const { data } = await axios.get(\n buildUrl(provider, 'info'),\n { params: { credentialId: id, force } }\n );\n return parseKaasInfoResponse(data);\n } catch (e) {\n throw parseAxiosError(e as Error);\n }\n}\n","import { useMutation, useQuery, useQueryClient } from 'react-query';\n\nimport {\n Credential,\n KaasProvider,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\nimport { success as notifySuccess } from '@/portainer/services/notifications';\n\nimport { getKaasInfo, createKaasEnvironment } from './kaas.service';\nimport { CreateClusterPayload, KaasInfo } from './types';\n\nexport function useCloudProviderOptions(\n provider: KaasProvider,\n validator: (info: KaasInfo) => info is T,\n credential?: Credential | null,\n force = false\n) {\n return useQuery(\n ['cloud', credential?.provider, 'info', credential?.id, { force }],\n () => kaasInfoFetcher(validator, credential, force),\n {\n meta: {\n error: {\n title:\n credential &&\n `Failed to get ${providerTitles[credential.provider]} info`,\n message: '',\n },\n },\n enabled: !!credential && credential.provider === provider,\n retry: 1,\n }\n );\n}\n\nasync function kaasInfoFetcher(\n validator: (info: KaasInfo) => info is T,\n credential?: Credential | null,\n force = false\n) {\n if (!credential) {\n return null;\n }\n\n const info = await getKaasInfo(credential, force);\n\n return validator(info) ? info : null;\n}\n\nexport function useCreateKaasCluster() {\n const client = useQueryClient();\n return useMutation(\n ({\n payload,\n provider,\n }: {\n payload: CreateClusterPayload;\n provider: KaasProvider;\n }) => createKaasEnvironment(payload, provider),\n {\n onSuccess: (_, { provider }) => {\n notifySuccess('Success', 'KaaS cluster provisioning started');\n client.cancelQueries(['cloud', provider, 'info']);\n return client.invalidateQueries(['environments']);\n },\n meta: {\n error: {\n title: 'Failure',\n message: 'Unable to create KaaS environment',\n },\n },\n }\n );\n}\n","import { object, number, SchemaOf, string } from 'yup';\n\nimport { CreateGKEClusterFormValues, isGKEKaasInfo, KaasInfo } from '../types';\n\n// for E2 machines, min is 0.5GB per vCPU\nexport function minGKERam(cpu: number) {\n return Math.max(cpu * 0.5, 1);\n}\n\n// for E2 machines, max is 8GB per vCPU with a 128GB maximum\nexport function maxGKERam(cpu: number) {\n if (cpu <= 0) {\n return 128;\n }\n return Math.min(cpu * 8, 128);\n}\n\nexport function validationSchema(\n kaasInfo?: KaasInfo | null\n): SchemaOf {\n let cpuSchema = number();\n let ramSchema = number();\n let hddSchema = number();\n\n if (kaasInfo && isGKEKaasInfo(kaasInfo)) {\n cpuSchema = cpuSchema\n .min(\n kaasInfo.cpu.min,\n `Node vCPUs must be greater than or equal to ${kaasInfo.cpu.min}.`\n )\n .max(\n kaasInfo.cpu.max,\n `Node vCPUs must be less than or equal to ${kaasInfo.cpu.max}.`\n );\n ramSchema = ramSchema.when('cpu', (cpu, schema) =>\n schema\n .min(\n minGKERam(cpu),\n `Node RAM must be greater than or equal to ${minGKERam(cpu)} GB.`\n )\n .max(\n maxGKERam(cpu),\n `Node RAM must be less than or equal to ${maxGKERam(cpu)} GB.`\n )\n );\n hddSchema = hddSchema\n .min(\n kaasInfo.hdd.min,\n `Node disk space must be greater than or equal to ${kaasInfo.hdd.min} GB.`\n )\n .max(\n kaasInfo.hdd.max,\n `Node disk space must be less than or equal to ${kaasInfo.hdd.max} GB.`\n );\n }\n\n return object().shape({\n nodeSize: string().required('Node size is required.'),\n cpu: cpuSchema\n .integer('CPUs must be an integer.')\n .test('2 increments', 'Number of vCPUs must a multiple of 2.', (number) =>\n number ? number % 2 === 0 : false\n )\n .required('CPUs are required.'),\n ram: ramSchema\n .required('RAM is required.')\n .test('0.25 increments', 'RAM must be in 0.25GB increments.', (number) =>\n number ? number % 0.25 === 0 : false\n ),\n hdd: hddSchema\n .integer('HDD must be an integer.')\n .required('HDD is required.'),\n networkId: string().required('Network ID is required.'),\n });\n}\n","import { useEffect } from 'react';\nimport { useFormikContext } from 'formik';\n\nimport { Option } from '@@/form-components/Input/Select';\n\n// If the value is not found in the new list of available options,\n// then set the fieldName to an available value.\nexport function useSetAvailableOption(\n options: Option[] | undefined,\n value: T,\n fieldName: string,\n defaultValue?: string\n) {\n const { setFieldValue } = useFormikContext();\n\n useEffect(() => {\n if (options) {\n if (options.length > 0 && !valueFound(options, value)) {\n setFieldValue(fieldName, options[0].value || '');\n }\n } else if (defaultValue) {\n setFieldValue(fieldName, defaultValue);\n } else {\n setFieldValue(fieldName, '');\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [options, setFieldValue]);\n}\n\nfunction valueFound(\n options: Option[],\n value: string | number\n) {\n return options.find((option) => option.value === value);\n}\n","import { useField } from 'formik';\nimport { ChangeEvent } from 'react';\n\nimport { Credential } from '@/portainer/settings/cloud/types';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Select, Option } from '@@/form-components/Input/Select';\n\nimport { useSetAvailableOption } from '../useSetAvailableOption';\n\ninterface Props {\n credentials: Credential[];\n}\n\nexport function CredentialsField({ credentials }: Props) {\n const credentialOptions: Option[] = credentials.map((c) => ({\n value: c.id,\n label: c.name,\n }));\n\n const [fieldProps, meta, helpers] = useField('credentialId');\n useSetAvailableOption(credentialOptions, fieldProps.value, 'credentialId');\n\n return (\n \n \n \n );\n\n function handleChange(e: ChangeEvent) {\n const value = parseInt(e.target.value, 10);\n if (!Number.isNaN(value)) {\n helpers.setValue(value);\n }\n }\n}\n","import { useFormikContext } from 'formik';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FormSection } from '@@/form-components/FormSection';\n\nimport { FormValues } from '../types';\n\ninterface Props {\n isSubmitting: boolean;\n onReloadClick: () => void;\n isReloading: boolean;\n}\n\nexport function ActionsSection({\n isSubmitting,\n onReloadClick,\n isReloading,\n}: Props) {\n const { isValid } = useFormikContext();\n\n return (\n \n
    \n
    \n \n \n Provision environment\n \n\n \n \n Reload cluster details\n \n
    \n
    \n
    \n );\n}\n","import { TextTip } from '@@/Tip/TextTip';\n\nexport function KaaSInfoText() {\n return (\n \n This will allow you to create a Kubernetes environment (cluster) using a\n cloud provider's Kubernetes as a Service (KaaS) offering, and will\n then deploy the Portainer agent to it.\n \n );\n}\n","import { Field, useFormikContext } from 'formik';\nimport { useEffect, useMemo, useState } from 'react';\n\nimport {\n Credential,\n KaasProvider,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input, Select } from '@@/form-components/Input';\nimport { Loading } from '@@/Widget/Loading';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { useCloudProviderOptions } from '../queries';\nimport { useSetAvailableOption } from '../useSetAvailableOption';\nimport { FormValues, isGKEKaasInfo } from '../types';\nimport { CredentialsField } from '../shared/CredentialsField';\nimport { ActionsSection } from '../shared/ActionsSection';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\nimport { KaaSInfoText } from '../shared/KaaSInfoText';\nimport { NameField } from '../../shared/NameField';\n\nimport { maxGKERam, minGKERam } from './validation';\n\ntype Props = {\n credentials: Credential[];\n provider: KaasProvider;\n isSubmitting: boolean;\n};\n\nexport function GKECreateClusterForm({\n credentials,\n provider,\n isSubmitting,\n}: Props) {\n const { values, setFieldValue, errors } = useFormikContext();\n const {\n region,\n credentialId,\n kubernetesVersion,\n google: { networkId, cpu, ram, nodeSize },\n } = values;\n const [isOptionsForce, setIsOptionsForce] = useState(false);\n\n const selectedCredential =\n credentials.find((c) => c.id === credentialId) || credentials[0];\n\n const cloudOptionsQuery = useCloudProviderOptions(\n provider,\n isGKEKaasInfo,\n selectedCredential,\n isOptionsForce\n );\n\n const cloudOptions = cloudOptionsQuery.data;\n\n const filteredNetworkOptions = useMemo(() => {\n const shortenedRegion = removeTextAfterLastHyphen(region);\n return cloudOptions?.networks?.[shortenedRegion] || [];\n }, [region, cloudOptions?.networks]);\n\n const kubernetesVersions = useMemo(\n () => cloudOptions?.kubernetesVersions || [],\n [cloudOptions?.kubernetesVersions]\n );\n const regions = useMemo(\n () => cloudOptions?.regions || [],\n [cloudOptions?.regions]\n );\n const nodeSizes = useMemo(\n () => cloudOptions?.nodeSizes || [],\n [cloudOptions?.nodeSizes]\n );\n\n // if the vCPU count changes, update the vCPU count for validation\n useEffect(() => {\n // if the ram is out of the new valid range, change it\n if (ram < minGKERam(cpu)) {\n setFieldValue('google.ram', minGKERam(cpu));\n }\n if (ram > maxGKERam(cpu)) {\n setFieldValue('google.ram', maxGKERam(cpu));\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [cpu, setFieldValue]);\n\n // if the credentials change, select the first credential available\n useEffect(() => {\n if (credentials.length > 0) {\n const credential = credentials[0];\n\n setFieldValue('credentialId', credential.id);\n }\n }, [credentials, setFieldValue]);\n // set each form value to a valid option when the options change\n useSetAvailableOption(regions, region, 'region');\n useSetAvailableOption(nodeSizes, nodeSize, 'google.nodeSize');\n useSetAvailableOption(\n kubernetesVersions,\n kubernetesVersion,\n 'kubernetesVersion'\n );\n useSetAvailableOption(filteredNetworkOptions, networkId, 'google.networkId');\n\n return (\n <>\n \n \n \n\n {cloudOptionsQuery.isError && (\n \n Error getting {providerTitles[provider]} info. Go to\n \n cloud settings\n \n to ensure the API key is valid.\n \n )}\n {cloudOptionsQuery.isLoading && }\n {/* cluster details inputs */}\n {cloudOptions && isGKEKaasInfo(cloudOptions) && (\n <>\n \n \n \n \n \n \n {nodeSize === 'custom' && (\n <>\n \n \n \n \n \n \n \n )}\n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n\n \n \n Metadata is only assigned to the environment in Portainer, i.e. the\n group and tags are not assigned to the cluster at the cloud provider\n end.\n \n \n\n {\n setIsOptionsForce(true);\n cloudOptionsQuery.refetch();\n }}\n isReloading={\n cloudOptionsQuery.isLoading || cloudOptionsQuery.isFetching\n }\n isSubmitting={isSubmitting}\n />\n \n );\n}\n\nfunction removeTextAfterLastHyphen(text: string) {\n const lastHyphenIndex = text.lastIndexOf('-');\n if (lastHyphenIndex > 0) {\n return text.substring(0, lastHyphenIndex);\n }\n return text;\n}\n","import { Field, useFormikContext } from 'formik';\nimport { useEffect, useMemo, useState } from 'react';\n\nimport {\n Credential,\n KaasProvider,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input, Select } from '@@/form-components/Input';\nimport { Loading } from '@@/Widget/Loading';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { useCloudProviderOptions } from '../queries';\nimport { FormValues, isAPIKaasInfo } from '../types';\nimport { useSetAvailableOption } from '../useSetAvailableOption';\nimport { CredentialsField } from '../shared/CredentialsField';\nimport { ActionsSection } from '../shared/ActionsSection';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\nimport { KaaSInfoText } from '../shared/KaaSInfoText';\nimport { NameField } from '../../shared/NameField';\n\ntype Props = {\n credentials: Credential[];\n provider: KaasProvider;\n isSubmitting: boolean;\n};\n\n// ApiCreateClusterForm handles form changes, conditionally renders inputs, and manually set values\nexport function ApiCreateClusterForm({\n credentials,\n provider,\n isSubmitting,\n}: Props) {\n const [isOptionsForce, setIsOptionsForce] = useState(false);\n const { values, setFieldValue, errors } = useFormikContext();\n const {\n region,\n credentialId,\n kubernetesVersion,\n api: { networkId, nodeSize },\n } = values;\n\n const selectedCredential =\n credentials.find((c) => c.id === credentialId) || credentials[0];\n\n const cloudOptionsQuery = useCloudProviderOptions(\n provider,\n isAPIKaasInfo,\n selectedCredential,\n isOptionsForce\n );\n\n const cloudOptions = cloudOptionsQuery.data;\n\n const filteredNetworkOptions = useMemo(\n () => cloudOptions?.networks?.[region] || [],\n [cloudOptions?.networks, region]\n );\n\n // if the credentials change, select the first credential available\n useEffect(() => {\n const credential = credentials[0];\n setFieldValue('credentialId', credential.id);\n }, [credentials, setFieldValue]);\n\n // when the options change, set the available options in the select inputs\n useSetAvailableOption(filteredNetworkOptions, networkId, 'api.networkId');\n useSetAvailableOption(cloudOptions?.regions, region, 'region');\n useSetAvailableOption(cloudOptions?.nodeSizes, nodeSize, 'api.nodeSize');\n useSetAvailableOption(\n cloudOptions?.kubernetesVersions,\n kubernetesVersion,\n 'kubernetesVersion'\n );\n\n // when the region changes, update the selected network\n useEffect(() => {\n if (filteredNetworkOptions.length > 0 && region) {\n setFieldValue('api.networkId', filteredNetworkOptions[0].value);\n }\n }, [region, filteredNetworkOptions, setFieldValue]);\n\n return (\n <>\n \n \n \n {cloudOptionsQuery.isError && (\n \n Error getting {providerTitles[provider]} info. Go to \n \n cloud settings\n \n  to ensure the API key is valid.\n \n )}\n {(cloudOptionsQuery.isLoading || cloudOptionsQuery.isFetching) && (\n \n )}\n {/* cluster details inputs */}\n {cloudOptions && (\n <>\n \n \n \n \n \n \n \n \n \n {region && filteredNetworkOptions.length > 0 && (\n \n \n \n )}\n \n \n \n \n )}\n\n \n \n Metadata is only assigned to the environment in Portainer, i.e. the\n group and tags are not assigned to the cluster at the cloud provider\n end.\n \n \n\n {\n setIsOptionsForce(true);\n cloudOptionsQuery.refetch();\n }}\n isReloading={\n cloudOptionsQuery.isLoading || cloudOptionsQuery.isFetching\n }\n isSubmitting={isSubmitting}\n />\n \n );\n}\n","import { Field, useFormikContext } from 'formik';\nimport { useMemo, useState } from 'react';\n\nimport {\n Credential,\n KaasProvider,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\n\nimport { Select as ReactSelect } from '@@/form-components/ReactSelect';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input, Select } from '@@/form-components/Input';\nimport { Loading } from '@@/Widget/Loading';\nimport { Option } from '@@/form-components/Input/Select';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { useCloudProviderOptions } from '../queries';\nimport { FormValues, isAzureKaasInfo } from '../types';\nimport { useSetAvailableOption } from '../useSetAvailableOption';\nimport { CredentialsField } from '../shared/CredentialsField';\nimport { ActionsSection } from '../shared/ActionsSection';\nimport { KaaSInfoText } from '../shared/KaaSInfoText';\nimport { NameField } from '../../shared/NameField';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\n\ntype Props = {\n credentials: Credential[];\n provider: KaasProvider;\n isSubmitting: boolean;\n};\n\n// ApiCreateClusterForm handles form changes, conditionally renders inputs, and manually set values\nexport function AzureCreateClusterForm({\n credentials,\n provider,\n isSubmitting,\n}: Props) {\n const { values, errors, setFieldValue } = useFormikContext();\n const {\n region,\n credentialId,\n kubernetesVersion,\n azure: {\n resourceGroup,\n tier,\n availabilityZones,\n resourceGroupInput,\n nodeSize,\n },\n } = values;\n const [isOptionsForce, setIsOptionsForce] = useState(false);\n\n const selectedCredential =\n credentials.find((c) => c.id === credentialId) || credentials[0];\n\n const cloudOptionsQuery = useCloudProviderOptions(\n provider,\n isAzureKaasInfo,\n selectedCredential,\n isOptionsForce\n );\n\n // update the node size options based on the selected region\n const filteredNodeSizes = useMemo(() => {\n if (cloudOptionsQuery.data?.nodeSizes[region]) {\n return (\n cloudOptionsQuery.data?.nodeSizes[region].map((ns) => ({\n label: ns.name,\n value: ns.value,\n })) || []\n );\n }\n return [];\n }, [region, cloudOptionsQuery.data?.nodeSizes]);\n // update the availabilityZoneOptions based on the node size selected inside the region\n const availabilityZoneOptions = useMemo(() => {\n if (nodeSize) {\n return (\n cloudOptionsQuery.data?.nodeSizes[region]\n ?.find((ns) => ns.value === nodeSize)\n ?.zones?.map((o) => ({ value: o, label: `Zone ${o}` })) || []\n );\n }\n return [];\n }, [nodeSize, region, cloudOptionsQuery.data?.nodeSizes]);\n // update the tier option label based on availability zones\n const tiers = useMemo(() => {\n const paidLabel =\n availabilityZones && availabilityZones.length ? '99.95%' : '99.9%';\n return (\n cloudOptionsQuery.data?.tiers.map((tier) => {\n if (tier === 'Paid') {\n return {\n label: `${paidLabel} - charges apply`,\n value: tier,\n };\n }\n return {\n label: '99.5% - free',\n value: tier,\n };\n }) || []\n );\n }, [cloudOptionsQuery.data?.tiers, availabilityZones]);\n const { regions, kubernetesVersions, resourceGroups } =\n cloudOptionsQuery.data || {\n regions: [],\n kubernetesVersions: [],\n resourceGroups: [],\n };\n\n // when the options change, set the available options in the select inputs\n useSetAvailableOption(\n resourceGroups,\n resourceGroup,\n 'azure.resourceGroup',\n 'None available'\n );\n useSetAvailableOption(tiers, tier, 'azure.tier');\n useSetAvailableOption(regions, region, 'region');\n useSetAvailableOption(\n kubernetesVersions,\n kubernetesVersion,\n 'kubernetesVersion'\n );\n useSetAvailableOption(filteredNodeSizes, nodeSize, 'azure.nodeSize');\n\n return (\n <>\n \n \n \n\n {cloudOptionsQuery.isError && (\n \n Error getting {providerTitles[provider]} info. Go to \n \n cloud settings\n \n  to ensure the API key is valid.\n \n )}\n {cloudOptionsQuery.isLoading && }\n {/* cluster details inputs */}\n {cloudOptionsQuery.data &&\n !cloudOptionsQuery.isError &&\n isAzureKaasInfo(cloudOptionsQuery.data) && (\n <>\n \n \n \n \n
    \n \n \n \n Select existing resource group\n \n \n \n \n \n Add a new resource group\n \n \n
    \n \n {/* Choose a resource group */}\n {resourceGroupInput === 'select' && (\n \n \n \n )}\n {/* or create a resource group */}\n {resourceGroupInput === 'input' && (\n \n \n \n )}\n \n \n \n \n \n \n \n Check your\n \n Azure compute quota\n \n to ensure you have enough resources to deploy this cluster\n \n \n \n \n {/* availability zones */}\n \n {availabilityZoneOptions.length === 0 && (\n \n )}\n {availabilityZoneOptions.length > 0 && (\n \n availabilityZoneOptions?.includes({\n value: o,\n label: o,\n })\n )\n : ''\n }\n onChange={(options: Option[]) =>\n setFieldValue(\n 'azure.availabilityZones',\n options.map((o) => o.value)\n )\n }\n options={availabilityZoneOptions}\n id=\"kaas-availabilityZoneOptions\"\n data-cy=\"kaasCreateForm-availabilityZoneOptions\"\n />\n )}\n \n {/* tier */}\n \n \n \n {/* dns prefix */}\n \n \n \n \n \n \n \n )}\n\n \n \n Metadata is only assigned to the environment in Portainer, i.e. the\n group and tags are not assigned to the cluster at the cloud provider\n end.\n \n \n\n {\n setIsOptionsForce(true);\n cloudOptionsQuery.refetch();\n }}\n isReloading={\n cloudOptionsQuery.isLoading || cloudOptionsQuery.isFetching\n }\n isSubmitting={isSubmitting}\n />\n \n );\n}\n","import { Field, useFormikContext } from 'formik';\nimport { useMemo, useState } from 'react';\n\nimport {\n Credential,\n KaasProvider,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Input, Select } from '@@/form-components/Input';\nimport { Loading } from '@@/Widget/Loading';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { CredentialsField } from '../shared/CredentialsField';\nimport { FormValues, InstanceTypeRegions, isEKSKaasInfo } from '../types';\nimport { useSetAvailableOption } from '../useSetAvailableOption';\nimport { useCloudProviderOptions } from '../queries';\nimport { ActionsSection } from '../shared/ActionsSection';\nimport { MoreSettingsSection } from '../../shared/MoreSettingsSection';\nimport { KaaSInfoText } from '../shared/KaaSInfoText';\nimport { NameField } from '../../shared/NameField';\n\ntype Props = {\n credentials: Credential[];\n provider: KaasProvider;\n isSubmitting: boolean;\n};\n\n// ApiCreateClusterForm handles form changes, conditionally renders inputs, and manually set values\nexport function EKSCreateClusterForm({\n credentials,\n provider,\n isSubmitting,\n}: Props) {\n const { values, errors } = useFormikContext();\n const [isOptionsForce, setIsOptionsForce] = useState(false);\n\n const {\n credentialId,\n region,\n kubernetesVersion,\n amazon: { amiType, instanceType },\n } = values;\n\n const selectedCredential =\n credentials.find((c) => c.id === credentialId) || credentials[0];\n\n const cloudOptionsQuery = useCloudProviderOptions(\n provider,\n isEKSKaasInfo,\n selectedCredential,\n isOptionsForce\n );\n\n const cloudOptions = cloudOptionsQuery.data;\n\n const filteredInstanceTypes = useMemo(() => {\n if (cloudOptions) {\n return filterByAmiAndRegion(cloudOptions.instanceTypes, amiType, region);\n }\n return [];\n }, [region, amiType, cloudOptions]);\n\n const kubernetesVersions = useMemo(\n () => cloudOptions?.kubernetesVersions || [],\n [cloudOptions?.kubernetesVersions]\n );\n const regions = useMemo(\n () => cloudOptions?.regions || [],\n [cloudOptions?.regions]\n );\n const amiTypes = useMemo(() => {\n if (cloudOptions && isEKSKaasInfo(cloudOptions)) {\n return cloudOptions?.amiTypes || [];\n }\n return [];\n }, [cloudOptions]);\n\n const credentialOptions = useMemo(\n () =>\n credentials.map((c) => ({\n value: c.id,\n label: c.name,\n })),\n [credentials]\n );\n\n // ensure the form values are valid when the options change\n useSetAvailableOption(credentialOptions, credentialId, 'credentialId');\n useSetAvailableOption(regions, region, 'region');\n useSetAvailableOption(amiTypes, amiType, 'amazon.amiType');\n useSetAvailableOption(\n filteredInstanceTypes,\n instanceType,\n 'amazon.instanceType'\n );\n useSetAvailableOption(\n kubernetesVersions,\n kubernetesVersion,\n 'kubernetesVersion'\n );\n\n return (\n <>\n \n \n \n\n {cloudOptionsQuery.isError && (\n \n Error getting {providerTitles[provider]} info. Go to \n \n cloud settings\n \n  to ensure the API key is valid.\n \n )}\n {cloudOptionsQuery.isLoading && }\n {/* cluster details inputs */}\n {cloudOptions && (\n <>\n \n \n \n \n \n \n {region && (\n \n \n \n )}\n\n \n \n \n \n \n \n \n \n \n \n )}\n\n \n \n Metadata is only assigned to the environment in Portainer, i.e. the\n group and tags are not assigned to the cluster at the cloud provider\n end.\n \n \n\n {\n setIsOptionsForce(true);\n cloudOptionsQuery.refetch();\n }}\n isReloading={\n cloudOptionsQuery.isLoading || cloudOptionsQuery.isFetching\n }\n isSubmitting={isSubmitting}\n />\n \n );\n}\n\nfunction filterByAmiAndRegion(\n instanceTypes: InstanceTypeRegions,\n amiType: string,\n region: string\n) {\n if (amiType && region && instanceTypes[region]) {\n return (\n instanceTypes[region]\n .filter((i) => i.compatibleAmiTypes.includes(amiType))\n .map((i) => ({\n label: i.name,\n value: i.value,\n })) || []\n );\n }\n return [];\n}\n","import { useFormikContext } from 'formik';\nimport { useEffect } from 'react';\n\nimport { KaasProvider, Credential } from '@/portainer/settings/cloud/types';\n\nimport { FormValues } from './types';\nimport { GKECreateClusterForm } from './GKECreateClusterForm/GKECreateClusterForm';\nimport { ApiCreateClusterForm } from './ApiCreateClusterForm/ApiCreateClusterForm';\nimport { AzureCreateClusterForm } from './AzureCreateClusterForm/AzureCreateClusterForm';\nimport { EKSCreateClusterForm } from './EKSCreateClusterForm/EKSCreateClusterForm';\n\ninterface Props {\n provider: KaasProvider;\n onChangeSelectedCredential: (credential: Credential | null) => void;\n credentials: Credential[];\n isSubmitting: boolean;\n}\n\nexport function ProviderForm({\n provider,\n onChangeSelectedCredential,\n credentials,\n\n isSubmitting,\n}: Props) {\n useSelectedCredentials(credentials, onChangeSelectedCredential);\n\n const Form = getForm(provider);\n\n if (credentials.length === 0) {\n return null;\n }\n\n return (\n \n );\n}\n\n// to expand when other create cluster forms are added\nfunction getForm(provider: KaasProvider) {\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n return GKECreateClusterForm;\n case KaasProvider.CIVO:\n case KaasProvider.DIGITAL_OCEAN:\n case KaasProvider.LINODE:\n return ApiCreateClusterForm;\n case KaasProvider.AZURE:\n return AzureCreateClusterForm;\n case KaasProvider.AWS:\n return EKSCreateClusterForm;\n default:\n throw new Error(`Provider ${provider} not supported`);\n }\n}\n\nfunction useSelectedCredentials(\n credentials: Credential[],\n onChange: (credential: Credential | null) => void\n) {\n const { values } = useFormikContext();\n\n const selectedCredential = credentials.length\n ? credentials.find((c) => c.id === values.credentialId) || credentials[0]\n : null;\n\n useEffect(() => {\n onChange(selectedCredential);\n }, [onChange, selectedCredential]);\n}\n","import { useMemo, useState } from 'react';\nimport { Form, Formik } from 'formik';\n\nimport { react2angular } from '@/react-tools/react2angular';\nimport {\n KaasProvider,\n Credential,\n providerTitles,\n} from '@/portainer/settings/cloud/types';\nimport { useCloudCredentials } from '@/portainer/settings/cloud/cloudSettings.service';\nimport { Environment } from '@/portainer/environments/types';\nimport { useSettings } from '@/portainer/settings/queries';\nimport { CredentialsForm } from '@/portainer/settings/cloud/CreateCredentialsView/CredentialsForm';\n\nimport { Loading } from '@@/Widget/Loading';\nimport { Link } from '@@/Link';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { AnalyticsStateKey } from '../types';\n\nimport { KaasProvidersSelector } from './KaasProvidersSelector';\nimport { sendKaasProvisionAnalytics } from './utils';\nimport { useCloudProviderOptions, useCreateKaasCluster } from './queries';\nimport { validationSchema } from './WizardKaaS.validation';\nimport { ProviderForm } from './ProviderForm';\nimport { FormValues, KaasInfo } from './types';\nimport { getPayloadParse } from './converter';\n\ninterface Props {\n onCreate(environment: Environment, analytics: AnalyticsStateKey): void;\n}\n\nconst initialValues: FormValues = {\n name: '',\n nodeCount: 3,\n kubernetesVersion: '',\n region: '',\n credentialId: 0,\n\n meta: {\n groupId: 1,\n tagIds: [],\n },\n\n google: {\n cpu: 2,\n ram: 4,\n hdd: 100,\n networkId: '',\n nodeSize: '',\n },\n api: {\n networkId: '',\n nodeSize: '',\n },\n azure: {\n resourceGroup: '',\n resourceGroupName: '',\n tier: 'Free',\n poolName: '',\n dnsPrefix: '',\n availabilityZones: [],\n resourceGroupInput: 'select',\n nodeSize: '',\n },\n amazon: {\n amiType: '',\n instanceType: '',\n nodeVolumeSize: 20,\n },\n};\n\nexport function WizardKaaS({ onCreate }: Props) {\n const settingsQuery = useSettings();\n const createKaasClusterMutation = useCreateKaasCluster();\n\n const [provider, setProvider] = useState(KaasProvider.CIVO);\n const [credential, setCredential] = useState(null);\n\n const credentialsQuery = useCloudCredentials();\n\n const cloudOptionsQuery = useCloudProviderOptions(\n provider,\n isKaasInfo,\n credential\n );\n\n const credentials = credentialsQuery.data;\n\n const providerCredentials = useMemo(\n () => credentials?.filter((c) => c.provider === provider) || [],\n [credentials, provider]\n );\n\n const credentialsFound = providerCredentials.length > 0;\n\n return (\n <>\n \n validationSchema(provider, cloudOptionsQuery.data)\n }\n validateOnMount\n enableReinitialize\n >\n
    \n \n\n {credentialsQuery.isLoading ? (\n \n ) : (\n \n )}\n \n \n\n {!credentialsFound && (\n <>\n \n No API key found for {providerTitles[provider]}. Save your{' '}\n {providerTitles[provider]} credentials below, or in the\n \n cloud settings.\n \n \n \n \n )}\n \n );\n\n function handleSubmit(\n values: FormValues,\n {\n setFieldValue,\n }: {\n setFieldValue: (\n field: string,\n value: string,\n shouldValidate?: boolean\n ) => void;\n }\n ) {\n if (settingsQuery.data?.EnableTelemetry) {\n sendKaasProvisionAnalytics(values, provider);\n }\n\n const parser = getPayloadParse(provider);\n\n const payload = parser(values);\n\n createKaasClusterMutation.mutate(\n { payload, provider },\n {\n onSuccess: (environment) => {\n onCreate(environment, 'kaasAgent');\n setFieldValue('name', '');\n },\n }\n );\n }\n}\n\nexport const KaasFormGroupAngular = react2angular(WizardKaaS, ['onCreate']);\nfunction isKaasInfo(value: KaasInfo): value is KaasInfo {\n return true;\n}\n","import { number, object, string, mixed, SchemaOf } from 'yup';\n\nimport { KaasProvider } from '@/portainer/settings/cloud/types';\nimport { nameValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/NameField';\nimport { metadataValidation } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/MetadataFieldset/validation';\n\nimport { validationSchema as gkeValidation } from './GKECreateClusterForm/validation';\nimport { validationSchema as apiValidation } from './ApiCreateClusterForm/validation';\nimport { validationSchema as azureValidation } from './AzureCreateClusterForm/validation';\nimport { validationSchema as amazonValidation } from './EKSCreateClusterForm/validation';\nimport { KaasInfo, KaaSFormType, FormValues } from './types';\nimport { providerFormType } from './utils';\n\nexport function validationSchema(\n provider: KaasProvider,\n kaasInfo?: KaasInfo | null\n): SchemaOf> {\n return object({\n name: nameValidation()\n .matches(\n /^[a-z0-9-]+$/,\n 'Name must only contain lowercase alphanumeric characters and hyphens.'\n )\n .max(32, 'Name must be 32 characters or less.')\n .matches(\n /^[a-z](?:[a-z0-9-]*[a-z0-9])?$/,\n 'Name must start with a letter and end with an alphanumeric character.'\n ),\n meta: metadataValidation(),\n api:\n providerFormType(provider) === KaaSFormType.API\n ? apiValidation()\n : mixed(),\n azure:\n providerFormType(provider) === KaaSFormType.AZURE\n ? azureValidation()\n : mixed(),\n google:\n providerFormType(provider) === KaaSFormType.GKE\n ? gkeValidation(kaasInfo)\n : mixed(),\n kubernetesVersion: string()\n .default('')\n .when({\n is: provider !== KaasProvider.AWS,\n then: string().required('Kubernetes version is required.'),\n }),\n credentialId: number().required('Credentials are required.'),\n region: string().default(''),\n nodeCount: number()\n .integer('Node count must be a whole number.')\n .min(1, 'Node count must be greater than or equal to 1.')\n .max(1000, 'Node count must be less than or equal to 1000.')\n .required('Node count is required.'),\n amazon:\n providerFormType(provider) === KaaSFormType.EKS\n ? amazonValidation()\n : mixed(),\n });\n}\n","import { object, string, SchemaOf } from 'yup';\n\nimport { KaasProvider } from '@/portainer/settings/cloud/types';\n\nimport { CreateApiClusterFormValues } from '../types';\n\nexport function validationSchema(): SchemaOf {\n return object().shape({\n networkId: string()\n .when('type', {\n is: KaasProvider.CIVO,\n then: string().required('Network ID is required.'),\n })\n .default(''),\n nodeSize: string().required('Node size is required.'),\n });\n}\n","import { object, string, array, SchemaOf } from 'yup';\n\nimport { CreateAzureClusterFormValues } from '../types';\n\nexport function validationSchema(): SchemaOf {\n return object().shape({\n resourceGroup: string()\n .default('')\n .when('resourceGroupInput', {\n is: 'select',\n then: string().required(\n 'No resource groups available in the selected region, please change region or add a resource group.'\n ),\n }),\n resourceGroupName: string()\n .default('')\n .when('resourceGroupInput', {\n is: 'input',\n then: string()\n .required('Resource group name is required.')\n .matches(\n /^[a-z0-9-_]+$/,\n 'Resource group name must only contain lowercase alphanumeric characters and hyphens.'\n )\n .max(90, 'Resource group name must be 90 characters or less.'),\n }),\n poolName: string()\n .required('Pool name is required.')\n .matches(\n /^[a-z0-9]+$/,\n 'Pool name must only contain lowercase alphanumeric characters.'\n )\n .max(11, 'Pool name must be 11 characters or less.'),\n nodeSize: string().required('Node size is required.'),\n availabilityZones: array().of(string()).default([]),\n tier: string().required('Tier is required.'),\n dnsPrefix: string()\n .required('DNS prefix is required.')\n .max(54, 'DNS prefix must be 54 characters or less.')\n .matches(\n /^[a-zA-Z0-9-]+$/,\n 'DNS prefix name must only contain alphanumeric characters and hyphens.'\n )\n .matches(\n /^[a-z0-9](?:[a-z0-9-]*[a-z0-9])?$/,\n 'DNS prefix name must start and end with an alphanumeric character.'\n ),\n resourceGroupInput: string().oneOf(['select', 'input']).default('select'),\n });\n}\n","import { object, number, string, SchemaOf } from 'yup';\n\nimport { CreateEKSClusterFormValues } from '../types';\n\nexport function validationSchema(): SchemaOf {\n return object().shape({\n amiType: string().required('AMI type is required.'),\n instanceType: string().required('Instance type is required.'),\n nodeVolumeSize: number()\n .integer('Node volume size must be a whole number.')\n .min(1, 'Node volume size must be greater than or equal to 1 GiB.')\n .max(16384, 'Node volume size must be less than or equal to 16384 GiB.')\n .required(),\n });\n}\n","import angular from 'angular';\nimport { StateRegistry } from '@uirouter/angularjs';\n\nimport { r2a } from '@/react-tools/react2angular';\nimport {\n EnvironmentCreationView,\n EnvironmentTypeSelectView,\n HomeView,\n} from '@/react/portainer/environments/wizard';\n\nexport const wizardModule = angular\n .module('portainer.app.react.views.wizard', [])\n .component('wizardEnvironmentCreationView', r2a(EnvironmentCreationView, []))\n .component(\n 'wizardEnvironmentTypeSelectView',\n r2a(EnvironmentTypeSelectView, [])\n )\n .component('wizardMainView', r2a(HomeView, []))\n .config(config).name;\n\nfunction config($stateRegistryProvider: StateRegistry) {\n $stateRegistryProvider.register({\n name: 'portainer.wizard',\n url: '/wizard',\n views: {\n 'content@': {\n component: 'wizardMainView',\n },\n },\n });\n\n $stateRegistryProvider.register({\n name: 'portainer.wizard.endpoints',\n url: '/endpoints?edgeDevice',\n views: {\n 'content@': {\n component: 'wizardEnvironmentTypeSelectView',\n },\n },\n params: {\n localEndpointId: 0,\n },\n });\n\n $stateRegistryProvider.register({\n name: 'portainer.wizard.endpoints.create',\n url: '/create?envType',\n views: {\n 'content@': {\n component: 'wizardEnvironmentCreationView',\n },\n },\n params: {\n envType: '',\n },\n });\n}\n","import { useCurrentStateAndParams, useRouter } from '@uirouter/react';\nimport { useState } from 'react';\nimport _ from 'lodash';\nimport clsx from 'clsx';\n\nimport { notifyError } from '@/portainer/services/notifications';\nimport { Environment, EnvironmentId } from '@/portainer/environments/types';\nimport { useAnalytics } from '@/angulartics.matomo/analytics-services';\n\nimport { Stepper } from '@@/Stepper';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { PageHeader } from '@@/PageHeader';\nimport { Button } from '@@/buttons';\nimport { FormSection } from '@@/form-components/FormSection';\nimport { Icon } from '@@/Icon';\n\nimport { environmentTypes } from '../EnvironmentTypeSelectView/environment-types';\nimport { EnvironmentSelectorValue } from '../EnvironmentTypeSelectView/EnvironmentSelector';\n\nimport { WizardDocker } from './WizardDocker';\nimport { WizardAzure } from './WizardAzure';\nimport { WizardKubernetes } from './WizardKubernetes';\nimport { WizardNomad } from './WizardNomad';\nimport { AnalyticsState, AnalyticsStateKey } from './types';\nimport { WizardEndpointsList } from './WizardEndpointsList';\nimport { WizardKaaS } from './WizardKaaS';\nimport styles from './EnvironmentsCreationView.module.css';\n\nexport function EnvironmentCreationView() {\n const {\n params: { localEndpointId: localEndpointIdParam },\n } = useCurrentStateAndParams();\n\n const [environmentIds, setEnvironmentIds] = useState(() => {\n const localEndpointId = parseInt(localEndpointIdParam, 10);\n\n if (!localEndpointId || Number.isNaN(localEndpointId)) {\n return [];\n }\n\n return [localEndpointId];\n });\n\n const envTypes = useParamEnvironmentTypes();\n const { trackEvent } = useAnalytics();\n const router = useRouter();\n const steps = _.compact(\n envTypes.map((id) => environmentTypes.find((eType) => eType.id === id))\n );\n const { analytics, setAnalytics } = useAnalyticsState();\n\n const {\n currentStep,\n onNextClick,\n onPreviousClick,\n currentStepIndex,\n Component,\n isFirstStep,\n isLastStep,\n } = useStepper(steps, handleClose);\n\n return (\n <>\n \n\n
    \n \n \n \n \n\n
    \n \n \n\n \n \n \n
    \n \n
    \n \n \n
    \n \n
    \n
    \n \n );\n\n function handleCreateEnvironment(\n environment: Environment,\n analytics: AnalyticsStateKey\n ) {\n setEnvironmentIds((prev) => [...prev, environment.Id]);\n setAnalytics(analytics);\n }\n\n function handleClose() {\n trackEvent('endpoint-wizard-environment-add-finish', {\n category: 'portainer',\n metadata: Object.fromEntries(\n Object.entries(analytics).map(([key, value]) => [\n _.kebabCase(key),\n value,\n ])\n ),\n });\n if (localStorage.getItem('wizardReferrer') === 'environments') {\n localStorage.removeItem('wizardReferrer');\n router.stateService.go('portainer.endpoints');\n return;\n }\n router.stateService.go('portainer.home');\n }\n}\n\nfunction useParamEnvironmentTypes(): EnvironmentSelectorValue[] {\n const {\n params: { envType },\n } = useCurrentStateAndParams();\n const router = useRouter();\n\n if (!envType) {\n notifyError('No environment type provided');\n router.stateService.go('portainer.wizard.endpoints');\n return [];\n }\n\n return Array.isArray(envType) ? envType : [envType];\n}\n\nfunction useStepper(\n steps: typeof environmentTypes[number][],\n onFinish: () => void\n) {\n const [currentStepIndex, setCurrentStepIndex] = useState(0);\n const isFirstStep = currentStepIndex === 0;\n const isLastStep = currentStepIndex === steps.length - 1;\n const currentStep = steps[currentStepIndex];\n\n return {\n currentStep,\n onNextClick,\n onPreviousClick,\n isFirstStep,\n isLastStep,\n currentStepIndex,\n Component: getComponent(currentStep.id),\n };\n\n function onNextClick() {\n if (!isLastStep) {\n setCurrentStepIndex(currentStepIndex + 1);\n return;\n }\n\n onFinish();\n }\n\n function onPreviousClick() {\n setCurrentStepIndex(currentStepIndex - 1);\n }\n\n function getComponent(id: EnvironmentSelectorValue) {\n switch (id) {\n case 'docker':\n return WizardDocker;\n case 'aci':\n return WizardAzure;\n case 'kubernetes':\n return WizardKubernetes;\n case 'kaas':\n return WizardKaaS;\n case 'nomad':\n return WizardNomad;\n default:\n throw new Error(`Unknown environment type ${id}`);\n }\n }\n}\n\nfunction useAnalyticsState() {\n const [analytics, setAnalyticsState] = useState({\n dockerAgent: 0,\n dockerApi: 0,\n kubernetesAgent: 0,\n kubernetesEdgeAgent: 0,\n kaasAgent: 0,\n aciApi: 0,\n localEndpoint: 0,\n nomadEdgeAgent: 0,\n dockerEdgeAgent: 0,\n });\n\n return { analytics, setAnalytics };\n\n function setAnalytics(key: AnalyticsStateKey) {\n setAnalyticsState((prevState) => ({\n ...prevState,\n [key]: prevState[key] + 1,\n }));\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"wizardStepAction\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-EnvironmentsCreationView-module__wizard-step-action\",\"wizardWrapper\":\"app-react-portainer-environments-wizard-EnvironmentsCreationView-EnvironmentsCreationView-module__wizard-wrapper\"};","import { useState } from 'react';\nimport { useRouter } from '@uirouter/react';\nimport _ from 'lodash';\n\nimport { useAnalytics } from '@/angulartics.matomo/analytics-services';\n\nimport { Button } from '@@/buttons';\nimport { PageHeader } from '@@/PageHeader';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\n\nimport { useCreateEdgeDeviceParam } from '../hooks/useCreateEdgeDeviceParam';\n\nimport {\n EnvironmentSelector,\n EnvironmentSelectorValue,\n} from './EnvironmentSelector';\nimport { environmentTypes } from './environment-types';\n\nexport function EnvironmentTypeSelectView() {\n const createEdgeDevice = useCreateEdgeDeviceParam();\n\n const [types, setTypes] = useState([]);\n const { trackEvent } = useAnalytics();\n const router = useRouter();\n\n return (\n <>\n \n\n
    \n
    \n \n \n \n \n startWizard()}\n >\n Start Wizard\n \n \n \n
    \n
    \n \n );\n\n function startWizard() {\n if (types.length === 0) {\n return;\n }\n\n const steps = _.compact(\n types.map((id) => environmentTypes.find((eType) => eType.id === id))\n );\n\n trackEvent('endpoint-wizard-endpoint-select', {\n category: 'portainer',\n metadata: {\n environment: steps.map((step) => step.title).join('/'),\n },\n });\n\n router.stateService.go('portainer.wizard.endpoints.create', {\n envType: types,\n ...(createEdgeDevice ? { edgeDevice: createEdgeDevice } : {}),\n });\n }\n}\n","import angular from 'angular';\n\nimport { r2a } from '@/react-tools/react2angular';\nimport { CreateAccessToken } from '@/react/portainer/account/CreateAccessTokenView';\nimport {\n DefaultRegistryAction,\n DefaultRegistryDomain,\n DefaultRegistryName,\n} from '@/react/portainer/registries/ListView/DefaultRegistry';\n\nimport { wizardModule } from './wizard';\n\nexport const viewsModule = angular\n .module('portainer.app.react.views', [wizardModule])\n .component('defaultRegistryName', r2a(DefaultRegistryName, []))\n .component('defaultRegistryAction', r2a(DefaultRegistryAction, []))\n .component('defaultRegistryDomain', r2a(DefaultRegistryDomain, []))\n .component(\n 'createAccessToken',\n r2a(CreateAccessToken, ['onSubmit', 'onError'])\n ).name;\n","import { usePublicSettings } from 'Portainer/settings/queries';\nimport clsx from 'clsx';\n\nexport function DefaultRegistryName() {\n const settingsQuery = usePublicSettings({\n select: (settings) => settings.DefaultRegistry.Hide,\n });\n\n return (\n \n Docker Hub (anonymous)\n \n );\n}\n","import {\n usePublicSettings,\n useUpdateDefaultRegistrySettingsMutation,\n} from 'Portainer/settings/queries';\nimport { notifySuccess } from 'Portainer/services/notifications';\nimport { FeatureId } from 'Portainer/feature-flags/enums';\nimport { isLimitedToBE } from 'Portainer/feature-flags/feature-flags.service';\n\nimport { Tooltip } from '@@/Tip/Tooltip';\nimport { Button } from '@@/buttons';\nimport { Icon } from '@@/Icon';\n\nexport function DefaultRegistryAction() {\n const settingsQuery = usePublicSettings({\n select: (settings) => settings.DefaultRegistry.Hide,\n });\n const defaultRegistryMutation = useUpdateDefaultRegistrySettingsMutation();\n\n if (!settingsQuery.isSuccess) {\n return null;\n }\n const hideDefaultRegistry = settingsQuery.data;\n\n const isLimited = isLimitedToBE(FeatureId.HIDE_DOCKER_HUB_ANONYMOUS);\n\n return (\n <>\n {!hideDefaultRegistry ? (\n
    \n handleShowOrHide(true)}\n disabled={isLimited}\n >\n \n Hide for all users\n \n {isLimited ? null : (\n \n )}\n
    \n ) : (\n
    \n handleShowOrHide(false)}\n >\n \n Show for all users\n \n \n
    \n )}\n \n );\n\n function handleShowOrHide(hideDefaultRegistry: boolean) {\n defaultRegistryMutation.mutate(\n {\n Hide: hideDefaultRegistry,\n },\n {\n onSuccess() {\n notifySuccess(\n 'Success',\n 'Default registry Settings updated successfully'\n );\n },\n }\n );\n }\n}\n","import clsx from 'clsx';\nimport { usePublicSettings } from 'Portainer/settings/queries';\n\nexport function DefaultRegistryDomain() {\n const settingsQuery = usePublicSettings({\n select: (settings) => settings.DefaultRegistry.Hide,\n });\n\n return (\n \n docker.io\n \n );\n}\n","import { PropsWithChildren, useEffect, useState } from 'react';\nimport { useRouter } from '@uirouter/react';\nimport { Trans, useTranslation } from 'react-i18next';\n\nimport { Widget, WidgetBody } from '@@/Widget';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Button } from '@@/buttons';\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { TextTip } from '@@/Tip/TextTip';\nimport { Code } from '@@/Code';\nimport { CopyButton } from '@@/buttons/CopyButton';\nimport { Input } from '@@/form-components/Input';\n\ninterface AccessTokenResponse {\n rawAPIKey: string;\n}\n\nexport interface Props {\n // onSubmit dispatches a successful matomo analytics event\n onSubmit: (description: string) => Promise;\n\n // onError is called when an error occurs; this is a callback to Notifications.error\n onError: (heading: string, err: unknown, message: string) => void;\n}\n\nexport function CreateAccessToken({\n onSubmit,\n onError,\n}: PropsWithChildren) {\n const translationNS = 'account.accessTokens.create';\n const { t } = useTranslation(translationNS);\n\n const router = useRouter();\n const [description, setDescription] = useState('');\n const [errorText, setErrorText] = useState('');\n const [isLoading, setIsLoading] = useState(false);\n const [accessToken, setAccessToken] = useState('');\n\n useEffect(() => {\n if (description.length === 0) {\n setErrorText(t('this field is required'));\n } else setErrorText('');\n }, [description, t]);\n\n async function generateAccessToken() {\n if (isLoading) {\n return;\n }\n\n setIsLoading(true);\n try {\n const response = await onSubmit(description);\n setAccessToken(response.rawAPIKey);\n } catch (err) {\n onError('Failure', err, 'Failed to generate access token');\n } finally {\n setIsLoading(false);\n }\n }\n\n return (\n \n \n
    \n \n setDescription(e.target.value)}\n value={description}\n />\n \n
    \n generateAccessToken()}\n >\n {t('Add access token')}\n \n
    \n
    \n {accessToken && (\n
    \n \n New access token\n \n \n \n Please copy the new access token. You won't be able to view\n the token again.\n \n \n {accessToken}\n \n Copy access token\n \n
    \n router.stateService.go('portainer.account')}\n >\n Done\n \n
    \n )}\n
    \n
    \n );\n}\n","import angular from 'angular';\n\nimport { componentsModule } from './components';\nimport { viewsModule } from './views';\n\nexport const reactModule = angular.module('portainer.app.react', [\n viewsModule,\n componentsModule,\n]).name;\n","import {\n createContext,\n PropsWithChildren,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useRef,\n useState,\n useReducer,\n} from 'react';\nimport angular, { IScope } from 'angular';\nimport _ from 'lodash';\n\nimport * as storage from '@/portainer/hooks/useLocalStorage';\n\n// using bootstrap breakpoint - https://getbootstrap.com/docs/5.0/layout/breakpoints/#min-width\nconst mobileWidth = 992;\nconst storageKey = 'toolbar_toggle';\n\ninterface State {\n isOpen: boolean;\n toggle(): void;\n}\n\nexport const Context = createContext(null);\n\nexport function useSidebarState() {\n const context = useContext(Context);\n\n if (!context) {\n throw new Error('useSidebarContext must be used within a SidebarProvider');\n }\n\n return context;\n}\n\nexport function SidebarProvider({ children }: { children: React.ReactNode }) {\n const state = useSidebarStateLocal();\n\n return {children} ;\n}\n\nexport function TestSidebarProvider({ children }: PropsWithChildren) {\n const [isOpen, toggle] = useReducer((state) => !state, true);\n\n const state = useMemo(\n () => ({ isOpen, toggle: () => toggle() }),\n [isOpen, toggle]\n );\n\n return {children} ;\n}\n\n/* @ngInject */\nexport function AngularSidebarService($rootScope: IScope) {\n const state = {\n isOpen: false,\n };\n\n function isSidebarOpen() {\n return state.isOpen;\n }\n\n function setIsOpen(isOpen: boolean) {\n $rootScope.$evalAsync(() => {\n state.isOpen = isOpen;\n });\n }\n\n return { isSidebarOpen, setIsOpen };\n}\n\nfunction useSidebarStateLocal() {\n const [storageIsOpen, setIsOpenInStorage] = storage.useLocalStorage(\n storageKey,\n true\n );\n const [isOpen, setIsOpen, undoIsOpenChange] = useStateWithUndo(\n initialState()\n );\n\n const onResize = useMemo(\n () =>\n _.debounce(() => {\n if (isMobile()) {\n if (isOpen) {\n setIsOpen(false);\n }\n } else {\n undoIsOpenChange();\n }\n }, 50),\n [setIsOpen, undoIsOpenChange, isOpen]\n );\n\n useUpdateAngularService(isOpen);\n\n useEffect(() => {\n if (window.ddExtension) {\n return undefined;\n }\n\n window.addEventListener('resize', onResize);\n return () => window.removeEventListener('resize', onResize);\n }, [onResize]);\n\n return {\n isOpen,\n toggle,\n };\n\n function toggle(value = !isOpen) {\n setIsOpenInStorage(value);\n setIsOpen(value);\n }\n\n function initialState() {\n if (isMobile() || window.ddExtension) {\n return false;\n }\n\n return storageIsOpen;\n }\n}\n\nfunction useStateWithUndo(\n initialState: T\n): [T, (value: T) => void, () => void] {\n const [state, setState] = useState(initialState);\n const prevState = useRef();\n\n const undo = useCallback(() => {\n if (!prevState.current) {\n return;\n }\n\n setState(prevState.current);\n prevState.current = undefined;\n }, [prevState]);\n\n const handleSetState = useCallback(\n (newState: T) => {\n prevState.current = state;\n setState(newState);\n },\n [state]\n );\n\n return [state, handleSetState, undo];\n}\n\nfunction useUpdateAngularService(isOpen: boolean) {\n useEffect(() => {\n // to sync \"outside state\" - for angularjs\n const $injector = angular.element(document).injector();\n $injector.invoke(\n /* @ngInject */ (\n SidebarService: ReturnType\n ) => {\n SidebarService.setIsOpen(isOpen);\n }\n );\n }, [isOpen]);\n}\n\nfunction isMobile() {\n const width = window.innerWidth;\n\n return width < mobileWidth;\n}\n","import { PropsWithChildren, AriaAttributes } from 'react';\nimport clsx from 'clsx';\n\ninterface Props {\n className?: string;\n label?: string;\n}\n\nexport function Wrapper({\n className,\n children,\n label,\n ...ariaProps\n}: PropsWithChildren & AriaAttributes) {\n return (\n a]:text-inherit [&>a]:hover:text-inherit [&>a]:hover:no-underline'\n )}\n aria-label={label}\n // eslint-disable-next-line react/jsx-props-no-spreading\n {...ariaProps}\n >\n {children}\n \n );\n}\n","import { ReactNode, ReactElement, Children } from 'react';\n\nfunction isReactElement(element: ReactNode): element is ReactElement {\n return (\n !!element &&\n typeof element === 'object' &&\n 'type' in element &&\n 'props' in element\n );\n}\n\nexport function getPathsForChildren(children: ReactNode): string[] {\n return Children.map(children, (child) => getPaths(child, []))?.flat() || [];\n}\n\nexport function getPaths(element: ReactNode, paths: string[]): string[] {\n if (!isReactElement(element)) {\n return paths;\n }\n\n if (typeof element.props.to === 'undefined') {\n return Children.map(element.props.children, (child) =>\n getPaths(child, paths)\n );\n }\n\n return [element.props.to, ...paths];\n}\n","import { useCurrentStateAndParams } from '@uirouter/react';\nimport {\n Children,\n PropsWithChildren,\n ReactNode,\n useMemo,\n useReducer,\n} from 'react';\nimport { ChevronDown, ChevronUp } from 'react-feather';\n\nimport { useSidebarState } from '../useSidebarState';\n\nimport { getPaths } from './utils';\n\ninterface Props {\n head: ReactNode;\n openOnPaths?: string[];\n}\n\nexport function Menu({\n children,\n head,\n openOnPaths = [],\n}: PropsWithChildren) {\n const { isOpen: isSidebarOpen } = useSidebarState();\n\n const paths = useMemo(\n () => [...getPaths(head, []), ...openOnPaths],\n [openOnPaths, head]\n );\n\n const { isOpen, toggleOpen } = useIsOpen(isSidebarOpen, paths);\n\n const CollapseButtonIcon = isOpen ? ChevronUp : ChevronDown;\n\n return (\n
    \n
    \n {head}\n {isSidebarOpen && Children.count(children) > 0 && (\n \n \n \n )}\n
    \n\n {isOpen &&
      {children}
    }\n
    \n );\n\n function handleClickArrow(e: React.MouseEvent) {\n e.preventDefault();\n e.stopPropagation();\n toggleOpen();\n }\n}\n\nfunction useIsOpen(\n isSidebarOpen: boolean,\n\n paths: string[] = []\n) {\n const { state } = useCurrentStateAndParams();\n const currentStateName = state.name || '';\n const isOpenByState = paths.some((path) => currentStateName.startsWith(path));\n\n const [forceOpen, toggleForceOpen] = useReducer((state) => !state, false);\n\n const isOpen = checkIfOpen();\n\n return { isOpen, toggleOpen };\n\n function toggleOpen() {\n if (!isOpenByState) {\n toggleForceOpen();\n }\n }\n\n function checkIfOpen() {\n if (!isSidebarOpen) {\n return false;\n }\n\n if (forceOpen) {\n return true;\n }\n\n return isOpenByState;\n }\n}\n","import {\n TransitionOptions,\n useCurrentStateAndParams,\n useSrefActive as useUiRouterSrefActive,\n} from '@uirouter/react';\nimport clsx from 'clsx';\nimport { ComponentProps } from 'react';\nimport ReactTooltip from 'react-tooltip';\n\nimport { AutomationTestingProps } from '@/types';\n\nimport { Link } from '@@/Link';\nimport { IconProps, Icon } from '@@/Icon';\n\nimport { useSidebarState } from '../useSidebarState';\n\ninterface Props\n extends IconProps,\n ComponentProps,\n AutomationTestingProps {\n label: string;\n ignorePaths?: string[];\n}\n\nexport function Head({\n to,\n options,\n params = {},\n label,\n icon,\n ignorePaths = [],\n 'data-cy': dataCy,\n}: Props) {\n const { isOpen } = useSidebarState();\n const anchorProps = useSrefActive(\n to,\n 'bg-blue-8 be:bg-gray-8 th-dark:bg-gray-true-8',\n params,\n options,\n ignorePaths\n );\n\n return (\n \n {!!icon && (\n svg]:w-4')} />\n )}\n {isOpen && {label}}\n\n \n \n );\n}\n\nfunction useSrefActive(\n to: string,\n activeClassName: string,\n params: Partial> = {},\n options: TransitionOptions = {},\n ignorePaths: string[] = []\n) {\n const { state: { name: stateName = '' } = {} } = useCurrentStateAndParams();\n const anchorProps = useUiRouterSrefActive(\n to,\n params || {},\n activeClassName,\n options\n );\n\n const className = ignorePaths.some((path) => stateName.includes(path))\n ? ''\n : anchorProps.className;\n\n return {\n ...anchorProps,\n className,\n };\n}\n","import { SidebarItem as MainComponent } from './SidebarItem';\nimport { Menu } from './Menu';\nimport { Wrapper } from './Wrapper';\n\ninterface SubComponents {\n Menu: typeof Menu;\n Wrapper: typeof Wrapper;\n}\n\nexport const SidebarItem: typeof MainComponent & SubComponents =\n MainComponent as typeof MainComponent & SubComponents;\n\nSidebarItem.Menu = Menu;\nSidebarItem.Wrapper = Wrapper;\n","import { ReactNode } from 'react';\nimport { Icon } from 'react-feather';\n\nimport { AutomationTestingProps } from '@/types';\n\nimport { Wrapper } from './Wrapper';\nimport { Menu } from './Menu';\nimport { Head } from './Head';\nimport { getPathsForChildren } from './utils';\n\ninterface Props extends AutomationTestingProps {\n icon?: Icon;\n to: string;\n params?: object;\n label: string;\n children?: ReactNode;\n openOnPaths?: string[];\n}\n\nexport function SidebarItem({\n children,\n icon,\n to,\n params,\n label,\n openOnPaths = [],\n 'data-cy': dataCy,\n}: Props) {\n const childrenPath = getPathsForChildren(children);\n const head = (\n \n );\n\n return (\n \n {children ? (\n \n {children}\n \n ) : (\n head\n )}\n \n );\n}\n","import { PropsWithChildren, ReactNode } from 'react';\n\nimport { useSidebarState } from './useSidebarState';\n\ninterface Props {\n title: ReactNode;\n showTitleWhenOpen?: boolean;\n 'aria-label'?: string;\n}\n\nexport function SidebarSection({\n title,\n children,\n showTitleWhenOpen,\n 'aria-label': ariaLabel,\n}: PropsWithChildren) {\n return (\n
    \n \n {title}\n \n\n \n
      {children}
    \n \n
    \n );\n}\n\ninterface TitleProps {\n showWhenOpen?: boolean;\n}\n\nexport function SidebarSectionTitle({\n showWhenOpen,\n children,\n}: PropsWithChildren) {\n const { isOpen } = useSidebarState();\n\n if (!isOpen && !showWhenOpen) {\n return null;\n }\n\n return (\n
  • \n {children}\n
  • \n );\n}\n","import { Box, Clock, Grid, Layers } from 'react-feather';\n\nimport { SidebarItem } from './SidebarItem';\nimport { SidebarSection } from './SidebarSection';\n\nexport function EdgeComputeSidebar() {\n return (\n \n \n \n \n \n \n );\n}\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgDocker = function SvgDocker(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 105 95\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M102.014 39.337c-.27-.229-2.695-2.11-7.902-2.11-1.347 0-2.74.138-4.085.369-.989-7.02-6.69-10.416-6.914-10.598l-1.393-.826-.898 1.33a19.85 19.85 0 0 0-2.469 5.874c-.942 3.993-.36 7.754 1.617 10.966-2.381 1.376-6.242 1.697-7.05 1.744H9.16c-1.66 0-3.009 1.376-3.009 3.074a47.34 47.34 0 0 0 2.783 16.747c2.2 5.874 5.477 10.232 9.699 12.894 4.76 2.983 12.527 4.68 21.282 4.68 3.951 0 7.902-.369 11.81-1.103a48.094 48.094 0 0 0 15.446-5.734 42.497 42.497 0 0 0 10.507-8.809c5.073-5.826 8.082-12.341 10.283-18.123h.898c5.524 0 8.935-2.248 10.821-4.174 1.257-1.194 2.201-2.662 2.873-4.314l.404-1.193-.942-.69-.002-.004Z\",\n fill: \"#0091E2\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M15.086 44.2h8.53c.405 0 .765-.32.765-.78v-7.8a.764.764 0 0 0-.764-.778h-8.53a.765.765 0 0 0-.765.779v7.799c.044.458.36.78.764.78ZM26.851 44.2h8.53c.405 0 .763-.32.763-.78v-7.8a.764.764 0 0 0-.763-.778h-8.53a.765.765 0 0 0-.764.779v7.799c.044.458.36.78.764.78ZM38.842 44.2h8.53c.404 0 .765-.32.765-.78v-7.8a.764.764 0 0 0-.765-.778h-8.53a.765.765 0 0 0-.764.779v7.799c0 .458.314.78.764.78ZM50.647 44.2h8.53c.405 0 .765-.32.765-.78v-7.8a.764.764 0 0 0-.764-.778h-8.53a.765.765 0 0 0-.765.779v7.799c0 .458.36.78.764.78ZM26.851 33.05h8.53c.405 0 .763-.367.763-.78v-7.799c0-.413-.314-.781-.763-.781h-8.53a.766.766 0 0 0-.764.781v7.799c.044.413.36.78.764.78ZM38.842 33.05h8.53c.404 0 .765-.367.765-.78v-7.799a.766.766 0 0 0-.765-.781h-8.53a.766.766 0 0 0-.764.781v7.799c0 .413.314.78.764.78ZM50.647 33.05h8.53c.405 0 .765-.367.765-.78v-7.799c0-.413-.36-.781-.764-.781h-8.53a.766.766 0 0 0-.765.781v7.799c0 .413.36.78.764.78ZM50.647 21.856h8.53c.405 0 .765-.32.765-.78v-7.8c0-.413-.36-.78-.764-.78h-8.53a.766.766 0 0 0-.765.78v7.8c0 .412.36.78.764.78ZM62.551 44.2h8.53c.405 0 .765-.32.765-.78v-7.8a.764.764 0 0 0-.764-.778h-8.53a.765.765 0 0 0-.765.779v7.799c.044.458.36.78.764.78Z\",\n fill: \"#0091E2\"\n })));\n};\n\nexport default SvgDocker;","var _path, _path2, _path3, _path4, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgAzure = function SvgAzure(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 105 95\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M40.041 11.192h21.975l-22.81 69.066a3.565 3.565 0 0 1-1.278 1.763 3.455 3.455 0 0 1-2.043.672h-17.1a3.444 3.444 0 0 1-1.599-.394 3.538 3.538 0 0 1-1.245-1.095 3.603 3.603 0 0 1-.618-1.556 3.658 3.658 0 0 1 .144-1.673l21.255-64.346c.235-.71.68-1.326 1.278-1.763a3.455 3.455 0 0 1 2.043-.671l-.002-.003Z\",\n fill: \"url(#azure_svg__a)\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M71.975 57.518H37.13c-.325 0-.64.098-.909.284a1.637 1.637 0 0 0-.592.758c-.12.308-.145.646-.074.967.072.323.237.616.474.84L58.42 81.725c.65.622 1.51.967 2.401.967h19.73l-8.576-25.178v.005Z\",\n fill: \"#0078D4\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M40.042 11.193a3.44 3.44 0 0 0-2.062.682 3.54 3.54 0 0 0-1.265 1.8l-21.22 64.244a3.63 3.63 0 0 0 .434 3.265c.325.469.754.852 1.252 1.115.499.263 1.052.4 1.613.398h17.542a3.705 3.705 0 0 0 1.77-.854 3.816 3.816 0 0 0 1.107-1.647l4.232-12.742L58.56 81.861a3.529 3.529 0 0 0 2.25.838H80.47l-8.623-25.177-25.133.007 15.384-46.337H40.042Z\",\n fill: \"url(#azure_svg__b)\"\n })), _path4 || (_path4 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M68.109 13.625a3.579 3.579 0 0 0-1.275-1.76 3.448 3.448 0 0 0-2.04-.673h-24.49c.733 0 1.445.236 2.04.672a3.577 3.577 0 0 1 1.275 1.761l21.255 64.352c.178.537.228 1.11.144 1.673a3.602 3.602 0 0 1-.617 1.556c-.325.46-.75.836-1.246 1.095a3.437 3.437 0 0 1-1.598.394h24.49c.555 0 1.104-.135 1.598-.394a3.512 3.512 0 0 0 1.243-1.095c.325-.46.536-.995.618-1.556a3.658 3.658 0 0 0-.144-1.673L68.109 13.625Z\",\n fill: \"url(#azure_svg__c)\"\n })), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__a\",\n x1: 48.052,\n y1: 16.492,\n x2: 24.328,\n y2: 85.073,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#114A8B\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#0669BC\"\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__b\",\n x1: 55.179,\n y1: 48.598,\n x2: 49.877,\n y2: 50.351,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopOpacity: 0.3\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.07,\n stopOpacity: 0.2\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.32,\n stopOpacity: 0.1\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 0.62,\n stopOpacity: 0.05\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopOpacity: 0\n })), /*#__PURE__*/React.createElement(\"linearGradient\", {\n id: \"azure_svg__c\",\n x1: 52.44,\n y1: 14.419,\n x2: 78.457,\n y2: 82.248,\n gradientUnits: \"userSpaceOnUse\"\n }, /*#__PURE__*/React.createElement(\"stop\", {\n stopColor: \"#3CCBF4\"\n }), /*#__PURE__*/React.createElement(\"stop\", {\n offset: 1,\n stopColor: \"#2892DF\"\n })))));\n};\n\nexport default SvgAzure;","var _path, _path2, _path3;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgKubernetes = function SvgKubernetes(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 105 95\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M52.958 88.267c-5.243 0-10.485-.044-15.724.02-2.383.026-4.221-.819-5.716-2.694-6.63-8.317-13.299-16.6-19.966-24.89-1.337-1.661-1.862-3.43-1.352-5.608 2.448-10.471 4.806-20.967 7.202-31.456.479-2.1 1.694-3.543 3.661-4.476 9.69-4.605 19.357-9.246 29.019-13.907 2.022-.977 3.947-.917 5.954.046 9.602 4.63 19.211 9.251 28.844 13.822 2.037.968 3.276 2.447 3.77 4.616 2.39 10.491 4.765 20.985 7.198 31.463.466 2.01.044 3.707-1.213 5.268-6.734 8.399-13.473 16.796-20.186 25.215-1.449 1.82-3.272 2.614-5.565 2.594-5.305-.04-10.614-.01-15.92-.01l-.008-.005.002.002ZM51.61 21.251c.094 2.704-.234 3.12-2.717 3.607-4.407.867-8.387 2.678-11.614 5.846-1.217 1.198-2.242.944-3.326.17-.835-.592-1.509-1.413-2.263-2.122-.515-.483-.998-1.038-1.589-1.41-.865-.537-1.772-.46-2.406.411-.575.784-.43 1.631.218 2.303.444.457 1.01.797 1.548 1.152.804.538 1.668.995 2.441 1.577 1.574 1.183 1.718 1.986.785 3.677-2.153 3.894-3.117 8.067-2.962 12.521.086 2.428-.625 3.197-3.062 3.473-1.093.125-2.192.191-3.276.376-1.224.206-2.095.886-1.83 2.256.254 1.32 1.325 1.522 2.422 1.254 1.185-.297 2.317-.793 3.486-1.153 2.394-.733 3.202-.346 4.206 1.943 1.757 4.024 4.435 7.284 8.008 9.813 1.535 1.089 1.784 2.022.895 3.732-.416.799-.956 1.54-1.43 2.313-.304.497-.619.988-.885 1.504-.534 1.028-.306 1.928.645 2.538 1.057.678 1.969.151 2.441-.773.638-1.26 1.008-2.654 1.52-3.978.819-2.127 1.671-2.553 3.776-1.962 4.271 1.19 8.547 1.205 12.822.02 2.083-.578 2.853-.23 3.677 1.826.48 1.199.78 2.474 1.318 3.649.48 1.064 1.29 1.927 2.597 1.233 1.213-.643 1.259-1.732.633-2.834-.605-1.069-1.344-2.066-1.951-3.134-1.19-2.104-1.019-2.821.898-4.229 3.587-2.627 6.24-5.986 7.939-10.109.785-1.907 1.532-2.287 3.547-1.69 1.235.367 2.422.909 3.666 1.223 1.115.28 2.262.241 2.693-1.155.35-1.135-.415-2.068-1.952-2.322-1.209-.203-2.448-.231-3.661-.418-1.935-.3-2.643-1.152-2.562-3.07.194-4.587-.78-8.89-3.036-12.889-.864-1.53-.726-2.443.69-3.556.814-.637 1.738-1.118 2.6-1.686.535-.356 1.108-.692 1.55-1.148.653-.668.788-1.5.22-2.303-.584-.823-1.453-.898-2.254-.5-.614.305-1.114.862-1.632 1.345-.709.663-1.34 1.414-2.08 2.037-1.468 1.24-2.358 1.214-3.754-.026-3.421-3.045-7.388-4.95-11.878-5.774-1.803-.331-2.352-.922-2.278-2.783.05-1.293.285-2.575.4-3.864.14-1.506-.703-2.728-1.842-2.724-1.139.004-1.978 1.223-1.828 2.733.105 1.03.28 2.053.429 3.08h-.009.007Z\",\n fill: \"#326CE4\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M51.608 21.25c-.144-1.026-.323-2.047-.428-3.079-.15-1.51.689-2.729 1.827-2.733 1.14-.005 1.983 1.218 1.843 2.724-.12 1.293-.354 2.573-.4 3.864-.07 1.861.474 2.452 2.278 2.783 4.49.824 8.456 2.725 11.877 5.774 1.395 1.24 2.284 1.269 3.755.026.74-.623 1.373-1.374 2.08-2.037.515-.483 1.018-1.043 1.632-1.346.8-.397 1.672-.325 2.254.5.568.804.43 1.632-.221 2.304-.444.456-1.014.788-1.55 1.148-.859.573-1.788 1.053-2.599 1.686-1.418 1.113-1.554 2.026-.69 3.556 2.253 4 3.23 8.302 3.036 12.888-.081 1.917.63 2.769 2.561 3.071 1.213.187 2.448.216 3.662.418 1.538.256 2.303 1.187 1.951 2.322-.43 1.398-1.578 1.436-2.692 1.155-1.244-.312-2.433-.854-3.666-1.223-2.013-.597-2.758-.22-3.548 1.69-1.698 4.123-4.351 7.482-7.938 10.11-1.917 1.404-2.092 2.122-.899 4.228.606 1.069 1.34 2.065 1.952 3.134.625 1.105.58 2.189-.634 2.834-1.305.694-2.114-.17-2.597-1.233-.533-1.17-.834-2.452-1.318-3.649-.828-2.057-1.593-2.404-3.676-1.826-4.276 1.187-8.551 1.17-12.822-.02-2.11-.586-2.962-.16-3.777 1.962-.51 1.329-.883 2.72-1.52 3.978-.465.924-1.383 1.451-2.44.773-.95-.608-1.175-1.51-.646-2.538.27-.516.58-1.007.886-1.503.474-.773 1.01-1.51 1.43-2.314.889-1.71.64-2.646-.895-3.732-3.572-2.53-6.254-5.789-8.009-9.813-1.003-2.292-1.812-2.674-4.205-1.943-1.17.36-2.302.854-3.486 1.153-1.096.272-2.165.07-2.422-1.254-.265-1.37.605-2.046 1.83-2.256 1.079-.185 2.183-.25 3.276-.376 2.441-.272 3.147-1.043 3.062-3.473-.155-4.454.809-8.625 2.962-12.521.933-1.69.789-2.494-.785-3.677-.774-.582-1.637-1.039-2.442-1.576-.535-.356-1.103-.694-1.547-1.153-.65-.672-.794-1.52-.219-2.303.639-.87 1.544-.948 2.407-.41.59.37 1.073.922 1.589 1.41.754.71 1.43 1.53 2.262 2.122 1.084.773 2.107 1.027 3.327-.171 3.222-3.17 7.202-4.981 11.613-5.846 2.483-.488 2.81-.902 2.717-3.607h.009-.007ZM50.59 31.84h.105c0-.515-.026-1.038.009-1.553.045-.712-.219-.879-.91-.742-3.366.658-6.363 2.065-8.996 4.278-.726.608-.584.953.12 1.434 2.078 1.429 4.107 2.928 6.183 4.355 1.878 1.288 3.032.718 3.178-1.554.132-2.068.21-4.145.31-6.217ZM34.445 47.45c-.017 1.6.678 2.195 2.088 1.787 2.162-.628 4.337-1.223 6.485-1.89 1.968-.613 2.27-1.835.77-3.256-1.828-1.732-3.777-3.337-5.59-5.09-.963-.934-1.313-.468-1.757.432-1.279 2.595-1.884 5.347-1.998 8.012l.003.005Zm18.508 19.015c1.69.046 3.33-.254 4.964-.663.664-.167 1.093-.272.614-1.109-1.38-2.412-2.638-4.895-4.061-7.279-.796-1.335-2.134-1.32-2.918.02-1.408 2.397-2.689 4.862-4.046 7.288-.354.632-.21.863.49 1.038 1.632.41 3.267.734 4.959.703v.004l-.002-.002Zm18.636-18.958c-.15-2.603-.708-5.308-1.952-7.85-.505-1.03-1.073-1.381-2.048-.466-1.744 1.636-3.572 3.186-5.314 4.826-1.563 1.47-1.235 2.698.864 3.332 2.157.656 4.33 1.26 6.494 1.886 1.987.573 1.993.57 1.954-1.73l.002.002Zm-9.515 5.282c-2.798.125-3.143.652-2.197 2.99.9 2.221 1.854 4.42 2.724 6.653.295.758.535 1.129 1.34.523 2.747-2.077 4.855-4.652 6.18-7.846.163-.395.463-.924-.285-1.054-2.669-.456-5.349-.873-7.764-1.268l.002.002ZM55.342 31.61h.065c.11 2.127.21 4.255.33 6.386.132 2.294 1.268 2.9 3.126 1.625 2.018-1.386 3.948-2.9 6.005-4.22 1.1-.706.854-1.1.03-1.771a19.363 19.363 0 0 0-8.448-4.013c-1.113-.23-1.218.15-1.12 1.027.036.32.005.644.005.969h.009l-.002-.003Zm-8.593 22.725c-.303-.658-.264-1.525-1.403-1.484-2.863.106-5.655.73-8.476 1.12-.995.136-1.198.566-.81 1.43 1.365 3.009 3.358 5.503 6.005 7.478.68.507 1.034.516 1.36-.397.586-1.64 1.324-3.225 1.989-4.836.444-1.074.87-2.154 1.333-3.306v-.005h.002Zm6.363-8.965c-1.982-.004-3.152.784-3.198 2.158-.054 1.65 1.55 3.506 3.067 3.537 1.443.03 3.093-1.717 3.102-3.287.009-1.46-1.154-2.408-2.973-2.412l.005.004h-.003Z\",\n fill: \"#FDFDFE\"\n })), _path3 || (_path3 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M50.594 31.84c-.1 2.073-.18 4.145-.31 6.218-.15 2.276-1.306 2.845-3.179 1.554-2.079-1.43-4.105-2.93-6.184-4.355-.703-.483-.843-.824-.12-1.434 2.634-2.213 5.63-3.618 8.997-4.278.695-.137.955.035.91.742-.036.515-.01 1.038-.01 1.556h-.104v-.004.002ZM34.448 47.45c.116-2.666.72-5.419 1.998-8.014.444-.902.793-1.37 1.757-.432 1.808 1.752 3.762 3.352 5.59 5.09 1.499 1.425 1.197 2.646-.77 3.256-2.149.668-4.322 1.26-6.485 1.89-1.408.409-2.103-.186-2.088-1.787l-.002-.004ZM52.96 66.46c-1.69.03-3.327-.297-4.96-.707-.7-.176-.84-.406-.49-1.038 1.358-2.424 2.639-4.896 4.046-7.289.785-1.339 2.123-1.354 2.918-.02 1.423 2.385 2.687 4.867 4.062 7.28.478.834.045.94-.615 1.108-1.632.411-3.272.712-4.964.663l.003.003ZM71.588 47.504c.04 2.298.03 2.307-1.954 1.73-2.164-.628-4.337-1.234-6.494-1.886-2.098-.637-2.424-1.857-.863-3.332 1.742-1.64 3.567-3.19 5.313-4.826.975-.913 1.543-.566 2.048.466 1.244 2.54 1.8 5.247 1.952 7.85l-.002-.002ZM62.079 52.783c2.413.391 5.09.813 7.764 1.27.743.124.445.656.284 1.053-1.33 3.196-3.432 5.773-6.18 7.846-.804.608-1.044.235-1.34-.523-.87-2.232-1.822-4.434-2.723-6.654-.949-2.337-.599-2.864 2.197-2.99l-.002-.002ZM55.348 31.606c0-.325.03-.648-.004-.968-.096-.878.009-1.254 1.119-1.028 3.16.652 5.95 1.983 8.448 4.013.824.672 1.073 1.063-.03 1.772-2.057 1.324-3.987 2.834-6.005 4.22-1.858 1.274-2.997.67-3.126-1.625-.12-2.128-.22-4.26-.33-6.386h-.074l.002.002ZM46.749 54.329c-.464 1.152-.89 2.232-1.334 3.306-.664 1.611-1.398 3.196-1.989 4.836-.325.913-.68.909-1.36.397-2.646-1.975-4.635-4.47-6.004-7.479-.393-.863-.19-1.293.809-1.429 2.822-.386 5.611-1.014 8.477-1.12 1.138-.044 1.1.828 1.403 1.484v.005h-.002ZM53.115 45.364c1.814.004 2.981.948 2.973 2.412-.011 1.57-1.66 3.317-3.102 3.286-1.515-.035-3.121-1.885-3.067-3.536.046-1.374 1.218-2.167 3.198-2.158l-.004-.005h.002Z\",\n fill: \"#326CE4\"\n })));\n};\n\nexport default SvgKubernetes;","var _path;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgNomad = function SvgNomad(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 105 95\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"M52.36 3.306 14.06 25.4v44.2l38.273 22.094L90.632 69.6V25.4L52.36 3.306Zm17.085 48.629-10.198 5.888-12.33-6.742V65.17L35.34 72.516V43.078l9.2-5.625 12.75 6.717V29.79l12.156-7.307v29.453-.002Z\",\n fill: \"#00CA8E\"\n })));\n};\n\nexport default SvgNomad;","import { getPlatformType } from '@/portainer/environments/utils';\nimport { EnvironmentType, PlatformType } from '@/portainer/environments/types';\n\nimport Docker from './docker.svg?c';\nimport Azure from './azure.svg?c';\nimport Kubernetes from './kubernetes.svg?c';\nimport Nomad from './nomad.svg?c';\n\nconst icons: {\n [key in PlatformType]: SvgrComponent;\n} = {\n [PlatformType.Docker]: Docker,\n [PlatformType.Kubernetes]: Kubernetes,\n [PlatformType.Azure]: Azure,\n [PlatformType.Nomad]: Nomad,\n};\n\nexport function getPlatformIcon(type: EnvironmentType) {\n const platform = getPlatformType(type);\n\n return icons[platform];\n}\n","import { Layout } from 'react-feather';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { AutomationTestingProps } from '@/types';\n\nimport { SidebarItem } from '../SidebarItem';\n\ninterface Props extends AutomationTestingProps {\n environmentId: EnvironmentId;\n platformPath: string;\n}\n\nexport function DashboardLink({\n environmentId,\n platformPath,\n 'data-cy': dataCy,\n}: Props) {\n return (\n \n );\n}\n","import { Box } from 'react-feather';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\n\nimport { DashboardLink } from '../items/DashboardLink';\nimport { SidebarItem } from '../SidebarItem';\n\ninterface Props {\n environmentId: EnvironmentId;\n}\n\nexport function AzureSidebar({ environmentId }: Props) {\n return (\n <>\n \n \n \n );\n}\n","import { Database } from 'react-feather';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { AutomationTestingProps } from '@/types';\n\nimport { SidebarItem } from '../SidebarItem';\n\ninterface Props extends AutomationTestingProps {\n environmentId: EnvironmentId;\n platformPath: string;\n}\n\nexport function VolumesLink({\n environmentId,\n platformPath,\n 'data-cy': dataCy,\n}: Props) {\n return (\n \n );\n}\n","import {\n Box,\n Clock,\n Layers,\n List,\n Lock,\n Share2,\n Shuffle,\n Trello,\n Clipboard,\n Edit,\n} from 'react-feather';\n\nimport {\n type Environment,\n type EnvironmentId,\n EnvironmentStatus,\n} from '@/portainer/environments/types';\nimport {\n Authorized,\n useUser,\n isEnvironmentAdmin,\n} from '@/portainer/hooks/useUser';\nimport { useInfo, useVersion } from '@/docker/services/system.service';\n\nimport { SidebarItem } from './SidebarItem';\nimport { DashboardLink } from './items/DashboardLink';\nimport { VolumesLink } from './items/VolumesLink';\n\ninterface Props {\n environmentId: EnvironmentId;\n environment: Environment;\n}\n\nexport function DockerSidebar({ environmentId, environment }: Props) {\n const { user } = useUser();\n const isAdmin = isEnvironmentAdmin(user, environmentId);\n\n const areStacksVisible =\n isAdmin || environment.SecuritySettings.allowStackManagementForRegularUsers;\n\n const envInfoQuery = useInfo(\n environmentId,\n (info) => !!info.Swarm?.NodeID && !!info.Swarm?.ControlAvailable\n );\n\n const envVersionQuery = useVersion(environmentId, (version) =>\n parseFloat(version.ApiVersion)\n );\n\n const isSwarmManager = envInfoQuery.data;\n const apiVersion = envVersionQuery.data || 0;\n\n const offlineMode = environment.Status === EnvironmentStatus.Down;\n\n const setupSubMenuProps = isSwarmManager\n ? {\n label: 'Swarm',\n icon: Trello,\n to: 'docker.swarm',\n dataCy: 'portainerSidebar-swarm',\n }\n : {\n label: 'Host',\n icon: Trello,\n to: 'docker.host',\n dataCy: 'portainerSidebar-host',\n };\n\n return (\n <>\n \n\n \n \n \n\n {areStacksVisible && (\n \n )}\n\n {isSwarmManager && (\n \n )}\n\n \n\n \n\n \n\n \n\n {apiVersion >= 1.3 && isSwarmManager && (\n \n )}\n\n {apiVersion >= 1.25 && isSwarmManager && (\n \n )}\n\n {!isSwarmManager && isAdmin && !offlineMode && (\n \n )}\n\n \n \n \n \n\n \n \n \n );\n}\n","const terminalHeight = 495;\n\nexport function terminalClose() {\n update('100%', 'initial');\n}\n\nexport function terminalResize() {\n const contentWrapperHeight = window.innerHeight;\n const newContentWrapperHeight = contentWrapperHeight - terminalHeight;\n update(`${newContentWrapperHeight}px`, 'auto');\n}\n\nfunction update(height: string, overflowY: string) {\n const pageWrapper = document.getElementById('pageWrapper-wrapper');\n\n if (pageWrapper) {\n pageWrapper.style.height = height;\n pageWrapper.style.overflowY = overflowY;\n }\n}\n","import { Terminal } from 'xterm';\nimport { fit } from 'xterm/lib/addons/fit/fit';\nimport { useCallback, useEffect, useRef, useState } from 'react';\nimport clsx from 'clsx';\n\nimport { baseHref } from '@/portainer/helpers/pathHelper';\nimport {\n terminalClose,\n terminalResize,\n} from '@/portainer/services/terminal-window';\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { error as notifyError } from '@/portainer/services/notifications';\nimport { useLocalStorage } from '@/portainer/hooks/useLocalStorage';\n\nimport { Icon } from '@@/Icon';\nimport { Button } from '@@/buttons';\n\nimport styles from './KubectlShell.module.css';\n\ninterface ShellState {\n socket: WebSocket | null;\n minimized: boolean;\n}\n\ninterface Props {\n environmentId: EnvironmentId;\n onClose(): void;\n}\n\nexport function KubeCtlShell({ environmentId, onClose }: Props) {\n const [terminal] = useState(new Terminal());\n\n const [shell, setShell] = useState({\n socket: null,\n minimized: false,\n });\n\n const { socket } = shell;\n\n const terminalElem = useRef(null);\n\n const [jwt] = useLocalStorage('JWT', '');\n\n const handleClose = useCallback(() => {\n terminalClose(); // only css trick\n socket?.close();\n terminal.dispose();\n onClose();\n }, [onClose, terminal, socket]);\n\n const openTerminal = useCallback(() => {\n if (!terminalElem.current) {\n return;\n }\n\n terminal.open(terminalElem.current);\n terminal.setOption('cursorBlink', true);\n terminal.focus();\n fit(terminal);\n terminal.writeln('#Run kubectl commands inside here');\n terminal.writeln('#e.g. kubectl get all');\n terminal.writeln('');\n }, [terminal]);\n\n // refresh socket listeners on socket updates\n useEffect(() => {\n if (!socket) {\n return () => {};\n }\n function onOpen() {\n openTerminal();\n }\n function onMessage(e: MessageEvent) {\n terminal.write(e.data);\n }\n function onClose() {\n handleClose();\n }\n function onError(e: Event) {\n handleClose();\n if (socket?.readyState !== WebSocket.CLOSED) {\n notifyError(\n 'Failure',\n e as unknown as Error,\n 'Websocket connection error'\n );\n }\n }\n\n socket.addEventListener('open', onOpen);\n socket.addEventListener('message', onMessage);\n socket.addEventListener('close', onClose);\n socket.addEventListener('error', onError);\n\n return () => {\n socket.removeEventListener('open', onOpen);\n socket.removeEventListener('message', onMessage);\n socket.removeEventListener('close', onClose);\n socket.removeEventListener('error', onError);\n };\n }, [handleClose, openTerminal, socket, terminal]);\n\n // on component load/destroy\n useEffect(() => {\n const socket = new WebSocket(buildUrl(jwt, environmentId));\n setShell((shell) => ({ ...shell, socket }));\n\n terminal.onData((data) => socket.send(data));\n terminal.onKey(({ domEvent }) => {\n if (domEvent.ctrlKey && domEvent.code === 'KeyD') {\n close();\n }\n });\n\n window.addEventListener('resize', () => terminalResize());\n\n function close() {\n socket.close();\n terminal.dispose();\n window.removeEventListener('resize', terminalResize);\n }\n\n return close;\n }, [environmentId, jwt, terminal]);\n\n return (\n
    \n
    \n
    \n \n kubectl shell\n
    \n
    \n \n \n \n \n \n \n \n \n \n
    \n
    \n\n
    \n
    Loading Terminal...
    \n
    \n
    \n );\n\n function clearScreen() {\n terminal.clear();\n }\n\n function toggleMinimize() {\n if (shell.minimized) {\n terminalResize();\n setShell((shell) => ({ ...shell, minimized: false }));\n } else {\n terminalClose();\n setShell((shell) => ({ ...shell, minimized: true }));\n }\n }\n\n function buildUrl(jwt: string, environmentId: EnvironmentId) {\n const params = {\n token: jwt,\n endpointId: environmentId,\n };\n\n const wsProtocol =\n window.location.protocol === 'https:' ? 'wss://' : 'ws://';\n const path = `${baseHref()}api/websocket/kubernetes-shell`;\n const base = path.startsWith('http')\n ? path.replace(/^https?:\\/\\//i, '')\n : window.location.host + path;\n\n const queryParams = Object.entries(params)\n .map(([k, v]) => `${k}=${v}`)\n .join('&');\n return `${wsProtocol}${base}?${queryParams}`;\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__root\",\"header\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__header\",\"minimized\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__minimized\",\"title\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__title\",\"actions\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__actions\",\"terminalContainer\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__terminal-container\",\"loadingMessage\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShell-module__loading-message\"};","import clsx from 'clsx';\nimport { useState } from 'react';\nimport { createPortal } from 'react-dom';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { useAnalytics } from '@/angulartics.matomo/analytics-services';\n\nimport { Button } from '@@/buttons';\nimport { Icon } from '@@/Icon';\n\nimport { KubeCtlShell } from './KubectlShell';\nimport styles from './KubectlShellButton.module.css';\n\ninterface Props {\n environmentId: EnvironmentId;\n}\nexport function KubectlShellButton({ environmentId }: Props) {\n const [open, setOpen] = useState(false);\n const { trackEvent } = useAnalytics();\n return (\n <>\n handleOpen()}\n className={clsx(styles.root, '!flex')}\n >\n {' '}\n kubectl shell\n \n\n {open &&\n createPortal(\n setOpen(false)}\n />,\n document.body\n )}\n \n );\n\n function handleOpen() {\n setOpen(true);\n\n trackEvent('kubernetes-kubectl-shell', { category: 'kubernetes' });\n }\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-sidebar-KubernetesSidebar-KubectlShell-KubectlShellButton-module__root\"};","import { Box, Edit, Layers, Lock, Server } from 'react-feather';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\nimport { Authorized } from '@/portainer/hooks/useUser';\nimport Helm from '@/assets/ico/vendor/helm.svg?c';\n\nimport { DashboardLink } from '../items/DashboardLink';\nimport { SidebarItem } from '../SidebarItem';\nimport { VolumesLink } from '../items/VolumesLink';\nimport { useSidebarState } from '../useSidebarState';\n\nimport { KubectlShellButton } from './KubectlShell';\n\ninterface Props {\n environmentId: EnvironmentId;\n}\n\nexport function KubernetesSidebar({ environmentId }: Props) {\n const { isOpen } = useSidebarState();\n\n return (\n <>\n {isOpen && (\n
    \n \n
    \n )}\n\n \n\n \n\n \n\n \n \n \n\n \n\n \n\n \n\n \n \n \n \n\n \n \n \n\n \n \n \n );\n}\n","import { Clock } from 'react-feather';\n\nimport { EnvironmentId } from '@/portainer/environments/types';\n\nimport { DashboardLink } from '../items/DashboardLink';\nimport { SidebarItem } from '../SidebarItem';\n\ninterface Props {\n environmentId: EnvironmentId;\n}\n\nexport function NomadSidebar({ environmentId }: Props) {\n return (\n <>\n \n\n \n \n );\n}\n","import { useCurrentStateAndParams, useRouter } from '@uirouter/react';\nimport { useEffect } from 'react';\nimport { X, Slash } from 'react-feather';\nimport clsx from 'clsx';\n\nimport {\n PlatformType,\n EnvironmentId,\n Environment,\n} from '@/portainer/environments/types';\nimport { getPlatformType } from '@/portainer/environments/utils';\nimport { useEnvironment } from '@/portainer/environments/queries/useEnvironment';\nimport { useLocalStorage } from '@/portainer/hooks/useLocalStorage';\n\nimport { getPlatformIcon } from '../portainer/environments/utils/get-platform-icon';\n\nimport styles from './EnvironmentSidebar.module.css';\nimport { AzureSidebar } from './AzureSidebar';\nimport { DockerSidebar } from './DockerSidebar';\nimport { KubernetesSidebar } from './KubernetesSidebar';\nimport { SidebarSection, SidebarSectionTitle } from './SidebarSection';\nimport { NomadSidebar } from './NomadSidebar';\nimport { useSidebarState } from './useSidebarState';\n\nexport function EnvironmentSidebar() {\n const { query: currentEnvironmentQuery, clearEnvironment } =\n useCurrentEnvironment();\n const environment = currentEnvironmentQuery.data;\n\n const { isOpen } = useSidebarState();\n\n if (!isOpen && !environment) {\n return null;\n }\n\n return (\n
    \n {environment ? (\n \n ) : (\n \n
    \n Environment:\n \n None selected\n
    \n
    \n )}\n
    \n );\n}\n\ninterface ContentProps {\n environment: Environment;\n onClear: () => void;\n}\n\nfunction Content({ environment, onClear }: ContentProps) {\n const platform = getPlatformType(environment.Type);\n const Sidebar = getSidebar(platform);\n\n return (\n }\n aria-label={environment.Name}\n showTitleWhenOpen\n >\n
    \n \n
    \n \n );\n\n function getSidebar(platform: PlatformType) {\n const sidebar: {\n [key in PlatformType]: React.ComponentType<{\n environmentId: EnvironmentId;\n environment: Environment;\n }>;\n } = {\n [PlatformType.Azure]: AzureSidebar,\n [PlatformType.Docker]: DockerSidebar,\n [PlatformType.Kubernetes]: KubernetesSidebar,\n [PlatformType.Nomad]: NomadSidebar,\n };\n\n return sidebar[platform];\n }\n}\n\nfunction useCurrentEnvironment() {\n const { params } = useCurrentStateAndParams();\n const router = useRouter();\n const [environmentId, setEnvironmentId] = useLocalStorage<\n EnvironmentId | undefined\n >('environmentId', undefined, sessionStorage);\n\n useEffect(() => {\n const environmentId = parseInt(params.endpointId, 10);\n if (params.endpointId && !Number.isNaN(environmentId)) {\n setEnvironmentId(environmentId);\n }\n }, [params.endpointId, setEnvironmentId]);\n\n return { query: useEnvironment(environmentId), clearEnvironment };\n\n function clearEnvironment() {\n if (params.endpointId) {\n router.stateService.go('portainer.home');\n }\n\n setEnvironmentId(undefined);\n }\n}\n\ninterface TitleProps {\n environment: Environment;\n onClear(): void;\n}\n\nfunction Title({ environment, onClear }: TitleProps) {\n const { isOpen } = useSidebarState();\n\n const EnvironmentIcon = getPlatformIcon(environment.Type);\n\n if (!isOpen) {\n return (\n
    \n \n
    \n );\n }\n\n return (\n
    \n \n \n {environment.Name}\n \n\n \n \n \n
    \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-sidebar-EnvironmentSidebar-module__root\",\"closeBtn\":\"app-react-sidebar-EnvironmentSidebar-module__closeBtn\"};","import {\n Users,\n Award,\n Settings,\n HardDrive,\n Radio,\n FileText,\n} from 'react-feather';\n\nimport { usePublicSettings } from '@/portainer/settings/queries';\n\nimport { SidebarItem } from './SidebarItem';\nimport { SidebarSection } from './SidebarSection';\n\ninterface Props {\n isAdmin: boolean;\n isTeamLeader?: boolean;\n}\n\nexport function SettingsSidebar({ isAdmin, isTeamLeader }: Props) {\n const teamSyncQuery = usePublicSettings({\n select: (settings) => settings.TeamSync,\n });\n\n const showUsersSection =\n !window.ddExtension && (isAdmin || (isTeamLeader && !teamSyncQuery.data));\n\n return (\n \n {showUsersSection && (\n \n \n\n {isAdmin && (\n \n )}\n \n )}\n {isAdmin && (\n <>\n \n \n \n \n\n \n\n {process.env.PORTAINER_EDITION !== 'CE' && (\n \n )}\n\n \n \n \n\n \n {!window.ddExtension && (\n \n )}\n \n\n \n\n \n \n Help / About\n \n \n \n \n )}\n \n );\n}\n","import { useQuery } from 'react-query';\n\nimport { getVersionStatus } from '@/portainer/services/api/status.service';\n\nimport styles from './UpdateNotifications.module.css';\n\nexport function UpdateNotification() {\n const query = useUpdateNotification();\n\n if (!query.data || !query.data.UpdateAvailable) {\n return null;\n }\n\n const { LatestVersion } = query.data;\n\n return (\n
    \n \n A new\n version is available\n \n
    \n );\n}\n\nfunction useUpdateNotification() {\n return useQuery(['status', 'version'], () => getVersionStatus());\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"updateNotification\":\"app-react-sidebar-Footer-UpdateNotifications-module__update-notification\"};","var _g, _defs;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgPortainerLogo = function SvgPortainerLogo(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 190 47\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _g || (_g = /*#__PURE__*/React.createElement(\"g\", {\n clipPath: \"url(#portainer_logo_svg__a)\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M10.893 10.604h-.698v3.658h.698v-3.658ZM13.895 10.604h-.698v3.658h.698v-3.658ZM17.997 3.623 17.28 2.37 5.342 9.349l.716 1.255 11.939-6.98Z\",\n fill: \"#13BEF9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"m17.927 3.623.715-1.254 11.94 6.98-.716 1.255-11.94-6.98Z\",\n fill: \"#13BEF9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M32.693 10.622v-1.45H-.017v1.45h32.71Z\",\n fill: \"#13BEF9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M19.742 31.087V9.614h1.431V32.13c-.384-.442-.872-.76-1.43-1.043ZM17.299 30.716V.425h1.43v30.468c-.4-.195-1.378-.177-1.43-.177ZM3.737 33.738a7.19 7.19 0 0 1-2.898-5.761c0-1.255.332-2.492.943-3.57H14a7.085 7.085 0 0 1 .942 3.57c0 1.095-.14 2.12-.576 3.04-.925-.902-2.286-1.29-3.665-1.29-2.444 0-4.538 1.537-5.08 3.834-.191-.017-.313-.035-.505-.035a6.054 6.054 0 0 0-1.38.212ZM9.74 15.888h-3.7v3.765h3.7v-3.765ZM5.57 15.888H1.868v3.765h3.7v-3.765ZM5.57 20.077H1.868v3.764h3.7v-3.764ZM9.74 20.077h-3.7v3.764h3.7v-3.764ZM13.895 20.077h-3.7v3.764h3.7v-3.764ZM13.895 13.873h-3.7v3.765h3.7v-3.765Z\",\n fill: \"#13BEF9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n fillRule: \"evenodd\",\n clipRule: \"evenodd\",\n d: \"M6.232 34.303c.507-2.173 2.444-3.8 4.748-3.8 1.484 0 2.81.672 3.718 1.733a4.785 4.785 0 0 1 2.758-.866c2.688 0 4.87 2.209 4.87 4.93 0 .566-.088 1.096-.262 1.609.593.813.96 1.838.96 2.933 0 2.722-2.182 4.931-4.87 4.931a4.795 4.795 0 0 1-3.107-1.131c-.89 1.255-2.339 2.085-3.98 2.085-1.885 0-3.525-1.095-4.346-2.686-.331.07-.663.106-1.012.106-2.688 0-4.887-2.209-4.887-4.93 0-2.722 2.182-4.931 4.887-4.931.175-.018.349-.018.524.017Z\",\n fill: \"#13BEF9\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n d: \"M43.964 17.884c.503-.659 1.187-1.213 2.054-1.664.867-.45 1.846-.676 2.938-.676 1.248 0 2.383.312 3.406.936 1.04.607 1.855 1.465 2.444 2.574.59 1.11.884 2.383.884 3.822s-.295 2.73-.884 3.874c-.59 1.127-1.404 2.01-2.444 2.652-1.023.624-2.158.936-3.406.936-1.092 0-2.063-.217-2.912-.65-.85-.45-1.543-1.005-2.08-1.664v8.892H41V15.778h2.964v2.106Zm8.71 4.992c0-.988-.208-1.837-.624-2.548-.399-.728-.936-1.274-1.612-1.638a4.184 4.184 0 0 0-2.132-.572c-.745 0-1.456.19-2.132.572-.659.381-1.196.936-1.612 1.664-.399.728-.598 1.586-.598 2.574 0 .988.2 1.855.598 2.6.416.728.953 1.283 1.612 1.664a4.277 4.277 0 0 0 2.132.572c.763 0 1.473-.19 2.132-.572.676-.399 1.213-.97 1.612-1.716.416-.745.624-1.612.624-2.6ZM64.835 30.338c-1.352 0-2.574-.303-3.666-.91a6.746 6.746 0 0 1-2.574-2.6c-.624-1.127-.936-2.427-.936-3.9 0-1.456.32-2.747.962-3.874a6.645 6.645 0 0 1 2.626-2.6c1.11-.607 2.349-.91 3.718-.91 1.37 0 2.609.303 3.718.91a6.645 6.645 0 0 1 2.626 2.6c.641 1.127.962 2.418.962 3.874s-.33 2.747-.988 3.874a6.909 6.909 0 0 1-2.704 2.626c-1.127.607-2.375.91-3.744.91Zm0-2.574c.763 0 1.473-.182 2.132-.546.676-.364 1.222-.91 1.638-1.638.416-.728.624-1.612.624-2.652s-.2-1.915-.598-2.626c-.399-.728-.927-1.274-1.586-1.638a4.337 4.337 0 0 0-2.132-.546c-.763 0-1.473.182-2.132.546-.641.364-1.153.91-1.534 1.638-.381.71-.572 1.586-.572 2.626 0 1.543.39 2.739 1.17 3.588.797.832 1.794 1.248 2.99 1.248ZM78.165 17.858a4.584 4.584 0 0 1 1.716-1.69c.728-.416 1.586-.624 2.574-.624v3.068h-.754c-1.161 0-2.045.295-2.652.884-.59.59-.884 1.612-.884 3.068v7.54h-2.964V15.778h2.964v2.08ZM88.638 18.196v7.93c0 .537.121.927.364 1.17.26.225.693.338 1.3.338h1.82v2.47h-2.34c-1.335 0-2.358-.312-3.068-.936-.711-.624-1.066-1.638-1.066-3.042v-7.93h-1.69v-2.418h1.69v-3.562h2.99v3.562h3.484v2.418h-3.484ZM93.865 22.876c0-1.439.295-2.713.885-3.822.606-1.11 1.421-1.967 2.444-2.574a6.546 6.546 0 0 1 3.432-.936c1.126 0 2.106.225 2.938.676.849.433 1.525.98 2.028 1.638v-2.08h2.99v14.326h-2.99v-2.132c-.503.676-1.188 1.24-2.054 1.69-.867.45-1.855.676-2.964.676a6.362 6.362 0 0 1-3.38-.936c-1.023-.641-1.838-1.525-2.444-2.652-.59-1.144-.885-2.435-.885-3.874Zm11.727.052c0-.988-.208-1.846-.624-2.574-.399-.728-.928-1.283-1.586-1.664a4.186 4.186 0 0 0-2.132-.572c-.763 0-1.474.19-2.132.572-.659.364-1.196.91-1.612 1.638-.399.71-.598 1.56-.598 2.548s.199 1.855.598 2.6c.416.745.953 1.317 1.612 1.716a4.275 4.275 0 0 0 2.132.572c.762 0 1.473-.19 2.132-.572.658-.381 1.187-.936 1.586-1.664.416-.745.624-1.612.624-2.6ZM113.983 13.88c-.538 0-.988-.182-1.352-.546-.364-.364-.546-.815-.546-1.352 0-.537.182-.988.546-1.352.364-.364.814-.546 1.352-.546.52 0 .962.182 1.326.546.364.364.546.815.546 1.352 0 .537-.182.988-.546 1.352a1.805 1.805 0 0 1-1.326.546Zm1.456 1.898v14.326h-2.964V15.778h2.964ZM126.558 15.544c1.127 0 2.132.234 3.016.702a4.977 4.977 0 0 1 2.106 2.08c.503.919.754 2.028.754 3.328v8.45h-2.938v-8.008c0-1.283-.321-2.262-.962-2.938-.641-.693-1.517-1.04-2.626-1.04s-1.993.347-2.652 1.04c-.641.676-.962 1.655-.962 2.938v8.008h-2.964V15.778h2.964v1.638a4.928 4.928 0 0 1 1.846-1.378 6.038 6.038 0 0 1 2.418-.494ZM149.345 22.59c0 .537-.035 1.023-.104 1.456h-10.946c.087 1.144.511 2.063 1.274 2.756.763.693 1.699 1.04 2.808 1.04 1.595 0 2.721-.667 3.38-2.002h3.198c-.433 1.317-1.222 2.4-2.366 3.25-1.127.832-2.531 1.248-4.212 1.248-1.369 0-2.6-.303-3.692-.91a6.799 6.799 0 0 1-2.548-2.6c-.607-1.127-.91-2.427-.91-3.9 0-1.473.295-2.765.884-3.874.607-1.127 1.447-1.993 2.522-2.6 1.092-.607 2.34-.91 3.744-.91 1.352 0 2.557.295 3.614.884a6.224 6.224 0 0 1 2.47 2.496c.589 1.057.884 2.28.884 3.666Zm-3.094-.936c-.017-1.092-.407-1.967-1.17-2.626-.763-.659-1.707-.988-2.834-.988-1.023 0-1.898.33-2.626.988-.728.641-1.161 1.517-1.3 2.626h7.93ZM155.226 17.858a4.58 4.58 0 0 1 1.716-1.69c.728-.416 1.586-.624 2.574-.624v3.068h-.754c-1.162 0-2.046.295-2.652.884-.59.59-.884 1.612-.884 3.068v7.54h-2.964V15.778h2.964v2.08ZM163.436 30.286c-.537 0-.988-.182-1.352-.546-.364-.364-.546-.815-.546-1.352 0-.537.182-.988.546-1.352.364-.364.815-.546 1.352-.546.52 0 .962.182 1.326.546.364.364.546.815.546 1.352 0 .537-.182.988-.546 1.352a1.805 1.805 0 0 1-1.326.546ZM170.02 13.88c-.538 0-.988-.182-1.352-.546-.364-.364-.546-.815-.546-1.352 0-.537.182-.988.546-1.352.364-.364.814-.546 1.352-.546.52 0 .962.182 1.326.546.364.364.546.815.546 1.352 0 .537-.182.988-.546 1.352a1.805 1.805 0 0 1-1.326.546Zm1.456 1.898v14.326h-2.964V15.778h2.964ZM181.581 30.338c-1.352 0-2.574-.303-3.666-.91a6.746 6.746 0 0 1-2.574-2.6c-.624-1.127-.936-2.427-.936-3.9 0-1.456.321-2.747.962-3.874a6.651 6.651 0 0 1 2.626-2.6c1.11-.607 2.349-.91 3.718-.91 1.37 0 2.609.303 3.718.91a6.638 6.638 0 0 1 2.626 2.6c.642 1.127.962 2.418.962 3.874s-.329 2.747-.988 3.874a6.904 6.904 0 0 1-2.704 2.626c-1.126.607-2.374.91-3.744.91Zm0-2.574c.763 0 1.474-.182 2.132-.546.676-.364 1.222-.91 1.638-1.638.416-.728.624-1.612.624-2.652s-.199-1.915-.598-2.626c-.398-.728-.927-1.274-1.586-1.638a4.335 4.335 0 0 0-2.132-.546 4.34 4.34 0 0 0-2.132.546c-.641.364-1.152.91-1.534 1.638-.381.71-.572 1.586-.572 2.626 0 1.543.39 2.739 1.17 3.588.798.832 1.794 1.248 2.99 1.248Z\",\n fill: \"#fff\"\n }))), _defs || (_defs = /*#__PURE__*/React.createElement(\"defs\", null, /*#__PURE__*/React.createElement(\"clipPath\", {\n id: \"portainer_logo_svg__a\"\n }, /*#__PURE__*/React.createElement(\"path\", {\n fill: \"#fff\",\n d: \"M0 0h190v47H0z\"\n })))));\n};\n\nexport default SvgPortainerLogo;","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-sidebar-Footer-Footer-module__root\",\"dialog\":\"app-react-sidebar-Footer-Footer-module__dialog\",\"versionInfo\":\"app-react-sidebar-Footer-Footer-module__versionInfo\",\"toolsList\":\"app-react-sidebar-Footer-Footer-module__toolsList\",\"tools\":\"app-react-sidebar-Footer-Footer-module__tools\"};","import { useState } from 'react';\nimport { Database, Hash, Server, Tag, Tool } from 'react-feather';\nimport { DialogOverlay } from '@reach/dialog';\n\nimport {\n useStatus,\n useVersionStatus,\n} from '@/portainer/services/api/status.service';\n\nimport { Button } from '@@/buttons';\n\nimport styles from './Footer.module.css';\n\nexport function BuildInfoModalButton() {\n const [isBuildInfoVisible, setIsBuildInfoVisible] = useState(false);\n const statusQuery = useStatus();\n\n if (!statusQuery.data) {\n return null;\n }\n\n const { Version } = statusQuery.data;\n\n return (\n <>\n setIsBuildInfoVisible(true)}\n >\n {Version}\n \n {isBuildInfoVisible && (\n setIsBuildInfoVisible(false)} />\n )}\n \n );\n}\n\nfunction BuildInfoModal({ closeModal }: { closeModal: () => void }) {\n const versionQuery = useVersionStatus();\n const statusQuery = useStatus();\n\n if (!statusQuery.data || !versionQuery.data) {\n return null;\n }\n\n const { Edition } = statusQuery.data;\n const { ServerVersion, DatabaseVersion, Build } = versionQuery.data;\n\n return (\n \n
    \n
    \n
    \n \n
    Portainer {Edition}
    \n
    \n
    \n
    \n \n \n \n \n \n \n \n \n \n \n \n
    \n \n \n Server Version: {ServerVersion}\n \n \n \n \n Database Version: {DatabaseVersion}\n \n
    \n \n \n CI Build Number: {Build.BuildNumber}\n \n \n \n \n Image Tag: {Build.ImageTag}\n \n
    \n
    \n
    \n \n \n Compilation tools:\n \n\n
    \n \n Nodejs v{Build.NodejsVersion}\n \n \n Yarn v{Build.YarnVersion}\n \n \n Webpack v{Build.WebpackVersion}\n \n Go v{Build.GoVersion}\n
    \n
    \n
    \n
    \n \n
    \n
    \n
    \n
    \n );\n}\n","import { PropsWithChildren } from 'react';\nimport clsx from 'clsx';\n\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\n\nimport { UpdateNotification } from './UpdateNotifications';\nimport { BuildInfoModalButton } from './BuildInfoModal';\nimport '@reach/dialog/styles.css';\nimport styles from './Footer.module.css';\nimport Logo from './portainer_logo.svg?c';\n\nexport function Footer() {\n return isBE ? : ;\n}\n\nfunction CEFooter() {\n return (\n
    \n \n\n \n \n Community Edition\n\n \n\n \n Upgrade\n \n \n
    \n );\n}\n\nfunction BEFooter() {\n return (\n
    \n \n ©\n Portainer Business Edition\n\n \n \n
    \n );\n}\n\nfunction FooterContent({ children }: PropsWithChildren) {\n return (\n
    \n {children}\n
    \n );\n}\n","import { ChevronsLeft, ChevronsRight } from 'react-feather';\nimport clsx from 'clsx';\n\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\nimport smallLogo from '@/assets/ico/logomark.svg';\n\nimport { Link } from '@@/Link';\n\nimport fullLogoBE from './portainer_logo-BE.svg';\nimport fullLogoCE from './portainer_logo-CE.svg';\nimport { useSidebarState } from './useSidebarState';\nimport styles from './Header.module.css';\n\ninterface Props {\n logo?: string;\n}\n\nexport function Header({ logo: customLogo }: Props) {\n const { toggle, isOpen } = useSidebarState();\n\n return (\n
    \n
    \n \n \n \n {isOpen && customLogo && (\n \n Powered by\n \n {isBE ? (\n 'portainer business'\n ) : (\n \n portainer community\n \n )}\n \n
    \n )}\n
    \n\n toggle()}\n className={clsx(\n styles.collapseBtn,\n 'w-6 h-6 flex justify-center items-center border-0 rounded',\n 'transition-all duration-200',\n 'text-sm text-gray-4 be:text-gray-5 hover:text-white be:hover:text-white',\n 'bg-blue-11 be:bg-gray-10',\n 'th-dark:bg-gray-warm-11',\n 'absolute',\n { '-right-[10px]': !isOpen, 'right-6': isOpen }\n )}\n aria-label=\"Toggle Sidebar\"\n title=\"Toggle Sidebar\"\n >\n {isOpen ? : }\n \n
    \n );\n}\n\nfunction getLogo(isOpen: boolean, customLogo?: string) {\n if (customLogo) {\n return customLogo;\n }\n\n if (!isOpen) {\n return smallLogo;\n }\n\n return isBE ? fullLogoBE : fullLogoCE;\n}\n\nfunction Logo({\n customLogo,\n isOpen,\n}: {\n customLogo?: string;\n isOpen: boolean;\n}) {\n const logo = getLogo(isOpen, customLogo);\n\n return (\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"logo\":\"app-react-sidebar-Header-module__logo\",\"collapseBtn\":\"app-react-sidebar-Header-module__collapseBtn\"};","import angular from 'angular';\n\nimport { AngularSidebarService } from '@/react/sidebar/useSidebarState';\nimport { Sidebar } from '@/react/sidebar/Sidebar';\nimport { r2a } from '@/react-tools/react2angular';\n\nexport const sidebarModule = angular\n .module('portainer.app.sidebar', [])\n .component('sidebar', r2a(Sidebar, []))\n .factory('SidebarService', AngularSidebarService).name;\n","import clsx from 'clsx';\nimport { Home } from 'react-feather';\n\nimport { useUser } from '@/portainer/hooks/useUser';\nimport { useIsTeamLeader } from '@/portainer/users/queries';\nimport { usePublicSettings } from '@/portainer/settings/queries';\n\nimport styles from './Sidebar.module.css';\nimport { EdgeComputeSidebar } from './EdgeComputeSidebar';\nimport { EnvironmentSidebar } from './EnvironmentSidebar';\nimport { SettingsSidebar } from './SettingsSidebar';\nimport { SidebarItem } from './SidebarItem';\nimport { Footer } from './Footer';\nimport { Header } from './Header';\nimport { SidebarProvider } from './useSidebarState';\n\nexport function Sidebar() {\n const { isAdmin, user } = useUser();\n const isTeamLeader = useIsTeamLeader(user) as boolean;\n\n const settingsQuery = usePublicSettings();\n\n if (!settingsQuery.data) {\n return null;\n }\n\n const { EnableEdgeComputeFeatures, LogoURL } = settingsQuery.data;\n\n return (\n /* in the future (when we remove r2a) this should wrap the whole app - to change root styles */\n \n \n
    \n\n {/* negative margin + padding -> scrollbar won't hide the content */}\n
    \n
      \n \n\n \n\n {isAdmin && EnableEdgeComputeFeatures && }\n\n {(isAdmin || isTeamLeader) && (\n \n )}\n
    \n
    \n\n
    \n
    \n
    \n \n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"root\":\"app-react-sidebar-Sidebar-module__root\"};","const autoNgTemplateLoaderTemplate1 = require('./views/account/account.html');\nconst autoNgTemplateLoaderTemplate2 = require('./views/auth/auth.html');\nconst autoNgTemplateLoaderTemplate3 = require('./views/internal-auth/internal-auth.html');\nconst autoNgTemplateLoaderTemplate4 = require('./views/logout/logout.html');\nconst autoNgTemplateLoaderTemplate5 = require('./views/endpoints/endpoints.html');\nconst autoNgTemplateLoaderTemplate6 = require('./views/endpoints/edit/endpoint.html');\nconst autoNgTemplateLoaderTemplate7 = require('./views/devices/import/importDevice.html');\nconst autoNgTemplateLoaderTemplate8 = require('./views/endpoints/access/endpointAccess.html');\nconst autoNgTemplateLoaderTemplate9 = require('./views/endpoints/kvm/endpointKVM.html');\nconst autoNgTemplateLoaderTemplate10 = require('./views/groups/groups.html');\nconst autoNgTemplateLoaderTemplate11 = require('./views/groups/edit/group.html');\nconst autoNgTemplateLoaderTemplate12 = require('./views/groups/create/creategroup.html');\nconst autoNgTemplateLoaderTemplate13 = require('./views/groups/access/groupAccess.html');\nconst autoNgTemplateLoaderTemplate14 = require('./views/init/admin/initAdmin.html');\nconst autoNgTemplateLoaderTemplate15 = require('./views/init/endpoint/initEndpoint.html');\nconst autoNgTemplateLoaderTemplate16 = require('./views/registries/registries.html');\nconst autoNgTemplateLoaderTemplate17 = require('./views/settings/settings.html');\nconst autoNgTemplateLoaderTemplate18 = require('./views/settings/authentication/settingsAuthentication.html');\nconst autoNgTemplateLoaderTemplate19 = require('./views/tags/tags.html');\nconst autoNgTemplateLoaderTemplate20 = require('./views/users/users.html');\nconst autoNgTemplateLoaderTemplate21 = require('./views/users/edit/user.html');\nconst autoNgTemplateLoaderTemplate22 = require('./views/teams/teams.html');\nconst autoNgTemplateLoaderTemplate23 = require('./views/teams/edit/team.html');\n\nimport _ from 'lodash-es';\n\nimport './rbac';\nimport './registry-management';\nimport licenseManagementModule from './license-management';\nimport settingsModule from './settings';\nimport userActivityModule from './user-activity';\nimport componentsModule from './components';\nimport featureFlagModule from './feature-flags';\nimport servicesModule from './services';\nimport teamsModule from './teams';\nimport homeModule from './home';\nimport { accessControlModule } from './access-control';\nimport { reactModule } from './react';\nimport { sidebarModule } from './react/views/sidebar';\nimport { getEnvironments } from './environments/environment.service';\n\nasync function initAuthentication(authManager, Authentication, $rootScope, $state) {\n authManager.checkAuthOnRefresh();\n // The unauthenticated event is broadcasted by the jwtInterceptor when\n // hitting a 401. We're using this instead of the usual combination of\n // authManager.redirectWhenUnauthenticated() + unauthenticatedRedirector\n // to have more controls on which URL should trigger the unauthenticated state.\n $rootScope.$on('unauthenticated', function (event, data) {\n if (!_.includes(data.config.url, '/v2/') && !_.includes(data.config.url, '/api/v4/') && isTransitionRequiresAuthentication($state.transition)) {\n $state.go('portainer.logout', { error: 'Your session has expired' });\n window.location.reload();\n }\n });\n\n return await Authentication.init();\n}\n\nangular\n .module('portainer.app', [\n homeModule,\n 'portainer.oauth',\n 'portainer.rbac',\n 'portainer.registrymanagement',\n licenseManagementModule,\n componentsModule,\n settingsModule,\n userActivityModule,\n featureFlagModule,\n teamsModule,\n 'portainer.shared.datatable',\n servicesModule,\n accessControlModule,\n reactModule,\n sidebarModule,\n ])\n .config([\n '$stateRegistryProvider',\n function ($stateRegistryProvider) {\n 'use strict';\n\n var root = {\n name: 'root',\n abstract: true,\n onEnter: /* @ngInject */ function onEnter($async, StateManager, Authentication, Notifications, authManager, $rootScope, $state) {\n return $async(async () => {\n const appState = StateManager.getState();\n if (!appState.loading) {\n return;\n }\n try {\n const loggedIn = await initAuthentication(authManager, Authentication, $rootScope, $state);\n await StateManager.initialize();\n if (!loggedIn && isTransitionRequiresAuthentication($state.transition)) {\n $state.go('portainer.logout');\n return Promise.reject('Unauthenticated');\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n throw err;\n }\n });\n },\n views: {\n 'sidebar@': {\n component: 'sidebar',\n },\n },\n };\n\n var endpointRoot = {\n name: 'endpoint',\n url: '/:endpointId',\n parent: 'root',\n abstract: true,\n resolve: {\n endpoint: /* @ngInject */ function endpoint($async, $state, $transition$, EndpointProvider, EndpointService, Notifications) {\n return $async(async () => {\n try {\n const endpointId = +$transition$.params().endpointId;\n\n const endpoint = await EndpointService.endpoint(endpointId);\n if ((endpoint.Type === 4 || endpoint.Type === 7) && !endpoint.EdgeID) {\n $state.go('portainer.endpoints.endpoint', { id: endpoint.Id });\n return;\n }\n\n EndpointProvider.setCurrentEndpoint(endpoint);\n\n return endpoint;\n } catch (e) {\n Notifications.error('Failed loading environment', e);\n $state.go('portainer.home', {}, { reload: true });\n return;\n }\n });\n },\n },\n };\n\n var portainer = {\n name: 'portainer',\n parent: 'root',\n abstract: true,\n };\n\n var account = {\n name: 'portainer.account',\n url: '/account',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'AccountController',\n },\n },\n };\n\n const tokenCreation = {\n name: 'portainer.account.new-access-token',\n url: '/tokens/new',\n views: {\n 'content@': {\n component: 'createUserAccessToken',\n },\n },\n };\n\n var authentication = {\n name: 'portainer.auth',\n url: '/auth',\n params: {\n reload: false,\n },\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate2,\n controller: 'AuthenticationController',\n controllerAs: 'ctrl',\n },\n 'sidebar@': {},\n },\n };\n var internalAuthentication = {\n name: 'portainer.internal-auth',\n url: '/internal-auth',\n params: {\n reload: false,\n },\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate3,\n controller: 'InternalAuthenticationController',\n controllerAs: 'ctrl',\n },\n 'sidebar@': {},\n },\n };\n const logout = {\n name: 'portainer.logout',\n url: '/logout',\n params: {\n error: '',\n performApiLogout: false,\n },\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate4,\n controller: 'LogoutController',\n controllerAs: 'ctrl',\n },\n 'sidebar@': {},\n },\n };\n\n var endpoints = {\n name: 'portainer.endpoints',\n url: '/endpoints',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate5,\n controller: 'EndpointsController',\n },\n },\n };\n\n var endpoint = {\n name: 'portainer.endpoints.endpoint',\n url: '/:id',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate6,\n controller: 'EndpointController',\n },\n },\n };\n\n var deviceImport = {\n name: 'portainer.endpoints.importDevice',\n url: '/device',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate7,\n controller: 'ImportDeviceController',\n },\n },\n };\n\n var addFDOProfile = {\n name: 'portainer.endpoints.profile',\n url: '/profile',\n views: {\n 'content@': {\n component: 'addProfileView',\n },\n },\n };\n\n var editFDOProfile = {\n name: 'portainer.endpoints.profile.edit',\n url: '/:id',\n views: {\n 'content@': {\n component: 'editProfileView',\n },\n },\n };\n\n var endpointAccess = {\n name: 'portainer.endpoints.endpoint.access',\n url: '/access',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate8,\n controller: 'EndpointAccessController',\n controllerAs: 'ctrl',\n },\n },\n };\n\n var endpointKVM = {\n name: 'portainer.endpoints.endpoint.kvm',\n url: '/kvm?deviceId&deviceName',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate9,\n controller: 'EndpointKVMController',\n },\n },\n };\n\n var groups = {\n name: 'portainer.groups',\n url: '/groups',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate10,\n controller: 'GroupsController',\n },\n },\n };\n\n var group = {\n name: 'portainer.groups.group',\n url: '/:id',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate11,\n controller: 'GroupController',\n },\n },\n };\n\n var groupCreation = {\n name: 'portainer.groups.new',\n url: '/new',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate12,\n controller: 'CreateGroupController',\n },\n },\n };\n\n var groupAccess = {\n name: 'portainer.groups.group.access',\n url: '/access',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate13,\n controller: 'GroupAccessController',\n },\n },\n };\n\n var home = {\n name: 'portainer.home',\n url: '/home',\n views: {\n 'content@': {\n component: 'homeView',\n },\n },\n };\n\n var init = {\n name: 'portainer.init',\n abstract: true,\n url: '/init',\n views: {\n 'sidebar@': {},\n },\n };\n\n var initAdmin = {\n name: 'portainer.init.admin',\n url: '/admin',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate14,\n controller: 'InitAdminController',\n },\n },\n };\n\n const initLicense = {\n name: 'portainer.init.license',\n url: '/license',\n views: {\n 'content@': {\n component: 'initLicenseView',\n },\n },\n };\n\n var initEndpoint = {\n name: 'portainer.init.endpoint',\n url: '/endpoint',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate15,\n controller: 'InitEndpointController',\n controllerAs: 'ctrl',\n },\n },\n };\n\n var registries = {\n name: 'portainer.registries',\n url: '/registries',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate16,\n controller: 'RegistriesController',\n },\n },\n };\n\n var registry = {\n name: 'portainer.registries.registry',\n url: '/:id',\n views: {\n 'content@': {\n component: 'editRegistry',\n },\n },\n };\n\n const registryCreation = {\n name: 'portainer.registries.new',\n url: '/new',\n views: {\n 'content@': {\n component: 'createRegistry',\n },\n },\n };\n\n var settings = {\n name: 'portainer.settings',\n url: '/settings',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate17,\n controller: 'SettingsController',\n },\n },\n };\n\n var settingsAuthentication = {\n name: 'portainer.settings.authentication',\n url: '/auth',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate18,\n controller: 'SettingsAuthenticationController',\n },\n },\n };\n\n const settingsCloud = {\n name: 'portainer.settings.cloud',\n url: '/cloud',\n views: {\n 'content@': {\n component: 'settingsCloudView',\n },\n },\n };\n\n const addCloudCredential = {\n name: 'portainer.settings.cloud.addCredential',\n url: '/credentials/new',\n views: {\n 'content@': {\n component: 'addCloudCredentialView',\n },\n },\n };\n\n const editCloudCredential = {\n name: 'portainer.settings.cloud.credential',\n url: '/credentials/:id',\n views: {\n 'content@': {\n component: 'editCloudCredentialView',\n },\n },\n };\n\n var settingsEdgeCompute = {\n name: 'portainer.settings.edgeCompute',\n url: '/edge',\n views: {\n 'content@': {\n component: 'settingsEdgeComputeView',\n },\n },\n };\n\n var tags = {\n name: 'portainer.tags',\n url: '/tags',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate19,\n controller: 'TagsController',\n },\n },\n };\n\n var users = {\n name: 'portainer.users',\n url: '/users',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate20,\n controller: 'UsersController',\n },\n },\n };\n\n var user = {\n name: 'portainer.users.user',\n url: '/:id',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate21,\n controller: 'UserController',\n },\n },\n };\n\n var teams = {\n name: 'portainer.teams',\n url: '/teams',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate22,\n controller: 'TeamsController',\n },\n },\n };\n\n var team = {\n name: 'portainer.teams.team',\n url: '/:id',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate23,\n controller: 'TeamController',\n },\n },\n };\n\n $stateRegistryProvider.register(root);\n $stateRegistryProvider.register(endpointRoot);\n $stateRegistryProvider.register(portainer);\n $stateRegistryProvider.register(account);\n $stateRegistryProvider.register(tokenCreation);\n $stateRegistryProvider.register(authentication);\n $stateRegistryProvider.register(internalAuthentication);\n $stateRegistryProvider.register(logout);\n $stateRegistryProvider.register(endpoints);\n $stateRegistryProvider.register(endpoint);\n $stateRegistryProvider.register(endpointAccess);\n $stateRegistryProvider.register(endpointKVM);\n $stateRegistryProvider.register(deviceImport);\n $stateRegistryProvider.register(addFDOProfile);\n $stateRegistryProvider.register(editFDOProfile);\n $stateRegistryProvider.register(groups);\n $stateRegistryProvider.register(group);\n $stateRegistryProvider.register(groupAccess);\n $stateRegistryProvider.register(groupCreation);\n $stateRegistryProvider.register(home);\n $stateRegistryProvider.register(init);\n $stateRegistryProvider.register(initEndpoint);\n $stateRegistryProvider.register(initAdmin);\n $stateRegistryProvider.register(initLicense);\n $stateRegistryProvider.register(registries);\n $stateRegistryProvider.register(registry);\n $stateRegistryProvider.register(registryCreation);\n $stateRegistryProvider.register(settings);\n $stateRegistryProvider.register(settingsAuthentication);\n $stateRegistryProvider.register(settingsCloud);\n $stateRegistryProvider.register(addCloudCredential);\n $stateRegistryProvider.register(editCloudCredential);\n $stateRegistryProvider.register(settingsEdgeCompute);\n $stateRegistryProvider.register(tags);\n $stateRegistryProvider.register(users);\n $stateRegistryProvider.register(user);\n $stateRegistryProvider.register(teams);\n $stateRegistryProvider.register(team);\n },\n ])\n .run(run);\n\nconst UNAUTHENTICATED_ROUTES = ['portainer.logout', 'portainer.internal-auth', 'portainer.auth', 'portainer.init.admin'];\nfunction isTransitionRequiresAuthentication(transition) {\n if (!transition) {\n return true;\n }\n const nextTransition = transition && transition.to();\n const nextTransitionName = nextTransition ? nextTransition.name : '';\n return !UNAUTHENTICATED_ROUTES.some((route) => nextTransitionName.startsWith(route));\n}\n\n/* @ngInject */\nfunction run($transitions, UserService, Authentication, LicenseService, Notifications) {\n $transitions.onBefore({ to: 'portainer.init.*' }, async function (transition) {\n const to = transition.to();\n const stateService = transition.router.stateService;\n\n try {\n const adminExists = await UserService.administratorExists();\n if (!adminExists) {\n return to.name !== 'portainer.init.admin' ? stateService.target('portainer.init.admin') : true;\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve admin');\n throw err;\n }\n\n if (!Authentication.isAuthenticated()) {\n return stateService.target('portainer.auth');\n }\n\n try {\n const licenseInfo = await LicenseService.info();\n if (!licenseInfo.valid) {\n return to.name !== 'portainer.init.license' ? stateService.target('portainer.init.license') : true;\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve license info');\n throw err;\n }\n\n try {\n const endpoints = await getEnvironments({ start: 0, limit: 1 });\n if (endpoints.value.length === 0) {\n return to.name !== 'portainer.init.endpoint' ? stateService.target('portainer.init.endpoint') : true;\n }\n\n return stateService.target('portainer.home');\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment info');\n throw err;\n }\n });\n\n $transitions.onBefore({ to: (state) => !state.name.startsWith('portainer.init') && !UNAUTHENTICATED_ROUTES.includes(state.name) }, function (transition) {\n const stateService = transition.router.stateService;\n\n async function licenseCheckAsync() {\n try {\n const licenseInfo = await LicenseService.info();\n if (!licenseInfo.valid) {\n return stateService.target('portainer.init.license');\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve license info');\n throw err;\n }\n }\n\n licenseCheckAsync();\n });\n}\n","const autoNgTemplateLoaderTemplate1 = require('./InformationPanelAngular.html');\n\nexport const InformationPanelAngular = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n titleText: '@',\n dismissAction: '&?',\n },\n transclude: true,\n};\n","const autoNgTemplateLoaderTemplate1 = require('./accessDatatable.html');\n\nangular.module('portainer.app').component('accessDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'AccessDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n roles: '<',\n tableKey: '@',\n orderBy: '@',\n removeAction: '<',\n updateAction: '<',\n reverseOrder: '<',\n showWarning: '<',\n isUpdateEnabled: '<',\n showRoles: '<',\n inheritFrom: '<',\n },\n});\n","angular.module('portainer.app').controller('AccessDatatableController', [\n '$scope',\n '$controller',\n 'DatatableService',\n function ($scope, $controller, DatatableService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.disableRemove = function (item) {\n return item.Inherited && this.inheritFrom;\n };\n\n this.allowSelection = function (item) {\n return !this.disableRemove(item);\n };\n\n this.$onInit = function () {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n }\n this.onSettingsRepeaterChange();\n };\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./accessTable.html');\n\nangular.module('portainer.app').component('accessTable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: function () {\n this.state = {\n orderBy: 'Name',\n reverseOrder: false,\n paginatedItemLimit: '10',\n textFilter: '',\n };\n\n this.changeOrderBy = function (orderField) {\n this.state.reverseOrder = this.state.orderBy === orderField ? !this.state.reverseOrder : false;\n this.state.orderBy = orderField;\n };\n },\n bindings: {\n dataset: '<',\n entryClick: '<',\n emptyDatasetMessage: '@',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./porAccessControlForm.html');\n\nangular.module('portainer.app').component('porAccessControlForm', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'porAccessControlFormController',\n bindings: {\n // This object will be populated with the form data.\n // Model reference in porAccessControlFromModel.js\n formData: '=',\n // Optional. An existing resource control object that will be used to set\n // the default values of the component.\n resourceControl: '<',\n hideTitle: '<',\n },\n});\n","import _ from 'lodash-es';\nimport { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\n\nangular.module('portainer.app').controller('porAccessControlFormController', [\n '$q',\n '$scope',\n 'UserService',\n 'TeamService',\n 'Notifications',\n 'Authentication',\n 'ResourceControlService',\n function ($q, $scope, UserService, TeamService, Notifications, Authentication, ResourceControlService) {\n var ctrl = this;\n\n ctrl.RCO = RCO;\n\n ctrl.availableTeams = [];\n ctrl.availableUsers = [];\n\n ctrl.onAccessControlEnabledChange = onAccessControlEnabledChange.bind(ctrl);\n\n function onAccessControlEnabledChange(enabled) {\n $scope.$evalAsync(() => {\n ctrl.formData.AccessControlEnabled = enabled;\n });\n }\n\n function setOwnership(resourceControl, isAdmin) {\n if (isAdmin && resourceControl.Ownership === RCO.PRIVATE) {\n ctrl.formData.Ownership = RCO.RESTRICTED;\n } else {\n ctrl.formData.Ownership = resourceControl.Ownership;\n }\n\n if (ctrl.formData.Ownership === RCO.PUBLIC) {\n ctrl.formData.AccessControlEnabled = false;\n }\n }\n\n function setAuthorizedUsersAndTeams(authorizedUsers, authorizedTeams) {\n angular.forEach(ctrl.availableUsers, function (user) {\n var found = _.find(authorizedUsers, { Id: user.Id });\n if (found) {\n user.selected = true;\n }\n });\n\n angular.forEach(ctrl.availableTeams, function (team) {\n var found = _.find(authorizedTeams, { Id: team.Id });\n if (found) {\n team.selected = true;\n }\n });\n }\n\n this.$onInit = $onInit;\n function $onInit() {\n var isAdmin = Authentication.isAdmin();\n ctrl.isAdmin = isAdmin;\n\n if (isAdmin) {\n ctrl.formData.Ownership = ctrl.RCO.ADMINISTRATORS;\n }\n\n $q.all({\n availableTeams: TeamService.teams(),\n availableUsers: isAdmin ? UserService.users(false) : [],\n })\n .then(function success(data) {\n ctrl.availableUsers = _.orderBy(data.availableUsers, 'Username', 'asc');\n\n var availableTeams = _.orderBy(data.availableTeams, 'Name', 'asc');\n ctrl.availableTeams = availableTeams;\n if (!isAdmin && availableTeams.length === 1) {\n ctrl.formData.AuthorizedTeams = availableTeams;\n }\n\n return $q.when(ctrl.resourceControl && ResourceControlService.retrieveOwnershipDetails(ctrl.resourceControl));\n })\n .then(function success(data) {\n if (data) {\n var authorizedUsers = data.authorizedUsers;\n var authorizedTeams = data.authorizedTeams;\n setOwnership(ctrl.resourceControl, isAdmin);\n setAuthorizedUsersAndTeams(authorizedUsers, authorizedTeams);\n }\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve access control information');\n });\n\n this.onChangeEnablement = function (enable) {\n $scope.$evalAsync(() => {\n ctrl.formData.AccessControlEnabled = enable;\n });\n };\n }\n },\n]);\n","import { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\n\n/**\n * @deprecated use only for angularjs components. For react components use ./model.ts\n */\nexport function AccessControlFormData() {\n this.AccessControlEnabled = true;\n this.Ownership = RCO.PRIVATE;\n this.AuthorizedUsers = [];\n this.AuthorizedTeams = [];\n}\n","import angular from 'angular';\n\nimport { porAccessManagement } from './por-access-management';\nimport { porAccessManagementUsersSelector } from './por-access-management-users-selector';\n\nexport default angular\n .module('portainer.app.component.access-management', [])\n .component('porAccessManagement', porAccessManagement)\n .component('porAccessManagementUsersSelector', porAccessManagementUsersSelector).name;\n","const autoNgTemplateLoaderTemplate1 = require('./por-access-management-users-selector.html');\n\nexport const porAccessManagementUsersSelector = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n options: '<',\n value: '=',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./porAccessManagement.html');\n\nexport const porAccessManagement = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'porAccessManagementController',\n controllerAs: 'ctrl',\n bindings: {\n accessControlledEntity: '<',\n inheritFrom: '<',\n entityType: '@',\n updateAccess: '<',\n actionInProgress: '<',\n filterUsers: '<',\n limitedFeature: '<',\n },\n};\n","import _ from 'lodash-es';\nimport angular from 'angular';\n\nimport { RoleTypes } from '@/portainer/rbac/models/role';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nclass PorAccessManagementController {\n /* @ngInject */\n constructor(Notifications, AccessService, RoleService) {\n Object.assign(this, { Notifications, AccessService, RoleService });\n\n this.limitedToBE = false;\n\n this.unauthorizeAccess = this.unauthorizeAccess.bind(this);\n this.updateAction = this.updateAction.bind(this);\n }\n\n updateAction() {\n const entity = this.accessControlledEntity;\n const oldUserAccessPolicies = entity.UserAccessPolicies;\n const oldTeamAccessPolicies = entity.TeamAccessPolicies;\n const updatedUserAccesses = _.filter(this.authorizedUsersAndTeams, { Updated: true, Type: 'user', Inherited: false });\n const updatedTeamAccesses = _.filter(this.authorizedUsersAndTeams, { Updated: true, Type: 'team', Inherited: false });\n\n const accessPolicies = this.AccessService.generateAccessPolicies(oldUserAccessPolicies, oldTeamAccessPolicies, updatedUserAccesses, updatedTeamAccesses);\n this.accessControlledEntity.UserAccessPolicies = accessPolicies.userAccessPolicies;\n this.accessControlledEntity.TeamAccessPolicies = accessPolicies.teamAccessPolicies;\n this.updateAccess();\n }\n\n authorizeAccess() {\n const entity = this.accessControlledEntity;\n const oldUserAccessPolicies = entity.UserAccessPolicies;\n const oldTeamAccessPolicies = entity.TeamAccessPolicies;\n const selectedRoleId = this.formValues.selectedRole.Id;\n const selectedUserAccesses = _.filter(this.formValues.multiselectOutput, (access) => access.Type === 'user');\n const selectedTeamAccesses = _.filter(this.formValues.multiselectOutput, (access) => access.Type === 'team');\n\n const accessPolicies = this.AccessService.generateAccessPolicies(oldUserAccessPolicies, oldTeamAccessPolicies, selectedUserAccesses, selectedTeamAccesses, selectedRoleId);\n this.accessControlledEntity.UserAccessPolicies = accessPolicies.userAccessPolicies;\n this.accessControlledEntity.TeamAccessPolicies = accessPolicies.teamAccessPolicies;\n this.updateAccess();\n }\n\n unauthorizeAccess(selectedAccesses) {\n const entity = this.accessControlledEntity;\n const userAccessPolicies = entity.UserAccessPolicies;\n const teamAccessPolicies = entity.TeamAccessPolicies;\n const selectedUserAccesses = _.filter(selectedAccesses, (access) => access.Type === 'user');\n const selectedTeamAccesses = _.filter(selectedAccesses, (access) => access.Type === 'team');\n\n _.forEach(selectedUserAccesses, (access) => delete userAccessPolicies[access.Id]);\n _.forEach(selectedTeamAccesses, (access) => delete teamAccessPolicies[access.Id]);\n this.updateAccess();\n }\n\n isRoleLimitedToBE(role) {\n if (!this.limitedToBE) {\n return false;\n }\n\n return role.ID !== RoleTypes.STANDARD;\n }\n\n roleLabel(role) {\n if (!this.limitedToBE) {\n return role.Name;\n }\n\n if (this.isRoleLimitedToBE(role)) {\n return `${role.Name} (Business Edition Feature)`;\n }\n\n return `${role.Name} (Default)`;\n }\n\n async $onInit() {\n try {\n if (this.limitedFeature) {\n this.limitedToBE = isLimitedToBE(this.limitedFeature);\n }\n\n const entity = this.accessControlledEntity;\n const parent = this.inheritFrom;\n\n const roles = await this.RoleService.roles();\n this.roles = _.orderBy(roles, 'Priority', 'asc');\n this.formValues = {\n selectedRole: this.roles.find((role) => !this.isRoleLimitedToBE(role)),\n };\n\n const data = await this.AccessService.accesses(entity, parent, this.roles);\n\n if (this.filterUsers) {\n data.availableUsersAndTeams = this.filterUsers(data.availableUsersAndTeams);\n }\n\n this.availableUsersAndTeams = _.orderBy(data.availableUsersAndTeams, 'Name', 'asc');\n this.authorizedUsersAndTeams = data.authorizedUsersAndTeams;\n } catch (err) {\n this.availableUsersAndTeams = [];\n this.authorizedUsersAndTeams = [];\n this.Notifications.error('Failure', err, 'Unable to retrieve accesses');\n }\n }\n}\n\nexport default PorAccessManagementController;\nangular.module('portainer.app').controller('porAccessManagementController', PorAccessManagementController);\n","const autoNgTemplateLoaderTemplate1 = require('./associatedEndpointsSelector.html');\n\nimport angular from 'angular';\nimport AssociatedEndpointsSelectorController from './associatedEndpointsSelectorController';\n\nangular.module('portainer.app').component('associatedEndpointsSelector', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: AssociatedEndpointsSelectorController,\n bindings: {\n endpointIds: '<',\n tags: '<',\n groups: '<',\n hasBackendPagination: '<',\n\n onAssociate: '<',\n onDissociate: '<',\n },\n});\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nimport { EdgeTypes } from '@/portainer/environments/types';\nimport { getEnvironments } from '@/portainer/environments/environment.service';\n\nclass AssoicatedEndpointsSelectorController {\n /* @ngInject */\n constructor($async) {\n this.$async = $async;\n\n this.state = {\n available: {\n limit: '10',\n filter: '',\n pageNumber: 1,\n totalCount: 0,\n },\n associated: {\n limit: '10',\n filter: '',\n pageNumber: 1,\n totalCount: 0,\n },\n };\n\n this.endpoints = {\n associated: [],\n available: null,\n };\n\n this.getAvailableEndpoints = this.getAvailableEndpoints.bind(this);\n this.getAssociatedEndpoints = this.getAssociatedEndpoints.bind(this);\n this.associateEndpoint = this.associateEndpoint.bind(this);\n this.dissociateEndpoint = this.dissociateEndpoint.bind(this);\n this.loadData = this.loadData.bind(this);\n }\n\n $onInit() {\n this.loadData();\n }\n\n $onChanges({ endpointIds }) {\n if (endpointIds && endpointIds.currentValue) {\n this.loadData();\n }\n }\n\n loadData() {\n this.getAvailableEndpoints();\n this.getAssociatedEndpoints();\n }\n\n /* #region internal queries to retrieve endpoints per \"side\" of the selector */\n getAvailableEndpoints() {\n return this.$async(async () => {\n const { start, search, limit } = this.getPaginationData('available');\n const query = { search, types: EdgeTypes };\n\n const response = await getEnvironments({ start, limit, query });\n\n const endpoints = _.filter(response.value, (endpoint) => !_.includes(this.endpointIds, endpoint.Id));\n this.setTableData('available', endpoints, response.totalCount);\n this.noEndpoints = this.state.available.totalCount === 0;\n });\n }\n\n getAssociatedEndpoints() {\n return this.$async(async () => {\n let response = { value: [], totalCount: 0 };\n if (this.endpointIds.length > 0) {\n // fetch only if already has associated endpoints\n const { start, search, limit } = this.getPaginationData('associated');\n const query = { search, types: EdgeTypes, endpointIds: this.endpointIds };\n\n response = await getEnvironments({ start, limit, query });\n }\n\n this.setTableData('associated', response.value, response.totalCount);\n });\n }\n /* #endregion */\n\n /* #region On endpoint click (either available or associated) */\n associateEndpoint(endpoint) {\n this.onAssociate(endpoint);\n }\n\n dissociateEndpoint(endpoint) {\n this.onDissociate(endpoint);\n }\n /* #endregion */\n\n /* #region Utils funcs */\n getPaginationData(tableType) {\n const { pageNumber, limit, search } = this.state[tableType];\n const start = (pageNumber - 1) * limit + 1;\n\n return { start, search, limit };\n }\n\n setTableData(tableType, endpoints, totalCount) {\n this.endpoints[tableType] = endpoints;\n this.state[tableType].totalCount = parseInt(totalCount, 10);\n }\n /* #endregion */\n}\n\nangular.module('portainer.app').controller('AssoicatedEndpointsSelectorController', AssoicatedEndpointsSelectorController);\nexport default AssoicatedEndpointsSelectorController;\n","angular.module('portainer.app').directive('autoFocus', [\n '$timeout',\n function porAutoFocus($timeout) {\n var directive = {\n restrict: 'A',\n link: function (scope, element) {\n $timeout(function () {\n element[0].focus();\n });\n },\n };\n\n return directive;\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./betaPanel.html');\n\nangular.module('portainer.app').component('betaPanel', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n});\n","angular.module('portainer.app').directive('buttonSpinner', function buttonSpinner() {\n var directive = {\n restrict: 'A',\n scope: {\n spinning: '=buttonSpinner',\n },\n transclude: true,\n template: ' ',\n };\n\n return directive;\n});\n","const autoNgTemplateLoaderTemplate1 = require('./codeEditor.html');\n\nangular.module('portainer.app').component('codeEditor', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'CodeEditorController',\n bindings: {\n identifier: '@',\n placeholder: '@',\n yml: '<',\n readOnly: '<',\n onChange: '<',\n value: '<',\n },\n});\n","angular.module('portainer.app').controller('CodeEditorController', function CodeEditorController($document, CodeMirrorService, $scope) {\n var ctrl = this;\n\n this.$onChanges = function $onChanges({ value }) {\n if (value && value.currentValue && ctrl.editor && ctrl.editor.getValue() !== value.currentValue) {\n ctrl.editor.setValue(value.currentValue);\n }\n };\n\n this.$onInit = function () {\n $document.ready(function () {\n var editorElement = $document[0].getElementById(ctrl.identifier);\n ctrl.editor = CodeMirrorService.applyCodeMirrorOnElement(editorElement, ctrl.yml, ctrl.readOnly);\n if (ctrl.onChange) {\n ctrl.editor.on('change', (...args) => $scope.$evalAsync(() => ctrl.onChange(...args)));\n }\n if (ctrl.value) {\n ctrl.editor.setValue(ctrl.value);\n }\n });\n };\n});\n","export default class CopyButtonController {\n /* @ngInject */\n constructor(clipboard) {\n this.clipboard = clipboard;\n this.state = { isFading: false };\n }\n\n copyValueText() {\n this.clipboard.copyText(this.value);\n this.state.isFading = true;\n setTimeout(() => (this.state.isFading = false), 1000);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./copy-button.html');\n\nimport angular from 'angular';\nimport controller from './copy-button.controller';\nimport './copy-button.css';\n\nangular.module('portainer.app').component('copyButton', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n value: '<',\n },\n});\n","import { parseCronExpression } from 'cron-schedule';\n\nangular.module('portainer.app').directive('cronrule', function () {\n return {\n restrict: 'A',\n require: 'ngModel',\n link: function ($scope, $element, $attrs, ngModel) {\n ngModel.$validators.invalidCron = function (modelValue) {\n try {\n parseCronExpression(modelValue);\n return true;\n } catch (error) {\n return false;\n }\n };\n },\n };\n});\n","class CustomTemplateCommonFieldsController {\n /* @ngInject */\n constructor() {\n this.platformTypes = [\n { label: 'Linux', value: 1 },\n { label: 'Windows', value: 2 },\n ];\n\n this.templateTypes = [\n { label: 'Swarm', value: 1 },\n { label: 'Standalone', value: 2 },\n ];\n }\n}\n\nexport default CustomTemplateCommonFieldsController;\n","const autoNgTemplateLoaderTemplate1 = require('./customTemplateCommonFields.html');\n\nimport CustomTemplateCommonFieldsController from './customTemplateCommonFieldsController.js';\n\nangular.module('portainer.app').component('customTemplateCommonFields', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: CustomTemplateCommonFieldsController,\n bindings: {\n formValues: '=',\n showPlatformField: '<',\n showTypeField: '<',\n nameRegex: '<',\n },\n});\n","class CustomTemplateSelectorController {\n /* @ngInject */\n constructor($async, CustomTemplateService, Notifications) {\n Object.assign(this, { $async, CustomTemplateService, Notifications });\n\n this.selectedTemplate = null;\n this.templates = null;\n }\n\n async handleChangeTemplate(templateId) {\n this.selectedTemplate = this.templates.find((t) => t.Id === templateId);\n this.onChange(templateId, this.selectedTemplate);\n }\n\n $onChanges({ value }) {\n if (value && value.currentValue && this.templates) {\n this.handleChangeTemplate(value.currentValue);\n }\n }\n\n $onInit() {\n return this.$async(async () => {\n try {\n const templates = await this.CustomTemplateService.customTemplates(this.stackType);\n this.templates = templates.map((template) => ({ ...template, label: `${template.Title} - ${template.Description}` }));\n if (this.value) {\n this.handleChangeTemplate(this.value);\n }\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve Custom Templates');\n }\n });\n }\n}\n\nexport default CustomTemplateSelectorController;\n","const autoNgTemplateLoaderTemplate1 = require('./custom-template-selector.html');\n\nimport angular from 'angular';\nimport controller from './custom-template-selector.controller.js';\n\nexport const customTemplateSelector = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n newTemplatePath: '@',\n stackType: '<',\n\n value: '<',\n onChange: '<',\n },\n};\n\nangular.module('portainer.app').component('customTemplateSelector', customTemplateSelector);\n","const CUSTOM_TEMPLATES_TYPES = {\n SWARM: 1,\n STANDALONE: 2,\n KUBERNETES: 3,\n};\n\nangular.module('portainer.docker').controller('CustomTemplatesListController', function ($scope, $controller, DatatableService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.typeLabel = typeLabel;\n this.$onInit = $onInit;\n\n function typeLabel(type) {\n switch (type) {\n case CUSTOM_TEMPLATES_TYPES.SWARM:\n return 'swarm';\n case CUSTOM_TEMPLATES_TYPES.KUBERNETES:\n return 'manifest';\n case CUSTOM_TEMPLATES_TYPES.STANDALONE:\n default:\n return 'standalone';\n }\n }\n\n function $onInit() {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n }\n this.onSettingsRepeaterChange();\n }\n});\n","const autoNgTemplateLoaderTemplate1 = require('./customTemplatesList.html');\n\nimport angular from 'angular';\n\nangular.module('portainer.app').component('customTemplatesList', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'CustomTemplatesListController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n templates: '<',\n tableKey: '@',\n onSelectClick: '<',\n showSwarmStacks: '<',\n onDeleteClick: '<',\n isEditAllowed: '<',\n createPath: '@',\n editPath: '@',\n },\n});\n","export default class AccessTokensDatatableController {\n /* @ngInject*/\n constructor($scope, $state, $controller, DatatableService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.onClickAdd = () => {\n if (this.uiCanExit()) {\n $state.go('portainer.account.new-access-token');\n }\n };\n\n this.$onInit = function () {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n this.onSettingsRepeaterChange();\n };\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./access-tokens-datatable.html');\n\nimport angular from 'angular';\nimport controller from './access-tokens-datatable.controller';\n\nangular.module('portainer.app').component('accessTokensDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n removeAction: '<',\n uiCanExit: '<',\n },\n});\n","export default class DatatableColumnsVisibilityController {\n constructor() {\n this.state = {\n isOpen: false,\n };\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./datatable-columns-visibility.html');\n\nimport angular from 'angular';\n\nimport controller from './datatable-columns-visibility.controller';\n\nangular.module('portainer.app').component('datatableColumnsVisibility', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n columns: '<',\n onChange: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./endpointsDatatable.html');\n\nimport './endpoints-datatable.css';\n\nangular.module('portainer.app').component('endpointsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'EndpointsDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n retrievePage: '<',\n },\n});\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('EndpointsDatatableController', [\n '$scope',\n '$controller',\n '$interval',\n 'DatatableService',\n 'PaginationService',\n 'Notifications',\n function ($scope, $controller, $interval, DatatableService, PaginationService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.state = Object.assign(this.state, {\n allowSelection: this.allowSelection,\n orderBy: this.orderBy,\n loading: true,\n filteredDataSet: [],\n totalFilteredDataset: 0,\n pageNumber: 1,\n interval: undefined,\n });\n\n this.paginationChanged = function () {\n this.state.loading = true;\n this.state.filteredDataSet = [];\n const start = (this.state.pageNumber - 1) * this.state.paginatedItemLimit + 1;\n this.retrievePage(start, this.state.paginatedItemLimit, this.state.textFilter)\n .then((data) => {\n this.state.filteredDataSet = data.endpoints;\n this.state.totalFilteredDataSet = data.totalCount;\n this.refreshSelectedItems();\n })\n .finally(() => {\n this.state.loading = false;\n });\n };\n\n this.onPageChange = function (newPageNumber) {\n this.state.pageNumber = newPageNumber;\n this.paginationChanged();\n };\n\n this.setReferrer = function () {\n window.localStorage.setItem('wizardReferrer', 'environments');\n };\n\n /**\n * Overridden\n */\n this.onTextFilterChange = function () {\n var filterValue = this.state.textFilter;\n DatatableService.setDataTableTextFilters(this.tableKey, filterValue);\n this.paginationChanged();\n };\n\n /**\n * Overridden\n */\n this.changePaginationLimit = function () {\n PaginationService.setPaginationLimit(this.tableKey, this.state.paginatedItemLimit);\n this.paginationChanged();\n };\n\n this.startPolling = function (interval) {\n this.state.interval = $interval(this.paginationChanged.bind(this), interval);\n };\n\n this.$onDestroy = function () {\n $interval.cancel(this.state.interval);\n this.state.interval = undefined;\n };\n\n /**\n * Do not allow selecting provisioning items\n */\n this.allowSelection = function (item) {\n if (item.Status === 3) {\n return false;\n }\n return true;\n };\n\n this.refreshSelectedItems = function () {\n let selected = [];\n _.forEach(this.state.filteredDataSet, (item) => {\n if (_.filter(this.state.selectedItems, (i) => i.Id == item.Id).length > 0) {\n item.Checked = true;\n selected.push(item);\n }\n });\n this.state.selectedItems = selected;\n };\n\n /**\n * Overridden\n */\n this.$onInit = function () {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n this.paginationChanged();\n this.startPolling(30000);\n };\n },\n]);\n","export default class DatatableFilterController {\n isEnabled() {\n return 0 < this.state.length && this.state.length < this.labels.length;\n }\n\n onChangeItem(filterValue) {\n if (this.isChecked(filterValue)) {\n return this.onChange(\n this.filterKey,\n this.state.filter((v) => v !== filterValue)\n );\n }\n return this.onChange(this.filterKey, [...this.state, filterValue]);\n }\n\n isChecked(filterValue) {\n return this.state.includes(filterValue);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./datatable-filter.html');\n\nimport controller from './datatable-filter.controller';\n\nexport const datatableFilter = {\n bindings: {\n labels: '<', // [{label, value}]\n state: '<', // [filterValue]\n filterKey: '@',\n onChange: '<',\n },\n controller,\n templateUrl: autoNgTemplateLoaderTemplate1,\n transclude: true,\n};\n","import _ from 'lodash-es';\nimport './datatable.css';\nimport { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\n\nfunction isBetween(value, a, b) {\n return (value >= a && value <= b) || (value >= b && value <= a);\n}\n\n// TODO: review - refactor to use a class that can be extended\nangular.module('portainer.app').controller('GenericDatatableController', [\n '$interval',\n 'PaginationService',\n 'DatatableService',\n 'PAGINATION_MAX_ITEMS',\n function ($interval, PaginationService, DatatableService, PAGINATION_MAX_ITEMS) {\n this.RCO = RCO;\n\n this.state = {\n selectAll: false,\n orderBy: this.orderBy,\n paginatedItemLimit: PAGINATION_MAX_ITEMS,\n displayTextFilter: false,\n get selectedItemCount() {\n return this.selectedItems.length || 0;\n },\n selectedItems: [],\n };\n\n this.settings = {\n open: false,\n repeater: {\n autoRefresh: false,\n refreshRate: '30',\n },\n };\n\n this.resetSelectionState = function () {\n this.state.selectAll = false;\n this.state.selectedItems = [];\n _.map(this.state.filteredDataSet, (item) => (item.Checked = false));\n };\n\n this.onTextFilterChangeGeneric = onTextFilterChangeGeneric;\n\n this.onTextFilterChange = function onTextFilterChange() {\n return this.onTextFilterChangeGeneric();\n };\n\n function onTextFilterChangeGeneric() {\n DatatableService.setDataTableTextFilters(this.tableKey, this.state.textFilter);\n }\n\n this.changeOrderBy = function changeOrderBy(orderField) {\n this.state.reverseOrder = this.state.orderBy === orderField ? !this.state.reverseOrder : false;\n this.state.orderBy = orderField;\n DatatableService.setDataTableOrder(this.tableKey, orderField, this.state.reverseOrder);\n };\n\n this.selectItem = function (item, event) {\n // Handle range select using shift\n if (event && event.originalEvent.shiftKey && this.state.firstClickedItem) {\n const firstItemIndex = this.state.filteredDataSet.indexOf(this.state.firstClickedItem);\n const lastItemIndex = this.state.filteredDataSet.indexOf(item);\n const itemsInRange = _.filter(this.state.filteredDataSet, (item, index) => {\n return isBetween(index, firstItemIndex, lastItemIndex);\n });\n const value = this.state.firstClickedItem.Checked;\n\n _.forEach(itemsInRange, (i) => {\n if (!this.allowSelection(i)) {\n return;\n }\n i.Checked = value;\n });\n this.state.firstClickedItem = item;\n } else if (event) {\n item.Checked = !item.Checked;\n this.state.firstClickedItem = item;\n }\n this.state.selectedItems = _.uniq(_.concat(this.state.selectedItems, this.state.filteredDataSet)).filter((i) => i.Checked);\n if (event && this.state.selectAll && this.state.selectedItems.length !== this.state.filteredDataSet.length) {\n this.state.selectAll = false;\n }\n this.onSelectionChanged();\n };\n\n this.selectAll = function () {\n this.state.firstClickedItem = null;\n for (var i = 0; i < this.state.filteredDataSet.length; i++) {\n var item = this.state.filteredDataSet[i];\n if (this.allowSelection(item) && item.Checked !== this.state.selectAll) {\n item.Checked = this.state.selectAll;\n this.selectItem(item);\n }\n }\n this.onSelectionChanged();\n };\n\n /**\n * Override this method to allow/deny selection\n */\n this.allowSelection = function (/*item*/) {\n return true;\n };\n\n /**\n * Override this method to prepare data table\n */\n this.prepareTableFromDataset = function () {\n return;\n };\n\n /**\n * Override this method to execute code after selection changed on datatable\n */\n this.onSelectionChanged = function () {\n return;\n };\n\n this.changePaginationLimit = function () {\n PaginationService.setPaginationLimit(this.tableKey, this.state.paginatedItemLimit);\n };\n\n this.setDefaults = function () {\n this.showTextFilter = this.showTextFilter ? this.showTextFilter : false;\n this.state.reverseOrder = this.reverseOrder ? this.reverseOrder : false;\n this.state.paginatedItemLimit = PaginationService.getPaginationLimit(this.tableKey);\n };\n\n /**\n * Duplicate this function when extending GenericDatatableController\n * Extending-controller's bindings are not accessible there\n * For more details see the following comments\n * https://github.com/portainer/portainer/pull/2877#issuecomment-503333425\n * https://github.com/portainer/portainer/pull/2877#issuecomment-503537249\n */\n this.$onInit = function $onInit() {\n this.$onInitGeneric();\n };\n\n this.$onInitGeneric = function $onInitGeneric() {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n }\n this.onSettingsRepeaterChange();\n\n var storedColumnVisibility = DatatableService.getColumnVisibilitySettings(this.tableKey);\n if (storedColumnVisibility !== null) {\n this.columnVisibility = storedColumnVisibility;\n }\n };\n\n /**\n * REPEATER SECTION\n */\n this.repeater = undefined;\n\n this.$onDestroy = function () {\n this.stopRepeater();\n };\n\n this.stopRepeater = function () {\n if (angular.isDefined(this.repeater)) {\n $interval.cancel(this.repeater);\n this.repeater = undefined;\n }\n };\n\n this.startRepeater = function () {\n this.repeater = $interval(async () => {\n await this.refreshCallback();\n this.onDataRefresh();\n }, this.settings.repeater.refreshRate * 1000);\n };\n\n this.onSettingsRepeaterChange = function () {\n this.stopRepeater();\n if (angular.isDefined(this.refreshCallback) && this.settings.repeater.autoRefresh) {\n this.startRepeater();\n $('#refreshRateChange').show();\n $('#refreshRateChange').fadeOut(1500);\n }\n DatatableService.setDataTableSettings(this.tableKey, this.settings);\n };\n\n /**\n * Override this method to execute code after calling the refresh callback\n */\n this.onDataRefresh = function () {\n return;\n };\n\n /**\n * !REPEATER SECTION\n */\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./groupsDatatable.html');\n\nangular.module('portainer.app').component('groupsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n },\n});\n","import angular from 'angular';\nimport 'angular-utils-pagination';\n\nimport { datatableTitlebar } from './titlebar';\nimport { datatableSortIcon } from './sort-icon';\nimport { datatablePagination } from './pagination';\nimport { datatableFilter } from './filter';\n\nexport default angular\n .module('portainer.shared.datatable', ['angularUtils.directives.dirPagination'])\n .component('datatableTitlebar', datatableTitlebar)\n .component('datatableSortIcon', datatableSortIcon)\n .component('datatablePagination', datatablePagination)\n .component('datatableFilter', datatableFilter).name;\n","const autoNgTemplateLoaderTemplate1 = require('./pagination.html');\n\nexport const datatablePagination = {\n bindings: {\n onChangeLimit: '<',\n limit: '<',\n enableNoLimit: '<',\n onChangePage: '<',\n },\n templateUrl: autoNgTemplateLoaderTemplate1,\n};\n","const autoNgTemplateLoaderTemplate1 = require('./registriesDatatable.html');\n\nangular.module('portainer.app').component('registriesDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'RegistriesDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n endpointId: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n canBrowse: '<',\n endpointType: '<',\n canManageAccess: '<',\n },\n});\n","import { PortainerEndpointTypes } from 'Portainer/models/endpoint/models';\n\nangular.module('portainer.docker').controller('RegistriesDatatableController', RegistriesDatatableController);\n\n/* @ngInject */\nfunction RegistriesDatatableController($scope, $controller, $state, Authentication, DatatableService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.allowSelection = function (item) {\n return item.Id;\n };\n\n this.enableGoToLink = (item) => {\n return this.isAdmin && item.Id && !this.endpointType;\n };\n\n this.goToRegistry = function (item) {\n if (\n this.endpointType === PortainerEndpointTypes.KubernetesLocalEnvironment ||\n this.endpointType === PortainerEndpointTypes.AgentOnKubernetesEnvironment ||\n this.endpointType === PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment\n ) {\n $state.go('kubernetes.registries.registry', { id: item.Id });\n } else if (\n this.endpointType === PortainerEndpointTypes.DockerEnvironment ||\n this.endpointType === PortainerEndpointTypes.AgentOnDockerEnvironment ||\n this.endpointType === PortainerEndpointTypes.EdgeAgentOnDockerEnvironment\n ) {\n $state.go('docker.registries.registry', { id: item.Id });\n } else {\n $state.go('portainer.registries.registry', { id: item.Id });\n }\n };\n\n this.redirectToManageAccess = function (item) {\n if (\n this.endpointType === PortainerEndpointTypes.KubernetesLocalEnvironment ||\n this.endpointType === PortainerEndpointTypes.AgentOnKubernetesEnvironment ||\n this.endpointType === PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment\n ) {\n $state.go('kubernetes.registries.access', { id: item.Id });\n } else {\n $state.go('docker.registries.access', { id: item.Id });\n }\n };\n\n this.$onInit = function () {\n this.isAdmin = Authentication.isAdmin();\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n }\n this.onSettingsRepeaterChange();\n\n var storedColumnVisibility = DatatableService.getColumnVisibilitySettings(this.tableKey);\n if (storedColumnVisibility !== null) {\n this.columnVisibility = storedColumnVisibility;\n }\n };\n}\n","export default class datatableSortIconController {\n isCurrentSortOrder() {\n return this.selectedSortKey === this.key;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./datatable-sort-icon.html');\n\nimport controller from './datatable-sort-icon.controller';\n\nexport const datatableSortIcon = {\n bindings: {\n key: '@',\n selectedSortKey: '@',\n reverseOrder: '<',\n },\n controller,\n templateUrl: autoNgTemplateLoaderTemplate1,\n};\n","const autoNgTemplateLoaderTemplate1 = require('./stacksDatatable.html');\n\nangular.module('portainer.app').component('stacksDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'StacksDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n offlineMode: '<',\n refreshCallback: '<',\n createEnabled: '<',\n },\n});\n","angular.module('portainer.app').controller('StacksDatatableController', [\n '$scope',\n '$controller',\n 'DatatableService',\n 'Authentication',\n function ($scope, $controller, DatatableService, Authentication) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.filters = {\n state: {\n open: false,\n enabled: false,\n showActiveStacks: true,\n showUnactiveStacks: true,\n },\n };\n\n this.columnVisibility = {\n state: {\n open: false,\n },\n columns: {\n updated: {\n label: 'Updated',\n display: false,\n },\n },\n };\n\n this.onColumnVisibilityChange = onColumnVisibilityChange.bind(this);\n function onColumnVisibilityChange(columns) {\n this.columnVisibility.columns = columns;\n DatatableService.setColumnVisibilitySettings(this.tableKey, this.columnVisibility);\n }\n\n /**\n * Do not allow external items\n */\n this.allowSelection = function (item) {\n if (item.External && item.Type === 2) {\n return false;\n }\n\n if (item.Orphaned && !this.isAdmin) {\n return false;\n }\n\n return !(item.External && !this.isAdmin && !this.isEndpointAdmin);\n };\n\n this.applyFilters = applyFilters.bind(this);\n function applyFilters(stack) {\n const { showActiveStacks, showUnactiveStacks } = this.filters.state;\n if (stack.Orphaned) {\n return stack.OrphanedRunning || this.settings.allOrphanedStacks;\n } else {\n return (stack.Status === 1 && showActiveStacks) || (stack.Status === 2 && showUnactiveStacks) || stack.External || !stack.Status;\n }\n }\n\n this.onFilterChange = onFilterChange.bind(this);\n function onFilterChange() {\n const { showActiveStacks, showUnactiveStacks } = this.filters.state;\n this.filters.state.enabled = !showActiveStacks || !showUnactiveStacks;\n DatatableService.setDataTableFilters(this.tableKey, this.filters);\n }\n\n this.onSettingsAllOrphanedStacksChange = function () {\n DatatableService.setDataTableSettings(this.tableKey, this.settings);\n };\n\n this.$onInit = function () {\n this.isAdmin = Authentication.isAdmin();\n this.hasAccessToOrphanedStack = Authentication.hasAuthorizations(['EndpointResourcesAccess']);\n this.isEndpointAdmin = Authentication.hasAuthorizations(['PortainerStackCreate', 'PortainerStackDelete']) && this.hasAccessToOrphanedStack;\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n this.settings.allOrphanedStacks = this.settings.allOrphanedStacks && this.isAdmin;\n }\n this.onSettingsRepeaterChange();\n\n var storedColumnVisibility = DatatableService.getColumnVisibilitySettings(this.tableKey);\n if (storedColumnVisibility !== null) {\n this.columnVisibility = storedColumnVisibility;\n }\n };\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./strings-datatable.html');\n\nimport angular from 'angular';\n// import controller from './strings-datatable.controller.js';\n\nexport const stringsDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n emptyDatasetMessage: '@',\n\n columnHeader: '@',\n tableKey: '@',\n\n onRemove: '<',\n },\n};\n\nangular.module('portainer.app').component('stringsDatatable', stringsDatatable);\n","const autoNgTemplateLoaderTemplate1 = require('./tagsDatatable.html');\n\nangular.module('portainer.app').component('tagsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./teamsDatatable.html');\n\nangular.module('portainer.app').component('teamsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n isAdmin: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./datatable-titlebar.html');\n\nexport const datatableTitlebar = {\n bindings: {\n icon: '@',\n title: '@',\n feature: '@',\n featherIcon: '<',\n },\n templateUrl: autoNgTemplateLoaderTemplate1,\n};\n","const autoNgTemplateLoaderTemplate1 = require('./usersDatatable.html');\n\nimport angular from 'angular';\nimport UsersDatatableController from './usersDatatableController';\n\nangular.module('portainer.app').component('usersDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: UsersDatatableController,\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n authenticationMethod: '<',\n isAdmin: '<',\n },\n});\n","export default class UsersDatatableController {\n /* @ngInject*/\n constructor($controller, $scope) {\n const allowSelection = this.allowSelection;\n angular.extend(this, $controller('GenericDatatableController', { $scope }));\n this.allowSelection = allowSelection.bind(this);\n }\n\n /**\n * Override this method to allow/deny selection\n */\n allowSelection(item) {\n return item.Id !== 1;\n }\n}\n","import moment from 'moment';\n\nconst applyEvent = 'apply.daterangepicker';\nconst cancelEvent = 'cancel.daterangepicker';\nconst hideEvent = 'hide.daterangepicker';\n\nexport class DateRangePickerApi {\n constructor(element, $scope, options) {\n this.el = element;\n this.$scope = $scope;\n this.options = options;\n\n this.startDate = null;\n this.endDate = null;\n this.maxDate = null;\n this.minDate = null;\n }\n\n build() {\n const { el, $scope } = this;\n\n return {\n setMinDate: (x) => {\n if (typeof x === 'object') {\n return;\n }\n\n const datePicker = el.data('daterangepicker');\n\n datePicker.minDate = x;\n datePicker.updateView();\n datePicker.updateCalendars();\n this.minDate = moment.unix(x);\n\n if (this.startDate && this.startDate.isBefore(this.minDate)) {\n this.startDate = this.minDate;\n $scope.startDate = x;\n }\n\n if (this.endDate && this.endDate.isBefore(this.minDate)) {\n this.endDate = this.minDate;\n $scope.endDate = x;\n }\n },\n\n setMaxDate: (x) => {\n if (typeof x === 'object') {\n return;\n }\n\n const datePicker = el.data('daterangepicker');\n\n datePicker.maxDate = x;\n datePicker.updateView();\n datePicker.updateCalendars();\n this.maxDate = moment.unix(x);\n\n if (this.startDate && this.startDate.isAfter(this.maxDate)) {\n $scope.startDate = 0;\n this.startDate = null;\n }\n\n if (this.endDate && this.endDate.isAfter(this.maxDate)) {\n $scope.endDate = 0;\n this.endDate = null;\n }\n\n this.clearInput();\n },\n\n setStartDate: (x) => {\n if (typeof x === 'object') {\n return;\n }\n\n el.data('daterangepicker').setStartDate(x);\n this.startDate = moment.unix(x);\n },\n\n setEndDate: (x) => {\n if (typeof x === 'object') {\n return;\n }\n\n el.data('daterangepicker').setEndDate(x);\n this.endDate = moment.unix(x);\n },\n\n isSingle: () => {\n el.data('daterangepicker').singleDatePicker;\n },\n\n show: () => {\n el.data('daterangepicker').show();\n },\n\n hide: () => {\n el.data('daterangepicker').hide();\n },\n };\n }\n\n onApply(event, api) {\n this.startDate = api.startDate;\n this.endDate = this.isSingle() ? api.startDate : api.endDate;\n\n if (this.$scope.formCtrl && this.$scope.ngRequired) {\n if (this.$scope.startDate && this.$scope.endDate) {\n this.$scope.formCtrl.$setValidity(this.$scope.dateRangePickerId, true);\n } else {\n this.$scope.formCtrl.$setValidity(this.$scope.dateRangePickerId, false);\n }\n }\n\n if (this.$scope.onChange) {\n this.$scope.$apply(() => {\n this.$scope.onChange({ startDate: api.startDate.unix(), endDate: api.endDate.unix() });\n });\n }\n }\n\n onCancel() {\n if (this.$scope.clearOnCancel) {\n return;\n }\n\n this.$scope.$apply(() => {\n if (this.$scope.formCtrl && this.$scope.ngRequired) {\n this.$scope.formCtrl.$setValidity(this.$scope.dateRangePickerId, false);\n }\n\n this.clearInput();\n if (this.$scope.onChange) {\n this.$scope.onChange({ startDate: 0, endDate: 0 });\n }\n });\n }\n\n onHide() {\n setInterval(() => {\n if ((this.isSingle() && !this.$scope.startDate) || (!this.$scope.startDate && !this.$scope.endDate)) {\n this.clearInput();\n }\n });\n }\n\n clearInput() {\n $(this.el).val('');\n }\n\n isSingle() {\n return this.options.singleDatePicker;\n }\n\n init() {\n this.el.on(applyEvent, (event, api) => {\n this.onApply(event, api);\n });\n\n this.el.on(cancelEvent, (event, api) => {\n this.onCancel(event, api);\n });\n\n this.el.on(hideEvent, (event, api) => {\n this.onHide(event, api);\n });\n }\n\n destroy() {\n this.el.off(applyEvent);\n this.el.off(cancelEvent);\n this.el.off(hideEvent);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./date-range-picker.html');\n\nimport _ from 'lodash-es';\n\nimport { DateRangePickerApi } from './date-range-picker-api';\n\nconst AVAILABLE_OPTIONS = [\n 'minDate',\n 'maxDate',\n 'dateLimit',\n 'showDropdowns',\n 'showWeekNumbers',\n 'showISOWeekNumbers',\n 'timePicker',\n 'timePickerIncrement',\n 'timePicker24Hour',\n 'timePickerSeconds',\n 'ranges',\n 'showCustomRangeLabel',\n 'alwaysShowCalendars',\n 'opens',\n 'drops',\n 'buttonClasses',\n 'applyClass',\n 'cancelClass',\n 'locale',\n 'singleDatePicker',\n 'autoApply',\n 'linkedCalendars',\n 'isInvalidDate',\n 'isCustomDate',\n 'autoUpdateInput',\n 'parentEl',\n];\n\n/* @ngInject */\nexport function dateRangePicker() {\n return {\n restrict: 'E',\n scope: {\n dateRangePickerOptions: '=',\n startDate: '<', //unix timestamp\n endDate: '= 0) {\n baseOptions[key] = $scope.dateRangePickerOptions[key];\n }\n }\n }\n\n $scope.$on('$destroy', function () {\n currentApiElement.remove();\n currentApi.destroy();\n if (destroyListener) {\n destroyListener();\n }\n });\n\n function initElement() {\n createElement();\n createController();\n destroyListener = openListener();\n }\n\n function openListener() {\n return $scope.$watchGroup(watchList, function (n) {\n if (!n || !n.length) {\n return;\n }\n\n const [startDate, endDate, minDate, maxDate] = n;\n\n if (minDate) {\n dpApi.setMinDate(minDate);\n }\n\n if (maxDate) {\n dpApi.setMaxDate(maxDate);\n }\n\n if (startDate) {\n dpApi.setStartDate(startDate);\n }\n\n if (endDate) {\n dpApi.setEndDate(endDate);\n }\n });\n }\n\n function createElement() {\n const tempOptions = angular.copy(baseOptions);\n tempOptions.startDate = $scope.startDate;\n tempOptions.endDate = $scope.endDate;\n currentApiElement = $(inputElement).daterangepicker(tempOptions);\n\n if (!isDataFound) {\n $(currentApiElement).val('');\n }\n }\n\n function createController() {\n currentApi = new DateRangePickerApi(currentApiElement, $scope, baseOptions);\n currentApi.init();\n dpApi = currentApi.build();\n }\n\n initElement();\n };\n },\n };\n}\n","import 'daterangepicker';\nimport 'daterangepicker/daterangepicker.css';\n\nimport { dateRangePicker } from './date-range-picker';\n\n// ported from https://github.com/emalikterzi/angularjs-daterangepicker/blob/master/src/angular-daterangepicker.js\n\nexport default angular.module('portainer.components.datarangepicker', []).directive('dateRangePicker', dateRangePicker).name;\n","class DemoFeatureIndicatorController {\n /* @ngInject */\n constructor(StateManager) {\n Object.assign(this, { StateManager });\n\n this.isDemo = false;\n }\n\n $onInit() {\n const state = this.StateManager.getState();\n\n this.isDemo = state.application.demoEnvironment.enabled;\n }\n}\n\nexport default DemoFeatureIndicatorController;\n","const autoNgTemplateLoaderTemplate1 = require('./demo-feature-indicator.html');\n\nimport angular from 'angular';\nimport controller from './demo-feature-indicator.controller.js';\n\nexport const demoFeatureIndicator = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n content: '<',\n },\n};\n\nangular.module('portainer.app').component('demoFeatureIndicator', demoFeatureIndicator);\n","const autoNgTemplateLoaderTemplate1 = require('./endpointSelector.html');\n\nangular.module('portainer.app').component('endpointSelector', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'EndpointSelectorController',\n bindings: {\n model: '=',\n endpoints: '<',\n groups: '<',\n },\n});\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('EndpointSelectorController', function () {\n var ctrl = this;\n\n this.sortGroups = function (groups) {\n return _.sortBy(groups, ['name']);\n };\n\n this.groupEndpoints = function (endpoint) {\n for (var i = 0; i < ctrl.availableGroups.length; i++) {\n var group = ctrl.availableGroups[i];\n\n if (endpoint.GroupId === group.Id) {\n return group.Name;\n }\n }\n };\n\n this.$onInit = function () {\n this.availableGroups = filterEmptyGroups(this.groups, this.endpoints);\n };\n\n function filterEmptyGroups(groups, endpoints) {\n return groups.filter(function f(group) {\n for (var i = 0; i < endpoints.length; i++) {\n var endpoint = endpoints[i];\n if (endpoint.GroupId === group.Id) {\n return true;\n }\n }\n return false;\n });\n }\n});\n","const autoNgTemplateLoaderTemplate1 = require('./porEndpointSecurity.html');\n\nangular.module('portainer.app').component('porEndpointSecurity', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'porEndpointSecurityController',\n bindings: {\n // This object will be populated with the form data.\n // Model reference in endpointSecurityModel.js\n formData: '=',\n // The component will use this object to initialize the default values\n // if present.\n endpoint: '<',\n },\n});\n","angular.module('portainer.app').controller('porEndpointSecurityController', [\n '$scope',\n function ($scope) {\n var ctrl = this;\n\n ctrl.onToggleTLS = function (newValue) {\n $scope.$evalAsync(() => {\n ctrl.formData.TLS = newValue;\n });\n };\n\n this.$onInit = $onInit;\n function $onInit() {\n if (ctrl.endpoint) {\n var endpoint = ctrl.endpoint;\n var TLS = endpoint.TLSConfig.TLS;\n ctrl.formData.TLS = TLS;\n var CACert = endpoint.TLSConfig.TLSCACert;\n ctrl.formData.TLSCACert = CACert;\n var cert = endpoint.TLSConfig.TLSCert;\n ctrl.formData.TLSCert = cert;\n var key = endpoint.TLSConfig.TLSKey;\n ctrl.formData.TLSKey = key;\n\n if (TLS) {\n if (CACert && cert && key) {\n ctrl.formData.TLSMode = 'tls_client_ca';\n } else if (cert && key) {\n ctrl.formData.TLSMode = 'tls_client_noca';\n } else if (CACert) {\n ctrl.formData.TLSMode = 'tls_ca';\n } else {\n ctrl.formData.TLSMode = 'tls_only';\n }\n }\n }\n }\n },\n]);\n","export function EndpointSecurityFormData() {\n this.TLS = false;\n this.TLSMode = 'tls_client_ca';\n this.TLSCACert = null;\n this.TLSCert = null;\n this.TLSKey = null;\n}\n","import { parseDotEnvFile, convertToArrayOfStrings } from '@/portainer/helpers/env-vars';\n\nexport default class EnvironmentVariablesPanelController {\n /* @ngInject */\n constructor() {\n this.mode = 'simple';\n this.editorText = '';\n\n this.switchEnvMode = this.switchEnvMode.bind(this);\n this.editorUpdate = this.editorUpdate.bind(this);\n this.handleSimpleChange = this.handleSimpleChange.bind(this);\n }\n\n switchEnvMode() {\n if (this.mode === 'simple') {\n const editorText = convertToArrayOfStrings(this.ngModel).join('\\n');\n\n this.editorText = editorText;\n\n this.mode = 'advanced';\n } else {\n this.mode = 'simple';\n }\n }\n\n handleSimpleChange(value) {\n this.onChange(value);\n }\n\n editorUpdate(cm) {\n this.editorText = cm.getValue();\n this.onChange(parseDotEnvFile(this.editorText));\n }\n}\n","class EnvironmentVariablesSimpleModeItemController {\n onChangeName(name) {\n const fieldIsInvalid = typeof name === 'undefined';\n if (fieldIsInvalid) {\n return;\n }\n\n this.onChange(this.index, { ...this.variable, name });\n }\n\n onChangeValue(value) {\n const fieldIsInvalid = typeof value === 'undefined';\n if (fieldIsInvalid) {\n return;\n }\n\n this.onChange(this.index, { ...this.variable, value });\n }\n\n hasValue() {\n return typeof this.variable.value !== 'undefined';\n }\n\n removeValue() {\n this.onChange(this.index, { name: this.variable.name });\n }\n\n $onInit() {\n this.formName = `variableForm${this.index}`;\n }\n}\n\nexport default EnvironmentVariablesSimpleModeItemController;\n","const autoNgTemplateLoaderTemplate1 = require('./environment-variables-simple-mode-item.html');\n\nimport angular from 'angular';\nimport controller from './environment-variables-simple-mode-item.controller.js';\n\nexport const environmentVariablesSimpleModeItem = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n\n bindings: {\n variable: '<',\n index: '<',\n\n onChange: '<',\n onRemove: '<',\n },\n};\n\nangular.module('portainer.app').component('environmentVariablesSimpleModeItem', environmentVariablesSimpleModeItem);\n","import { parseDotEnvFile } from '@/portainer/helpers/env-vars';\n\nexport default class EnvironmentVariablesSimpleModeController {\n /* @ngInject */\n constructor($async) {\n this.$async = $async;\n\n this.onChangeVariable = this.onChangeVariable.bind(this);\n this.remove = this.remove.bind(this);\n }\n\n add() {\n this.onChange([...this.ngModel, { name: '', value: '' }]);\n }\n\n remove(index) {\n this.onChange(this.ngModel.filter((_, i) => i !== index));\n }\n\n addFromFile(file) {\n return this.$async(async () => {\n if (!file) {\n return;\n }\n const text = await this.getTextFromFile(file);\n const parsed = parseDotEnvFile(text);\n this.onChange(this.ngModel.concat(parsed));\n });\n }\n\n getTextFromFile(file) {\n return new Promise((resolve, reject) => {\n const temporaryFileReader = new FileReader();\n temporaryFileReader.readAsText(file);\n temporaryFileReader.onload = (event) => resolve(event.target.result);\n temporaryFileReader.onerror = (error) => reject(error);\n });\n }\n\n onChangeVariable(index, variable) {\n this.onChange(this.ngModel.map((v, i) => (i !== index ? v : variable)));\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./environment-variables-simple-mode.html');\n\nimport angular from 'angular';\n\nimport './environment-variables-simple-mode.css';\n\nimport controller from './environment-variables-simple-mode.controller';\n\nangular.module('portainer.app').component('environmentVariablesSimpleMode', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n ngModel: '<',\n onSwitchModeClick: '<',\n onChange: '<',\n showHelpMessage: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./environment-variables-panel.html');\n\nimport angular from 'angular';\n\nimport './environment-variables-panel.css';\n\nimport controller from './environment-variables-panel.controller.js';\n\nangular.module('portainer.app').component('environmentVariablesPanel', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n ngModel: '<',\n explanation: '@',\n onChange: '<',\n showHelpMessage: '<',\n },\n});\n","import angular from 'angular';\n// ng-focus-if pkg from: https://github.com/hiebj/ng-focus-if\nangular.module('portainer.app').directive('focusIf', function ($timeout) {\n return {\n restrict: 'A',\n link: function ($scope, $element, $attrs) {\n var dom = $element[0];\n if ($attrs.focusIf) {\n $scope.$watch($attrs.focusIf, focus);\n } else {\n focus(true);\n }\n function focus(condition) {\n if (condition) {\n $timeout(function () {\n dom.focus();\n }, $scope.$eval($attrs.focusDelay) || 0);\n }\n }\n },\n };\n});\n","const autoNgTemplateLoaderTemplate1 = require('./file-upload-form.html');\n\nexport const fileUploadForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n\n bindings: {\n file: '<',\n ngRequired: '<',\n onChange: '<',\n },\n\n transclude: {\n description: '?fileUploadDescription',\n },\n};\n","import angular from 'angular';\n\nimport { webEditorForm } from './web-editor-form';\nimport { fileUploadForm } from './file-upload-form';\n\nexport default angular.module('portainer.app.components.form', []).component('webEditorForm', webEditorForm).component('fileUploadForm', fileUploadForm).name;\n","const autoNgTemplateLoaderTemplate1 = require('./web-editor-form.html');\n\nimport controller from './web-editor-form.controller.js';\n\nexport const webEditorForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n\n bindings: {\n identifier: '@',\n placeholder: '@',\n yml: '<',\n value: '<',\n readOnly: '<',\n onChange: '<',\n hideTitle: '<',\n },\n\n transclude: {\n description: '?editorDescription',\n },\n};\n","class WebEditorFormController {\n /* @ngInject */\n constructor(BROWSER_OS_PLATFORM) {\n this.editorUpdate = this.editorUpdate.bind(this);\n this.BROWSER_OS_PLATFORM = BROWSER_OS_PLATFORM;\n }\n\n editorUpdate(cm) {\n this.onChange(cm.getValue());\n }\n}\n\nexport default WebEditorFormController;\n","class GitFormAdditionalFileItemController {\n onChangePath(value) {\n const fieldIsInvalid = typeof value === 'undefined';\n if (fieldIsInvalid) {\n return;\n }\n this.onChange(this.index, { value });\n }\n\n removeValue() {\n this.onChange(this.index);\n }\n\n $onInit() {\n this.formName = `variableForm${this.index}`;\n }\n}\n\nexport default GitFormAdditionalFileItemController;\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-additional-file-item.html');\n\nimport controller from './git-form-additional-file-item.controller.js';\n\nexport const gitFormAdditionalFileItem = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n\n bindings: {\n variable: '<',\n index: '<',\n\n onChange: '<',\n onRemove: '<',\n },\n};\n","class GitFormAutoUpdateFieldsetController {\n /* @ngInject */\n constructor() {\n this.add = this.add.bind(this);\n this.onChangeVariable = this.onChangeVariable.bind(this);\n }\n\n add() {\n this.model.AdditionalFiles.push('');\n }\n\n onChangeVariable(index, variable) {\n if (!variable) {\n this.model.AdditionalFiles.splice(index, 1);\n } else {\n this.model.AdditionalFiles[index] = variable.value;\n }\n\n this.onChange({\n ...this.model,\n AdditionalFiles: this.model.AdditionalFiles,\n });\n }\n}\n\nexport default GitFormAutoUpdateFieldsetController;\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-additional-files-panel.html');\n\nimport controller from './git-form-additional-files-panel.controller.js';\n\nexport const gitFormAdditionalFilesPanel = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n model: '<',\n onChange: '<',\n },\n};\n","class GitFormComposeAuthFieldsetController {\n /* @ngInject */\n constructor($scope) {\n Object.assign(this, { $scope });\n\n this.authValues = {\n username: '',\n password: '',\n };\n\n this.handleChange = this.handleChange.bind(this);\n this.onChangeField = this.onChangeField.bind(this);\n this.onChangeAuth = this.onChangeAuth.bind(this);\n this.onChangeUsername = this.onChangeField('RepositoryUsername');\n this.onChangePassword = this.onChangeField('RepositoryPassword');\n }\n\n handleChange(...args) {\n this.$scope.$evalAsync(() => {\n this.onChange(...args);\n });\n }\n\n onChangeField(field) {\n return (value) => {\n this.handleChange({\n ...this.model,\n [field]: value,\n });\n };\n }\n\n onChangeAuth(auth) {\n if (!auth) {\n this.authValues.username = this.model.RepositoryUsername;\n this.authValues.password = this.model.RepositoryPassword;\n }\n\n this.handleChange({\n ...this.model,\n RepositoryAuthentication: auth,\n RepositoryUsername: auth ? this.authValues.username : '',\n RepositoryPassword: auth ? this.authValues.password : '',\n });\n }\n\n $onInit() {\n if (this.model.RepositoryAuthentication) {\n this.authValues.username = this.model.RepositoryUsername;\n this.authValues.password = this.model.RepositoryPassword;\n }\n }\n}\n\nexport default GitFormComposeAuthFieldsetController;\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-auth-fieldset.html');\n\nimport controller from './git-form-auth-fieldset.controller.js';\nimport './git-form-auth-fieldset.css';\n\nexport const gitFormAuthFieldset = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n model: '<',\n onChange: '<',\n showAuthExplanation: '<',\n isEdit: '<',\n },\n};\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nclass GitFormAutoUpdateFieldsetController {\n /* @ngInject */\n constructor($scope, clipboard) {\n Object.assign(this, { $scope, clipboard });\n\n this.onChangeAutoUpdate = this.onChangeField('RepositoryAutomaticUpdates');\n this.onChangeAutoUpdateForce = this.onChangeField('RepositoryAutomaticUpdatesForce');\n this.onChangeMechanism = this.onChangeField('RepositoryMechanism');\n this.onChangeInterval = this.onChangeField('RepositoryFetchInterval');\n this.onChangeForcePullImage = this.onChangeField('ForcePullImage');\n\n this.limitedFeature = FeatureId.FORCE_REDEPLOYMENT;\n this.limitedFeaturePullImage = FeatureId.STACK_PULL_IMAGE;\n }\n\n copyWebhook() {\n this.clipboard.copyText(this.model.RepositoryWebhookURL);\n $('#copyNotification').show();\n $('#copyNotification').fadeOut(2000);\n }\n\n onChangeField(field) {\n return (value) => {\n this.$scope.$evalAsync(() => {\n this.onChange({\n ...this.model,\n [field]: value,\n });\n });\n };\n }\n}\n\nexport default GitFormAutoUpdateFieldsetController;\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-auto-update-fieldset.html');\n\nimport controller from './git-form-auto-update-fieldset.controller.js';\n\nexport const gitFormAutoUpdateFieldset = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n model: '<',\n onChange: '<',\n showForcePullImage: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-compose-path-field.html');\n\nexport const gitFormComposePathField = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n deployMethod: '@',\n value: '<',\n onChange: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-info-panel.html');\n\nexport const gitFormInfoPanel = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n url: '<',\n configFilePath: '<',\n additionalFiles: '<',\n className: '@',\n type: '@',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-ref-field.html');\n\nexport const gitFormRefField = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n value: '<',\n onChange: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./git-form-url-field.html');\n\nexport const gitFormUrlField = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n value: '<',\n onChange: '<',\n },\n};\n","export default class GitFormController {\n /* @ngInject */\n constructor() {\n this.onChangeField = this.onChangeField.bind(this);\n this.onChangeURL = this.onChangeField('RepositoryURL');\n this.onChangeRefName = this.onChangeField('RepositoryReferenceName');\n this.onChangeComposePath = this.onChangeField('ComposeFilePathInRepository');\n }\n\n onChangeField(field) {\n return (value) => {\n this.onChange({\n ...this.model,\n [field]: value,\n });\n };\n }\n\n $onInit() {\n this.deployMethod = this.deployMethod || 'compose';\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./git-form.html');\n\nimport controller from './git-form.controller.js';\n\nexport const gitForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n deployMethod: '@',\n model: '<',\n onChange: '<',\n additionalFile: '<',\n autoUpdate: '<',\n showAuthExplanation: '<',\n showForcePullImage: '<',\n },\n};\n","import angular from 'angular';\n\nimport { gitForm } from './git-form';\nimport { gitFormAuthFieldset } from './git-form-auth-fieldset';\nimport { gitFormAdditionalFilesPanel } from './git-form-additional-files-panel';\nimport { gitFormAdditionalFileItem } from './/git-form-additional-files-panel/git-form-additional-file-item';\nimport { gitFormAutoUpdateFieldset } from './git-form-auto-update-fieldset';\nimport { gitFormComposePathField } from './git-form-compose-path-field';\nimport { gitFormRefField } from './git-form-ref-field';\nimport { gitFormUrlField } from './git-form-url-field';\nimport { gitFormInfoPanel } from './git-form-info-panel';\n\nexport default angular\n .module('portainer.app.components.forms.git', [])\n .component('gitFormComposePathField', gitFormComposePathField)\n .component('gitFormRefField', gitFormRefField)\n .component('gitForm', gitForm)\n .component('gitFormUrlField', gitFormUrlField)\n .component('gitFormInfoPanel', gitFormInfoPanel)\n .component('gitFormAdditionalFilesPanel', gitFormAdditionalFilesPanel)\n .component('gitFormAdditionalFileItem', gitFormAdditionalFileItem)\n .component('gitFormAutoUpdateFieldset', gitFormAutoUpdateFieldset)\n .component('gitFormAuthFieldset', gitFormAuthFieldset).name;\n","const autoNgTemplateLoaderTemplate1 = require('./groupForm.html');\n\nimport angular from 'angular';\nimport GroupFormController from './groupFormController';\n\nangular.module('portainer.app').component('groupForm', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: GroupFormController,\n bindings: {\n loaded: '<',\n pageType: '@',\n model: '=',\n availableEndpoints: '=',\n associatedEndpoints: '=',\n addLabelAction: '<',\n removeLabelAction: '<',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n },\n});\n","import _ from 'lodash-es';\nimport angular from 'angular';\nimport { endpointsByGroup } from '@/portainer/environments/environment.service';\nimport { notifyError } from '@/portainer/services/notifications';\n\nclass GroupFormController {\n /* @ngInject */\n constructor($async, $scope, GroupService, Notifications, Authentication) {\n this.$async = $async;\n this.$scope = $scope;\n this.GroupService = GroupService;\n this.Notifications = Notifications;\n this.Authentication = Authentication;\n\n this.associateEndpoint = this.associateEndpoint.bind(this);\n this.dissociateEndpoint = this.dissociateEndpoint.bind(this);\n this.getPaginatedEndpointsByGroup = this.getPaginatedEndpointsByGroup.bind(this);\n this.onChangeTags = this.onChangeTags.bind(this);\n }\n\n onChangeTags(value) {\n return this.$scope.$evalAsync(() => {\n this.model.TagIds = value;\n });\n }\n\n $onInit() {\n this.state = {\n available: {\n limit: '10',\n filter: '',\n pageNumber: 1,\n totalCount: 0,\n },\n associated: {\n limit: '10',\n filter: '',\n pageNumber: 1,\n totalCount: 0,\n },\n allowCreateTag: this.Authentication.isAdmin(),\n };\n }\n associateEndpoint(endpoint) {\n if (this.pageType === 'create' && !_.includes(this.associatedEndpoints, endpoint)) {\n this.associatedEndpoints.push(endpoint);\n } else if (this.pageType === 'edit') {\n this.GroupService.addEndpoint(this.model.Id, endpoint)\n .then(() => {\n this.Notifications.success('Success', 'Environment successfully added to group');\n this.reloadTablesContent();\n })\n .catch((err) => this.Notifications.error('Error', err, 'Unable to add environment to group'));\n }\n }\n\n dissociateEndpoint(endpoint) {\n if (this.pageType === 'create') {\n _.remove(this.associatedEndpoints, (item) => item.Id === endpoint.Id);\n } else if (this.pageType === 'edit') {\n this.GroupService.removeEndpoint(this.model.Id, endpoint.Id)\n .then(() => {\n this.Notifications.success('Success', 'Environment successfully removed from group');\n this.reloadTablesContent();\n })\n .catch((err) => this.Notifications.error('Error', err, 'Unable to remove environment from group'));\n }\n }\n\n reloadTablesContent() {\n this.getPaginatedEndpointsByGroup(this.pageType, 'available');\n this.getPaginatedEndpointsByGroup(this.pageType, 'associated');\n this.GroupService.group(this.model.Id).then((data) => {\n this.model = data;\n });\n }\n\n getPaginatedEndpointsByGroup(pageType, tableType) {\n this.$async(async () => {\n try {\n if (tableType === 'available') {\n const context = this.state.available;\n const start = (context.pageNumber - 1) * context.limit + 1;\n const data = await endpointsByGroup(1, start, context.limit, { search: context.filter });\n this.availableEndpoints = data.value;\n this.state.available.totalCount = data.totalCount;\n } else if (tableType === 'associated' && pageType === 'edit') {\n const groupId = this.model.Id ? this.model.Id : 1;\n const context = this.state.associated;\n const start = (context.pageNumber - 1) * context.limit + 1;\n const data = await endpointsByGroup(groupId, start, context.limit, { search: context.filter });\n this.associatedEndpoints = data.value;\n this.state.associated.totalCount = data.totalCount;\n }\n // ignore (associated + create) group as there is no backend pagination for this table\n } catch (err) {\n notifyError('Failure', err, 'Failed getting endpoints for group');\n }\n });\n }\n}\n\nangular.module('portainer.app').controller('GroupFormController', GroupFormController);\nexport default GroupFormController;\n","class KubernetesAppGitFormController {\n /* @ngInject */\n constructor($async, $state, StackService, ModalService, Notifications) {\n this.$async = $async;\n this.$state = $state;\n this.StackService = StackService;\n this.ModalService = ModalService;\n this.Notifications = Notifications;\n\n this.state = {\n saveGitSettingsInProgress: false,\n redeployInProgress: false,\n showConfig: true,\n isEdit: false,\n };\n\n this.formValues = {\n RefName: '',\n RepositoryAuthentication: false,\n RepositoryUsername: '',\n RepositoryPassword: '',\n };\n\n this.onChange = this.onChange.bind(this);\n this.onChangeRef = this.onChangeRef.bind(this);\n }\n\n onChangeRef(value) {\n this.onChange({ RefName: value });\n }\n\n onChange(values) {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n }\n\n async pullAndRedeployApplication() {\n return this.$async(async () => {\n try {\n const confirmed = await this.ModalService.confirmAsync({\n title: 'Are you sure?',\n message: 'Any changes to this application will be overridden by the definition in git and may cause a service interruption. Do you wish to continue?',\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-warning',\n },\n },\n });\n if (!confirmed) {\n return;\n }\n this.state.redeployInProgress = true;\n await this.StackService.updateKubeGit(this.stack.Id, this.stack.EndpointId, this.namespace, this.formValues);\n this.Notifications.success('Success', 'Pulled and redeployed stack successfully');\n await this.$state.reload(this.$state.current);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed redeploying application');\n } finally {\n this.state.redeployInProgress = false;\n }\n });\n }\n\n async saveGitSettings() {\n return this.$async(async () => {\n try {\n this.state.saveGitSettingsInProgress = true;\n await this.StackService.updateKubeStack({ EndpointId: this.stack.EndpointId, Id: this.stack.Id }, null, this.formValues);\n this.Notifications.success('Success', 'Save stack settings successfully');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to save application settings');\n } finally {\n this.state.saveGitSettingsInProgress = false;\n }\n });\n }\n\n isSubmitButtonDisabled() {\n return this.state.saveGitSettingsInProgress || this.state.redeployInProgress;\n }\n\n $onInit() {\n this.formValues.RefName = this.stack.GitConfig.ReferenceName;\n if (this.stack.GitConfig && this.stack.GitConfig.Authentication) {\n this.formValues.RepositoryUsername = this.stack.GitConfig.Authentication.Username;\n this.formValues.RepositoryAuthentication = true;\n this.state.isEdit = true;\n }\n }\n}\n\nexport default KubernetesAppGitFormController;\n","const autoNgTemplateLoaderTemplate1 = require('./kubernetes-app-git-form.html');\n\nimport angular from 'angular';\nimport controller from './kubernetes-app-git-form.controller';\n\nconst kubernetesAppGitForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n stack: '<',\n namespace: '<',\n },\n};\n\nangular.module('portainer.app').component('kubernetesAppGitForm', kubernetesAppGitForm);\n","import uuidv4 from 'uuid/v4';\nimport { RepositoryMechanismTypes } from 'Kubernetes/models/deploy';\nclass KubernetesRedeployAppGitFormController {\n /* @ngInject */\n constructor($async, $state, $analytics, StackService, ModalService, Notifications, WebhookHelper) {\n this.$async = $async;\n this.$state = $state;\n this.$analytics = $analytics;\n this.StackService = StackService;\n this.ModalService = ModalService;\n this.Notifications = Notifications;\n this.WebhookHelper = WebhookHelper;\n\n this.state = {\n saveGitSettingsInProgress: false,\n redeployInProgress: false,\n showConfig: false,\n isEdit: false,\n hasUnsavedChanges: false,\n };\n\n this.formValues = {\n RefName: '',\n RepositoryAuthentication: false,\n RepositoryUsername: '',\n RepositoryPassword: '',\n // auto update\n AutoUpdate: {\n RepositoryAutomaticUpdates: false,\n RepositoryAutomaticUpdatesForce: false,\n RepositoryMechanism: RepositoryMechanismTypes.INTERVAL,\n RepositoryFetchInterval: '5m',\n RepositoryWebhookURL: '',\n },\n };\n\n this.onChange = this.onChange.bind(this);\n this.onChangeRef = this.onChangeRef.bind(this);\n this.onChangeAutoUpdate = this.onChangeAutoUpdate.bind(this);\n }\n\n onChangeRef(value) {\n this.onChange({ RefName: value });\n }\n\n onChange(values) {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n\n this.state.hasUnsavedChanges = angular.toJson(this.savedFormValues) !== angular.toJson(this.formValues);\n }\n\n onChangeAutoUpdate(values) {\n this.onChange({\n AutoUpdate: {\n ...this.formValues.AutoUpdate,\n ...values,\n },\n });\n }\n\n buildAnalyticsProperties() {\n const metadata = {\n 'automatic-updates': automaticUpdatesLabel(this.formValues.AutoUpdate.RepositoryAutomaticUpdates, this.formValues.AutoUpdate.RepositoryMechanism),\n };\n\n return { metadata };\n\n function automaticUpdatesLabel(repositoryAutomaticUpdates, repositoryMechanism) {\n switch (repositoryAutomaticUpdates && repositoryMechanism) {\n case RepositoryMechanismTypes.INTERVAL:\n return 'polling';\n case RepositoryMechanismTypes.WEBHOOK:\n return 'webhook';\n default:\n return 'off';\n }\n }\n }\n\n async pullAndRedeployApplication() {\n return this.$async(async () => {\n try {\n const confirmed = await this.ModalService.confirmAsync({\n title: 'Are you sure?',\n message: 'Any changes to this application will be overridden by the definition in git and may cause a service interruption. Do you wish to continue?',\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-warning',\n },\n },\n });\n if (!confirmed) {\n return;\n }\n this.state.redeployInProgress = true;\n await this.StackService.updateKubeGit(this.stack.Id, this.stack.EndpointId, this.namespace, this.formValues);\n this.Notifications.success('Success', 'Pulled and redeployed stack successfully');\n await this.$state.reload();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed redeploying application');\n } finally {\n this.state.redeployInProgress = false;\n }\n });\n }\n\n async saveGitSettings() {\n return this.$async(async () => {\n try {\n this.state.saveGitSettingsInProgress = true;\n\n await this.StackService.updateKubeStack({ EndpointId: this.stack.EndpointId, Id: this.stack.Id }, null, this.formValues);\n this.savedFormValues = angular.copy(this.formValues);\n this.state.hasUnsavedChanges = false;\n this.Notifications.success('Success', 'Save stack settings successfully');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to save application settings');\n } finally {\n this.state.saveGitSettingsInProgress = false;\n }\n });\n }\n\n isSubmitButtonDisabled() {\n return this.state.saveGitSettingsInProgress || this.state.redeployInProgress;\n }\n\n $onInit() {\n this.formValues.RefName = this.stack.GitConfig.ReferenceName;\n // Init auto update\n if (this.stack.AutoUpdate && (this.stack.AutoUpdate.Interval || this.stack.AutoUpdate.Webhook)) {\n this.formValues.AutoUpdate.RepositoryAutomaticUpdates = true;\n\n this.formValues.AutoUpdate.RepositoryAutomaticUpdatesForce = this.stack.AutoUpdate.ForceUpdate;\n\n if (this.stack.AutoUpdate.Interval) {\n this.formValues.AutoUpdate.RepositoryMechanism = RepositoryMechanismTypes.INTERVAL;\n this.formValues.AutoUpdate.RepositoryFetchInterval = this.stack.AutoUpdate.Interval;\n } else if (this.stack.AutoUpdate.Webhook) {\n this.formValues.AutoUpdate.RepositoryMechanism = RepositoryMechanismTypes.WEBHOOK;\n this.formValues.AutoUpdate.RepositoryWebhookURL = this.WebhookHelper.returnStackWebhookUrl(this.stack.AutoUpdate.Webhook);\n }\n }\n\n if (!this.formValues.AutoUpdate.RepositoryWebhookURL) {\n this.formValues.AutoUpdate.RepositoryWebhookURL = this.WebhookHelper.returnStackWebhookUrl(uuidv4());\n }\n\n if (this.stack.GitConfig && this.stack.GitConfig.Authentication) {\n this.formValues.RepositoryUsername = this.stack.GitConfig.Authentication.Username;\n this.formValues.RepositoryAuthentication = true;\n this.state.isEdit = true;\n }\n\n this.savedFormValues = angular.copy(this.formValues);\n }\n}\n\nexport default KubernetesRedeployAppGitFormController;\n","const autoNgTemplateLoaderTemplate1 = require('./kubernetes-redeploy-app-git-form.html');\n\nimport angular from 'angular';\nimport controller from './kubernetes-redeploy-app-git-form.controller';\n\nconst kubernetesRedeployAppGitForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n stack: '<',\n namespace: '<',\n },\n};\n\nangular.module('portainer.app').component('kubernetesRedeployAppGitForm', kubernetesRedeployAppGitForm);\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-ecr.html');\n\nclass controller {\n constructor($scope) {\n this.$scope = $scope;\n this.toggleAuthentication = this.toggleAuthentication.bind(this);\n }\n\n $postLink() {\n this.registryFormEcr.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n\n toggleAuthentication(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.Authentication = newValue;\n });\n }\n}\n\nangular.module('portainer.app').component('registryFormEcr', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-azure.html');\n\nclass controller {\n $postLink() {\n this.registryFormAzure.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n}\n\nangular.module('portainer.app').component('registryFormAzure', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-custom.html');\n\nclass controller {\n constructor($scope) {\n this.$scope = $scope;\n this.toggleAuthentication = this.toggleAuthentication.bind(this);\n }\n\n $postLink() {\n this.registryFormCustom.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n\n toggleAuthentication(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.Authentication = newValue;\n });\n }\n}\n\nangular.module('portainer.app').component('registryFormCustom', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-dockerhub.html');\n\nclass controller {\n $postLink() {\n this.registryFormDockerhub.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n}\n\nangular.module('portainer.app').component('registryFormDockerhub', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./gitlabProjectsDatatable.html');\n\nangular.module('portainer.app').component('gitlabProjectsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GitlabProjectsDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n state: '=',\n },\n});\n","angular.module('portainer.app').controller('GitlabProjectsDatatableController', [\n '$scope',\n '$controller',\n 'DatatableService',\n function ($scope, $controller, DatatableService) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n\n this.disableSelection = function (item) {\n return !this.allowSelection(item);\n };\n\n // based on RegistryGitlabProject model\n this.allowSelection = function (item) {\n return item.RegistryEnabled;\n };\n\n this.$onInit = function () {\n this.setDefaults();\n this.prepareTableFromDataset();\n\n this.state.orderBy = this.orderBy;\n var storedOrder = DatatableService.getDataTableOrder(this.tableKey);\n if (storedOrder !== null) {\n this.state.reverseOrder = storedOrder.reverse;\n this.state.orderBy = storedOrder.orderBy;\n }\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n this.onTextFilterChange();\n }\n\n var storedFilters = DatatableService.getDataTableFilters(this.tableKey);\n if (storedFilters !== null) {\n this.filters = storedFilters;\n }\n if (this.filters && this.filters.state) {\n this.filters.state.open = false;\n }\n\n var storedSettings = DatatableService.getDataTableSettings(this.tableKey);\n if (storedSettings !== null) {\n this.settings = storedSettings;\n this.settings.open = false;\n }\n this.onSettingsRepeaterChange();\n };\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-gitlab.html');\n\nangular.module('portainer.app').component('registryFormGitlab', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n retrieveRegistries: '<',\n createRegistries: '<',\n actionInProgress: '<',\n projects: '=',\n state: '=',\n resetDefaults: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-proget.html');\n\nclass controller {\n $postLink() {\n this.registryFormProGet.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n}\n\nangular.module('portainer.app').component('registryFormProget', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-form-quay.html');\n\nclass controller {\n constructor($scope) {\n this.$scope = $scope;\n this.toggleOrganisation = this.toggleOrganisation.bind(this);\n }\n\n $postLink() {\n this.registryFormQuay.registry_name.$validators.used = (modelValue) => !this.nameIsUsed(modelValue);\n }\n\n toggleOrganisation(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.Quay.useOrganisation = newValue;\n });\n }\n}\n\nangular.module('portainer.app').component('registryFormQuay', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '=',\n formAction: '<',\n formActionLabel: '@',\n actionInProgress: '<',\n nameIsUsed: '<',\n },\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./stackFromTemplateForm.html');\n\nimport angular from 'angular';\n\nangular.module('portainer.app').component('stackFromTemplateForm', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n template: '=',\n formValues: '=',\n state: '=',\n createTemplate: '<',\n unselectTemplate: '<',\n nameRegex: '<',\n },\n transclude: {\n advanced: '?advancedForm',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./stack-redeploy-git-form.html');\n\nimport angular from 'angular';\nimport controller from './stack-redeploy-git-form.controller.js';\n\nexport const stackRedeployGitForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n model: '<',\n stack: '<',\n endpoint: '<',\n },\n};\n\nangular.module('portainer.app').component('stackRedeployGitForm', stackRedeployGitForm);\n","import uuidv4 from 'uuid/v4';\nimport { RepositoryMechanismTypes } from 'Kubernetes/models/deploy';\nclass StackRedeployGitFormController {\n /* @ngInject */\n constructor($async, $state, StackService, ModalService, Notifications, WebhookHelper, FormHelper) {\n this.$async = $async;\n this.$state = $state;\n this.StackService = StackService;\n this.ModalService = ModalService;\n this.Notifications = Notifications;\n this.WebhookHelper = WebhookHelper;\n this.FormHelper = FormHelper;\n\n this.state = {\n inProgress: false,\n redeployInProgress: false,\n showConfig: false,\n isEdit: false,\n hasUnsavedChanges: false,\n };\n\n this.formValues = {\n RefName: '',\n RepositoryAuthentication: false,\n RepositoryUsername: '',\n RepositoryPassword: '',\n Env: [],\n Option: {\n Prune: false,\n },\n PullImage: false,\n // auto update\n AutoUpdate: {\n RepositoryAutomaticUpdates: false,\n RepositoryAutomaticUpdatesForce: false,\n RepositoryMechanism: RepositoryMechanismTypes.INTERVAL,\n RepositoryFetchInterval: '5m',\n RepositoryWebhookURL: '',\n ForcePullImage: false,\n },\n };\n\n this.onChange = this.onChange.bind(this);\n this.onChangeRef = this.onChangeRef.bind(this);\n this.onChangeAutoUpdate = this.onChangeAutoUpdate.bind(this);\n this.onChangeEnvVar = this.onChangeEnvVar.bind(this);\n this.onChangeOption = this.onChangeOption.bind(this);\n }\n\n buildAnalyticsProperties() {\n const metadata = {};\n\n if (this.formValues.RepositoryAutomaticUpdates) {\n metadata.automaticUpdates = autoSyncLabel(this.formValues.RepositoryMechanism);\n }\n return { metadata };\n\n function autoSyncLabel(type) {\n switch (type) {\n case RepositoryMechanismTypes.INTERVAL:\n return 'polling';\n case RepositoryMechanismTypes.WEBHOOK:\n return 'webhook';\n }\n return 'off';\n }\n }\n\n onChange(values) {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n\n this.state.hasUnsavedChanges = angular.toJson(this.savedFormValues) !== angular.toJson(this.formValues);\n }\n\n onChangeRef(value) {\n this.onChange({ RefName: value });\n }\n\n onChangeAutoUpdate(values) {\n this.onChange({\n AutoUpdate: {\n ...this.formValues.AutoUpdate,\n ...values,\n },\n });\n }\n\n onChangeEnvVar(value) {\n this.onChange({ Env: value });\n }\n\n onChangeOption(values) {\n this.onChange({\n Option: {\n ...this.formValues.Option,\n ...values,\n },\n });\n }\n\n async submit() {\n const isSwarmStack = this.stack.Type === 1;\n const that = this;\n this.ModalService.confirmStackUpdate(\n 'Any changes to this stack or application made locally in Portainer will be overridden, which may cause service interruption. Do you wish to continue',\n isSwarmStack,\n 'btn-warning',\n async function (result) {\n if (!result) {\n return;\n }\n try {\n that.state.redeployInProgress = true;\n await that.StackService.updateGit(\n that.stack.Id,\n that.stack.EndpointId,\n that.FormHelper.removeInvalidEnvVars(that.formValues.Env),\n that.formValues.Option.Prune,\n that.formValues,\n !!result[0]\n );\n that.Notifications.success('Success', 'Pulled and redeployed stack successfully');\n that.$state.reload();\n } catch (err) {\n that.Notifications.error('Failure', err, 'Failed redeploying stack');\n } finally {\n that.state.redeployInProgress = false;\n }\n }\n );\n }\n\n async saveGitSettings() {\n return this.$async(async () => {\n try {\n this.state.inProgress = true;\n const stack = await this.StackService.updateGitStackSettings(\n this.stack.Id,\n this.stack.EndpointId,\n this.FormHelper.removeInvalidEnvVars(this.formValues.Env),\n this.formValues\n );\n this.savedFormValues = angular.copy(this.formValues);\n this.state.hasUnsavedChanges = false;\n this.Notifications.success('Success', 'Save stack settings successfully');\n\n this.stack = stack;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to save stack settings');\n } finally {\n this.state.inProgress = false;\n }\n });\n }\n\n isSubmitButtonDisabled() {\n return this.state.inProgress || this.state.redeployInProgress;\n }\n\n isAutoUpdateChanged() {\n const wasEnabled = !!(this.stack.AutoUpdate && (this.stack.AutoUpdate.Interval || this.stack.AutoUpdate.Webhook));\n const isEnabled = this.formValues.AutoUpdate.RepositoryAutomaticUpdates;\n return isEnabled !== wasEnabled;\n }\n\n $onInit() {\n this.formValues.RefName = this.model.ReferenceName;\n this.formValues.Env = this.stack.Env;\n\n if (this.stack.Option) {\n this.formValues.Option = this.stack.Option;\n }\n\n // Init auto update\n if (this.stack.AutoUpdate && (this.stack.AutoUpdate.Interval || this.stack.AutoUpdate.Webhook)) {\n this.formValues.AutoUpdate.RepositoryAutomaticUpdates = true;\n this.formValues.AutoUpdate.RepositoryAutomaticUpdatesForce = this.stack.AutoUpdate.ForceUpdate;\n this.formValues.AutoUpdate.ForcePullImage = this.stack.AutoUpdate.ForcePullImage;\n\n if (this.stack.AutoUpdate.Interval) {\n this.formValues.AutoUpdate.RepositoryMechanism = RepositoryMechanismTypes.INTERVAL;\n this.formValues.AutoUpdate.RepositoryFetchInterval = this.stack.AutoUpdate.Interval;\n } else if (this.stack.AutoUpdate.Webhook) {\n this.formValues.AutoUpdate.RepositoryMechanism = RepositoryMechanismTypes.WEBHOOK;\n this.formValues.AutoUpdate.RepositoryWebhookURL = this.WebhookHelper.returnStackWebhookUrl(this.stack.AutoUpdate.Webhook);\n }\n }\n\n if (!this.formValues.AutoUpdate.RepositoryWebhookURL) {\n this.formValues.AutoUpdate.RepositoryWebhookURL = this.WebhookHelper.returnStackWebhookUrl(uuidv4());\n }\n\n if (this.stack.GitConfig && this.stack.GitConfig.Authentication) {\n this.formValues.RepositoryUsername = this.stack.GitConfig.Authentication.Username;\n this.formValues.RepositoryAuthentication = true;\n this.state.isEdit = true;\n }\n this.savedFormValues = angular.copy(this.formValues);\n }\n}\n\nexport default StackRedeployGitFormController;\n","const autoNgTemplateLoaderTemplate1 = require('./groupAssociationTable.html');\n\nimport _ from 'lodash-es';\nimport { idsToTagNames } from 'Portainer/helpers/tagHelper';\n\nangular.module('portainer.app').component('groupAssociationTable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: function () {\n this.state = {\n orderBy: 'Name',\n reverseOrder: false,\n paginatedItemLimit: '10',\n textFilter: '',\n loading: true,\n pageNumber: 1,\n };\n\n this.changeOrderBy = function (orderField) {\n this.state.reverseOrder = this.state.orderBy === orderField ? !this.state.reverseOrder : false;\n this.state.orderBy = orderField;\n };\n\n this.onTextFilterChange = function () {\n this.paginationChangedAction();\n };\n\n this.onPageChanged = function (newPageNumber) {\n this.paginationState.pageNumber = newPageNumber;\n this.paginationChangedAction();\n };\n\n this.onPaginationLimitChanged = function () {\n this.paginationChangedAction();\n };\n\n this.paginationChangedAction = function () {\n this.retrievePage(this.pageType, this.tableType);\n };\n\n this.$onChanges = function (changes) {\n if (changes.loaded && changes.loaded.currentValue) {\n this.paginationChangedAction();\n }\n };\n\n this.tagIdsToTagNames = function tagIdsToTagNames(tagIds) {\n return idsToTagNames(this.tags, tagIds).join(', ') || '-';\n };\n\n this.groupIdToGroupName = function groupIdToGroupName(groupId) {\n const group = _.find(this.groups, { Id: groupId });\n return group ? group.Name : '';\n };\n },\n bindings: {\n paginationState: '=',\n loaded: '<',\n pageType: '<',\n tableType: '@',\n retrievePage: '<',\n dataset: '<',\n entryClick: '<',\n emptyDatasetMessage: '@',\n tags: '<',\n showTags: '<',\n groups: '<',\n showGroups: '<',\n hasBackendPagination: '<',\n cyValue: '@',\n title: '@',\n },\n});\n","import angular from 'angular';\n\nimport { rdWidgetBody } from './rd-widget-body';\nimport { rdWidget } from './rd-widget';\nimport { rdWidgetCustomHeader } from './rd-widget-custom-header';\nimport { rdWidgetFooter } from './rd-widget-footer';\nimport { rdWidgetTaskbar } from './rd-widget-taskbar';\nimport { rdWidgetTitle } from './rd-widget-title';\n\nexport default angular\n .module('portainer.app.components.widget', [])\n .component('rdWidget', rdWidget)\n .component('rdWidgetBody', rdWidgetBody)\n .component('rdWidgetCustomHeader', rdWidgetCustomHeader)\n .component('rdWidgetFooter', rdWidgetFooter)\n .component('rdWidgetHeader', rdWidgetTitle)\n .component('rdWidgetTaskbar', rdWidgetTaskbar).name;\n","export const rdWidget = {\n transclude: true,\n template: `
    `,\n};\n","export const rdWidgetBody = {\n requires: '^rdWidget',\n bindings: {\n loading: '@?',\n classes: '@?',\n },\n transclude: true,\n template: `\n
    \n \n
    \n
    \n `,\n};\n","export const rdWidgetCustomHeader = {\n requires: '^rdWidget',\n bindings: {\n titleText: '=',\n icon: '=',\n },\n transclude: true,\n template: `\n
    \n
    \n \n \"header-icon\"\n \n {{$ctrl.titleText}} \n \n \n
    \n
    \n `,\n};\n\n// a react component wasn't created because WidgetTitle were adjusted to support a custom image\n","export const rdWidgetFooter = {\n requires: '^rdWidget',\n transclude: true,\n template: `\n
    \n `,\n};\n","export const rdWidgetTitle = {\n requires: '^rdWidget',\n bindings: {\n titleText: '@',\n icon: '@',\n featherIcon: '<',\n classes: '@?',\n parentClasses: '@?',\n },\n transclude: {\n title: '?headerTitle',\n },\n template: `\n
    \n
    \n \n
    \n \n
    \n {{ $ctrl.titleText }}\n
    \n \n
    \n
    \n`,\n};\n","export const rdWidgetTaskbar = {\n requires: '^rdWidget',\n bindings: {\n classes: '@?',\n },\n transclude: true,\n template: `\n
    \n
    \n
    \n
    \n
    \n `,\n};\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nimport { getFeatureDetails } from '@@/BEFeatureIndicator/utils';\n\nexport default class BeIndicatorController {\n limitedToBE?: boolean;\n\n url?: string;\n\n feature?: FeatureId;\n\n /* @ngInject */\n constructor() {\n this.limitedToBE = false;\n this.url = '';\n }\n\n $onInit() {\n const { url, limitedToBE } = getFeatureDetails(this.feature);\n\n this.limitedToBE = limitedToBE;\n this.url = url;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./BEFeatureIndicator.html');\n\nimport controller from './BEFeatureIndicator.controller';\n\nexport const beFeatureIndicator = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n feature: '<',\n },\n transclude: true,\n};\n","import angular from 'angular';\n\nimport formComponentsModule from './form-components';\nimport gitFormModule from './forms/git-form';\nimport porAccessManagementModule from './accessManagement';\nimport widgetModule from './widget';\nimport { boxSelectorModule } from './BoxSelector';\nimport dateRangePickerModule from './date-range-picker';\n\nimport { beFeatureIndicator } from './BEFeatureIndicator';\nimport { InformationPanelAngular } from './InformationPanel';\n\nexport default angular\n .module('portainer.app.components', [boxSelectorModule, widgetModule, dateRangePickerModule, gitFormModule, porAccessManagementModule, formComponentsModule])\n .component('informationPanel', InformationPanelAngular)\n .component('beFeatureIndicator', beFeatureIndicator).name;\n","const autoNgTemplateLoaderTemplate1 = require('./informationPanelOffline.html');\n\nangular.module('portainer.app').component('informationPanelOffline', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'InformationPanelOfflineController',\n});\n","angular.module('portainer.app').controller('InformationPanelOfflineController', [\n '$state',\n 'EndpointProvider',\n 'EndpointService',\n 'Authentication',\n 'Notifications',\n function StackDuplicationFormController($state, EndpointProvider, EndpointService, Authentication, Notifications) {\n var ctrl = this;\n\n this.$onInit = onInit;\n this.triggerSnapshot = triggerSnapshot;\n\n function triggerSnapshot() {\n var endpointId = EndpointProvider.endpointID();\n\n EndpointService.snapshotEndpoint(endpointId)\n .then(function onSuccess() {\n $state.reload();\n })\n .catch(function onError(err) {\n Notifications.error('Failure', err, 'An error occured during environment snapshot');\n });\n }\n\n function onInit() {\n var endpointId = EndpointProvider.endpointID();\n ctrl.showRefreshButton = Authentication.isAdmin();\n\n EndpointService.endpoint(endpointId)\n .then(function onSuccess(data) {\n ctrl.snapshotTime = data.Snapshots[0].Time;\n })\n .catch(function onError(err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment information');\n });\n }\n },\n]);\n","import angular from 'angular';\nimport parse from 'parse-duration';\n\nangular.module('portainer.app').directive('intervalFormat', function () {\n return {\n restrict: 'A',\n require: 'ngModel',\n link: function ($scope, $element, $attrs, ngModel) {\n ngModel.$validators.invalidIntervalFormat = function (modelValue) {\n try {\n return modelValue && modelValue.toUpperCase().match(/^P?(?!$)(\\d+Y)?(\\d+M)?(\\d+W)?(\\d+D)?(T?(?=\\d+[HMS])(\\d+H)?(\\d+M)?(\\d+S)?)?$/gm) !== null;\n } catch (error) {\n return false;\n }\n };\n\n ngModel.$validators.minimumInterval = function (modelValue) {\n try {\n return modelValue && parse(modelValue, 'minute') >= 1;\n } catch (error) {\n return false;\n }\n };\n },\n };\n});\n","angular.module('portainer.app').directive('onEnterKey', [\n function porOnEnterKey() {\n var directive = {\n restrict: 'A',\n link: function (scope, element, attrs) {\n element.bind('keydown keypress', function (e) {\n if (e.which === 13) {\n e.preventDefault();\n scope.$apply(function () {\n scope.$eval(attrs.onEnterKey);\n });\n }\n });\n },\n };\n\n return directive;\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./option-panel.html');\n\nimport angular from 'angular';\n\nimport controller from './option-panel.controller.js';\n\nangular.module('portainer.app').component('optionPanel', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n ngModel: '<',\n explanation: '@',\n onChange: '<',\n },\n});\n","export default class OptionPanelController {\n /* @ngInject */\n constructor() {\n this.switchPruneService = this.switchPruneService.bind(this);\n }\n\n switchPruneService() {\n this.onChange(this.ngModel);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./productItem.html');\n\nangular.module('portainer.app').component('productItem', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '<',\n goTo: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./productList.html');\n\nangular.module('portainer.app').component('productList', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n titleText: '@',\n products: '<',\n goTo: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registry-details.html');\n\nimport angular from 'angular';\n\nexport const registryDetails = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n registry: '<',\n },\n};\n\nangular.module('portainer.app').component('registryDetails', registryDetails);\n","const autoNgTemplateLoaderTemplate1 = require('./sensitive-details.html');\n\nimport angular from 'angular';\nimport './sensitive-details.css';\n\nangular.module('portainer.app').component('sensitiveDetails', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n key: '@',\n value: '@',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./show-hide.html');\n\nimport angular from 'angular';\n\nangular.module('portainer.app').component('showHide', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n value: '<',\n useAsterisk: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./slider.html');\n\nangular.module('portainer.app').component('slider', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'SliderController',\n bindings: {\n model: '=',\n onChange: '<',\n floor: '<',\n ceil: '<',\n step: '<',\n precision: '<',\n },\n});\n","// TODO: k8s merge - TEST WITH EXISTING SLIDERS !\n// Not sure if this is not breaking existing sliders on docker views\n// Or sliders with onChange call (docker service update view)\nimport angular from 'angular';\n\nclass SliderController {\n /* @ngInject */\n constructor($scope) {\n this.$scope = $scope;\n\n this.buildOptions = this.buildOptions.bind(this);\n this.translate = this.translate.bind(this);\n }\n\n $onChanges() {\n this.buildOptions();\n }\n\n translate(value, sliderId, label) {\n if ((label === 'floor' && this.floor === 0) || value === 0) {\n return 'unlimited';\n }\n return value;\n }\n\n buildOptions() {\n this.options = {\n floor: this.floor,\n ceil: this.ceil,\n step: this.step,\n precision: this.precision,\n showSelectionBar: true,\n enforceStep: false,\n translate: this.translate,\n onChange: () => this.onChange(),\n };\n }\n\n $onInit() {\n this.buildOptions();\n }\n}\n\nexport default SliderController;\nangular.module('portainer.app').controller('SliderController', SliderController);\n","import { STACK_NAME_VALIDATION_REGEX } from '@/constants';\n\nangular.module('portainer.app').controller('StackDuplicationFormController', [\n 'Notifications',\n function StackDuplicationFormController(Notifications) {\n var ctrl = this;\n\n ctrl.state = {\n duplicationInProgress: false,\n migrationInProgress: false,\n };\n\n ctrl.formValues = {\n endpoint: null,\n newName: '',\n };\n\n ctrl.STACK_NAME_VALIDATION_REGEX = STACK_NAME_VALIDATION_REGEX;\n\n ctrl.isFormValidForDuplication = isFormValidForDuplication;\n ctrl.isFormValidForMigration = isFormValidForMigration;\n ctrl.duplicateStack = duplicateStack;\n ctrl.migrateStack = migrateStack;\n ctrl.isMigrationButtonDisabled = isMigrationButtonDisabled;\n ctrl.isEndpointSelected = isEndpointSelected;\n\n function isFormValidForMigration() {\n return ctrl.formValues.endpoint && ctrl.formValues.endpoint.Id;\n }\n\n function isFormValidForDuplication() {\n return isFormValidForMigration() && ctrl.formValues.newName && !ctrl.yamlError;\n }\n\n function duplicateStack() {\n if (!ctrl.formValues.newName) {\n Notifications.error('Failure', null, 'Stack name is required for duplication');\n return;\n }\n ctrl.state.duplicationInProgress = true;\n ctrl\n .onDuplicate({\n endpointId: ctrl.formValues.endpoint.Id,\n name: ctrl.formValues.newName ? ctrl.formValues.newName : undefined,\n })\n .finally(function () {\n ctrl.state.duplicationInProgress = false;\n });\n }\n\n function migrateStack() {\n ctrl.state.migrationInProgress = true;\n ctrl\n .onMigrate({\n endpointId: ctrl.formValues.endpoint.Id,\n name: ctrl.formValues.newName ? ctrl.formValues.newName : undefined,\n })\n .finally(function () {\n ctrl.state.migrationInProgress = false;\n });\n }\n\n function isMigrationButtonDisabled() {\n return !ctrl.isFormValidForMigration() || ctrl.state.duplicationInProgress || ctrl.state.migrationInProgress || isTargetEndpointAndCurrentEquals();\n }\n\n function isTargetEndpointAndCurrentEquals() {\n return ctrl.formValues.endpoint && ctrl.formValues.endpoint.Id === ctrl.currentEndpointId;\n }\n\n function isEndpointSelected() {\n return ctrl.formValues.endpoint && ctrl.formValues.endpoint.Id;\n }\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./stack-duplication-form.html');\n\nangular.module('portainer.app').component('stackDuplicationForm', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'StackDuplicationFormController',\n bindings: {\n onDuplicate: '&',\n onMigrate: '&',\n endpoints: '<',\n groups: '<',\n currentEndpointId: '<',\n yamlError: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./status-indicator.html');\n\nimport angular from 'angular';\n\nimport './status-indicator.css';\n\nexport const statusIndicator = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n ok: '<',\n },\n};\n\nangular.module('portainer.app').component('statusIndicator', statusIndicator);\n","const autoNgTemplateLoaderTemplate1 = require('./templateItem.html');\n\nimport angular from 'angular';\n\nimport './template-item.css';\n\nangular.module('portainer.app').component('templateItem', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n model: '<',\n typeLabel: '@',\n onSelect: '<',\n },\n transclude: {\n actions: '?templateItemActions',\n },\n});\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('TemplateListController', TemplateListController);\n\nfunction TemplateListController($scope, $async, $state, DatatableService, Notifications, TemplateService) {\n var ctrl = this;\n\n this.state = {\n textFilter: '',\n selectedCategory: null,\n categories: [],\n typeFilters: [],\n filterByType: null,\n showContainerTemplates: true,\n selectedOrderBy: null,\n orderByFields: [],\n orderDesc: false,\n };\n\n this.onTextFilterChange = function () {\n DatatableService.setDataTableTextFilters(this.tableKey, this.state.textFilter);\n };\n\n ctrl.filterByTemplateType = function (item) {\n switch (item.Type) {\n case 1: // container\n return ctrl.state.showContainerTemplates;\n case 2: // swarm stack\n return ctrl.showSwarmStacks && !ctrl.state.showContainerTemplates;\n case 3: // docker compose\n return !ctrl.state.showContainerTemplates || null === ctrl.state.filterByType;\n case 4: // Edge stack templates\n return false;\n }\n return false;\n };\n\n ctrl.updateCategories = function () {\n var availableCategories = [];\n\n for (var i = 0; i < ctrl.templates.length; i++) {\n var template = ctrl.templates[i];\n if (ctrl.filterByTemplateType(template)) {\n availableCategories = availableCategories.concat(template.Categories);\n }\n }\n\n ctrl.state.categories = _.sortBy(_.uniq(availableCategories));\n };\n\n ctrl.filterByCategory = function (item) {\n if (!ctrl.state.selectedCategory) {\n return true;\n }\n\n return _.includes(item.Categories, ctrl.state.selectedCategory);\n };\n\n this.duplicateTemplate = duplicateTemplate.bind(this);\n this.duplicateTemplateAsync = duplicateTemplateAsync.bind(this);\n function duplicateTemplate(template) {\n return $async(this.duplicateTemplateAsync, template);\n }\n\n async function duplicateTemplateAsync(template) {\n try {\n const { FileContent: fileContent } = await TemplateService.templateFile(template.Repository.url, template.Repository.stackfile);\n let type = 0;\n if (template.Type === 2) {\n type = 1;\n }\n if (template.Type === 3) {\n type = 2;\n }\n $state.go('docker.templates.custom.new', { fileContent, type });\n } catch (err) {\n Notifications.error('Failure', err, 'Failed to duplicate template');\n }\n }\n\n ctrl.changeOrderBy = function (orderField) {\n $scope.$evalAsync(() => {\n if (null === orderField) {\n ctrl.state.selectedOrderBy = null;\n ctrl.templates = ctrl.initalTemplates;\n }\n\n ctrl.state.selectedOrderBy = orderField;\n ctrl.templates = _.orderBy(ctrl.templates, [getSorter(ctrl.state.selectedOrderBy)], [ctrl.state.orderDesc ? 'desc' : 'asc']);\n });\n };\n\n ctrl.applyTypeFilter = function (type) {\n $scope.$evalAsync(() => {\n ctrl.state.filterByType = type;\n ctrl.state.showContainerTemplates = 'Container' === type || null === type;\n ctrl.updateCategories();\n });\n };\n\n ctrl.invertOrder = function () {\n $scope.$evalAsync(() => {\n ctrl.state.orderDesc = !ctrl.state.orderDesc;\n ctrl.templates = _.orderBy(ctrl.templates, [getSorter(ctrl.state.selectedOrderBy)], [ctrl.state.orderDesc ? 'desc' : 'asc']);\n });\n };\n\n ctrl.applyCategoriesFilter = function (category) {\n $scope.$evalAsync(() => {\n ctrl.state.selectedCategory = category;\n ctrl.updateCategories();\n });\n };\n\n this.$onInit = function () {\n if (this.showSwarmStacks) {\n this.state.showContainerTemplates = false;\n }\n this.updateCategories();\n\n var textFilter = DatatableService.getDataTableTextFilters(this.tableKey);\n if (textFilter !== null) {\n this.state.textFilter = textFilter;\n }\n\n this.initalTemplates = this.templates;\n this.state.orderByFields = ['Title', 'Categories', 'Description'];\n this.state.typeFilters = ['Container', 'Stack'];\n };\n\n function categorySorter(template) {\n if (template.Categories && template.Categories.length > 0 && template.Categories[0] && template.Categories[0].length > 0) {\n return template.Categories[0].toLowerCase();\n }\n }\n\n function getSorter(orderBy) {\n let sorter;\n switch (orderBy) {\n case 'Categories':\n sorter = categorySorter;\n break;\n default:\n sorter = orderBy;\n }\n\n return sorter;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./templateList.html');\n\nangular.module('portainer.app').component('templateList', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'TemplateListController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n templates: '<',\n tableKey: '@',\n selectAction: '<',\n showSwarmStacks: '<',\n },\n});\n","angular.module('portainer.app').directive('rdTemplateWidget', function rdWidget() {\n var directive = {\n scope: {\n ngModel: '=',\n },\n transclude: true,\n template: '
    ',\n restrict: 'EA',\n };\n return directive;\n});\n","import Lightmode from '@/assets/ico/theme/lightmode.svg?c';\nimport Darkmode from '@/assets/ico/theme/darkmode.svg?c';\nimport Highcontrastmode from '@/assets/ico/theme/highcontrastmode.svg?c';\nimport Automode from '@/assets/ico/theme/auto.svg?c';\n\nexport const options = [\n {\n id: 'light',\n icon: Lightmode,\n label: 'Light Theme',\n description: 'Default color mode',\n value: 'light',\n },\n {\n id: 'dark',\n icon: Darkmode,\n label: 'Dark Theme',\n description: 'Dark color mode',\n value: 'dark',\n },\n {\n id: 'highcontrast',\n icon: Highcontrastmode,\n label: 'High Contrast',\n description: 'High contrast color mode',\n value: 'highcontrast',\n },\n {\n id: 'auto',\n icon: Automode,\n label: 'Auto',\n description: 'Sync with system theme',\n value: 'auto',\n },\n];\n","import { options } from './options';\n\nexport default class ThemeSettingsController {\n /* @ngInject */\n constructor($async, Authentication, ThemeManager, StateManager, UserService, Notifications) {\n this.$async = $async;\n this.Authentication = Authentication;\n this.ThemeManager = ThemeManager;\n this.StateManager = StateManager;\n this.UserService = UserService;\n this.Notifications = Notifications;\n\n this.setTheme = this.setTheme.bind(this);\n }\n\n async setTheme(theme) {\n try {\n if (theme === 'auto' || !theme) {\n this.ThemeManager.autoTheme();\n } else {\n this.ThemeManager.setTheme(theme);\n }\n\n this.state.userTheme = theme;\n if (!this.state.isDemo) {\n await this.UserService.updateUserTheme(this.state.userId, this.state.userTheme);\n }\n\n this.Notifications.success('Success', 'User theme successfully updated');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to update user theme');\n }\n }\n\n $onInit() {\n return this.$async(async () => {\n const state = this.StateManager.getState();\n\n this.state = {\n userId: null,\n userTheme: '',\n defaultTheme: 'auto',\n isDemo: state.application.demoEnvironment.enabled,\n };\n this.state.availableThemes = options;\n\n try {\n this.state.userId = await this.Authentication.getUserDetails().ID;\n const data = await this.UserService.user(this.state.userId);\n this.state.userTheme = data.UserTheme || this.state.defaultTheme;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to get user details');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./theme-settings.html');\n\nimport angular from 'angular';\nimport controller from './theme-settings.controller';\n\nangular.module('portainer.app').component('themeSettings', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./time-window-display.html');\n\nimport angular from 'angular';\nimport controller from './time-window-display.controller';\n\nangular.module('portainer.app').component('timeWindowDisplay', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","import * as moment from 'moment-timezone';\n\nexport default class TimeWindowDisplayController {\n /* @ngInject */\n constructor($async, EndpointProvider, EndpointService) {\n this.$async = $async;\n this.EndpointProvider = EndpointProvider;\n this.EndpointService = EndpointService;\n }\n\n utcToTime(utcTime) {\n const startTime = moment.tz(utcTime.StartTime, 'HH:mm', 'GMT').tz(this.state.timezone).format('HH:mm');\n const endTime = moment.tz(utcTime.EndTime, 'HH:mm', 'GMT').tz(this.state.timezone).format('HH:mm');\n\n const [startHour, startMin] = startTime.split(':');\n const [endHour, endMin] = endTime.split(':');\n\n const startTimeUser = new Date();\n const endTimeUser = new Date();\n\n startTimeUser.setHours(startHour);\n startTimeUser.setMinutes(startMin);\n\n endTimeUser.setHours(endHour);\n endTimeUser.setMinutes(endMin);\n\n return {\n startTime: startTimeUser,\n endTime: endTimeUser,\n };\n }\n\n customToTimeObject() {\n const startTime = this.state.timeWindow.StartTime;\n const endTime = this.state.timeWindow.EndTime;\n\n const [startHour, startMin] = startTime.split(':');\n const [endHour, endMin] = endTime.split(':');\n\n const startTimeObject = new Date();\n const endTimeObject = new Date();\n\n startTimeObject.setHours(startHour);\n startTimeObject.setMinutes(startMin);\n\n endTimeObject.setHours(endHour);\n endTimeObject.setMinutes(endMin);\n\n this.state.startTimeUtc = startTimeObject;\n this.state.endTimeUtc = endTimeObject;\n }\n\n loadUserTime(utcTime) {\n const { startTime, endTime } = this.utcToTime(utcTime);\n\n this.state.startTimeUser = startTime;\n this.state.endTimeUser = endTime;\n }\n\n $onInit() {\n const currentUserTimezone = moment.tz.guess();\n\n return this.$async(async () => {\n const endpointId = this.EndpointProvider.endpointID();\n const endpoint = await this.EndpointService.endpoint(endpointId);\n\n this.state = {\n timeWindow: endpoint.ChangeWindow,\n startTimeUser: '',\n endTimeUser: '',\n startTimeUtc: '',\n endTimeUtc: '',\n timezone: currentUserTimezone,\n dst: moment().isDST(),\n };\n\n this.loadUserTime(this.state.timeWindow);\n this.customToTimeObject();\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./time-window-picker.html');\n\nimport angular from 'angular';\nimport controller from './time-window-picker.controller';\nimport './time-window-picker.css';\n\nangular.module('portainer.app').component('timeWindowPicker', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n timeWindow: '=',\n timeZone: '=',\n },\n});\n","import * as moment from 'moment-timezone';\n\nexport default class TimeWindowController {\n /* @ngInject */\n constructor($async) {\n this.$async = $async;\n }\n\n timeToUtc(startTimeSet, endTimeSet, timeZone) {\n const start = moment(startTimeSet).format('YYYY-MM-DD HH:mm');\n const end = moment(endTimeSet).format('YYYY-MM-DD HH:mm');\n\n const startTimeUtc = moment.tz(start, timeZone).utc().format('HH:mm');\n const endTimeUtc = moment.tz(end, timeZone).utc().format('HH:mm');\n\n return { startTimeUtc, endTimeUtc };\n }\n\n utcToTime(utcTime) {\n const startTime = moment.tz(utcTime.StartTime, 'HH:mm', 'GMT').tz(this.state.timeZoneSelected).format('HH:mm');\n const endTime = moment.tz(utcTime.EndTime, 'HH:mm', 'GMT').tz(this.state.timeZoneSelected).format('HH:mm');\n\n const [startHour, startMin] = startTime.split(':');\n const [endHour, endMin] = endTime.split(':');\n\n const startTimeUser = new Date();\n const endTimeUser = new Date();\n\n startTimeUser.setHours(startHour);\n startTimeUser.setMinutes(startMin);\n\n endTimeUser.setHours(endHour);\n endTimeUser.setMinutes(endMin);\n\n return {\n startTime: startTimeUser,\n endTime: endTimeUser,\n };\n }\n\n loadUtcTime() {\n const startTime = this.timeWindow.StartTime;\n const endTime = this.timeWindow.EndTime;\n\n const { startTimeObject, endTimeObject } = this.customToTimeObject(startTime, endTime);\n\n this.state.utcStartTime = startTimeObject;\n this.state.utcEndTime = endTimeObject;\n }\n\n loadTimeWindow() {\n // get time window from api ( UTC time object )\n const timeWindow = this.timeWindow;\n\n // Recover user set time with user-set timezone from UTC time object\n const { startTime, endTime } = this.utcToTime(timeWindow);\n\n this.state.setStartTime = startTime;\n this.state.setEndTime = endTime;\n }\n\n timeWindowUpdate() {\n const { startTimeUtc, endTimeUtc } = this.timeToUtc(this.state.setStartTime, this.state.setEndTime, this.state.timeZoneSelected);\n\n if (this.state.setStartTime.getTime() === this.state.setEndTime.getTime()) {\n this.state.timeError = true;\n } else {\n this.state.timeError = false;\n }\n\n this.timeWindow = {\n Enabled: this.timeWindow.Enabled,\n StartTime: startTimeUtc,\n EndTime: endTimeUtc,\n };\n\n this.timeZone = this.state.timeZoneSelected;\n\n const { startTimeObject, endTimeObject } = this.customToTimeObject(startTimeUtc, endTimeUtc);\n\n this.state.utcStartTime = startTimeObject;\n this.state.utcEndTime = endTimeObject;\n }\n\n customToTimeObject(startTime, endTime) {\n const [startHour, startMin] = startTime.split(':');\n const [endHour, endMin] = endTime.split(':');\n\n const startTimeObject = new Date();\n const endTimeObject = new Date();\n\n startTimeObject.setHours(startHour);\n startTimeObject.setMinutes(startMin);\n\n endTimeObject.setHours(endHour);\n endTimeObject.setMinutes(endMin);\n\n return { startTimeObject, endTimeObject };\n }\n\n defaultTimeWindow() {\n const defaultStartTime = '00:00';\n const defaultEndTime = '00:00';\n\n this.state.setStartTime.setHours(0, 0, 0, 0);\n this.state.setEndTime.setHours(0, 0, 0, 0);\n\n this.timeWindow = {\n Enabled: this.timeWindow.Enabled,\n StartTime: defaultStartTime,\n EndTime: defaultEndTime,\n };\n }\n\n toggleChangeWindow() {\n this.state.changeWindow = !this.state.changeWindow;\n if (!this.state.changeWindow) {\n const { startTime, endTime } = this.utcToTime(this.state.initTime);\n this.state.setStartTime = startTime;\n this.state.setEndTime = endTime;\n this.state.timeError = false;\n }\n }\n\n $onInit() {\n const currentUserTimezone = moment.tz.guess();\n\n const countries = moment.tz.countries();\n const zones = new Set();\n for (const country of countries) {\n moment.tz.zonesForCountry(country).reduce((set, zone) => set.add(zone), zones);\n }\n this.timeZones = [...zones].sort();\n this.timeZones.push('UTC');\n\n this.state = {\n hstep: 1,\n mstep: 5,\n ismeridian: true,\n utcStartTime: '',\n utcEndTime: '',\n setStartTime: new Date(),\n setEndTime: new Date(),\n initTime: this.timeWindow,\n dst: moment().isDST(),\n changeWindow: false,\n timeSet: false,\n options: {\n timezones: this.timeZones,\n },\n timeError: false,\n timeZoneSelected: currentUserTimezone,\n };\n\n // StartTime & EndTime is not Null\n if (this.timeWindow.StartTime && this.timeWindow.EndTime) {\n if (this.timeWindow.StartTime !== '00:00' || this.timeWindow.EndTime !== '00:00') {\n this.loadUtcTime();\n this.loadTimeWindow();\n this.state.timeSet = true;\n } else {\n this.defaultTimeWindow();\n this.state.timeSet = false;\n }\n }\n // StartTime & EndTime is Null\n else {\n this.defaultTimeWindow();\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./azureEndpointConfig.html');\n\nexport const azureEndpointConfig = {\n bindings: {\n applicationId: '=',\n tenantId: '=',\n authenticationKey: '=',\n },\n templateUrl: autoNgTemplateLoaderTemplate1,\n};\n","import moment from 'moment';\nimport _ from 'lodash-es';\nimport filesize from 'filesize';\n\nimport { Eye, EyeOff, Users } from 'react-feather';\nimport { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\nimport { EnvironmentType } from '../environments/types';\n\nexport function truncateLeftRight(text, max, left, right) {\n max = isNaN(max) ? 50 : max;\n left = isNaN(left) ? 25 : left;\n right = isNaN(right) ? 25 : right;\n\n if (text.length <= max) {\n return text;\n } else {\n return text.substring(0, left) + '[...]' + text.substring(text.length - right, text.length);\n }\n}\n\nexport function stripProtocol(url) {\n return url.replace(/.*?:\\/\\//g, '');\n}\n\nexport function humanize(bytes, round, base) {\n if (!round) {\n round = 1;\n }\n if (!base) {\n base = 10;\n }\n if (bytes || bytes === 0) {\n return filesize(bytes, { base: base, round: round });\n }\n}\n\nexport function isoDateFromTimestamp(timestamp) {\n return moment.unix(timestamp).format('YYYY-MM-DD HH:mm:ss');\n}\n\nexport function isoDate(date) {\n return moment(date).format('YYYY-MM-DD HH:mm:ss');\n}\n\nexport function getPairKey(pair, separator) {\n if (!pair.includes(separator)) {\n return pair;\n }\n\n return pair.slice(0, pair.indexOf(separator));\n}\n\nexport function getPairValue(pair, separator) {\n if (!pair.includes(separator)) {\n return '';\n }\n\n return pair.slice(pair.indexOf(separator) + 1);\n}\n\nexport function ipAddress(ip) {\n return ip.slice(0, ip.indexOf('/'));\n}\n\nexport function arrayToStr(arr, separator) {\n if (arr) {\n return _.join(arr, separator);\n }\n return '';\n}\n\nexport function labelsToStr(arr, separator) {\n if (arr) {\n return _.join(\n arr.map((item) => item.key + ':' + item.value),\n separator\n );\n }\n return '';\n}\n\nexport function endpointTypeName(type) {\n switch (type) {\n case EnvironmentType.Docker:\n return 'Docker';\n case EnvironmentType.AgentOnDocker:\n case EnvironmentType.AgentOnKubernetes:\n return 'Agent';\n case EnvironmentType.Azure:\n return 'Azure ACI';\n case EnvironmentType.KubernetesLocal:\n return 'Kubernetes';\n case EnvironmentType.EdgeAgentOnDocker:\n case EnvironmentType.EdgeAgentOnKubernetes:\n case EnvironmentType.EdgeAgentOnNomad:\n return 'Edge Agent';\n default:\n throw new Error(`type ${type}-${EnvironmentType[type]} is not supported`);\n }\n}\n\nexport function environmentTypeIcon(type) {\n switch (type) {\n case EnvironmentType.Azure:\n return 'fab fa-microsoft';\n case EnvironmentType.EdgeAgentOnDocker:\n return 'fa fa-cloud';\n case EnvironmentType.AgentOnKubernetes:\n case EnvironmentType.EdgeAgentOnKubernetes:\n case EnvironmentType.KubernetesLocal:\n return 'fas fa-dharmachakra';\n case EnvironmentType.AgentOnDocker:\n case EnvironmentType.Docker:\n return 'fab fa-docker';\n case EnvironmentType.EdgeAgentOnNomad:\n return 'nomad-icon';\n default:\n throw new Error(`type ${type}-${EnvironmentType[type]} is not supported`);\n }\n}\n\nexport function ownershipIcon(ownership) {\n switch (ownership) {\n case RCO.PRIVATE:\n return EyeOff;\n case RCO.ADMINISTRATORS:\n return EyeOff;\n case RCO.RESTRICTED:\n return Users;\n default:\n return Eye;\n }\n}\n\nexport function truncate(text, length, end) {\n if (isNaN(length)) {\n length = 10;\n }\n\n if (end === undefined) {\n end = '...';\n }\n\n if (text.length <= length || text.length - end.length <= length) {\n return text;\n } else {\n return String(text).substring(0, length - end.length) + end;\n }\n}\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nimport {\n arrayToStr,\n environmentTypeIcon,\n endpointTypeName,\n getPairKey,\n getPairValue,\n humanize,\n ipAddress,\n isoDate,\n isoDateFromTimestamp,\n labelsToStr,\n ownershipIcon,\n stripProtocol,\n truncate,\n truncateLeftRight,\n} from './filters';\n\nangular\n .module('portainer.app')\n .filter('truncate', () => truncate)\n .filter('truncatelr', () => truncateLeftRight)\n .filter('capitalize', () => _.capitalize)\n .filter('stripprotocol', () => stripProtocol)\n .filter('humansize', () => humanize)\n .filter('getisodatefromtimestamp', () => isoDateFromTimestamp)\n .filter('getisodate', () => isoDate)\n .filter('key', () => getPairKey)\n .filter('value', () => getPairValue)\n .filter('emptyobject', () => _.isEmpty)\n .filter('ipaddress', () => ipAddress)\n .filter('arraytostr', () => arrayToStr)\n .filter('labelsToStr', () => labelsToStr)\n .filter('endpointtypename', () => endpointTypeName)\n .filter('endpointtypeicon', () => environmentTypeIcon)\n .filter('ownershipicon', () => ownershipIcon);\n","import _ from 'lodash-es';\nimport { PortainerEndpointTypes } from 'Portainer/models/endpoint/models';\n\nfunction findAssociatedGroup(endpoint, groups) {\n return _.find(groups, function (group) {\n return group.Id === endpoint.GroupId;\n });\n}\n\nexport default class EndpointHelper {\n static isLocalEndpoint(endpoint) {\n return endpoint.URL.includes('unix://') || endpoint.URL.includes('npipe://') || endpoint.Type === PortainerEndpointTypes.KubernetesLocalEnvironment;\n }\n\n static isDockerEndpoint(endpoint) {\n return [PortainerEndpointTypes.DockerEnvironment, PortainerEndpointTypes.AgentOnDockerEnvironment, PortainerEndpointTypes.EdgeAgentOnDockerEnvironment].includes(endpoint.Type);\n }\n\n static isAgentEndpoint(endpoint) {\n return [\n PortainerEndpointTypes.AgentOnDockerEnvironment,\n PortainerEndpointTypes.EdgeAgentOnDockerEnvironment,\n PortainerEndpointTypes.AgentOnKubernetesEnvironment,\n PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment,\n PortainerEndpointTypes.EdgeAgentOnNomadEnvironment,\n ].includes(endpoint.Type);\n }\n\n static mapGroupNameToEndpoint(endpoints, groups) {\n for (var i = 0; i < endpoints.length; i++) {\n var endpoint = endpoints[i];\n var group = findAssociatedGroup(endpoint, groups);\n if (group) {\n endpoint.GroupName = group.Name;\n }\n }\n }\n}\n\nexport function isOfflineEndpoint(endpoint) {\n return endpoint.Status !== 1;\n}\n","import _ from 'lodash-es';\n\nexport const KEY_REGEX = /(.+?)/.source;\nexport const VALUE_REGEX = /(.*)?/.source;\n\nconst KEY_VALUE_REGEX = new RegExp(`^(${KEY_REGEX})\\\\s*=(${VALUE_REGEX})$`);\nconst NEWLINES_REGEX = /\\n|\\r|\\r\\n/;\n\n/**\n * @param {string} src the source of the .env file\n *\n * @returns {[{name: string, value: string}]} array of {name, value}\n */\nexport function parseDotEnvFile(src) {\n return parseArrayOfStrings(\n _.compact(src.split(NEWLINES_REGEX))\n .map((v) => v.trim())\n .filter((v) => !v.startsWith('#') && v !== '')\n );\n}\n\n/**\n * parses an array of name=value to array of {name, value}\n *\n * @param {[string]} array array of strings in format name=value\n *\n * @returns {[{name: string, value: string}]} array of {name, value}\n */\nexport function parseArrayOfStrings(array) {\n if (!array) {\n return [];\n }\n\n return _.compact(\n array.map((variableString) => {\n if (!variableString.includes('=')) {\n return { name: variableString };\n }\n\n const parsedKeyValArr = variableString.trim().match(KEY_VALUE_REGEX);\n if (parsedKeyValArr != null && parsedKeyValArr.length > 4) {\n return { name: parsedKeyValArr[1].trim(), value: parsedKeyValArr[3].trim() || '' };\n }\n })\n );\n}\n/**\n * converts an array of {name, value} to array of `name=value`, name is always defined\n *\n * @param {[{name, value}]} array array of {name, value}\n *\n * @returns {[string]} array of `name=value`\n */\nexport function convertToArrayOfStrings(array) {\n if (!array) {\n return [];\n }\n\n return array.filter((variable) => variable.name).map(({ name, value }) => (value || value === '' ? `${name}=${value}` : name));\n}\n","angular.module('portainer.app').factory('FormHelper', [\n function FormHelperFactory() {\n 'use strict';\n var helper = {};\n\n helper.removeInvalidEnvVars = function (env) {\n for (var i = env.length - 1; i >= 0; i--) {\n var envvar = env[i];\n if (!envvar.value || !envvar.name) {\n env.splice(i, 1);\n }\n }\n\n return env;\n };\n\n return helper;\n },\n]);\n","import _ from 'lodash-es';\n\nclass GenericHelper {\n static findDeepAll(obj, target, res = []) {\n if (typeof obj === 'object') {\n _.forEach(obj, (child, key) => {\n if (key === target) res.push(child);\n if (typeof child === 'object') GenericHelper.findDeepAll(child, target, res);\n });\n }\n return res;\n }\n}\n\nexport default GenericHelper;\n","import _ from 'lodash-es';\nimport angular from 'angular';\n\nclass NetworkHelper {\n /* @ngInject */\n constructor(PREDEFINED_NETWORKS) {\n this.PREDEFINED_NETWORKS = PREDEFINED_NETWORKS;\n }\n\n isSystemNetwork(item) {\n return _.includes(this.PREDEFINED_NETWORKS, item.Name);\n }\n}\n\nexport default NetworkHelper;\nangular.module('portainer.app').service('NetworkHelper', NetworkHelper);\n","/**\n * calculates baseHref\n *\n * return [string]\n *\n */\nexport function baseHref() {\n const base = document.getElementById('base');\n return base ? base.getAttribute('href') : '/';\n}\n","import _ from 'lodash-es';\nimport angular from 'angular';\nimport { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\nimport { ResourceControlOwnershipParameters } from '../models/resourceControl/resourceControlOwnershipParameters';\n\nclass ResourceControlHelper {\n /**\n * Transform ResourceControlViewModel to ResourceControlOwnershipParameters\n * @param {int} userId ID of User performing the action\n * @param {ResourceControlViewModel} resourceControl ResourceControl view model\n */\n RCViewModelToOwnershipParameters(userId, resourceControl) {\n if (!resourceControl) {\n return new ResourceControlOwnershipParameters(true);\n }\n let adminOnly = false;\n let publicOnly = false;\n let users = [];\n let teams = [];\n switch (resourceControl.Ownership) {\n case RCO.PUBLIC:\n publicOnly = true;\n break;\n case RCO.PRIVATE:\n users = [userId];\n break;\n case RCO.RESTRICTED:\n users = _.map(resourceControl.UserAccesses, (user) => user.UserId);\n teams = _.map(resourceControl.TeamAccesses, (team) => team.TeamId);\n break;\n default:\n adminOnly = true;\n break;\n }\n return new ResourceControlOwnershipParameters(adminOnly, publicOnly, users, teams);\n }\n\n /**\n * Transform AccessControlFormData to ResourceControlOwnershipParameters\n * @param {int} userId ID of user performing the operation\n * @param {AccessControlFormData} formValues Form data (generated by AccessControlForm)\n * @param {int[]} subResources Sub Resources restricted by the ResourceControl\n */\n RCFormDataToOwnershipParameters(userId, formValues, subResources = []) {\n if (!formValues.AccessControlEnabled) {\n formValues.Ownership = RCO.PUBLIC;\n }\n\n let adminOnly = false;\n let publicOnly = false;\n let users = [];\n let teams = [];\n switch (formValues.Ownership) {\n case RCO.PUBLIC:\n publicOnly = true;\n break;\n case RCO.PRIVATE:\n users.push(userId);\n break;\n case RCO.RESTRICTED:\n users = _.map(formValues.AuthorizedUsers, (user) => user.Id);\n teams = _.map(formValues.AuthorizedTeams, (team) => team.Id);\n break;\n default:\n adminOnly = true;\n break;\n }\n return new ResourceControlOwnershipParameters(adminOnly, publicOnly, users, teams, subResources);\n }\n\n retrieveAuthorizedUsers(resourceControl, users) {\n const authorizedUsers = [];\n _.forEach(resourceControl.UserAccesses, (access) => {\n const user = _.find(users, { Id: access.UserId });\n if (user) {\n authorizedUsers.push(user);\n }\n });\n return authorizedUsers;\n }\n\n retrieveAuthorizedTeams(resourceControl, teams) {\n const authorizedTeams = [];\n _.forEach(resourceControl.TeamAccesses, (access) => {\n const team = _.find(teams, { Id: access.TeamId });\n if (team) {\n authorizedTeams.push(team);\n }\n });\n return authorizedTeams;\n }\n}\n\nexport default ResourceControlHelper;\nangular.module('portainer.app').service('ResourceControlHelper', ResourceControlHelper);\n","import _ from 'lodash-es';\nimport YAML from 'yaml';\nimport GenericHelper from '@/portainer/helpers/genericHelper';\n\nimport { ExternalStackViewModel } from '@/portainer/models/stack';\n\nangular.module('portainer.app').factory('StackHelper', [\n function StackHelperFactory() {\n 'use strict';\n var helper = {};\n\n helper.getExternalStacksFromContainers = function (containers) {\n return getExternalStacksFromLabel(containers, 'com.docker.compose.project', 2);\n };\n\n helper.getExternalStacksFromServices = function (services) {\n return getExternalStacksFromLabel(services, 'com.docker.stack.namespace', 1);\n };\n\n function getExternalStacksFromLabel(items, label, type) {\n return _.uniqBy(\n items.filter((item) => item.Labels && item.Labels[label]).map((item) => new ExternalStackViewModel(item.Labels[label], type, item.Created)),\n 'Name'\n );\n }\n\n helper.validateYAML = function (yaml, containerNames) {\n let yamlObject;\n\n try {\n yamlObject = YAML.parse(yaml);\n } catch (err) {\n return 'There is an error in the yaml syntax: ' + err;\n }\n\n const names = _.uniq(GenericHelper.findDeepAll(yamlObject, 'container_name'));\n const duplicateContainers = _.intersection(containerNames, names);\n\n if (duplicateContainers.length === 0) return;\n\n return (\n (duplicateContainers.length === 1 ? 'This container name is' : 'These container names are') +\n ' already used by another container running in this environment: ' +\n _.join(duplicateContainers, ', ') +\n '.'\n );\n };\n\n return helper;\n },\n]);\n","import _ from 'lodash';\n\nexport function idsToTagNames(tags, ids) {\n const filteredTags = _.filter(tags, (tag) => _.includes(ids, tag.Id));\n const tagNames = _.map(filteredTags, 'Name');\n return tagNames;\n}\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').factory('TemplateHelper', [\n function TemplateHelperFactory() {\n 'use strict';\n var helper = {};\n\n helper.getDefaultContainerConfiguration = function () {\n return {\n Env: [],\n OpenStdin: false,\n Tty: false,\n ExposedPorts: {},\n HostConfig: {\n RestartPolicy: {\n Name: 'no',\n },\n PortBindings: {},\n Binds: [],\n Privileged: false,\n ExtraHosts: [],\n },\n Volumes: {},\n Labels: {},\n };\n };\n\n helper.portArrayToPortConfiguration = function (ports) {\n var portConfiguration = {\n bindings: {},\n exposedPorts: {},\n };\n ports.forEach(function (p) {\n if (p.containerPort) {\n var key = p.containerPort + '/' + p.protocol;\n var binding = {};\n if (p.hostPort) {\n binding.HostPort = p.hostPort;\n if (p.hostPort.indexOf(':') > -1) {\n var hostAndPort = p.hostPort.split(':');\n binding.HostIp = hostAndPort[0];\n binding.HostPort = hostAndPort[1];\n }\n }\n portConfiguration.bindings[key] = [binding];\n portConfiguration.exposedPorts[key] = {};\n }\n });\n return portConfiguration;\n };\n\n helper.updateContainerConfigurationWithLabels = function (labelsArray) {\n var labels = {};\n labelsArray.forEach(function (l) {\n if (l.name) {\n if (l.value) {\n labels[l.name] = l.value;\n } else {\n labels[l.name] = '';\n }\n }\n });\n return labels;\n };\n\n helper.EnvToStringArray = function (templateEnvironment) {\n var env = [];\n templateEnvironment.forEach(function (envvar) {\n if (envvar.value || envvar.set) {\n var value = envvar.set ? envvar.set : envvar.value;\n env.push(envvar.name + '=' + value);\n }\n });\n return env;\n };\n\n helper.getConsoleConfiguration = function (interactiveFlag) {\n var consoleConfiguration = {\n openStdin: false,\n tty: false,\n };\n if (interactiveFlag === true) {\n consoleConfiguration.openStdin = true;\n consoleConfiguration.tty = true;\n }\n return consoleConfiguration;\n };\n\n helper.createVolumeBindings = function (volumes, generatedVolumesPile) {\n volumes.forEach(function (volume) {\n if (volume.container) {\n var binding;\n if (volume.type === 'auto') {\n binding = generatedVolumesPile.pop().Id + ':' + volume.container;\n } else if (volume.type !== 'auto' && volume.bind) {\n binding = volume.bind + ':' + volume.container;\n }\n if (volume.readonly) {\n binding += ':ro';\n }\n volume.binding = binding;\n }\n });\n };\n\n helper.determineRequiredGeneratedVolumeCount = function (volumes) {\n var count = 0;\n volumes.forEach(function (volume) {\n if (volume.type === 'auto') {\n ++count;\n }\n });\n return count;\n };\n\n helper.getUniqueCategories = function (templates) {\n var categories = [];\n for (var i = 0; i < templates.length; i++) {\n var template = templates[i];\n categories = categories.concat(template.Categories);\n }\n return _.uniq(categories);\n };\n\n return helper;\n },\n]);\n","angular.module('portainer.app').factory('URLHelper', [\n '$window',\n function URLHelperFactory($window) {\n 'use strict';\n var helper = {};\n\n helper.getParameter = getParameter;\n helper.cleanParameters = cleanParameters;\n\n function getParameter(param) {\n var parameters = extractParameters();\n return parameters[param];\n }\n\n function extractParameters() {\n var queryString = $window.location.search.replace(/.*?\\?/, '').split('&');\n return queryString.reduce(function (acc, keyValStr) {\n var keyVal = keyValStr.split('=');\n var key = keyVal[0];\n var val = keyVal[1];\n acc[key] = val;\n return acc;\n }, {});\n }\n\n function cleanParameters() {\n $window.location.replace($window.location.origin + $window.location.pathname + $window.location.hash);\n }\n\n return helper;\n },\n]);\n","import { baseHref } from '@/portainer/helpers/pathHelper';\n\nangular.module('portainer.app').factory('WebhookHelper', [\n '$location',\n 'API_ENDPOINT_WEBHOOKS',\n 'API_ENDPOINT_STACKS',\n function WebhookHelperFactory($location, API_ENDPOINT_WEBHOOKS, API_ENDPOINT_STACKS) {\n 'use strict';\n\n var helper = {};\n const protocol = $location.protocol().toLowerCase();\n const port = $location.port();\n const displayPort = (protocol === 'http' && port === 80) || (protocol === 'https' && port === 443) ? '' : ':' + port;\n\n helper.returnWebhookUrl = function (token) {\n return `${protocol}://${$location.host()}${displayPort}${baseHref()}${API_ENDPOINT_WEBHOOKS}/${token}`;\n };\n\n helper.returnStackWebhookUrl = function (token) {\n return `${protocol}://${$location.host()}${displayPort}${baseHref()}${API_ENDPOINT_STACKS}/webhooks/${token}`;\n };\n\n return helper;\n },\n]);\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').factory('EndpointStatusInterceptor', [\n '$q',\n 'EndpointProvider',\n function ($q, EndpointProvider) {\n 'use strict';\n var interceptor = {};\n\n interceptor.response = responseInterceptor;\n interceptor.responseError = responseErrorInterceptor;\n\n function canBeOffline(url) {\n return (\n _.startsWith(url, 'api/') &&\n (_.includes(url, '/containers') ||\n _.includes(url, '/images') ||\n _.includes(url, '/volumes') ||\n _.includes(url, '/networks') ||\n _.includes(url, '/info') ||\n _.includes(url, '/version'))\n );\n }\n\n function responseInterceptor(response) {\n var url = response.config.url;\n if (response.status === 200 && canBeOffline(url) && EndpointProvider.offlineMode()) {\n EndpointProvider.setOfflineMode(false);\n }\n return response || $q.when(response);\n }\n\n function responseErrorInterceptor(rejection) {\n var url = rejection.config.url;\n if ((rejection.status === 502 || rejection.status === 503 || rejection.status === -1) && canBeOffline(url) && !EndpointProvider.offlineMode()) {\n EndpointProvider.setOfflineMode(true);\n }\n return $q.reject(rejection);\n }\n\n return interceptor;\n },\n]);\n","export default class AddLicenseViewController {\n /* @ngInject */\n constructor($async, $state, LicenseService, Notifications) {\n this.$async = $async;\n this.$state = $state;\n this.LicenseService = LicenseService;\n this.Notifications = Notifications;\n\n this.licenses = [''];\n this.keyValidations = {};\n\n this.onSubmitSuccess = this.onSubmitSuccess.bind(this);\n }\n\n onSubmitSuccess() {\n this.$state.go('portainer.licenses');\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./add-license.view.html');\n\nimport controller from './add-license.view.controller.js';\n\nexport const addLicenseView = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","import angular from 'angular';\n\nimport { addLicenseView } from './add-license.view';\nimport { licensesForm } from './licenses-form';\nimport { licenseFormItem } from './licenses-form/license-item';\n\nexport default angular\n .module('portainer.app.license-management.add-license-view', [])\n\n .component('addLicenseView', addLicenseView)\n .component('licensesForm', licensesForm)\n .component('licenseFormItem', licenseFormItem).name;\n","const autoNgTemplateLoaderTemplate1 = require('./licenses-form.html');\n\nimport controller from './licenses-form.controller';\nimport './licenses-form.css';\n\nexport const licensesForm = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n licenses: '<',\n onSubmitSuccess: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./license-item.html');\n\nimport controller from './license-item.controller';\n\nexport const licenseFormItem = {\n bindings: {\n keyValidation: '<',\n value: '<',\n index: '<',\n\n onChange: '&',\n onRemoveClick: '&',\n },\n controller,\n templateUrl: autoNgTemplateLoaderTemplate1,\n};\n","export default class LicenseItemController {\n isInvalid() {\n return this.form.licenseInput.$invalid || (this.keyValidation && !this.keyValidation.status);\n }\n}\n","import _ from 'lodash-es';\n\nexport default class LicensesFormController {\n /* @ngInject */\n constructor($async, LicenseService, Notifications) {\n this.$async = $async;\n this.LicenseService = LicenseService;\n this.Notifications = Notifications;\n\n this.state = {\n actionInProgress: false,\n formError: '',\n };\n this.keyValidations = {};\n\n this.addLicense = this.addLicense.bind(this);\n this.removeLicense = this.removeLicense.bind(this);\n this.onLicenseChange = this.onLicenseChange.bind(this);\n this.submit = this.submit.bind(this);\n }\n\n addLicense() {\n this.licenses.push('');\n }\n\n removeLicense(index) {\n this.licenses.splice(index, 1);\n }\n\n onLicenseChange(value, index) {\n this.licenses[index] = value;\n }\n\n isFormValid() {\n return this.form.$valid && this.licenses.every((key) => !this.keyValidations[key] || this.keyValidations[key].status);\n }\n\n async submit() {\n return this.$async(async () => {\n if (!this.isFormValid()) {\n this.state.formError = 'Form is invalid';\n return;\n }\n let licenses = _.compact(this.licenses);\n\n if (!licenses.length) {\n this.state.formError = 'At least one license should be provided';\n return;\n }\n\n licenses = licenses.filter((key) => !this.keyValidations[key] || !this.keyValidations[key].status);\n\n if (!licenses.length) {\n this.onSubmitSuccess();\n return;\n }\n\n try {\n const { failedKeys } = await this.LicenseService.attach(licenses);\n\n if (failedKeys && Object.keys(failedKeys).length) {\n this.keyValidations = Object.fromEntries(licenses.map((key) => [key, { status: !failedKeys[key], message: failedKeys[key] }]));\n return;\n }\n\n this.onSubmitSuccess();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed validating licenses');\n }\n });\n }\n}\n","import angular from 'angular';\n\nimport { LicenseService } from './license.service.ts';\nimport licensesViewModule from './licenses.view';\nimport addLicenseViewModule from './add-license.view';\n\nexport default angular.module('portainer.app.license-management', [licensesViewModule, addLicenseViewModule]).config(config).service('LicenseService', LicenseService).name;\n\n/* @ngInject */\nfunction config($stateRegistryProvider) {\n const licenses = {\n name: 'portainer.licenses',\n url: '/licenses',\n views: {\n 'content@': {\n component: 'licensesView',\n },\n },\n onEnter: /* @ngInject */ function onEnter($async, $state, Authentication) {\n return $async(async () => {\n if (!Authentication.isAdmin()) {\n return $state.go('portainer.home');\n }\n });\n },\n };\n\n const addLicense = {\n name: 'portainer.licenses.new',\n url: '/licenses/new',\n views: {\n 'content@': {\n component: 'addLicenseView',\n },\n },\n };\n\n $stateRegistryProvider.register(licenses);\n $stateRegistryProvider.register(addLicense);\n}\n","import angular from 'angular';\n\nimport { LicenseInfoPanelAngular } from '@@/LicenseInfoPanel/LicenseInfoPanel';\nimport { licensesView } from './licenses.view';\nimport { licensesDatatable } from './licenses-datatable';\nimport { licenseInfo } from './license-info';\n\nexport default angular\n .module('portainer.app.license-management.licenses-view', [])\n .component('licensesDatatable', licensesDatatable)\n .component('licenseInfo', licenseInfo)\n .component('licenseInfoPanel', LicenseInfoPanelAngular)\n .component('licensesView', licensesView).name;\n","const autoNgTemplateLoaderTemplate1 = require('./license-info.html');\n\nimport controller from './license-info.controller.js';\n\nexport const licenseInfo = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: { info: '<' },\n};\n","import moment from 'moment';\n\nexport default class LicenseInfoController {\n /* @ngInject */\n constructor($async, StatusService, Notifications) {\n this.$async = $async;\n this.StatusService = StatusService;\n this.Notifications = Notifications;\n }\n\n productEdition() {\n switch (this.info.productEdition) {\n case 1:\n return 'Business Edition';\n case 2:\n return 'Enterprise Edition';\n default:\n return '';\n }\n }\n\n expiresAt() {\n return moment.unix(this.info.expiresAt).format('YYYY-MM-DD');\n }\n\n overUsage() {\n return this.usedNodes > this.info.nodes;\n }\n\n $onInit() {\n return this.$async(async () => {\n try {\n this.usedNodes = await this.StatusService.nodesCount();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed to get nodes count');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./licenses-datatable.html');\n\nexport const licensesDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: { dataset: '<', titleIcon: '@', tableKey: '@', orderBy: '@', removeAction: '<', updateAction: '<', reverseOrder: '<', copyLicenseKey: '<' },\n};\n","import moment from 'moment';\n\nexport default class LicensesViewController {\n /* @ngInject */\n constructor($async, $state, StatusService, LicenseService, ModalService, Notifications, clipboard) {\n this.$async = $async;\n this.$state = $state;\n this.StatusService = StatusService;\n this.LicenseService = LicenseService;\n this.ModalService = ModalService;\n this.Notifications = Notifications;\n this.clipboard = clipboard;\n\n this.info = null;\n this.licenses = null;\n this.usedNodes = 0;\n this.template = 'info';\n\n this.removeAction = this.removeAction.bind(this);\n this.copyLicenseKey = this.copyLicenseKey.bind(this);\n }\n\n copyLicenseKey(item) {\n this.clipboard.copyText(item.licenseKey);\n }\n\n removeAction(licenses) {\n return this.$async(async () => {\n try {\n const validLicensesToRemove = licenses.filter((l) => l.valid);\n if (validLicensesToRemove.length) {\n const validLicenses = this.licenses.filter((l) => l.valid);\n if (validLicenses.length === validLicensesToRemove.length) {\n this.Notifications.warning('At least one valid license is required');\n return;\n }\n }\n\n if (!(await this.ModalService.confirmDeletionAsync('Are you sure you want to remove these licenses?'))) {\n return;\n }\n\n const response = await this.LicenseService.remove(licenses.map((license) => license.licenseKey));\n if (response.failedKeys && Object.keys(response.failedKeys).length) {\n throw new Error('Failed removing licenses');\n }\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed removing licenses');\n }\n this.$state.reload();\n });\n }\n\n async $onInit() {\n return this.$async(async () => {\n try {\n const licenses = await this.LicenseService.licenses();\n this.licenses = licenses.map((license) => {\n const expiresAt = moment.unix(license.expiresAt);\n const valid = !license.revoked && moment().isBefore(expiresAt);\n return {\n ...license,\n showExpiresAt: expiresAt.format('YYYY-MM-DD HH:mm'),\n valid,\n };\n });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading licenses');\n }\n\n try {\n this.usedNodes = await this.StatusService.nodesCount();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed to get nodes count');\n }\n\n try {\n this.info = await this.LicenseService.info();\n if (this.usedNodes > this.info.nodes) {\n this.template = 'alert';\n }\n\n this.LicenseService.subscribe((info) => {\n this.info = info;\n });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading license info');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./licenses.view.html');\n\nimport controller from './licenses.view.controller.js';\n\nexport const licensesView = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","// create UserAccessViewModel from UserViewModel\nexport function UserAccessViewModel(data) {\n this.Id = data.Id;\n this.Name = data.Username;\n this.Type = 'user';\n this.Inherited = false;\n this.Override = false;\n this.Role = { Id: 0, Name: '-' };\n this.icon = '';\n}\n\n// create TeamAccessViewModel from TeamViewModel\nexport function TeamAccessViewModel(data) {\n this.Id = data.Id;\n this.Name = data.Name;\n this.Type = 'team';\n this.Inherited = false;\n this.Override = false;\n this.Role = { Id: 0, Name: '-' };\n this.icon = '';\n}\n","import { RegistryTypes } from './registryTypes';\n\nexport function DockerHubViewModel() {\n this.Id = 0;\n this.Type = RegistryTypes.ANONYMOUS;\n this.Name = 'Docker Hub (anonymous)';\n this.URL = 'docker.io';\n}\n","import { PortainerEndpointConnectionTypes } from 'Portainer/models/endpoint/models';\n\nexport class PortainerEndpointInitFormValues {\n constructor() {\n this.ConnectionType = PortainerEndpointConnectionTypes.KUBERNETES_LOCAL;\n this.Name = '';\n this.URL = '';\n this.TLS = false;\n this.TLSSkipVerify = false;\n this.TLSSKipClientVerify = false;\n this.TLSCACert = null;\n this.TLSCert = null;\n this.TLSKey = null;\n this.AzureApplicationId = '';\n this.AzureTenantId = '';\n this.AzureAuthenticationKey = '';\n }\n}\n\nclass PortainerEndpointInitFormValueEndpointSection {\n constructor(value, title, classes, description) {\n this.Id = value;\n this.Value = value;\n this.Title = title;\n this.Classes = classes;\n this.Description = description;\n }\n}\n\nexport const PortainerEndpointInitFormValueEndpointSections = Object.freeze([\n new PortainerEndpointInitFormValueEndpointSection(PortainerEndpointConnectionTypes.DOCKER_LOCAL, 'Docker', 'fab fa-docker', 'Manage the local Docker environment'),\n new PortainerEndpointInitFormValueEndpointSection(\n PortainerEndpointConnectionTypes.KUBERNETES_LOCAL,\n 'Kubernetes',\n 'fas fa-dharmachakra',\n 'Manage the local Kubernetes environment'\n ),\n new PortainerEndpointInitFormValueEndpointSection(PortainerEndpointConnectionTypes.AGENT, 'Agent', 'fa fa-bolt', 'Connect to a Portainer agent'),\n]);\n","/**\n * JS reference of portainer.go#EndpointType iota\n */\nexport const PortainerEndpointTypes = Object.freeze({\n // DockerEnvironment represents an endpoint connected to a Docker environment\n DockerEnvironment: 1,\n // AgentOnDockerEnvironment represents an endpoint connected to a Portainer agent deployed on a Docker environment\n AgentOnDockerEnvironment: 2,\n // AzureEnvironment represents an endpoint connected to an Azure environment\n AzureEnvironment: 3,\n // EdgeAgentOnDockerEnvironment represents an endpoint connected to an Edge agent deployed on a Docker environment\n EdgeAgentOnDockerEnvironment: 4,\n // KubernetesLocalEnvironment represents an endpoint connected to a local Kubernetes environment\n KubernetesLocalEnvironment: 5,\n // AgentOnKubernetesEnvironment represents an endpoint connected to a Portainer agent deployed on a Kubernetes environment\n AgentOnKubernetesEnvironment: 6,\n // EdgeAgentOnKubernetesEnvironment represents an endpoint connected to an Edge agent deployed on a Kubernetes environment\n EdgeAgentOnKubernetesEnvironment: 7,\n // EdgeAgentOnNomadEnvironment represents an endpoint connected to an Edge agent deployed on a Nomad environment\n EdgeAgentOnNomadEnvironment: 8,\n});\n\n/**\n * JS reference of endpoint_create.go#EndpointCreationType iota\n */\nexport const PortainerEndpointCreationTypes = Object.freeze({\n LocalDockerEnvironment: 1,\n AgentEnvironment: 2,\n AzureEnvironment: 3,\n EdgeAgentEnvironment: 4,\n LocalKubernetesEnvironment: 5,\n KubeConfigEnvironment: 6,\n});\n\nexport const PortainerEndpointConnectionTypes = Object.freeze({\n DOCKER_LOCAL: 1,\n KUBERNETES_LOCAL: 2,\n REMOTE: 3,\n AZURE: 4,\n AGENT: 5,\n EDGE: 6,\n});\n","export function RegistryGitlabProject(project) {\n this.Id = project.id;\n this.Description = project.description;\n this.Name = project.name;\n this.Namespace = project.namespace ? project.namespace.name : '';\n this.PathWithNamespace = project.path_with_namespace;\n this.RegistryEnabled = project.container_registry_enabled;\n}\n","export function EndpointGroupDefaultModel() {\n this.Name = '';\n this.Description = '';\n this.TagIds = [];\n}\n\nexport function EndpointGroupModel(data) {\n this.Id = data.Id;\n this.Name = data.Name;\n this.Description = data.Description;\n this.TagIds = data.TagIds;\n this.AuthorizedUsers = data.AuthorizedUsers;\n this.AuthorizedTeams = data.AuthorizedTeams;\n this.UserAccessPolicies = data.UserAccessPolicies;\n this.TeamAccessPolicies = data.TeamAccessPolicies;\n}\n\nexport function EndpointGroupCreateRequest(model, endpoints) {\n this.Name = model.Name;\n this.Description = model.Description;\n this.TagIds = model.TagIds;\n this.AssociatedEndpoints = endpoints;\n}\n\nexport function EndpointGroupUpdateRequest(model, endpoints) {\n this.id = model.Id;\n this.Name = model.Name;\n this.Description = model.Description;\n this.TagIds = model.TagIds;\n this.AssociatedEndpoints = endpoints;\n this.UserAccessPolicies = model.UserAccessPolicies;\n this.TeamAccessPolicies = model.TeamAccessPolicies;\n}\n","import _ from 'lodash-es';\nimport { RegistryTypes } from './registryTypes';\n\nexport function RegistryViewModel(data) {\n this.Id = data.Id;\n this.Type = data.Type;\n this.Name = data.Name;\n this.URL = data.URL;\n this.BaseURL = data.BaseURL;\n this.Authentication = data.Authentication;\n this.Username = data.Username;\n this.Password = data.Password;\n this.RegistryAccesses = data.RegistryAccesses; // map[EndpointID]{UserAccessPolicies, TeamAccessPolicies, NamespaceAccessPolicies}\n this.Checked = false;\n this.Gitlab = data.Gitlab;\n this.Quay = data.Quay;\n this.Ecr = data.Ecr;\n}\n\nexport function RegistryManagementConfigurationDefaultModel(registry) {\n this.Authentication = false;\n this.Password = '';\n this.TLS = false;\n this.TLSSkipVerify = false;\n this.TLSCACertFile = null;\n this.TLSCertFile = null;\n this.TLSKeyFile = null;\n\n if (registry.Type === RegistryTypes.ECR) {\n this.Region = registry.Ecr.Region;\n this.TLSSkipVerify = true;\n }\n\n if (registry.Type === RegistryTypes.QUAY || registry.Type === RegistryTypes.AZURE || registry.Type === RegistryTypes.ECR) {\n this.Authentication = true;\n this.Username = registry.Username;\n this.TLS = true;\n }\n\n if ((registry.Type === RegistryTypes.CUSTOM || registry.Type === RegistryTypes.PROGET) && registry.Authentication) {\n this.Authentication = true;\n this.Username = registry.Username;\n }\n}\n\nexport function RegistryCreateFormValues() {\n this.Type = RegistryTypes.CUSTOM;\n this.URL = '';\n this.Name = '';\n this.Authentication = false;\n this.Username = '';\n this.Password = '';\n}\n\nexport function RegistryCreateRequest(model) {\n this.Name = model.Name;\n this.Type = model.Type;\n this.URL = _.replace(model.URL, /^https?\\:\\/\\//i, '');\n this.URL = _.replace(this.URL, /\\/$/, '');\n this.Authentication = model.Authentication;\n if (model.Authentication) {\n this.Username = model.Username;\n this.Password = model.Password;\n }\n if (model.Type === RegistryTypes.GITLAB) {\n this.Gitlab = {\n ProjectId: model.Gitlab.ProjectId,\n InstanceURL: model.Gitlab.InstanceURL,\n ProjectPath: model.Gitlab.ProjectPath,\n };\n }\n if (model.Type === RegistryTypes.ECR) {\n this.Ecr = model.Ecr;\n }\n if (model.Type === RegistryTypes.QUAY) {\n this.Quay = {\n useOrganisation: model.Quay.useOrganisation,\n organisationName: model.Quay.organisationName,\n };\n }\n if (model.Type === RegistryTypes.PROGET) {\n this.BaseURL = _.replace(model.BaseURL, /^https?\\:\\/\\//i, '');\n this.BaseURL = _.replace(this.BaseURL, /\\/$/, '');\n }\n}\n","import _ from 'lodash-es';\n\nexport function RegistryRepositoryViewModel(item) {\n if (item.name && item.tags) {\n this.Name = item.name;\n this.TagsCount = _.without(item.tags, null).length;\n } else {\n this.Name = item;\n this.TagsCount = 0;\n }\n}\n\nexport function RegistryRepositoryGitlabViewModel(data) {\n this.Name = data.path;\n this.TagsCount = data.tags.length;\n}\n","export const RegistryTypes = Object.freeze({\n ANONYMOUS: 0, // not backend replicated, only for frontend\n QUAY: 1,\n AZURE: 2,\n CUSTOM: 3,\n GITLAB: 4,\n PROGET: 5,\n DOCKERHUB: 6,\n ECR: 7,\n});\n","/**\n * Payload for resourceControleCreate operation\n * @param {string} resourceId ID of involved Resource\n * @param {ResourceControlResourceType} resourceType Type of involved Resource\n * @param {ResourceControlOwnershipParameters} data Transcient type from view data to payload\n */\nexport function ResourceControlCreatePayload(resourceId, resourceType, data) {\n void data;\n\n this.ResourceID = resourceId;\n this.Type = resourceType;\n this.Public = data.Public;\n this.AdministratorsOnly = data.AdministratorsOnly;\n this.Users = data.Users;\n this.Teams = data.Teams;\n this.SubResourceIDs = data.SubResourceIDs;\n}\n","/**\n * Transcient type from view data to payload\n * @param {bool} adminOnly is ResourceControl restricted to admin only\n * @param {bool} publicOnly is ResourceControl exposed to public\n * @param {[]int} users Authorized UserIDs array\n * @param {[]int} teams Authorized TeamIDs array\n * @param {[]int} subResources subResourceIDs array\n */\nexport function ResourceControlOwnershipParameters(adminOnly = false, publicOnly = false, users = [], teams = [], subResources = []) {\n this.AdministratorsOnly = adminOnly;\n this.Public = publicOnly;\n this.Users = users;\n this.Teams = teams;\n this.SubResourceIDs = subResources;\n}\n","export function ScheduleCreateRequest(model) {\n this.Name = model.Name;\n this.Recurring = model.Recurring;\n this.CronExpression = model.CronExpression;\n this.Endpoints = model.Endpoints;\n this.FileContent = model.FileContent;\n this.File = model.File;\n}\n\nexport function ScheduleUpdateRequest(model) {\n this.id = model.Id;\n this.Name = model.Name;\n this.Recurring = model.Recurring;\n this.CronExpression = model.CronExpression;\n this.Endpoints = model.Endpoints;\n this.FileContent = model.FileContent;\n}\n","export function SettingsViewModel(data) {\n this.LogoURL = data.LogoURL;\n this.BlackListedLabels = data.BlackListedLabels;\n this.AuthenticationMethod = data.AuthenticationMethod;\n this.InternalAuthSettings = data.InternalAuthSettings;\n this.LDAPSettings = data.LDAPSettings;\n this.OAuthSettings = new OAuthSettingsViewModel(data.OAuthSettings);\n this.openAMTConfiguration = data.openAMTConfiguration;\n this.fdoConfiguration = data.fdoConfiguration;\n this.SnapshotInterval = data.SnapshotInterval;\n this.TemplatesURL = data.TemplatesURL;\n this.EnableEdgeComputeFeatures = data.EnableEdgeComputeFeatures;\n this.FeatureFlagSettings = data.FeatureFlagSettings;\n this.UserSessionTimeout = data.UserSessionTimeout;\n this.EnableTelemetry = data.EnableTelemetry;\n this.KubeconfigExpiry = data.KubeconfigExpiry;\n this.HelmRepositoryURL = data.HelmRepositoryURL;\n this.TrustOnFirstConnect = data.TrustOnFirstConnect;\n this.EnforceEdgeID = data.EnforceEdgeID;\n this.AgentSecret = data.AgentSecret;\n this.EdgePortainerUrl = data.EdgePortainerUrl;\n\n this.EdgeAgentCheckinInterval = data.EdgeAgentCheckinInterval;\n this.Edge = new EdgeSettingsViewModel(data.Edge);\n this.DefaultRegistry = data.DefaultRegistry;\n}\n\nexport function PublicSettingsViewModel(settings) {\n this.AuthenticationMethod = settings.AuthenticationMethod;\n this.TeamSync = settings.TeamSync;\n this.RequiredPasswordLength = settings.RequiredPasswordLength;\n this.EnableEdgeComputeFeatures = settings.EnableEdgeComputeFeatures;\n this.EnforceEdgeID = settings.EnforceEdgeID;\n this.FeatureFlagSettings = settings.Features;\n this.LogoURL = settings.LogoURL;\n this.OAuthLoginURI = settings.OAuthLoginURI;\n this.EnableTelemetry = settings.EnableTelemetry;\n this.OAuthHideInternalAuth = settings.OAuthHideInternalAuth;\n this.OAuthLogoutURI = settings.OAuthLogoutURI;\n this.KubeconfigExpiry = settings.KubeconfigExpiry;\n this.Features = settings.Features;\n this.Edge = new EdgeSettingsViewModel(settings.Edge);\n this.DefaultRegistry = settings.DefaultRegistry;\n}\n\nexport function InternalAuthSettingsViewModel(data) {\n this.RequiredPasswordLength = data.RequiredPasswordLength;\n}\n\nexport function LDAPSettingsViewModel(data) {\n this.ReaderDN = data.ReaderDN;\n this.Password = data.Password;\n this.URL = data.URL;\n this.SearchSettings = data.SearchSettings;\n this.GroupSearchSettings = data.GroupSearchSettings;\n this.AdminGroupSearchSettings = data.AdminGroupSearchSettings;\n this.AutoCreateUsers = data.AutoCreateUsers;\n}\n\nexport function LDAPSearchSettings(BaseDN, UsernameAttribute, Filter) {\n this.BaseDN = BaseDN;\n this.UsernameAttribute = UsernameAttribute;\n this.Filter = Filter;\n}\n\nexport function LDAPGroupSearchSettings(GroupBaseDN, GroupAttribute, GroupFilter) {\n this.GroupBaseDN = GroupBaseDN;\n this.GroupAttribute = GroupAttribute;\n this.GroupFilter = GroupFilter;\n}\n\nexport function OAuthSettingsViewModel(data) {\n this.ClientID = data.ClientID;\n this.ClientSecret = data.ClientSecret;\n this.AccessTokenURI = data.AccessTokenURI;\n this.AuthorizationURI = data.AuthorizationURI;\n this.ResourceURI = data.ResourceURI;\n this.RedirectURI = data.RedirectURI;\n this.UserIdentifier = data.UserIdentifier;\n this.Scopes = data.Scopes;\n this.OAuthAutoCreateUsers = data.OAuthAutoCreateUsers;\n this.OAuthAutoMapTeamMemberships = data.OAuthAutoMapTeamMemberships;\n this.TeamMemberships = data.TeamMemberships;\n this.DefaultTeamID = data.DefaultTeamID;\n this.SSO = data.SSO;\n this.HideInternalAuth = data.HideInternalAuth;\n this.LogoutURI = data.LogoutURI;\n}\n\nexport function EdgeSettingsViewModel(data = {}) {\n this.CheckinInterval = data.CheckinInterval;\n this.PingInterval = data.PingInterval;\n this.SnapshotInterval = data.SnapshotInterval;\n this.CommandInterval = data.CommandInterval;\n this.AsyncMode = data.AsyncMode;\n}\n","import { ResourceControlViewModel } from '@/portainer/access-control/models/ResourceControlViewModel';\n\nexport function StackViewModel(data) {\n this.Id = data.Id;\n this.Type = data.Type;\n this.Name = data.Name;\n this.EndpointId = data.EndpointId;\n this.SwarmId = data.SwarmId;\n this.Env = data.Env ? data.Env : [];\n this.Option = data.Option;\n this.IsComposeFormat = data.IsComposeFormat;\n if (data.ResourceControl && data.ResourceControl.Id !== 0) {\n this.ResourceControl = new ResourceControlViewModel(data.ResourceControl);\n }\n this.Status = data.Status;\n this.CreationDate = data.CreationDate;\n this.CreatedBy = data.CreatedBy;\n this.UpdateDate = data.UpdateDate;\n this.UpdatedBy = data.UpdatedBy;\n\n this.Regular = true;\n this.External = false;\n this.Orphaned = false;\n this.Checked = false;\n this.GitConfig = data.GitConfig;\n this.FromAppTemplate = data.FromAppTemplate;\n this.AdditionalFiles = data.AdditionalFiles;\n this.AutoUpdate = data.AutoUpdate;\n this.Webhook = data.Webhook;\n}\n\nexport function ExternalStackViewModel(name, type, creationDate) {\n this.Name = name;\n this.Type = type;\n this.CreationDate = creationDate;\n\n this.Regular = false;\n this.External = true;\n this.Orphaned = false;\n this.Checked = false;\n}\n\nexport function OrphanedStackViewModel(data) {\n this.Id = data.Id;\n this.Type = data.Type;\n this.Name = data.Name;\n this.EndpointId = data.EndpointId;\n this.SwarmId = data.SwarmId;\n this.Env = data.Env ? data.Env : [];\n this.Option = data.Option;\n if (data.ResourceControl && data.ResourceControl.Id !== 0) {\n this.ResourceControl = new ResourceControlViewModel(data.ResourceControl);\n }\n this.Status = data.Status;\n this.CreationDate = data.CreationDate;\n this.CreatedBy = data.CreatedBy;\n this.UpdateDate = data.UpdateDate;\n this.UpdatedBy = data.UpdatedBy;\n\n this.Regular = false;\n this.External = false;\n this.Orphaned = true;\n this.OrphanedRunning = false;\n this.Checked = false;\n}\n","export function StatusViewModel(data) {\n this.Authentication = data.Authentication;\n this.Snapshot = data.Snapshot;\n this.Version = data.Version;\n this.Edition = data.Edition;\n this.InstanceID = data.InstanceID;\n this.DemoEnvironment = data.DemoEnvironment;\n}\n\nexport function StatusVersionViewModel(data) {\n this.UpdateAvailable = data.UpdateAvailable;\n this.LatestVersion = data.LatestVersion;\n}\n","import _ from 'lodash-es';\n\nexport function TagViewModel(data) {\n this.Id = data.ID;\n this.Name = _.escape(data.Name);\n}\n","import _ from 'lodash-es';\n\nexport function TeamViewModel(data) {\n this.Id = data.Id;\n this.Name = _.escape(data.Name);\n this.Checked = false;\n}\n","export function TeamMembershipModel(data) {\n this.Id = data.Id;\n this.UserId = data.UserID;\n this.TeamId = data.TeamID;\n this.Role = data.Role;\n}\n","import _ from 'lodash-es';\nimport { PorImageRegistryModel } from 'Docker/models/porImageRegistry';\n\nexport class TemplateViewModel {\n constructor(data, version) {\n switch (version) {\n case '2':\n this.setTemplatesV2(data);\n break;\n default:\n throw new Error('Unsupported template version');\n }\n }\n\n setTemplatesV2(data) {\n this.Id = data.Id;\n this.Title = data.title;\n this.Type = data.type;\n this.Description = data.description;\n this.AdministratorOnly = data.AdministratorOnly;\n this.Name = data.name;\n this.Note = data.note;\n this.Categories = data.categories ? data.categories : [];\n this.Platform = data.platform ? data.platform : '';\n this.Logo = data.logo;\n this.Repository = data.repository;\n this.Hostname = data.hostname;\n this.RegistryModel = new PorImageRegistryModel();\n this.RegistryModel.Image = data.image;\n this.RegistryModel.Registry.URL = data.registry || '';\n this.Command = data.command ? data.command : '';\n this.Network = data.network ? data.network : '';\n this.Privileged = data.privileged ? data.privileged : false;\n this.Interactive = data.interactive ? data.interactive : false;\n this.RestartPolicy = data.restart_policy ? data.restart_policy : 'always';\n this.Labels = data.labels ? data.labels : [];\n this.Hosts = data.hosts ? data.hosts : [];\n this.Env = templateEnv(data);\n this.Volumes = templateVolumes(data);\n this.Ports = templatePorts(data);\n }\n}\n\nfunction templatePorts(data) {\n var ports = [];\n\n if (data.ports) {\n ports = data.ports.map(function (p) {\n var portAndProtocol = _.split(p, '/');\n var hostAndContainerPort = _.split(portAndProtocol[0], ':');\n\n return {\n hostPort: hostAndContainerPort.length > 1 ? hostAndContainerPort[0] : undefined,\n containerPort: hostAndContainerPort.length > 1 ? hostAndContainerPort[1] : hostAndContainerPort[0],\n protocol: portAndProtocol[1],\n };\n });\n }\n\n return ports;\n}\n\nfunction templateVolumes(data) {\n var volumes = [];\n\n if (data.volumes) {\n volumes = data.volumes.map(function (v) {\n return {\n container: v.container,\n readonly: v.readonly || false,\n type: v.bind ? 'bind' : 'auto',\n bind: v.bind ? v.bind : null,\n };\n });\n }\n\n return volumes;\n}\n\nfunction templateEnv(data) {\n var env = [];\n\n if (data.env) {\n env = data.env.map(function (envvar) {\n envvar.type = 2;\n envvar.value = envvar.default ? envvar.default : '';\n\n if (envvar.preset) {\n envvar.type = 1;\n }\n\n if (envvar.select) {\n envvar.type = 3;\n for (var i = 0; i < envvar.select.length; i++) {\n var allowedValue = envvar.select[i];\n if (allowedValue.default) {\n envvar.value = allowedValue.value;\n break;\n }\n }\n }\n return envvar;\n });\n }\n\n return env;\n}\n","export function UserViewModel(data) {\n this.Id = data.Id;\n this.Username = data.Username;\n this.Role = data.Role;\n this.UserTheme = data.UserTheme;\n this.EndpointAuthorizations = data.EndpointAuthorizations;\n this.PortainerAuthorizations = data.PortainerAuthorizations;\n if (data.Role === 1) {\n this.RoleName = 'administrator';\n } else {\n this.RoleName = 'user';\n }\n this.AuthenticationMethod = data.AuthenticationMethod;\n this.Checked = false;\n}\n\nexport function UserTokenModel(data) {\n this.id = data.id;\n this.userId = data.userId;\n this.description = data.description;\n this.prefix = data.prefix;\n this.dateCreated = data.dateCreated;\n this.lastUsed = data.lastUsed;\n}\n","export function WebhookViewModel(data) {\n this.Id = data.Id;\n this.Token = data.Token;\n this.ResourceId = data.ResourceID;\n this.EndpointId = data.EndpointID;\n this.WebhookType = data.WebhookType;\n}\n","angular.module('portainer.oauth', ['ngResource']).constant('API_ENDPOINT_OAUTH', 'api/auth/oauth');\n","const autoNgTemplateLoaderTemplate1 = require('./oauth-providers-selector.html');\n\nimport angular from 'angular';\nimport controller from './oauth-provider-selector.controller';\n\nangular.module('portainer.oauth').component('oauthProvidersSelector', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n onChange: '<',\n value: '<',\n },\n controller,\n});\n","import { Edit } from 'react-feather';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport Microsoft from '@/assets/ico/vendor/microsoft.svg?c';\nimport Google from '@/assets/ico/vendor/google.svg?c';\nimport Github from '@/assets/ico/vendor/github.svg?c';\n\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nexport const options = [\n {\n id: 'microsoft',\n icon: Microsoft,\n featherIcon: true,\n label: 'Microsoft',\n description: 'Microsoft OAuth provider',\n value: 'microsoft',\n feature: FeatureId.HIDE_INTERNAL_AUTH,\n },\n {\n id: 'google',\n icon: Google,\n label: 'Google',\n description: 'Google OAuth provider',\n value: 'google',\n feature: FeatureId.HIDE_INTERNAL_AUTH,\n },\n {\n id: 'github',\n icon: Github,\n label: 'Github',\n description: 'Github OAuth provider',\n value: 'github',\n feature: FeatureId.HIDE_INTERNAL_AUTH,\n },\n {\n id: 'custom',\n icon: ,\n label: 'Custom',\n description: 'Custom OAuth provider',\n value: 'custom',\n },\n];\n","import { options } from './oauth-options';\n\nexport default class OAuthProviderSelectorController {\n constructor() {\n this.options = options;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./oauth-settings.html');\n\nimport angular from 'angular';\nimport controller from './oauth-settings.controller';\n\nangular.module('portainer.oauth').component('oauthSettings', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n settings: '=',\n teams: '<',\n onSaveSettings: '<',\n saveButtonState: '<',\n },\n controller,\n});\n","import { baseHref } from '@/portainer/helpers/pathHelper';\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nimport providers, { getProviderByUrl } from './providers';\n\nconst MS_TENANT_ID_PLACEHOLDER = 'TENANT_ID';\n\nexport default class OAuthSettingsController {\n /* @ngInject */\n constructor($scope) {\n Object.assign(this, { $scope });\n\n this.limitedFeature = FeatureId.HIDE_INTERNAL_AUTH;\n this.limitedFeatureClass = 'limited-be';\n\n this.state = {\n provider: 'custom',\n overrideConfiguration: false,\n microsoftTenantID: '',\n };\n\n this.$onInit = this.$onInit.bind(this);\n this.onSelectProvider = this.onSelectProvider.bind(this);\n this.onMicrosoftTenantIDChange = this.onMicrosoftTenantIDChange.bind(this);\n this.useDefaultProviderConfiguration = this.useDefaultProviderConfiguration.bind(this);\n this.updateSSO = this.updateSSO.bind(this);\n this.addTeamMembershipMapping = this.addTeamMembershipMapping.bind(this);\n this.removeTeamMembership = this.removeTeamMembership.bind(this);\n this.addAdminClaimRegex = this.addAdminClaimRegex.bind(this);\n this.removeAdminClaimRegex = this.removeAdminClaimRegex.bind(this);\n this.onChangeHideInternalAuth = this.onChangeHideInternalAuth.bind(this);\n this.onToggleAutoTeamMembership = this.onToggleAutoTeamMembership.bind(this);\n }\n\n onMicrosoftTenantIDChange() {\n const tenantID = this.state.microsoftTenantID || MS_TENANT_ID_PLACEHOLDER;\n\n this.settings.AuthorizationURI = `https://login.microsoftonline.com/${tenantID}/oauth2/v2.0/authorize`;\n this.settings.AccessTokenURI = `https://login.microsoftonline.com/${tenantID}/oauth2/v2.0/token`;\n this.settings.ResourceURI = `https://graph.microsoft.com/v1.0/me`;\n this.settings.LogoutURI = `https://login.microsoftonline.com/${tenantID}/oauth2/v2.0/logout`;\n }\n\n useDefaultProviderConfiguration(providerId) {\n const provider = providers[providerId];\n\n this.state.overrideConfiguration = false;\n\n if (!this.isLimitedToBE || providerId === 'custom') {\n this.settings.AuthorizationURI = provider.authUrl;\n this.settings.AccessTokenURI = provider.accessTokenUrl;\n this.settings.ResourceURI = provider.resourceUrl;\n this.settings.LogoutURI = provider.logoutUrl;\n this.settings.UserIdentifier = provider.userIdentifier;\n this.settings.Scopes = provider.scopes;\n\n if (providerId === 'microsoft' && this.state.microsoftTenantID !== '') {\n this.onMicrosoftTenantIDChange();\n }\n } else {\n this.settings.ClientID = '';\n this.settings.ClientSecret = '';\n }\n }\n\n onSelectProvider(provider) {\n this.state.provider = provider;\n\n this.useDefaultProviderConfiguration(provider);\n }\n\n updateSSO(checked) {\n this.$scope.$evalAsync(() => {\n this.settings.SSO = checked;\n this.onChangeHideInternalAuth(checked);\n });\n }\n\n onChangeHideInternalAuth(checked) {\n this.$scope.$evalAsync(() => {\n if (!this.isLimitedToBE) {\n this.settings.HideInternalAuth = checked;\n }\n });\n }\n\n onToggleAutoTeamMembership(checked) {\n this.$scope.$evalAsync(() => {\n this.settings.OAuthAutoMapTeamMemberships = checked;\n });\n }\n\n addTeamMembershipMapping() {\n this.settings.TeamMemberships.OAuthClaimMappings.push({ ClaimValRegex: '', Team: this.settings.DefaultTeamID });\n }\n\n removeTeamMembership(index) {\n this.settings.TeamMemberships.OAuthClaimMappings.splice(index, 1);\n }\n\n addAdminClaimRegex() {\n this.settings.TeamMemberships.AdminGroupClaimsRegexList.push('');\n }\n\n removeAdminClaimRegex(index) {\n this.settings.TeamMemberships.AdminGroupClaimsRegexList.splice(index, 1);\n }\n\n isOAuthTeamMembershipFormValid() {\n if (this.settings.OAuthAutoMapTeamMemberships && this.settings.TeamMemberships) {\n if (!this.settings.TeamMemberships.OAuthClaimName) {\n return false;\n }\n\n const hasInvalidMapping = this.settings.TeamMemberships.OAuthClaimMappings.some((m) => !(m.ClaimValRegex && m.Team));\n if (hasInvalidMapping) {\n return false;\n }\n }\n return true;\n }\n\n isOAuthAdminMappingFormValid() {\n if (this.settings.AdminAutoPopulate && this.settings.AdminGroupClaimsRegexList) {\n const hasInvalidMapping = this.settings.AdminGroupClaimsRegexList.length === 0 || this.settings.AdminGroupClaimsRegexList.some((e) => e === '');\n if (hasInvalidMapping) {\n return false;\n }\n }\n\n return true;\n }\n\n $onInit() {\n this.isLimitedToBE = isLimitedToBE(this.limitedFeature);\n\n if (this.isLimitedToBE) {\n return;\n }\n\n if (this.settings.RedirectURI === '') {\n this.settings.RedirectURI = window.location.origin + baseHref();\n }\n\n if (this.settings.AuthorizationURI) {\n const authUrl = this.settings.AuthorizationURI;\n\n this.state.provider = getProviderByUrl(authUrl);\n if (this.state.provider === 'microsoft') {\n const tenantID = authUrl.match(/login.microsoftonline.com\\/(.*?)\\//)[1];\n if (tenantID !== MS_TENANT_ID_PLACEHOLDER) {\n this.state.microsoftTenantID = tenantID;\n this.onMicrosoftTenantIDChange();\n }\n }\n }\n\n if (this.settings.DefaultTeamID === 0) {\n this.settings.DefaultTeamID = null;\n }\n\n if (this.settings.TeamMemberships == null) {\n this.settings.TeamMemberships = {};\n }\n\n if (this.settings.TeamMemberships.OAuthClaimMappings === null) {\n this.settings.TeamMemberships.OAuthClaimMappings = [];\n }\n\n if (this.settings.TeamMemberships.AdminGroupClaimsRegexList === null) {\n this.settings.TeamMemberships.AdminGroupClaimsRegexList = [];\n }\n }\n}\n","import { baseHref } from '@/portainer/helpers/pathHelper';\n\nexport default {\n microsoft: {\n authUrl: 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/authorize',\n accessTokenUrl: 'https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/token',\n resourceUrl: 'https://graph.microsoft.com/v1.0/me',\n logoutUrl: `https://login.microsoftonline.com/TENANT_ID/oauth2/v2.0/logout`,\n userIdentifier: 'userPrincipalName',\n scopes: 'profile openid',\n },\n google: {\n authUrl: 'https://accounts.google.com/o/oauth2/auth',\n accessTokenUrl: 'https://accounts.google.com/o/oauth2/token',\n resourceUrl: 'https://www.googleapis.com/oauth2/v1/userinfo?alt=json',\n logoutUrl: `https://www.google.com/accounts/Logout?continue=https://appengine.google.com/_ah/logout?continue=${window.location.origin}${baseHref()}#!/auth`,\n userIdentifier: 'email',\n scopes: 'profile email',\n },\n github: {\n authUrl: 'https://github.com/login/oauth/authorize',\n accessTokenUrl: 'https://github.com/login/oauth/access_token',\n resourceUrl: 'https://api.github.com/user',\n logoutUrl: `https://github.com/logout`,\n userIdentifier: 'login',\n scopes: 'id email name',\n },\n custom: { authUrl: '', accessTokenUrl: '', resourceUrl: '', logoutUrl: '', userIdentifier: '', scopes: '' },\n};\n\nexport function getProviderByUrl(providerAuthURL = '') {\n if (providerAuthURL.includes('login.microsoftonline.com')) {\n return 'microsoft';\n }\n\n if (providerAuthURL.includes('accounts.google.com')) {\n return 'google';\n }\n\n if (providerAuthURL.includes('github.com')) {\n return 'github';\n }\n\n return 'custom';\n}\n","angular.module('portainer.oauth').factory('OAuth', [\n '$resource',\n 'API_ENDPOINT_OAUTH',\n function OAuthFactory($resource, API_ENDPOINT_OAUTH) {\n 'use strict';\n return $resource(\n API_ENDPOINT_OAUTH + '/:action',\n {},\n {\n validate: {\n method: 'POST',\n ignoreLoadingBar: true,\n params: {\n action: 'validate',\n },\n },\n }\n );\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./access-viewer-datatable.html');\n\nimport './access-viewer-datatable.css';\n\nexport const accessViewerDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n tableKey: '@',\n orderBy: '@',\n dataset: '<',\n isAdmin: '<',\n },\n};\n","import _ from 'lodash-es';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nimport { getEnvironments } from '@/portainer/environments/environment.service';\nimport AccessViewerPolicyModel from '../../models/access';\n\nexport default class AccessViewerController {\n /* @ngInject */\n constructor(Notifications, RoleService, UserService, GroupService, TeamService, TeamMembershipService, Authentication) {\n this.Notifications = Notifications;\n this.RoleService = RoleService;\n this.UserService = UserService;\n this.GroupService = GroupService;\n this.TeamService = TeamService;\n this.TeamMembershipService = TeamMembershipService;\n this.Authentication = Authentication;\n\n this.limitedFeature = 'rbac-roles';\n this.users = [];\n }\n\n onUserSelect() {\n this.userRoles = [];\n const userRoles = {};\n const user = this.selectedUser;\n const userMemberships = _.filter(this.teamMemberships, { UserId: user.Id });\n\n for (const [, endpoint] of _.entries(this.endpoints)) {\n let role = this.getRoleFromUserEndpointPolicy(user, endpoint);\n if (role) {\n userRoles[endpoint.Id] = role;\n continue;\n }\n\n role = this.getRoleFromUserEndpointGroupPolicy(user, endpoint);\n if (role) {\n userRoles[endpoint.Id] = role;\n continue;\n }\n\n role = this.getRoleFromTeamEndpointPolicies(userMemberships, endpoint);\n if (role) {\n userRoles[endpoint.Id] = role;\n continue;\n }\n\n role = this.getRoleFromTeamEndpointGroupPolicies(userMemberships, endpoint);\n if (role) {\n userRoles[endpoint.Id] = role;\n }\n }\n\n this.userRoles = _.values(userRoles);\n }\n\n findLowestRole(policies) {\n return _.first(_.orderBy(policies, 'RolePriority', 'desc'));\n }\n\n getRoleFromUserEndpointPolicy(user, endpoint) {\n const policyRoles = [];\n const policy = (endpoint.UserAccessPolicies || {})[user.Id];\n if (policy) {\n const accessPolicy = new AccessViewerPolicyModel(policy, endpoint, this.roles, null, null);\n policyRoles.push(accessPolicy);\n }\n return this.findLowestRole(policyRoles);\n }\n\n getRoleFromUserEndpointGroupPolicy(user, endpoint) {\n const policyRoles = [];\n const policy = this.groupUserAccessPolicies[endpoint.GroupId][user.Id];\n if (policy) {\n const accessPolicy = new AccessViewerPolicyModel(policy, endpoint, this.roles, this.groups[endpoint.GroupId], null);\n policyRoles.push(accessPolicy);\n }\n return this.findLowestRole(policyRoles);\n }\n\n getRoleFromTeamEndpointPolicies(memberships, endpoint) {\n const policyRoles = [];\n for (const membership of memberships) {\n const policy = (endpoint.TeamAccessPolicies || {})[membership.TeamId];\n if (policy) {\n const accessPolicy = new AccessViewerPolicyModel(policy, endpoint, this.roles, null, this.teams[membership.TeamId]);\n policyRoles.push(accessPolicy);\n }\n }\n return this.findLowestRole(policyRoles);\n }\n\n getRoleFromTeamEndpointGroupPolicies(memberships, endpoint) {\n const policyRoles = [];\n for (const membership of memberships) {\n const policy = this.groupTeamAccessPolicies[endpoint.GroupId][membership.TeamId];\n if (policy) {\n const accessPolicy = new AccessViewerPolicyModel(policy, endpoint, this.roles, this.groups[endpoint.GroupId], this.teams[membership.TeamId]);\n policyRoles.push(accessPolicy);\n }\n }\n return this.findLowestRole(policyRoles);\n }\n\n // for admin, returns all users\n // for team leader, only return all his/her team member users\n async teamMemberUsers(users, teamMemberships) {\n if (this.isAdmin) {\n return users;\n }\n\n const filteredUsers = [];\n const userId = this.Authentication.getUserDetails().ID;\n const leadingTeams = await this.UserService.userLeadingTeams(userId);\n\n const isMember = (userId, teamId) => {\n return !!_.find(teamMemberships, { UserId: userId, TeamId: teamId });\n };\n\n for (const user of users) {\n for (const leadingTeam of leadingTeams) {\n if (isMember(user.Id, leadingTeam.Id)) {\n filteredUsers.push(user);\n break;\n }\n }\n }\n\n return filteredUsers;\n }\n\n async $onInit() {\n try {\n const limitedToBE = isLimitedToBE(this.limitedFeature);\n\n if (limitedToBE) {\n return;\n }\n\n this.isAdmin = this.Authentication.isAdmin();\n this.allUsers = await this.UserService.users();\n this.endpoints = _.keyBy((await getEnvironments()).value, 'Id');\n const groups = await this.GroupService.groups();\n this.groupUserAccessPolicies = {};\n this.groupTeamAccessPolicies = {};\n _.forEach(groups, (group) => {\n this.groupUserAccessPolicies[group.Id] = group.UserAccessPolicies;\n this.groupTeamAccessPolicies[group.Id] = group.TeamAccessPolicies;\n });\n this.groups = _.keyBy(groups, 'Id');\n this.roles = _.keyBy(await this.RoleService.roles(), 'Id');\n this.teams = _.keyBy(await this.TeamService.teams(), 'Id');\n this.teamMemberships = await this.TeamMembershipService.memberships();\n this.users = await this.teamMemberUsers(this.allUsers, this.teamMemberships);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve accesses');\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./access-viewer.html');\n\nimport controller from './access-viewer.controller';\n\nexport const accessViewer = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","const autoNgTemplateLoaderTemplate1 = require('./roles-datatable.html');\n\nimport controller from './roles-datatable.controller';\nimport './roles-datatable.css';\n\nexport const rolesDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n },\n};\n","import angular from 'angular';\nimport { RoleTypes } from '../../models/role';\n\nexport default class RolesDatatableController {\n /* @ngInject */\n constructor($controller, $scope) {\n this.limitedFeature = 'rbac-roles';\n\n angular.extend(this, $controller('GenericDatatableController', { $scope }));\n }\n\n isDefaultItem(item) {\n return item.ID === RoleTypes.STANDARD;\n }\n}\n","angular.module('portainer.rbac').directive('authorization', [\n 'Authentication',\n '$async',\n function (Authentication, $async) {\n async function linkAsync(scope, elem, attrs) {\n elem.hide();\n\n var authorizations = attrs.authorization.split(',');\n for (var i = 0; i < authorizations.length; i++) {\n authorizations[i] = authorizations[i].trim();\n }\n\n var hasAuthorizations = Authentication.hasAuthorizations(authorizations);\n\n if (hasAuthorizations) {\n elem.show();\n } else if (!hasAuthorizations && elem[0].tagName === 'A') {\n elem.show();\n elem.addClass('portainer-disabled-link');\n }\n }\n\n return {\n restrict: 'A',\n link: function (scope, elem, attrs) {\n return $async(linkAsync, scope, elem, attrs);\n },\n };\n },\n]);\n","angular.module('portainer.rbac').directive('disableAuthorization', [\n 'Authentication',\n '$async',\n function (Authentication, $async) {\n async function linkAsync(scope, elem, attrs) {\n var authorizations = attrs.disableAuthorization.split(',');\n for (var i = 0; i < authorizations.length; i++) {\n authorizations[i] = authorizations[i].trim();\n }\n\n if (!Authentication.hasAuthorizations(authorizations)) {\n elem.attr('disabled', true);\n if (elem.is('Slider')) {\n elem.css('pointer-events', 'none');\n }\n }\n }\n\n return {\n restrict: 'A',\n link: function (scope, elem, attrs) {\n return $async(linkAsync, scope, elem, attrs);\n },\n };\n },\n]);\n","angular.module('portainer.rbac').directive('excludeAuthorization', [\n 'Authentication',\n '$async',\n function (Authentication, $async) {\n async function linkAsync(scope, elem, attrs) {\n elem.show();\n\n var authorizations = attrs.excludeAuthorization.split(',');\n for (var i = 0; i < authorizations.length; i++) {\n authorizations[i] = authorizations[i].trim();\n }\n\n var hasAuthorizations = Authentication.hasAuthorizations(authorizations);\n\n if (hasAuthorizations) {\n elem.hide();\n }\n }\n\n return {\n restrict: 'A',\n link: function (scope, elem, attrs) {\n return $async(linkAsync, scope, elem, attrs);\n },\n };\n },\n]);\n","import { rolesView } from './views/roles';\nimport { accessViewer } from './components/access-viewer';\nimport { accessViewerDatatable } from './components/access-viewer/access-viewer-datatable';\nimport { rolesDatatable } from './components/roles-datatable';\n\nimport { RoleService } from './services/role.service';\nimport { RolesFactory } from './services/role.rest';\n\nangular\n .module('portainer.rbac', ['ngResource'])\n .constant('API_ENDPOINT_ROLES', 'api/roles')\n .component('accessViewer', accessViewer)\n .component('accessViewerDatatable', accessViewerDatatable)\n .component('rolesDatatable', rolesDatatable)\n .component('rolesView', rolesView)\n .factory('RoleService', RoleService)\n .factory('Roles', RolesFactory)\n .config(config);\n\n/* @ngInject */\nfunction config($stateRegistryProvider) {\n const roles = {\n name: 'portainer.roles',\n url: '/roles',\n views: {\n 'content@': {\n component: 'rolesView',\n },\n },\n };\n\n $stateRegistryProvider.register(roles);\n}\n","export default function AccessViewerPolicyModel(policy, endpoint, roles, group, team) {\n this.EndpointId = endpoint.Id;\n this.EndpointName = endpoint.Name;\n this.RoleId = policy.RoleId;\n this.RoleName = roles[policy.RoleId].Name;\n this.RolePriority = roles[policy.RoleId].Priority;\n if (group) {\n this.GroupId = group.Id;\n this.GroupName = group.Name;\n }\n if (team) {\n this.TeamId = team.Id;\n this.TeamName = team.Name;\n }\n this.AccessLocation = group ? 'environment group' : 'environment';\n}\n","export function RoleViewModel(id, name, description, authorizations) {\n this.ID = id;\n this.Name = name;\n this.Description = description;\n this.Authorizations = authorizations;\n}\n\nexport const RoleTypes = Object.freeze({\n ENDPOINT_ADMIN: 1,\n HELPDESK: 2,\n STANDARD: 3,\n READ_ONLY: 4,\n OPERATOR: 5,\n});\n","angular.module('portainer.app').factory('Roles', [\n '$resource',\n 'API_ENDPOINT_ROLES',\n function RolesFactory($resource, API_ENDPOINT_ROLES) {\n 'use strict';\n return $resource(\n API_ENDPOINT_ROLES + '/:id',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n },\n]);\n","/* @ngInject */\nexport function RolesFactory($resource, API_ENDPOINT_ROLES) {\n return $resource(\n API_ENDPOINT_ROLES + '/:id',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n}\n","/* @ngInject */\nexport function RoleService($q, Roles) {\n return {\n roles,\n };\n\n function roles() {\n return Roles.query({}).$promise;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./roles.html');\n\nimport controller from './roles.controller';\n\nexport const rolesView = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","import _ from 'lodash-es';\n\nexport default class RolesController {\n /* @ngInject */\n constructor(Notifications, RoleService) {\n this.Notifications = Notifications;\n this.RoleService = RoleService;\n }\n\n async $onInit() {\n this.roles = [];\n\n try {\n this.roles = await this.RoleService.roles();\n this.roles = _.orderBy(this.roles, 'Priority', 'asc');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve roles');\n }\n }\n}\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nclass RolesController {\n /* @ngInject */\n constructor(Notifications, RoleService) {\n this.Notifications = Notifications;\n this.RoleService = RoleService;\n }\n\n async $onInit() {\n this.roles = [];\n\n try {\n this.roles = await this.RoleService.roles();\n this.roles = _.orderBy(this.roles, 'Priority', 'asc');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve roles');\n }\n }\n}\nexport default RolesController;\nangular.module('portainer.rbac').controller('RolesController', RolesController);\n","const autoNgTemplateLoaderTemplate1 = require('./registryRepositoriesDatatable.html');\n\nangular.module('portainer.registrymanagement').component('registryRepositoriesDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'RegistryRepositoriesDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n endpointId: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n paginationAction: '<',\n loading: '<',\n },\n});\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('RegistryRepositoriesDatatableController', [\n '$scope',\n '$controller',\n function ($scope, $controller) {\n var ctrl = this;\n\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n this.state.orderBy = this.orderBy;\n\n function areDifferent(a, b) {\n if (!a || !b) {\n return true;\n }\n var namesA = a\n .map(function (x) {\n return x.Name;\n })\n .sort();\n var namesB = b\n .map(function (x) {\n return x.Name;\n })\n .sort();\n return namesA.join(',') !== namesB.join(',');\n }\n\n $scope.$watch(\n function () {\n return ctrl.state.filteredDataSet;\n },\n function (newValue, oldValue) {\n if (newValue && areDifferent(oldValue, newValue)) {\n ctrl.paginationAction(_.filter(newValue, ({ TagsCount }) => !TagsCount));\n }\n },\n true\n );\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./registriesRepositoryTagsDatatable.html');\n\nangular.module('portainer.registrymanagement').component('registriesRepositoryTagsDatatable', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'RegistryRepositoriesTagsDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n removeAction: '<',\n retagAction: '<',\n advancedFeaturesAvailable: '<',\n paginationAction: '<',\n loading: '<',\n },\n});\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('RegistryRepositoriesTagsDatatableController', [\n '$scope',\n '$controller',\n function ($scope, $controller) {\n angular.extend(this, $controller('GenericDatatableController', { $scope: $scope }));\n var ctrl = this;\n this.state.orderBy = this.orderBy;\n\n function diff(item) {\n return item.Name + item.ImageDigest;\n }\n\n function areDifferent(a, b) {\n if (!a || !b) {\n return true;\n }\n var namesA = _.sortBy(_.map(a, diff));\n var namesB = _.sortBy(_.map(b, diff));\n return namesA.join(',') !== namesB.join(',');\n }\n\n $scope.$watch(\n function () {\n return ctrl.state.filteredDataSet;\n },\n function (newValue, oldValue) {\n if (newValue && newValue.length && areDifferent(oldValue, newValue)) {\n ctrl.paginationAction(_.filter(newValue, { ImageId: '' }));\n ctrl.resetSelectionState();\n }\n },\n true\n );\n },\n]);\n","import _ from 'lodash-es';\nimport { RepositoryTagViewModel } from '../models/repositoryTag';\n\nangular.module('portainer.registrymanagement').factory('RegistryV2Helper', [\n function RegistryV2HelperFactory() {\n 'use strict';\n\n var helper = {};\n\n function historyRawToParsed(rawHistory) {\n return _.map(rawHistory, (item) => angular.fromJson(item.v1Compatibility));\n }\n\n helper.manifestsToTag = function (manifests) {\n var v1 = manifests.v1;\n var v2 = manifests.v2;\n\n var history = historyRawToParsed(v1.history);\n var name = v1.tag;\n var os = _.get(history, '[0].os', '');\n var arch = v1.architecture;\n var size = v2.layers.reduce(function (a, b) {\n return {\n size: a.size + b.size,\n };\n }).size;\n var imageId = v2.config.digest;\n var imageDigest = v2.digest;\n\n return new RepositoryTagViewModel(name, os, arch, size, imageDigest, imageId, v2, history);\n };\n\n return helper;\n },\n]);\n","const autoNgTemplateLoaderTemplate1 = require('./views/repositories/edit/template.html');\n\nangular.module('portainer.registrymanagement', []).config([\n '$stateRegistryProvider',\n function ($stateRegistryProvider) {\n 'use strict';\n\n var registryConfiguration = {\n name: 'portainer.registries.registry.configure',\n url: '/configure',\n views: {\n 'content@': {\n component: 'configureRegistryView',\n },\n },\n };\n\n var registryRepositories = {\n name: 'portainer.registries.registry.repositories',\n url: '/repositories?endpointId',\n views: {\n 'content@': {\n component: 'registryRepositoriesView',\n },\n },\n };\n\n var registryRepositoryTags = {\n name: 'portainer.registries.registry.repository',\n url: '/:repository?endpointId',\n views: {\n 'content@': {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'RegistryRepositoryController',\n },\n },\n };\n var registryRepositoryTag = {\n name: 'portainer.registries.registry.repository.tag',\n url: '/:tag',\n views: {\n 'content@': {\n component: 'registryRepositoryTagView',\n },\n },\n };\n\n $stateRegistryProvider.register(registryConfiguration);\n $stateRegistryProvider.register(registryRepositories);\n $stateRegistryProvider.register(registryRepositoryTags);\n $stateRegistryProvider.register(registryRepositoryTag);\n },\n]);\n","export function RegistryGitlabProject(project) {\n this.Id = project.id;\n this.Description = project.description;\n this.Name = project.name;\n this.Namespace = project.namespace ? project.namespace.name : '';\n this.PathWithNamespace = project.path_with_namespace;\n this.RegistryEnabled = project.container_registry_enabled;\n}\n","export function RegistryImageDetailsViewModel(data) {\n if (data) {\n this.Id = data.id;\n this.Parent = data.parent;\n this.Created = data.created;\n this.DockerVersion = data.docker_version;\n this.Os = data.os;\n this.Architecture = data.architecture;\n this.Author = data.author;\n this.Command = data.config.Cmd;\n this.Entrypoint = data.container_config.Entrypoint ? data.container_config.Entrypoint : '';\n this.ExposedPorts = data.container_config.ExposedPorts ? Object.keys(data.container_config.ExposedPorts) : [];\n this.Volumes = data.container_config.Volumes ? Object.keys(data.container_config.Volumes) : [];\n this.Env = data.container_config.Env ? data.container_config.Env : [];\n }\n}\n","import _ from 'lodash-es';\n\nexport function RegistryImageLayerViewModel(order, data) {\n this.Order = order;\n this.Id = data.id;\n this.Created = data.created;\n this.CreatedBy = _.join(data.container_config.Cmd, ' ');\n}\n","import _ from 'lodash-es';\n\nexport function RegistryRepositoryViewModel(item) {\n if (item.name && item.tags) {\n this.Name = item.name;\n this.TagsCount = _.without(item.tags, null).length;\n } else {\n this.Name = item;\n this.TagsCount = 0;\n }\n}\n\nexport function RegistryRepositoryGitlabViewModel(data) {\n this.Name = data.path;\n this.TagsCount = data.tags.length;\n}\n","export function RepositoryTagViewModel(name, os, arch, size, imageDigest, imageId, v2, history) {\n this.Name = name;\n this.Os = os || '';\n this.Architecture = arch || '';\n this.Size = size || 0;\n this.ImageDigest = imageDigest || '';\n this.ImageId = imageId || '';\n this.ManifestV2 = v2 || {};\n this.History = history || [];\n}\n\nexport function RepositoryShortTag(name, imageId, imageDigest, manifest) {\n this.Name = name;\n this.ImageId = imageId;\n this.ImageDigest = imageDigest;\n this.ManifestV2 = manifest;\n}\n\nexport function RepositoryAddTagPayload(tag, manifest) {\n this.Tag = tag;\n this.Manifest = manifest;\n}\n","import linkGetResponse from './transform/linkGetResponse';\n\nangular.module('portainer.registrymanagement').factory('RegistryCatalog', [\n '$resource',\n 'API_ENDPOINT_REGISTRIES',\n function RegistryCatalogFactory($resource, API_ENDPOINT_REGISTRIES) {\n 'use strict';\n return $resource(\n API_ENDPOINT_REGISTRIES + '/:id/v2/:action',\n {},\n {\n get: {\n method: 'GET',\n params: { id: '@id', action: '_catalog' },\n transformResponse: linkGetResponse,\n },\n ping: {\n method: 'GET',\n params: { id: '@id', endpointId: '@endpointId' },\n },\n pingWithForceNew: {\n method: 'GET',\n params: { id: '@id', endpointId: '@endpointId' },\n headers: { 'X-RegistryManagement-ForceNew': '1' },\n },\n },\n {\n stripTrailingSlashes: false,\n }\n );\n },\n]);\n","/**\n * This service has been created to request the docker registry API\n * without triggering AngularJS digest cycles\n * For more information, see https://github.com/portainer/portainer/pull/2648#issuecomment-505644913\n */\n\nimport $ from 'jquery';\nimport { Sha256 } from '@aws-crypto/sha256-js';\n\nangular.module('portainer.registrymanagement').factory('RegistryManifestsJquery', [\n 'API_ENDPOINT_REGISTRIES',\n function RegistryManifestsJqueryFactory(API_ENDPOINT_REGISTRIES) {\n 'use strict';\n\n function buildUrl(params) {\n let url = API_ENDPOINT_REGISTRIES + '/' + params.id + '/v2/' + params.repository + '/manifests/' + params.tag;\n if (params.endpointId) {\n url += '?endpointId=' + params.endpointId;\n }\n return url;\n }\n\n function _get(params) {\n return new Promise((resolve, reject) => {\n $.ajax({\n type: 'GET',\n dataType: 'JSON',\n url: buildUrl(params),\n headers: {\n Accept: 'application/vnd.docker.distribution.manifest.v1+json',\n 'Cache-Control': 'no-cache',\n 'If-Modified-Since': 'Mon, 26 Jul 1997 05:00:00 GMT',\n },\n success: (result) => resolve(result),\n error: (error) => reject(error),\n });\n });\n }\n\n function _getV2(params) {\n return new Promise((resolve, reject) => {\n $.ajax({\n type: 'GET',\n dataType: 'text',\n url: buildUrl(params),\n headers: {\n Accept: 'application/vnd.docker.distribution.manifest.v2+json',\n 'Cache-Control': 'no-cache',\n 'If-Modified-Since': 'Mon, 26 Jul 1997 05:00:00 GMT',\n },\n success: async (resultText, status, request) => {\n const result = JSON.parse(resultText);\n // ECR does not return the digest header\n result.digest = request.getResponseHeader('Docker-Content-Digest') || (await sha256(resultText));\n resolve(result);\n },\n error: (error) => reject(error),\n });\n });\n }\n\n function _put(params, data) {\n const transformRequest = (d) => {\n return angular.toJson(d, 3);\n };\n return new Promise((resolve, reject) => {\n $.ajax({\n type: 'PUT',\n url: buildUrl(params),\n headers: {\n 'Content-Type': 'application/vnd.docker.distribution.manifest.v2+json',\n },\n data: transformRequest(data),\n success: (result) => resolve(result),\n error: (error) => reject(error),\n });\n });\n }\n\n function _delete(params) {\n return new Promise((resolve, reject) => {\n $.ajax({\n type: 'DELETE',\n url: buildUrl(params),\n success: (result) => resolve(result),\n error: (error) => reject(error),\n });\n });\n }\n\n return {\n get: _get,\n getV2: _getV2,\n put: _put,\n delete: _delete,\n };\n },\n]);\n\nasync function sha256(string) {\n const hash = new Sha256();\n hash.update(string);\n return await hash.digest();\n}\n","import linkGetResponse from './transform/linkGetResponse';\n\nangular.module('portainer.registrymanagement').factory('RegistryTags', [\n '$resource',\n 'API_ENDPOINT_REGISTRIES',\n function RegistryTagsFactory($resource, API_ENDPOINT_REGISTRIES) {\n 'use strict';\n return $resource(\n API_ENDPOINT_REGISTRIES + '/:id/v2/:repository/tags/list',\n {},\n {\n get: {\n method: 'GET',\n params: { id: '@id', repository: '@repository' },\n transformResponse: linkGetResponse,\n },\n }\n );\n },\n]);\n","export default function gitlabResponseGetLink(data, headers) {\n let response = {};\n try {\n response.data = angular.fromJson(data);\n response.next = headers('X-Next-Page');\n } catch (error) {\n response = data;\n }\n return response;\n}\n","export default function linkGetResponse(data, headers) {\n var response = angular.fromJson(data);\n var link = headers('link');\n if (link) {\n var queryString = link.substring(link.indexOf('?') + 1).split('>;')[0];\n var queries = queryString.split('&');\n for (var i = 0; i < queries.length; i++) {\n var kv = queries[i].split('=');\n response[kv[0]] = kv[1];\n }\n }\n return response;\n}\n","import _ from 'lodash-es';\n\nfunction findBestStep(length) {\n let step = Math.trunc(length / 10);\n if (step < 10) {\n step = 10;\n } else if (step > 100) {\n step = 100;\n }\n return step;\n}\n\nexport default async function* genericAsyncGenerator($q, list, func, params) {\n const step = findBestStep(list.length);\n let start = 0;\n let end = start + step;\n let results = [];\n while (start < list.length) {\n const batch = _.slice(list, start, end);\n const promises = [];\n for (let i = 0; i < batch.length; i++) {\n promises.push(func(...params, batch[i]));\n }\n yield start;\n const res = await $q.all(promises);\n for (let i = 0; i < res.length; i++) {\n results.push(res[i]);\n }\n start = end;\n end += step;\n }\n yield list.length;\n yield results;\n}\n","import { RegistryTypes } from 'Portainer/models/registryTypes';\n\nangular.module('portainer.registrymanagement').factory('RegistryServiceSelector', [\n '$q',\n 'RegistryV2Service',\n 'RegistryGitlabService',\n 'RegistryEcrService',\n function RegistryServiceSelector($q, RegistryV2Service, RegistryGitlabService, RegistryEcrService) {\n 'use strict';\n return {\n ping,\n repositories,\n getRepositoriesDetails,\n tag,\n tags,\n getTagsDetails,\n addTag,\n retagWithProgress,\n shortTagsWithProgress,\n deleteTagsWithProgress,\n deleteManifest,\n deleteRepository,\n batchDeleteTags,\n };\n\n function ping(registry, endpointId, forceNewConfig) {\n return RegistryV2Service.ping(registry, endpointId, forceNewConfig);\n }\n\n function repositories(registry, endpointId) {\n if (registry.Type === RegistryTypes.GITLAB) {\n return RegistryGitlabService.repositories(registry, endpointId);\n }\n return RegistryV2Service.repositories(registry, endpointId);\n }\n\n function getRepositoriesDetails(registry, endpointId, repositories) {\n return RegistryV2Service.getRepositoriesDetails(registry, endpointId, repositories);\n }\n\n function tags(registry, endpointId, repository) {\n return RegistryV2Service.tags(registry, endpointId, repository);\n }\n\n function getTagsDetails(registry, endpointId, repository, tags) {\n return RegistryV2Service.getTagsDetails(registry, endpointId, repository, tags);\n }\n\n function tag(registry, endpointId, repository, tag) {\n return RegistryV2Service.tag(registry, endpointId, repository, tag);\n }\n\n function addTag(registry, endpointId, repository, tag, manifest) {\n return RegistryV2Service.addTag(registry, endpointId, repository, tag, manifest);\n }\n\n function deleteManifest(registry, endpointId, repository, digest) {\n return RegistryV2Service.deleteManifest(registry, endpointId, repository, digest);\n }\n\n function shortTagsWithProgress(registry, endpointId, repository, tagsList) {\n return RegistryV2Service.shortTagsWithProgress(registry, endpointId, repository, tagsList);\n }\n\n function deleteTagsWithProgress(registry, endpointId, repository, modifiedDigests, impactedTags) {\n return RegistryV2Service.deleteTagsWithProgress(registry, endpointId, repository, modifiedDigests, impactedTags);\n }\n\n function retagWithProgress(registry, endpointId, repository, modifiedTags, modifiedDigests, impactedTags) {\n if (registry.Type === RegistryTypes.ECR) {\n return RegistryEcrService.retagWithProgress(registry, endpointId, repository, modifiedTags, modifiedDigests, impactedTags);\n }\n return RegistryV2Service.retagWithProgress(registry, endpointId, repository, modifiedTags, modifiedDigests, impactedTags);\n }\n\n // only for ECR\n function batchDeleteTags(params, data) {\n return RegistryEcrService.batchDeleteTags(params, data);\n }\n\n // only for ECR\n function deleteRepository(registry, endpointId, repository) {\n return RegistryEcrService.deleteRepository(registry, endpointId, repository);\n }\n },\n]);\n","import _ from 'lodash-es';\nimport { RepositoryAddTagPayload, RepositoryShortTag } from '../models/repositoryTag';\nimport { RegistryRepositoryViewModel } from '../models/registryRepository';\nimport genericAsyncGenerator from './genericAsyncGenerator';\n\nangular.module('portainer.registrymanagement').factory('RegistryV2Service', [\n '$q',\n '$async',\n 'RegistryCatalog',\n 'RegistryTags',\n 'RegistryManifestsJquery',\n 'RegistryV2Helper',\n function RegistryV2ServiceFactory($q, $async, RegistryCatalog, RegistryTags, RegistryManifestsJquery, RegistryV2Helper) {\n 'use strict';\n var service = {};\n\n /**\n * PING\n */\n function ping(registry, endpointId, forceNewConfig) {\n const id = registry.Id;\n if (forceNewConfig) {\n return RegistryCatalog.pingWithForceNew({ id: id, endpointId: endpointId }).$promise;\n }\n return RegistryCatalog.ping({ id: id, endpointId: endpointId }).$promise;\n }\n\n /**\n * END PING\n */\n\n /**\n * REPOSITORIES\n */\n\n function _getCatalogPage(params, deferred, repositories) {\n RegistryCatalog.get(params).$promise.then(function (data) {\n repositories = _.concat(repositories, data.repositories);\n if (data.last && data.n) {\n _getCatalogPage({ id: params.id, endpointId: params.endpointId, n: data.n, last: data.last }, deferred, repositories);\n } else {\n deferred.resolve(repositories);\n }\n });\n }\n\n function _getCatalog(id, endpointId) {\n var deferred = $q.defer();\n var repositories = [];\n\n _getCatalogPage({ id: id, endpointId: endpointId }, deferred, repositories);\n return deferred.promise;\n }\n\n function repositories(registry, endpointId) {\n const deferred = $q.defer();\n const id = registry.Id;\n\n _getCatalog(id, endpointId)\n .then(function success(data) {\n const repositories = _.map(data, (repositoryName) => new RegistryRepositoryViewModel(repositoryName));\n deferred.resolve(repositories);\n })\n .catch(function error(err) {\n deferred.reject({\n msg: 'Unable to retrieve repositories',\n err: err,\n });\n });\n\n return deferred.promise;\n }\n\n function getRepositoriesDetails(registry, endpointId, repositories) {\n const deferred = $q.defer();\n const promises = _.map(repositories, (repository) => tags(registry, endpointId, repository.Name));\n\n Promise.all(promises)\n .then(function success(data) {\n var repositories = data.map(function (item) {\n return new RegistryRepositoryViewModel(item);\n });\n repositories = _.without(repositories, undefined);\n deferred.resolve(repositories);\n })\n .catch(function error(err) {\n deferred.reject({\n msg: 'Unable to retrieve repositories',\n err: err,\n });\n });\n\n return deferred.promise;\n }\n\n /**\n * END REPOSITORIES\n */\n\n /**\n * TAGS\n */\n\n function _getTagsPage(params, deferred, previousTags) {\n RegistryTags.get(params)\n .$promise.then(function (data) {\n previousTags.name = data.name;\n previousTags.tags = _.concat(previousTags.tags, data.tags);\n if (data.last && data.n) {\n _getTagsPage({ id: params.id, endpointId: params.endpointId, repository: params.repository, n: data.n, last: data.last }, deferred, previousTags);\n } else {\n deferred.resolve(previousTags);\n }\n })\n .catch(function error(err) {\n if (err.status === 404) {\n deferred.resolve(previousTags);\n return;\n }\n\n deferred.reject({\n msg: 'Unable to retrieve tags',\n err: err,\n });\n });\n }\n\n function tags(registry, endpointId, repository) {\n const deferred = $q.defer();\n const id = registry.Id;\n\n _getTagsPage({ id: id, endpointId: endpointId, repository: repository }, deferred, { name: repository, tags: [] });\n return deferred.promise;\n }\n\n function getTagsDetails(registry, endpointId, repository, tags) {\n const promises = _.map(tags, (t) => tag(registry, endpointId, repository, t.Name));\n\n return $q.all(promises);\n }\n\n function tag(registry, endpointId, repository, tag) {\n const deferred = $q.defer();\n const id = registry.Id;\n\n var promises = {\n v1: RegistryManifestsJquery.get({\n id: id,\n endpointId: endpointId,\n repository: repository,\n tag: tag,\n }),\n v2: RegistryManifestsJquery.getV2({\n id: id,\n endpointId: endpointId,\n repository: repository,\n tag: tag,\n }),\n };\n $q.all(promises)\n .then(function success(data) {\n var tagDetails = RegistryV2Helper.manifestsToTag(data);\n tagDetails.Name = tagDetails.Name || tag;\n deferred.resolve(tagDetails);\n })\n .catch(function error(err) {\n deferred.reject({\n msg: 'Unable to retrieve tag ' + tag,\n err: err,\n });\n });\n\n return deferred.promise;\n }\n\n /**\n * END TAGS\n */\n\n /**\n * ADD TAG\n */\n\n // tag: RepositoryAddTagPayload\n function _addTagFromGenerator(registry, endpointId, repository, tag) {\n return addTag(registry, endpointId, repository, tag.Tag, tag.Manifest);\n }\n\n function addTag(registry, endpointId, repository, tag, manifest) {\n const id = registry.Id;\n delete manifest.digest;\n return RegistryManifestsJquery.put(\n {\n id: id,\n endpointId: endpointId,\n repository: repository,\n tag: tag,\n },\n manifest\n );\n }\n\n async function* _addTagsWithProgress(registry, endpointId, repository, tagsList, progression = 0) {\n for await (const partialResult of genericAsyncGenerator($q, tagsList, _addTagFromGenerator, [registry, endpointId, repository])) {\n if (typeof partialResult === 'number') {\n yield progression + partialResult;\n } else {\n yield partialResult;\n }\n }\n }\n\n /**\n * END ADD TAG\n */\n\n /**\n * DELETE MANIFEST\n */\n\n function deleteManifest(registry, endpointId, repository, imageDigest) {\n const id = registry.Id;\n return RegistryManifestsJquery.delete({\n id: id,\n endpointId: endpointId,\n repository: repository,\n tag: imageDigest,\n });\n }\n\n async function* _deleteManifestsWithProgress(registry, endpointId, repository, manifests) {\n for await (const partialResult of genericAsyncGenerator($q, manifests, deleteManifest, [registry, endpointId, repository])) {\n yield partialResult;\n }\n }\n\n /**\n * END DELETE MANIFEST\n */\n\n /**\n * SHORT TAG\n */\n\n function _shortTagFromGenerator(id, endpointId, repository, tag) {\n return new Promise((resolve, reject) => {\n RegistryManifestsJquery.getV2({ id: id, endpointId: endpointId, repository: repository, tag: tag })\n .then((data) => resolve(new RepositoryShortTag(tag, data.config.digest, data.digest, data)))\n .catch((err) => reject(err));\n });\n }\n\n async function* shortTagsWithProgress(registry, endpointId, repository, tagsList) {\n const id = registry.Id;\n yield* genericAsyncGenerator($q, tagsList, _shortTagFromGenerator, [id, endpointId, repository]);\n }\n\n /**\n * END SHORT TAG\n */\n\n /**\n * RETAG\n */\n async function* retagWithProgress(registry, endpointId, repository, modifiedTags, modifiedDigests, impactedTags) {\n yield* _deleteManifestsWithProgress(registry, endpointId, repository, modifiedDigests);\n\n const newTags = _.map(impactedTags, (item) => {\n const tagFromTable = _.find(modifiedTags, { Name: item.Name });\n const name = tagFromTable && tagFromTable.Name !== tagFromTable.NewName ? tagFromTable.NewName : item.Name;\n return new RepositoryAddTagPayload(name, item.ManifestV2);\n });\n\n yield* _addTagsWithProgress(registry, endpointId, repository, newTags, modifiedDigests.length);\n }\n\n /**\n * END RETAG\n */\n\n /**\n * DELETE TAGS\n */\n\n async function* deleteTagsWithProgress(registry, endpointId, repository, modifiedDigests, impactedTags) {\n yield* _deleteManifestsWithProgress(registry, endpointId, repository, modifiedDigests);\n\n const newTags = _.map(impactedTags, (item) => new RepositoryAddTagPayload(item.Name, item.ManifestV2));\n\n yield* _addTagsWithProgress(registry, endpointId, repository, newTags, modifiedDigests.length);\n }\n\n /**\n * END DELETE TAGS\n */\n\n /**\n * SERVICE FUNCTIONS DECLARATION\n */\n\n service.ping = ping;\n\n service.repositories = repositories;\n service.getRepositoriesDetails = getRepositoriesDetails;\n\n service.tags = tags;\n service.tag = tag;\n service.getTagsDetails = getTagsDetails;\n\n service.shortTagsWithProgress = shortTagsWithProgress;\n\n service.addTag = addTag;\n service.deleteManifest = deleteManifest;\n\n service.deleteTagsWithProgress = deleteTagsWithProgress;\n service.retagWithProgress = retagWithProgress;\n\n return service;\n },\n]);\n","import { RegistryTypes } from 'Portainer/models/registryTypes';\nimport { RegistryManagementConfigurationDefaultModel } from 'Portainer/models/registry';\n\nexport class ConfigureRegistryController {\n /* @ngInject */\n constructor($scope, $async, $state, RegistryService, RegistryServiceSelector, Notifications) {\n this.$scope = $scope;\n Object.assign(this, { $async, $state, RegistryService, RegistryServiceSelector, Notifications });\n\n this.state = {\n testInProgress: false,\n updateInProgress: false,\n validConfiguration: false,\n };\n\n this.testConfiguration = this.testConfiguration.bind(this);\n this.testConfigurationAsync = this.testConfigurationAsync.bind(this);\n this.updateConfiguration = this.updateConfiguration.bind(this);\n this.updateConfigurationAsync = this.updateConfigurationAsync.bind(this);\n this.toggleAuthentication = this.toggleAuthentication.bind(this);\n this.toggleTLS = this.toggleTLS.bind(this);\n this.toggleTLSSkipVerify = this.toggleTLSSkipVerify.bind(this);\n this.$onInit = this.$onInit.bind(this);\n }\n\n toggleAuthentication(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.Authentication = newValue;\n });\n }\n\n toggleTLS(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.TLS = newValue;\n });\n }\n\n toggleTLSSkipVerify(newValue) {\n this.$scope.$evalAsync(() => {\n this.model.TLSSkipVerify = newValue;\n });\n }\n\n testConfiguration() {\n return this.$async(this.testConfigurationAsync);\n }\n async testConfigurationAsync() {\n this.state.testInProgress = true;\n try {\n await this.RegistryService.configureRegistry(this.registry.Id, this.model);\n await this.RegistryServiceSelector.ping(this.registry, null, true);\n\n this.Notifications.success('Success', 'Valid management configuration');\n this.state.validConfiguration = true;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Invalid management configuration');\n }\n\n this.state.testInProgress = false;\n }\n\n updateConfiguration() {\n return this.$async(this.updateConfigurationAsync);\n }\n async updateConfigurationAsync() {\n this.state.updateInProgress = true;\n try {\n await this.RegistryService.configureRegistry(this.registry.Id, this.model);\n this.Notifications.success('Success', 'Registry management configuration updated');\n this.$state.go('portainer.registries.registry.repositories', { id: this.registry.Id }, { reload: true });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to update registry management configuration');\n }\n\n this.state.updateInProgress = false;\n }\n\n async $onInit() {\n const registryId = this.$state.params.id;\n this.RegistryTypes = RegistryTypes;\n\n try {\n const registry = await this.RegistryService.registry(registryId);\n const model = new RegistryManagementConfigurationDefaultModel(registry);\n\n this.registry = registry;\n this.model = model;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve registry details');\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./template.html');\n\nimport angular from 'angular';\n\nimport { ConfigureRegistryController } from './controller';\n\nangular.module('portainer.registrymanagement').component('configureRegistryView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: ConfigureRegistryController,\n});\n","import _ from 'lodash-es';\n\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\n\nexport class RegistryRepositoriesController {\n /* @ngInject */\n constructor($async, $state, RegistryService, RegistryServiceSelector, Notifications, Authentication) {\n Object.assign(this, { $async, $state, RegistryService, RegistryServiceSelector, Notifications, Authentication });\n\n this.state = {\n displayInvalidConfigurationMessage: false,\n loading: false,\n };\n\n this.paginationAction = this.paginationAction.bind(this);\n this.paginationActionAsync = this.paginationActionAsync.bind(this);\n this.$onInit = this.$onInit.bind(this);\n }\n\n paginationAction(repositories) {\n return this.$async(this.paginationActionAsync, repositories);\n }\n async paginationActionAsync(repositories) {\n if (this.registry.Type === RegistryTypes.GITLAB) {\n return;\n }\n this.state.loading = true;\n try {\n const data = await this.RegistryServiceSelector.getRepositoriesDetails(this.registry, this.endpointId, repositories);\n for (let i = 0; i < data.length; i++) {\n const idx = _.findIndex(this.repositories, { Name: data[i].Name });\n if (idx !== -1) {\n if (data[i].TagsCount === 0) {\n this.repositories.splice(idx, 1);\n } else {\n this.repositories[idx].TagsCount = data[i].TagsCount;\n }\n }\n }\n this.state.loading = false;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve repositories details');\n }\n }\n\n async $onInit() {\n const registryId = this.$state.params.id;\n\n this.isAdmin = this.Authentication.isAdmin();\n this.endpointId = this.$state.params.endpointId;\n\n try {\n this.registry = await this.RegistryService.registry(registryId, this.endpointId);\n try {\n await this.RegistryServiceSelector.ping(this.registry, this.endpointId, false);\n this.repositories = await this.RegistryServiceSelector.repositories(this.registry, this.endpointId);\n } catch (e) {\n this.state.displayInvalidConfigurationMessage = true;\n }\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve registry details');\n }\n }\n}\n","import _ from 'lodash-es';\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\nimport { RepositoryShortTag, RepositoryTagViewModel } from '@/portainer/registry-management/models/repositoryTag';\n\nangular.module('portainer.app').controller('RegistryRepositoryController', RegistryRepositoryController);\n\n/* @ngInject */\nfunction RegistryRepositoryController(\n $q,\n $async,\n $scope,\n $uibModal,\n $interval,\n $state,\n RegistryServiceSelector,\n RegistryService,\n ModalService,\n Notifications,\n ImageHelper,\n Authentication\n) {\n $scope.state = {\n actionInProgress: false,\n loading: false,\n tagsRetrieval: {\n auto: true,\n running: false,\n limit: 100,\n progression: 0,\n elapsedTime: 0,\n asyncGenerator: null,\n clock: null,\n },\n tagsRetag: {\n running: false,\n progression: 0,\n elapsedTime: 0,\n asyncGenerator: null,\n clock: null,\n },\n tagsDelete: {\n running: false,\n progression: 0,\n elapsedTime: 0,\n asyncGenerator: null,\n clock: null,\n },\n };\n $scope.formValues = {\n Tag: '', // new tag name on add feature\n };\n $scope.tags = []; // RepositoryTagViewModel (for datatable)\n $scope.short = {\n Tags: [], // RepositoryShortTag\n Images: [], // strings extracted from short.Tags\n };\n $scope.repository = {\n Name: '',\n Tags: [], // string list\n };\n\n function toSeconds(time) {\n return time / 1000;\n }\n function toPercent(progress, total) {\n return ((progress / total) * 100).toFixed();\n }\n\n function openModal(resolve) {\n return $uibModal.open({\n component: 'progressionModal',\n backdrop: 'static',\n keyboard: false,\n resolve: resolve,\n });\n }\n\n $scope.paginationAction = function (tags) {\n $scope.state.loading = true;\n RegistryServiceSelector.getTagsDetails($scope.registry, $scope.endpointId, $scope.repository.Name, tags)\n .then(function success(data) {\n for (var i = 0; i < data.length; i++) {\n var idx = _.findIndex($scope.tags, { Name: data[i].Name });\n if (idx !== -1) {\n $scope.tags[idx] = data[i];\n }\n }\n $scope.state.loading = false;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve tags details');\n });\n };\n\n /**\n * RETRIEVAL SECTION\n */\n function updateRetrievalClock(startTime) {\n $scope.state.tagsRetrieval.elapsedTime = toSeconds(Date.now() - startTime);\n }\n\n function createRetrieveAsyncGenerator() {\n $scope.state.tagsRetrieval.asyncGenerator = RegistryServiceSelector.shortTagsWithProgress($scope.registry, $scope.endpointId, $scope.repository.Name, $scope.repository.Tags);\n }\n\n function resetTagsRetrievalState() {\n $scope.state.tagsRetrieval.running = false;\n $scope.state.tagsRetrieval.progression = 0;\n $scope.state.tagsRetrieval.elapsedTime = 0;\n $scope.state.tagsRetrieval.clock = null;\n }\n\n function computeImages() {\n const images = _.map($scope.short.Tags, 'ImageId');\n $scope.short.Images = _.without(_.uniq(images), '');\n }\n\n $scope.startStopRetrieval = function () {\n if ($scope.state.tagsRetrieval.running) {\n $scope.state.tagsRetrieval.asyncGenerator.return();\n $interval.cancel($scope.state.tagsRetrieval.clock);\n } else {\n retrieveTags().then(() => {\n createRetrieveAsyncGenerator();\n if ($scope.short.Tags.length === 0) {\n resetTagsRetrievalState();\n } else {\n computeImages();\n }\n });\n }\n };\n\n function retrieveTags() {\n return $async(retrieveTagsAsync);\n }\n\n async function retrieveTagsAsync() {\n $scope.state.tagsRetrieval.running = true;\n const startTime = Date.now();\n $scope.state.tagsRetrieval.clock = $interval(updateRetrievalClock, 1000, 0, true, startTime);\n for await (const partialResult of $scope.state.tagsRetrieval.asyncGenerator) {\n if (typeof partialResult === 'number') {\n $scope.state.tagsRetrieval.progression = toPercent(partialResult, $scope.repository.Tags.length);\n } else {\n $scope.short.Tags = _.sortBy(partialResult, 'Name');\n }\n }\n $scope.state.tagsRetrieval.running = false;\n $interval.cancel($scope.state.tagsRetrieval.clock);\n }\n /**\n * !END RETRIEVAL SECTION\n */\n\n /**\n * ADD TAG SECTION\n */\n\n async function addTagAsync() {\n try {\n $scope.state.actionInProgress = true;\n if (!ImageHelper.isValidTag($scope.formValues.Tag)) {\n throw { msg: 'Invalid tag pattern, see info for more details on format.' };\n }\n const tag = $scope.short.Tags.find((item) => item.ImageId === $scope.formValues.SelectedImage);\n const manifest = tag.ManifestV2;\n await RegistryServiceSelector.addTag($scope.registry, $scope.endpointId, $scope.repository.Name, $scope.formValues.Tag, manifest);\n\n Notifications.success('Success', 'Tag successfully added');\n $scope.short.Tags.push(new RepositoryShortTag($scope.formValues.Tag, tag.ImageId, tag.ImageDigest, tag.ManifestV2));\n\n await loadRepositoryDetails();\n $scope.formValues.Tag = '';\n delete $scope.formValues.SelectedImage;\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to add tag');\n } finally {\n $scope.state.actionInProgress = false;\n }\n }\n\n $scope.addTag = function () {\n return $async(addTagAsync);\n };\n /**\n * !END ADD TAG SECTION\n */\n\n /**\n * RETAG SECTION\n */\n function updateRetagClock(startTime) {\n $scope.state.tagsRetag.elapsedTime = toSeconds(Date.now() - startTime);\n }\n\n function createRetagAsyncGenerator(modifiedTags, modifiedDigests, impactedTags) {\n $scope.state.tagsRetag.asyncGenerator = RegistryServiceSelector.retagWithProgress(\n $scope.registry,\n $scope.endpointId,\n $scope.repository.Name,\n modifiedTags,\n modifiedDigests,\n impactedTags\n );\n }\n\n async function retagActionAsync() {\n let modal = null;\n try {\n $scope.state.tagsRetag.running = true;\n\n const modifiedTags = _.filter($scope.tags, (item) => item.Modified === true);\n for (const tag of modifiedTags) {\n if (!ImageHelper.isValidTag(tag.NewName)) {\n throw { msg: 'Invalid tag pattern, see info for more details on format.' };\n }\n }\n modal = await openModal({\n message: () => 'Retag is in progress! Closing your browser or refreshing the page while this operation is in progress will result in loss of tags.',\n progressLabel: () => 'Retag progress',\n context: () => $scope.state.tagsRetag,\n });\n const modifiedDigests = _.uniq(_.map(modifiedTags, 'ImageDigest'));\n const impactedTags = _.filter($scope.short.Tags, (item) => _.includes(modifiedDigests, item.ImageDigest));\n\n const totalOps = modifiedDigests.length + impactedTags.length;\n\n createRetagAsyncGenerator(modifiedTags, modifiedDigests, impactedTags);\n\n const startTime = Date.now();\n $scope.state.tagsRetag.clock = $interval(updateRetagClock, 1000, 0, true, startTime);\n for await (const partialResult of $scope.state.tagsRetag.asyncGenerator) {\n if (typeof partialResult === 'number') {\n $scope.state.tagsRetag.progression = toPercent(partialResult, totalOps);\n }\n }\n\n _.map(modifiedTags, (item) => {\n const idx = _.findIndex($scope.short.Tags, (i) => i.Name === item.Name);\n $scope.short.Tags[idx].Name = item.NewName;\n });\n\n Notifications.success('Success', 'Tags successfully renamed');\n\n await loadRepositoryDetails();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to rename tags');\n } finally {\n $interval.cancel($scope.state.tagsRetag.clock);\n $scope.state.tagsRetag.running = false;\n if (modal) {\n modal.close();\n }\n }\n }\n\n $scope.retagAction = function () {\n return $async(retagActionAsync);\n };\n /**\n * !END RETAG SECTION\n */\n\n /**\n * REMOVE TAGS SECTION\n */\n\n function updateDeleteClock(startTime) {\n $scope.state.tagsDelete.elapsedTime = toSeconds(Date.now() - startTime);\n }\n\n function createDeleteAsyncGenerator(modifiedDigests, impactedTags) {\n $scope.state.tagsDelete.asyncGenerator = RegistryServiceSelector.deleteTagsWithProgress(\n $scope.registry,\n $scope.endpointId,\n $scope.repository.Name,\n modifiedDigests,\n impactedTags\n );\n }\n\n async function removeEcrTagsAsync(selectedTags) {\n try {\n const tags = selectedTags.map((tag) => tag.Name);\n\n await RegistryServiceSelector.batchDeleteTags({ id: $scope.registry.Id, endpointId: $scope.endpointId, repositoryName: $scope.repository.Name }, { Tags: tags });\n\n await loadRepositoryDetails();\n Notifications.success('Success', 'Tags successfully deleted');\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to delete tags');\n }\n }\n\n async function removeTagsAsync(selectedTags) {\n if ($scope.registry.Type === RegistryTypes.ECR) {\n // ECR does NOT support DELETE v2//manifests/\n // So, use ECR SDK BatchDeleteImage() instead\n return removeEcrTagsAsync(selectedTags);\n }\n\n let modal = null;\n try {\n $scope.state.tagsDelete.running = true;\n modal = await openModal({\n message: () => 'Tag delete is in progress! Closing your browser or refreshing the page while this operation is in progress will result in loss of tags.',\n progressLabel: () => 'Deletion progress',\n context: () => $scope.state.tagsDelete,\n });\n\n const deletedTagNames = _.map(selectedTags, 'Name');\n const deletedShortTags = _.filter($scope.short.Tags, (item) => _.includes(deletedTagNames, item.Name));\n const modifiedDigests = _.uniq(_.map(deletedShortTags, 'ImageDigest'));\n const impactedTags = _.filter($scope.short.Tags, (item) => _.includes(modifiedDigests, item.ImageDigest));\n const tagsToKeep = _.without(impactedTags, ...deletedShortTags);\n\n const totalOps = modifiedDigests.length + tagsToKeep.length;\n\n createDeleteAsyncGenerator(modifiedDigests, tagsToKeep);\n\n const startTime = Date.now();\n $scope.state.tagsDelete.clock = $interval(updateDeleteClock, 1000, 0, true, startTime);\n for await (const partialResult of $scope.state.tagsDelete.asyncGenerator) {\n if (typeof partialResult === 'number') {\n $scope.state.tagsDelete.progression = toPercent(partialResult, totalOps);\n }\n }\n\n _.pull($scope.short.Tags, ...deletedShortTags);\n $scope.short.Images = _.map(_.uniqBy($scope.short.Tags, 'ImageId'), 'ImageId');\n\n Notifications.success('Success', 'Tags successfully deleted');\n\n if ($scope.short.Tags.length === 0) {\n $state.go('portainer.registries.registry.repositories', { id: $scope.registry.Id, endpointId: $scope.endpointId }, { reload: true });\n }\n await loadRepositoryDetails();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to delete tags');\n } finally {\n $interval.cancel($scope.state.tagsDelete.clock);\n $scope.state.tagsDelete.running = false;\n modal.close();\n }\n }\n\n $scope.removeTags = function (selectedItems) {\n ModalService.confirmDeletion('Are you sure you want to remove the selected tags ?', (confirmed) => {\n if (!confirmed) {\n return;\n }\n return $async(removeTagsAsync, selectedItems);\n });\n };\n /**\n * !END REMOVE TAGS SECTION\n */\n\n /**\n * REMOVE REPOSITORY SECTION\n */\n async function removeRepositoryAsync() {\n try {\n if ($scope.registry.Type == RegistryTypes.ECR) {\n await RegistryServiceSelector.deleteRepository($scope.registry, $scope.endpointId, $scope.repository);\n } else {\n const digests = _.uniqBy($scope.short.Tags, 'ImageDigest');\n const promises = [];\n _.map(digests, (item) => promises.push(RegistryServiceSelector.deleteManifest($scope.registry, $scope.endpointId, $scope.repository.Name, item.ImageDigest)));\n await Promise.all(promises);\n }\n Notifications.success('Success', 'Repository successfully removed');\n $state.go('portainer.registries.registry.repositories', { id: $scope.registry.Id, endpointId: $scope.endpointId }, { reload: true });\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to delete repository');\n }\n }\n\n $scope.removeRepository = function () {\n ModalService.confirmDeletion(\n 'This action will only remove the manifests linked to this repository. You need to manually trigger a garbage collector pass on your registry to remove orphan layers and really remove the images content. THIS ACTION CAN NOT BE UNDONE',\n function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n return $async(removeRepositoryAsync);\n }\n );\n };\n /**\n * !END REMOVE REPOSITORY SECTION\n */\n\n /**\n * INIT SECTION\n */\n async function loadRepositoryDetails() {\n try {\n const registry = $scope.registry;\n const repository = $scope.repository.Name;\n const tags = await RegistryServiceSelector.tags(registry, $scope.endpointId, repository);\n $scope.tags = [];\n $scope.repository.Tags = [];\n $scope.repository.Tags = _.sortBy(_.concat($scope.repository.Tags, _.without(tags.tags, null)));\n _.map($scope.repository.Tags, (item) => $scope.tags.push(new RepositoryTagViewModel(item)));\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve tags details');\n }\n }\n\n async function initView() {\n try {\n const registryId = $state.params.id;\n $scope.repository.Name = $state.params.repository;\n $scope.endpointId = $state.params.endpointId;\n $scope.state.loading = true;\n\n $scope.hasAdvancedFeaturesAuth = Authentication.hasAuthorizations(['PortainerRegistryInternalDelete']);\n\n $scope.registry = await RegistryService.registry(registryId, $scope.endpointId);\n await loadRepositoryDetails();\n if ($scope.repository.Tags.length > $scope.state.tagsRetrieval.limit) {\n $scope.state.tagsRetrieval.auto = false;\n }\n createRetrieveAsyncGenerator();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve repository information');\n } finally {\n $scope.state.loading = false;\n }\n }\n\n $scope.$on('$destroy', () => {\n if ($scope.state.tagsRetrieval.asyncGenerator) {\n $scope.state.tagsRetrieval.asyncGenerator.return();\n }\n if ($scope.state.tagsRetrieval.clock) {\n $interval.cancel($scope.state.tagsRetrieval.clock);\n }\n if ($scope.state.tagsRetag.asyncGenerator) {\n $scope.state.tagsRetag.asyncGenerator.return();\n }\n if ($scope.state.tagsRetag.clock) {\n $interval.cancel($scope.state.tagsRetag.clock);\n }\n if ($scope.state.tagsDelete.asyncGenerator) {\n $scope.state.tagsDelete.asyncGenerator.return();\n }\n if ($scope.state.tagsDelete.clock) {\n $interval.cancel($scope.state.tagsDelete.clock);\n }\n });\n\n this.$onInit = function () {\n return $async(initView).then(() => {\n if ($scope.state.tagsRetrieval.auto) {\n $scope.startStopRetrieval();\n }\n });\n };\n /**\n * !END INIT SECTION\n */\n}\n","const autoNgTemplateLoaderTemplate1 = require('./template.html');\n\nangular.module('portainer.registrymanagement').component('progressionModal', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n resolve: '<',\n },\n});\n","const autoNgTemplateLoaderTemplate1 = require('./template.html');\n\nimport angular from 'angular';\n\nimport { RegistryRepositoriesController } from './controller.js';\n\nangular.module('portainer.registrymanagement').component('registryRepositoriesView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: RegistryRepositoriesController,\n});\n","import _ from 'lodash-es';\nimport { RegistryImageLayerViewModel } from '@/portainer/registry-management/models/registryImageLayer';\nimport { RegistryImageDetailsViewModel } from '@/portainer/registry-management/models/registryImageDetails';\n\nexport class RegistryRepositoryTagController {\n /* @ngInject */\n constructor($state, $async, Notifications, RegistryService, RegistryServiceSelector, imagelayercommandFilter) {\n Object.assign(this, { $state, $async, Notifications, RegistryService, RegistryServiceSelector, imagelayercommandFilter });\n\n this.context = {};\n\n this.$onInit = this.$onInit.bind(this);\n this.$onInitAsync = this.$onInitAsync.bind(this);\n }\n\n toggleLayerCommand(layerId) {\n $('#layer-command-expander' + layerId + ' span').toggleClass('glyphicon-plus-sign glyphicon-minus-sign');\n $('#layer-command-' + layerId + '-short').toggle();\n $('#layer-command-' + layerId + '-full').toggle();\n }\n\n order(sortType) {\n this.Sort.Reverse = this.Sort.Type === sortType ? !this.Sort.Reverse : false;\n this.Sort.Type = sortType;\n }\n\n $onInit() {\n return this.$async(this.$onInitAsync);\n }\n async $onInitAsync() {\n this.context.registryId = this.$state.params.id;\n this.context.repository = this.$state.params.repository;\n this.context.tag = this.$state.params.tag;\n this.context.endpointId = this.$state.params.endpointId;\n this.Sort = {\n Type: 'Order',\n Reverse: false,\n };\n try {\n this.registry = await this.RegistryService.registry(this.context.registryId, this.context.endpointId);\n this.tag = await this.RegistryServiceSelector.tag(this.registry, this.context.endpointId, this.context.repository, this.context.tag);\n const length = this.tag.History.length;\n this.history = _.map(this.tag.History, (layer, idx) => new RegistryImageLayerViewModel(length - idx, layer));\n _.forEach(this.history, (item) => (item.CreatedBy = this.imagelayercommandFilter(item.CreatedBy)));\n this.details = new RegistryImageDetailsViewModel(this.tag.History[0]);\n } catch (error) {\n this.Notifications.error('Failure', error, 'Unable to retrieve tag');\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./template.html');\n\nimport angular from 'angular';\n\nimport { RegistryRepositoryTagController } from './controller';\n\nangular.module('portainer.registrymanagement').component('registryRepositoryTagView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: RegistryRepositoryTagController,\n});\n","angular.module('portainer.app').factory('Auth', [\n '$resource',\n 'API_ENDPOINT_AUTH',\n function AuthFactory($resource, API_ENDPOINT_AUTH) {\n 'use strict';\n return $resource(\n API_ENDPOINT_AUTH + '/:action',\n {},\n {\n login: { method: 'POST', ignoreLoadingBar: true },\n logout: { method: 'POST', params: { action: 'logout' }, ignoreLoadingBar: true },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Backup', [\n '$resource',\n 'API_ENDPOINT_BACKUP',\n function BackupFactory($resource, API_ENDPOINT_BACKUP) {\n 'use strict';\n return $resource(\n API_ENDPOINT_BACKUP + '/:subResource/:action',\n {},\n {\n download: {\n method: 'POST',\n responseType: 'arraybuffer',\n ignoreLoadingBar: true,\n transformResponse: (data, headersGetter, status) => {\n if (status !== 200) {\n const decoder = new TextDecoder('utf-8');\n const str = decoder.decode(data);\n return JSON.parse(str);\n }\n\n return {\n file: data,\n name: headersGetter('Content-Disposition').replace('attachment; filename=', ''),\n };\n },\n },\n getS3Settings: { method: 'GET', params: { subResource: 's3', action: 'settings' } },\n saveS3Settings: { method: 'POST', params: { subResource: 's3', action: 'settings' } },\n exportS3Backup: { method: 'POST', params: { subResource: 's3', action: 'execute' } },\n restoreS3Backup: { method: 'POST', params: { subResource: 's3', action: 'restore' } },\n }\n );\n },\n]);\n","import angular from 'angular';\n\nangular.module('portainer.app').factory('CustomTemplates', CustomTemplatesFactory);\n\nfunction CustomTemplatesFactory($resource, API_ENDPOINT_CUSTOM_TEMPLATES) {\n return $resource(\n API_ENDPOINT_CUSTOM_TEMPLATES + '/:id/:action',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n file: { method: 'GET', params: { id: '@id', action: 'file' } },\n }\n );\n}\n","angular.module('portainer.app').factory('Ecr', EcrFactory);\n\nfunction EcrFactory($resource, API_ENDPOINT_REGISTRIES) {\n 'use strict';\n const baseUrl = API_ENDPOINT_REGISTRIES + '/:id/ecr';\n\n return $resource(\n baseUrl,\n {\n id: '@id',\n repositoryName: '@repositoryName',\n tag: '@tag',\n },\n {\n deleteRepository: {\n method: 'DELETE',\n url: baseUrl + '/repositories/:repositoryName',\n },\n batchDeleteTags: {\n method: 'DELETE',\n url: baseUrl + '/repositories/:repositoryName/tags',\n headers: { 'Content-Type': 'application/json;charset=utf-8' },\n hasBody: true,\n },\n }\n );\n}\n","import getEndpointsTotalCount from './transform/getEndpointsTotalCount';\n\nangular.module('portainer.app').factory('Endpoints', [\n '$resource',\n 'API_ENDPOINT_ENDPOINTS',\n function EndpointsFactory($resource, API_ENDPOINT_ENDPOINTS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_ENDPOINTS + '/:id/:action',\n {},\n {\n query: {\n method: 'GET',\n params: { start: '@start', limit: '@limit', search: '@search', groupId: '@groupId' },\n transformResponse: getEndpointsTotalCount,\n },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' } },\n disassociate: { method: 'DELETE', params: { id: '@id', action: 'association' } },\n updateAccess: { method: 'PUT', params: { id: '@id', action: 'access' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n snapshots: { method: 'POST', params: { action: 'snapshot' } },\n dashboardQuery: { method: 'POST', params: { id: '@id', action: 'snapshot' } },\n status: { method: 'GET', params: { id: '@id', action: 'status' } },\n updateSettings: { method: 'PUT', params: { id: '@id', action: 'settings' } },\n dockerhubLimits: { method: 'GET', url: `${API_ENDPOINT_ENDPOINTS}/:id/dockerhub/:registryId` },\n updatePoolAccess: { url: API_ENDPOINT_ENDPOINTS + '/:id/pools/:rpn/access', method: 'PUT', params: { id: '@id', rpn: '@rpn' } },\n forceUpdateService: { method: 'PUT', params: { id: '@id', action: 'forceupdateservice' } },\n registries: { url: `${API_ENDPOINT_ENDPOINTS}/:id/registries`, method: 'GET', params: { id: '@id', namespace: '@namespace' }, isArray: true },\n updateRegistryAccess: { url: `${API_ENDPOINT_ENDPOINTS}/:id/registries/:registryId`, method: 'PUT', params: { id: '@id', registryId: '@registryId' } },\n }\n );\n },\n]);\n","import gitlabResponseGetLink from './transform/gitlabResponseGetLink';\n\nangular.module('portainer.app').factory('Gitlab', [\n '$resource',\n 'API_ENDPOINT_REGISTRIES',\n function GitlabFactory($resource, API_ENDPOINT_REGISTRIES) {\n 'use strict';\n return function (env) {\n const headers = {};\n if (env) {\n headers['Private-Token'] = env.token;\n headers['X-Gitlab-Domain'] = env.url;\n }\n\n const baseUrl = API_ENDPOINT_REGISTRIES + '/:id/proxies/gitlab/api/v4/projects';\n\n return $resource(\n baseUrl,\n { id: '@id' },\n {\n projects: {\n method: 'GET',\n params: { membership: 'true' },\n transformResponse: gitlabResponseGetLink,\n headers: headers,\n },\n repositories: {\n method: 'GET',\n url: baseUrl + '/:projectId/registry/repositories',\n params: { tags: true },\n headers: headers,\n transformResponse: gitlabResponseGetLink,\n },\n }\n );\n };\n },\n]);\n","angular.module('portainer.app').factory('EndpointGroups', [\n '$resource',\n 'API_ENDPOINT_ENDPOINT_GROUPS',\n function EndpointGroupsFactory($resource, API_ENDPOINT_ENDPOINT_GROUPS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_ENDPOINT_GROUPS + '/:id/:action',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' } },\n updateAccess: { method: 'PUT', params: { id: '@id', action: 'access' } },\n addEndpoint: { method: 'PUT', params: { id: '@id', action: '@action' } },\n removeEndpoint: { method: 'DELETE', params: { id: '@id', action: '@action' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Registries', [\n '$resource',\n 'API_ENDPOINT_REGISTRIES',\n function RegistriesFactory($resource, API_ENDPOINT_REGISTRIES) {\n 'use strict';\n return $resource(\n API_ENDPOINT_REGISTRIES + '/:id/:action',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id', action: '', endpointId: '@endpointId' } },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n configure: { method: 'POST', params: { id: '@id', action: 'configure' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('ResourceControl', [\n '$resource',\n 'API_ENDPOINT_RESOURCE_CONTROLS',\n function ResourceControlFactory($resource, API_ENDPOINT_RESOURCE_CONTROLS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_RESOURCE_CONTROLS + '/:id',\n {},\n {\n update: { method: 'PUT', params: { id: '@id' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Settings', [\n '$resource',\n 'API_ENDPOINT_SETTINGS',\n function SettingsFactory($resource, API_ENDPOINT_SETTINGS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_SETTINGS + '/:subResource/:action',\n {},\n {\n get: { method: 'GET' },\n update: { method: 'PUT', ignoreLoadingBar: true },\n publicSettings: { method: 'GET', params: { subResource: 'public' }, ignoreLoadingBar: true },\n checkLDAPConnectivity: { method: 'PUT', params: { subResource: 'authentication', action: 'checkLDAP' } },\n }\n );\n },\n]);\n","import angular from 'angular';\n\nconst API_ENDPOINT_SSL = 'api/ssl';\n\nangular.module('portainer.app').factory('SSL', SSLFactory);\n\n/* @ngInject */\nfunction SSLFactory($resource) {\n return $resource(\n API_ENDPOINT_SSL,\n {},\n {\n get: { method: 'GET' },\n upload: { method: 'PUT' },\n }\n );\n}\n","import angular from 'angular';\n\nangular.module('portainer.app').factory('Stack', StackFactory);\n\nfunction StackFactory($resource, API_ENDPOINT_STACKS) {\n return $resource(\n API_ENDPOINT_STACKS + '/:id/:action/:subaction',\n {},\n {\n get: { method: 'GET', params: { id: '@id' } },\n query: { method: 'GET', isArray: true },\n create: { method: 'POST', ignoreLoadingBar: true },\n update: { method: 'PUT', params: { id: '@id' }, ignoreLoadingBar: true },\n associate: { method: 'PUT', params: { id: '@id', swarmId: '@swarmId', endpointId: '@endpointId', orphanedRunning: '@orphanedRunning', action: 'associate' } },\n remove: { method: 'DELETE', params: { id: '@id', external: '@external', endpointId: '@endpointId' } },\n getStackFile: { method: 'GET', params: { id: '@id', action: 'file' } },\n migrate: { method: 'POST', params: { id: '@id', action: 'migrate', endpointId: '@endpointId' }, ignoreLoadingBar: true },\n start: { method: 'POST', params: { id: '@id', action: 'start' } },\n stop: { method: 'POST', params: { id: '@id', action: 'stop', endpointId: '@endpointId' } },\n updateGit: { method: 'PUT', params: { id: '@id', action: 'git', subaction: 'redeploy' } },\n updateGitStackSettings: { method: 'POST', params: { id: '@id', action: 'git' }, ignoreLoadingBar: true },\n }\n );\n}\n","angular.module('portainer.app').factory('Status', [\n '$resource',\n 'API_ENDPOINT_STATUS',\n function StatusFactory($resource, API_ENDPOINT_STATUS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_STATUS + '/:action',\n {},\n {\n get: { method: 'GET' },\n version: { method: 'GET', params: { action: 'version' } },\n nodesCount: { method: 'GET', params: { action: 'nodes' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Support', [\n '$resource',\n 'API_ENDPOINT_SUPPORT',\n function SupportFactory($resource, API_ENDPOINT_SUPPORT) {\n 'use strict';\n return $resource(\n API_ENDPOINT_SUPPORT,\n {},\n {\n get: { method: 'GET', isArray: true },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Tags', [\n '$resource',\n 'API_ENDPOINT_TAGS',\n function TagsFactory($resource, API_ENDPOINT_TAGS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_TAGS + '/:id',\n {},\n {\n create: { method: 'POST' },\n query: { method: 'GET', isArray: true },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Teams', [\n '$resource',\n 'API_ENDPOINT_TEAMS',\n function TeamsFactory($resource, API_ENDPOINT_TEAMS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_TEAMS + '/:id/:entity/:entityId',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n queryMemberships: { method: 'GET', isArray: true, params: { id: '@id', entity: 'memberships' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('TeamMemberships', [\n '$resource',\n 'API_ENDPOINT_TEAM_MEMBERSHIPS',\n function TeamMembershipsFactory($resource, API_ENDPOINT_TEAM_MEMBERSHIPS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_TEAM_MEMBERSHIPS + '/:id/:action',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Templates', [\n '$resource',\n 'API_ENDPOINT_TEMPLATES',\n function TemplatesFactory($resource, API_ENDPOINT_TEMPLATES) {\n return $resource(\n API_ENDPOINT_TEMPLATES + '/:action',\n {},\n {\n query: { method: 'GET' },\n file: { method: 'POST', params: { action: 'file' } },\n }\n );\n },\n]);\n","export default function getEndpointsTotalCount(data, headers) {\n const response = {};\n response.value = angular.fromJson(data);\n response.totalCount = headers('X-Total-Count');\n return response;\n}\n","export default function gitlabResponseGetLink(data, headers) {\n let response = {};\n try {\n response.data = angular.fromJson(data);\n response.next = headers('X-Next-Page');\n } catch (error) {\n response = data;\n }\n return response;\n}\n","angular.module('portainer.app').factory('Users', [\n '$resource',\n 'API_ENDPOINT_USERS',\n function UsersFactory($resource, API_ENDPOINT_USERS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_USERS + '/:id/:entity/:entityId',\n {},\n {\n create: { method: 'POST', ignoreLoadingBar: true },\n query: { method: 'GET', isArray: true },\n get: { method: 'GET', params: { id: '@id' } },\n update: { method: 'PUT', params: { id: '@id' }, ignoreLoadingBar: true },\n updatePassword: { method: 'PUT', params: { id: '@id', entity: 'passwd' } },\n updateTheme: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n queryMemberships: { method: 'GET', isArray: true, params: { id: '@id', entity: 'memberships' } },\n checkAdminUser: { method: 'GET', params: { id: 'admin', entity: 'check' }, isArray: true, ignoreLoadingBar: true },\n initAdminUser: { method: 'POST', params: { id: 'admin', entity: 'init' }, ignoreLoadingBar: true },\n createAccessToken: { url: `${API_ENDPOINT_USERS}/:id/tokens`, method: 'POST', params: { id: '@id' }, ignoreLoadingBar: true },\n getAccessTokens: { method: 'GET', params: { id: '@id', entity: 'tokens' }, isArray: true },\n deleteAccessToken: { url: `${API_ENDPOINT_USERS}/:id/tokens/:tokenId`, method: 'DELETE', params: { id: '@id', entityId: '@tokenId' } },\n }\n );\n },\n]);\n","angular.module('portainer.app').factory('Webhooks', [\n '$resource',\n 'API_ENDPOINT_WEBHOOKS',\n function WebhooksFactory($resource, API_ENDPOINT_WEBHOOKS) {\n 'use strict';\n return $resource(\n API_ENDPOINT_WEBHOOKS + '/:id',\n {},\n {\n query: { method: 'GET', isArray: true },\n create: { method: 'POST' },\n update: { method: 'PUT', params: { id: '@id' } },\n remove: { method: 'DELETE', params: { id: '@id' } },\n }\n );\n },\n]);\n","import _ from 'lodash-es';\n\n/**\n *\n * @param {any[]} promises\n */\nexport default async function $allSettled(promises) {\n const res = {\n fulfilled: [],\n rejected: [],\n };\n const data = await Promise.allSettled(promises);\n res.fulfilled = _.reduce(\n data,\n (acc, item) => {\n if (item.status === 'fulfilled') {\n acc.push(item.value);\n }\n return acc;\n },\n []\n );\n res.rejected = _.reduce(\n data,\n (acc, item) => {\n if (item.status === 'rejected') {\n acc.push(item.reason);\n }\n return acc;\n },\n []\n );\n return res;\n}\n","import _ from 'lodash-es';\nimport { UserAccessViewModel } from '../../models/access';\nimport { TeamAccessViewModel } from '../../models/access';\n\nangular.module('portainer.app').factory('AccessService', [\n '$q',\n '$async',\n 'UserService',\n 'TeamService',\n function AccessServiceFactory($q, $async, UserService, TeamService) {\n 'use strict';\n return {\n accesses,\n generateAccessPolicies,\n };\n\n function _getRole(roles, roleId) {\n if (roles.length) {\n const role = _.find(roles, (role) => role.Id === roleId);\n return role ? role : { Id: 0, Name: '-' };\n }\n return { Id: 0, Name: '-' };\n }\n\n function _mapAccessData(accesses, authorizedPolicies, inheritedPolicies, roles) {\n var availableAccesses = [];\n var authorizedAccesses = [];\n\n for (var i = 0; i < accesses.length; i++) {\n const access = accesses[i];\n\n const authorized = authorizedPolicies && authorizedPolicies[access.Id];\n const inherited = inheritedPolicies && inheritedPolicies[access.Id];\n\n if (authorized && inherited) {\n access.Role = _getRole(roles, authorizedPolicies[access.Id].RoleId);\n access.Override = true;\n authorizedAccesses.push(access);\n } else if (authorized && !inherited) {\n access.Role = _getRole(roles, authorizedPolicies[access.Id].RoleId);\n authorizedAccesses.push(access);\n } else if (!authorized && inherited) {\n access.Role = _getRole(roles, inheritedPolicies[access.Id].RoleId);\n access.Inherited = true;\n authorizedAccesses.push(access);\n availableAccesses.push(access);\n } else {\n availableAccesses.push(access);\n }\n }\n\n return {\n available: availableAccesses,\n authorized: authorizedAccesses,\n };\n }\n\n function getAccesses(authorizedUserPolicies, authorizedTeamPolicies, inheritedUserPolicies, inheritedTeamPolicies, roles) {\n var deferred = $q.defer();\n\n $q.all({\n users: UserService.users(false),\n teams: TeamService.teams(),\n })\n .then(function success(data) {\n var userAccesses = data.users.map(function (user) {\n return new UserAccessViewModel(user);\n });\n var teamAccesses = data.teams.map(function (team) {\n return new TeamAccessViewModel(team);\n });\n\n var userAccessData = _mapAccessData(userAccesses, authorizedUserPolicies, inheritedUserPolicies, roles);\n var teamAccessData = _mapAccessData(teamAccesses, authorizedTeamPolicies, inheritedTeamPolicies, roles);\n\n var accessData = {\n availableUsersAndTeams: userAccessData.available.concat(teamAccessData.available),\n authorizedUsersAndTeams: userAccessData.authorized.concat(teamAccessData.authorized),\n };\n\n deferred.resolve(accessData);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve users and teams', err: err });\n });\n\n return deferred.promise;\n }\n\n async function accessesAsync(entity, parent, roles) {\n if (!entity) {\n throw new Error('Unable to retrieve accesses');\n }\n if (!entity.UserAccessPolicies) {\n entity.UserAccessPolicies = {};\n }\n if (!entity.TeamAccessPolicies) {\n entity.TeamAccessPolicies = {};\n }\n if (parent && !parent.UserAccessPolicies) {\n parent.UserAccessPolicies = {};\n }\n if (parent && !parent.TeamAccessPolicies) {\n parent.TeamAccessPolicies = {};\n }\n return await getAccesses(entity.UserAccessPolicies, entity.TeamAccessPolicies, parent ? parent.UserAccessPolicies : {}, parent ? parent.TeamAccessPolicies : {}, roles);\n }\n\n function accesses(entity, parent, roles) {\n return $async(accessesAsync, entity, parent, roles);\n }\n\n function generateAccessPolicies(userAccessPolicies, teamAccessPolicies, selectedUserAccesses, selectedTeamAccesses, selectedRoleId) {\n const newUserPolicies = _.clone(userAccessPolicies);\n const newTeamPolicies = _.clone(teamAccessPolicies);\n\n _.forEach(selectedUserAccesses, (access) => (newUserPolicies[access.Id] = { RoleId: selectedRoleId ? selectedRoleId : access.Role.Id }));\n _.forEach(selectedTeamAccesses, (access) => (newTeamPolicies[access.Id] = { RoleId: selectedRoleId ? selectedRoleId : access.Role.Id }));\n\n const accessPolicies = {\n userAccessPolicies: newUserPolicies,\n teamAccessPolicies: newTeamPolicies,\n };\n\n return accessPolicies;\n }\n },\n]);\n","angular.module('portainer.app').factory('BackupService', [\n '$q',\n '$async',\n 'Backup',\n 'FileUploadService',\n function BackupServiceFactory($q, $async, Backup, FileUploadService) {\n 'use strict';\n const service = {};\n\n service.downloadBackup = function (payload) {\n return Backup.download({}, payload).$promise;\n };\n\n service.uploadBackup = function (file, password) {\n return FileUploadService.uploadBackup(file, password);\n };\n\n service.getS3Settings = function () {\n var deferred = $q.defer();\n\n Backup.getS3Settings()\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve backup S3 settings', err: err });\n });\n\n return deferred.promise;\n };\n\n service.saveS3Settings = function (payload) {\n var deferred = $q.defer();\n\n Backup.saveS3Settings({}, payload)\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to save backup S3 settings', err: err });\n });\n\n return deferred.promise;\n };\n\n service.exportBackup = function (payload) {\n var deferred = $q.defer();\n\n Backup.exportS3Backup({}, payload)\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to export backup', err: err });\n });\n\n return deferred.promise;\n };\n\n service.restoreFromS3 = function (payload) {\n var deferred = $q.defer();\n\n Backup.restoreS3Backup({}, payload)\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to restore backup from S3', err: err });\n });\n\n return deferred.promise;\n };\n\n return service;\n },\n]);\n","import angular from 'angular';\n\nangular.module('portainer.app').factory('CustomTemplateService', CustomTemplateServiceFactory);\n\n/* @ngInject */\nfunction CustomTemplateServiceFactory($sanitize, CustomTemplates, FileUploadService) {\n var service = {};\n\n service.customTemplate = function customTemplate(id) {\n return CustomTemplates.get({ id }).$promise;\n };\n\n service.customTemplates = async function customTemplates(type) {\n const templates = await CustomTemplates.query({ type }).$promise;\n templates.forEach((template) => {\n if (template.Note) {\n template.Note = $('

    ').html($sanitize(template.Note)).find('img').remove().end().html();\n }\n });\n return templates;\n };\n\n service.remove = function remove(id) {\n return CustomTemplates.remove({ id }).$promise;\n };\n\n service.customTemplateFile = async function customTemplateFile(id) {\n try {\n const { FileContent } = await CustomTemplates.file({ id }).$promise;\n return FileContent;\n } catch (err) {\n throw { msg: 'Unable to retrieve customTemplate content', err };\n }\n };\n\n service.updateCustomTemplate = async function updateCustomTemplate(id, customTemplate) {\n return CustomTemplates.update({ id }, customTemplate).$promise;\n };\n\n service.createCustomTemplateFromFileContent = async function createCustomTemplateFromFileContent(payload) {\n try {\n return await CustomTemplates.create({ method: 'string' }, payload).$promise;\n } catch (err) {\n throw { msg: 'Unable to create the customTemplate', err };\n }\n };\n\n service.createCustomTemplateFromFileUpload = async function createCustomTemplateFromFileUpload(payload) {\n try {\n const { data } = await FileUploadService.createCustomTemplate(payload);\n return data;\n } catch (err) {\n throw { msg: 'Unable to create the customTemplate', err };\n }\n };\n\n service.createCustomTemplateFromGitRepository = async function createCustomTemplateFromGitRepository(payload) {\n try {\n return await CustomTemplates.create({ method: 'repository' }, payload).$promise;\n } catch (err) {\n throw { msg: 'Unable to create the customTemplate', err };\n }\n };\n\n return service;\n}\n","import EndpointHelper from '@/portainer/helpers/endpointHelper';\nimport { PortainerEndpointTypes } from '@/portainer/models/endpoint/models';\n\nangular.module('portainer.app').factory('DockerHubService', DockerHubService);\n\n/* @ngInject */\nfunction DockerHubService(Endpoints, AgentDockerhub) {\n return {\n checkRateLimits,\n };\n\n function checkRateLimits(endpoint, registryId) {\n if (EndpointHelper.isLocalEndpoint(endpoint)) {\n return Endpoints.dockerhubLimits({ id: endpoint.Id, registryId }).$promise;\n }\n\n switch (endpoint.Type) {\n case PortainerEndpointTypes.AgentOnDockerEnvironment:\n case PortainerEndpointTypes.EdgeAgentOnDockerEnvironment:\n return AgentDockerhub.limits({ endpointId: endpoint.Id, endpointType: 'docker', registryId }).$promise;\n\n case PortainerEndpointTypes.AgentOnKubernetesEnvironment:\n case PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment:\n return AgentDockerhub.limits({ endpointId: endpoint.Id, endpointType: 'kubernetes', registryId }).$promise;\n }\n }\n}\n","import { PortainerEndpointCreationTypes } from 'Portainer/models/endpoint/models';\n\nangular.module('portainer.app').factory('EndpointService', [\n '$q',\n 'Endpoints',\n 'FileUploadService',\n function EndpointServiceFactory($q, Endpoints, FileUploadService) {\n 'use strict';\n var service = {\n updateSettings,\n registries,\n updateRegistryAccess,\n };\n\n service.endpoint = function (endpointID) {\n return Endpoints.get({ id: endpointID }).$promise;\n };\n\n service.snapshotEndpoints = function () {\n return Endpoints.snapshots({}, {}).$promise;\n };\n\n service.snapshotEndpoint = function (endpointID) {\n return Endpoints.snapshot({ id: endpointID }, {}).$promise;\n };\n\n service.updateAccess = function (id, userAccessPolicies, teamAccessPolicies) {\n return Endpoints.updateAccess({ id: id }, { UserAccessPolicies: userAccessPolicies, TeamAccessPolicies: teamAccessPolicies }).$promise;\n };\n\n service.disassociateEndpoint = function (endpointID) {\n return Endpoints.disassociate({ id: endpointID }).$promise;\n };\n\n service.updateEndpoint = function (id, payload) {\n var deferred = $q.defer();\n FileUploadService.uploadTLSFilesForEndpoint(id, payload.TLSCACert, payload.TLSCert, payload.TLSKey)\n .then(function success() {\n deferred.notify({ upload: false });\n return Endpoints.update({ id: id }, payload).$promise;\n })\n .then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.notify({ upload: false });\n deferred.reject({ msg: 'Unable to update environment', err: err });\n });\n return deferred.promise;\n };\n\n service.deleteEndpoint = function (endpointID) {\n return Endpoints.remove({ id: endpointID }).$promise;\n };\n\n service.createLocalEndpoint = function (name = 'local', URL = '', PublicURL = '', groupID = 1, tagIds = []) {\n var deferred = $q.defer();\n\n var endpointURL = URL;\n if (endpointURL !== '') {\n if (endpointURL.indexOf('//./pipe/') == 0) {\n // Windows named pipe\n endpointURL = 'npipe://' + URL;\n } else {\n endpointURL = 'unix://' + URL;\n }\n }\n\n FileUploadService.createEndpoint(name, PortainerEndpointCreationTypes.LocalDockerEnvironment, endpointURL, PublicURL, groupID, tagIds, false)\n .then(function success(response) {\n deferred.resolve(response.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create environment', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createRemoteEndpoint = function (\n name,\n creationType,\n URL,\n PublicURL,\n groupID,\n tagIds,\n TLS,\n TLSSkipVerify,\n TLSSkipClientVerify,\n TLSCAFile,\n TLSCertFile,\n TLSKeyFile,\n checkinInterval,\n isEdgeDevice,\n EdgePingInterval,\n EdgeSnapshotInterval,\n EdgeCommandInterval\n ) {\n var deferred = $q.defer();\n\n var endpointURL = URL;\n if (creationType !== PortainerEndpointCreationTypes.EdgeAgentEnvironment) {\n endpointURL = 'tcp://' + URL;\n }\n\n FileUploadService.createEndpoint(\n name,\n creationType,\n endpointURL,\n PublicURL,\n groupID,\n tagIds,\n TLS,\n TLSSkipVerify,\n TLSSkipClientVerify,\n TLSCAFile,\n TLSCertFile,\n TLSKeyFile,\n checkinInterval,\n isEdgeDevice,\n EdgePingInterval,\n EdgeSnapshotInterval,\n EdgeCommandInterval\n )\n .then(function success(response) {\n deferred.resolve(response.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create environment', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createLocalKubernetesEndpoint = function (name = 'local', tagIds = []) {\n var deferred = $q.defer();\n\n FileUploadService.createEndpoint(name, PortainerEndpointCreationTypes.LocalKubernetesEnvironment, '', '', 1, tagIds, true, true, true)\n .then(function success(response) {\n deferred.resolve(response.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create environment', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createAzureEndpoint = function (name, applicationId, tenantId, authenticationKey, groupId, tagIds) {\n var deferred = $q.defer();\n\n FileUploadService.createAzureEndpoint(name, applicationId, tenantId, authenticationKey, groupId, tagIds)\n .then(function success(response) {\n deferred.resolve(response.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to connect to Azure', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createKubeConfigEndpoint = function (name, kubeConfig, groupId, tagIds) {\n var deferred = $q.defer();\n\n FileUploadService.createKubeConfigEndpoint(name, kubeConfig, groupId, tagIds)\n .then(function success(response) {\n deferred.resolve(response.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create environment from KubeConfig', err: err });\n });\n\n return deferred.promise;\n };\n\n service.updatePoolAccess = function (endpointID, resourcePool, usersToAdd, teamsToAdd, usersToRemove, teamsToRemove) {\n return Endpoints.updatePoolAccess(\n {\n id: endpointID,\n rpn: resourcePool,\n },\n {\n UsersToAdd: usersToAdd,\n TeamsToAdd: teamsToAdd,\n UsersToRemove: usersToRemove,\n teamsToRemove: teamsToRemove,\n }\n ).$promise;\n };\n\n service.forceUpdateService = function (endpointID, serviceID, pullImage) {\n return Endpoints.forceUpdateService(\n {\n id: endpointID,\n },\n {\n ServiceID: serviceID,\n PullImage: pullImage,\n }\n ).$promise;\n };\n\n service.trust = function (id) {\n Endpoints.updateEndpoint({ id }, { UserTrusted: true }).$promise;\n };\n\n return service;\n\n function updateRegistryAccess(id, registryId, endpointAccesses) {\n return Endpoints.updateRegistryAccess({ registryId, id }, endpointAccesses).$promise;\n }\n\n function registries(id, namespace) {\n return Endpoints.registries({ namespace, id }).$promise;\n }\n\n function updateSettings(id, settings) {\n return Endpoints.updateSettings({ id }, settings).$promise;\n }\n },\n]);\n","import { EndpointGroupCreateRequest, EndpointGroupModel, EndpointGroupUpdateRequest } from '../../models/group';\n\nangular.module('portainer.app').factory('GroupService', [\n '$q',\n 'EndpointGroups',\n function GroupService($q, EndpointGroups) {\n 'use strict';\n var service = {};\n\n service.group = function (groupId) {\n var deferred = $q.defer();\n\n EndpointGroups.get({ id: groupId })\n .$promise.then(function success(data) {\n var group = new EndpointGroupModel(data);\n deferred.resolve(group);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve group', err: err });\n });\n\n return deferred.promise;\n };\n\n service.groups = function () {\n return EndpointGroups.query({}).$promise;\n };\n\n service.createGroup = function (model, endpoints) {\n var payload = new EndpointGroupCreateRequest(model, endpoints);\n return EndpointGroups.create(payload).$promise;\n };\n\n service.updateGroup = function (model, endpoints) {\n var payload = new EndpointGroupUpdateRequest(model, endpoints);\n return EndpointGroups.update(payload).$promise;\n };\n\n service.updateAccess = function (groupId, userAccessPolicies, teamAccessPolicies) {\n return EndpointGroups.updateAccess({ id: groupId }, { UserAccessPolicies: userAccessPolicies, TeamAccessPolicies: teamAccessPolicies }).$promise;\n };\n\n service.addEndpoint = function (groupId, endpoint) {\n return EndpointGroups.addEndpoint({ id: groupId, action: 'endpoints/' + endpoint.Id }, endpoint).$promise;\n };\n\n service.removeEndpoint = function (groupId, endpointId) {\n return EndpointGroups.removeEndpoint({ id: groupId, action: 'endpoints/' + endpointId }).$promise;\n };\n\n service.deleteGroup = function (groupId) {\n return EndpointGroups.remove({ id: groupId }).$promise;\n };\n\n return service;\n },\n]);\n","import _ from 'lodash-es';\nimport { PorImageRegistryModel } from 'Docker/models/porImageRegistry';\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\nimport { RegistryCreateRequest, RegistryViewModel } from 'Portainer/models/registry';\nimport { DockerHubViewModel } from 'Portainer/models/dockerhub';\n\nangular.module('portainer.app').factory('RegistryService', [\n '$q',\n '$async',\n 'EndpointService',\n 'Registries',\n 'ImageHelper',\n 'FileUploadService',\n function RegistryServiceFactory($q, $async, EndpointService, Registries, ImageHelper, FileUploadService) {\n return {\n registries,\n registry,\n encodedCredentials,\n deleteRegistry,\n updateRegistry,\n configureRegistry,\n createRegistry,\n createGitlabRegistries,\n retrievePorRegistryModelFromRepository,\n retrievePorRegistryModelFromRepositoryWithRegistries,\n loadRegistriesForDropdown,\n };\n\n function registries() {\n var deferred = $q.defer();\n\n Registries.query()\n .$promise.then(function success(data) {\n var registries = data.map(function (item) {\n return new RegistryViewModel(item);\n });\n deferred.resolve(registries);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve registries', err: err });\n });\n\n return deferred.promise;\n }\n\n function registry(id, endpointId) {\n var deferred = $q.defer();\n\n Registries.get({ id: id, endpointId: endpointId })\n .$promise.then(function success(data) {\n var registry = new RegistryViewModel(data);\n deferred.resolve(registry);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve registry details', err: err });\n });\n\n return deferred.promise;\n }\n\n function encodedCredentials(registry) {\n var credentials = {\n registryId: registry.Id,\n };\n return btoa(JSON.stringify(credentials));\n }\n\n function deleteRegistry(id) {\n return Registries.remove({ id: id }).$promise;\n }\n\n function updateRegistry(registry) {\n registry.URL = _.replace(registry.URL, /^https?\\:\\/\\//i, '');\n registry.URL = _.replace(registry.URL, /\\/$/, '');\n return Registries.update({ id: registry.Id }, registry).$promise;\n }\n\n function configureRegistry(id, registryManagementConfigurationModel) {\n return FileUploadService.configureRegistry(id, registryManagementConfigurationModel);\n }\n\n function createRegistry(model) {\n var payload = new RegistryCreateRequest(model);\n return Registries.create(payload).$promise;\n }\n\n function createGitlabRegistries(model, projects) {\n const promises = [];\n _.forEach(projects, (p) => {\n const m = model;\n m.Name = p.PathWithNamespace;\n m.Gitlab.ProjectPath = _.toLower(p.PathWithNamespace);\n m.Gitlab.ProjectId = p.Id;\n m.Password = m.Token;\n const payload = new RegistryCreateRequest(m);\n promises.push(Registries.create(payload).$promise);\n });\n return $q.all(promises);\n }\n\n function getURL(reg) {\n let url = reg.URL;\n if (reg.Type === RegistryTypes.GITLAB) {\n url = reg.URL + '/' + reg.Gitlab.ProjectPath;\n } else if (reg.Type === RegistryTypes.QUAY) {\n const name = reg.Quay.UseOrganisation ? reg.Quay.OrganisationName : reg.Username;\n url = reg.URL + '/' + name;\n }\n return url;\n }\n\n // findBestMatchRegistry finds out the best match registry for repository\n // matching precedence:\n // 1. registryId matched\n // 2. both domain name and username matched (for dockerhub only)\n // 3. only URL matched\n // 4. pick up the first dockerhub registry\n function findBestMatchRegistry(repository, registries, registryId) {\n let match2, match3, match4;\n\n for (const registry of registries) {\n if (registry.Id == registryId) {\n return registry;\n }\n\n if (registry.Type === RegistryTypes.DOCKERHUB) {\n // try to match repository examples:\n // /nginx:latest\n // docker.io//nginx:latest\n if (repository.startsWith(registry.Username + '/') || repository.startsWith(getURL(registry) + '/' + registry.Username + '/')) {\n match2 = registry;\n }\n\n // try to match repository examples:\n // portainer/portainer-ee:latest\n // /portainer-ee:latest\n match4 = match4 || registry;\n }\n\n if (_.includes(repository, getURL(registry))) {\n match3 = registry;\n }\n }\n\n return match2 || match3 || match4;\n }\n\n function retrievePorRegistryModelFromRepositoryWithRegistries(repository, registries, registryId) {\n const model = new PorImageRegistryModel();\n const registry = findBestMatchRegistry(repository, registries, registryId);\n if (registry) {\n const url = getURL(registry);\n let lastIndex = repository.lastIndexOf(url);\n lastIndex = lastIndex === -1 ? 0 : lastIndex + url.length;\n let image = repository.substring(lastIndex);\n if (_.startsWith(image, '/')) {\n image = image.substring(1);\n }\n model.Registry = registry;\n model.Image = image;\n } else {\n if (ImageHelper.imageContainsURL(repository)) {\n model.UseRegistry = false;\n }\n model.Registry = new DockerHubViewModel();\n model.Image = repository;\n }\n return model;\n }\n\n function retrievePorRegistryModelFromRepository(repository, endpointId, registryId, namespace) {\n return $async(async () => {\n try {\n const regs = await EndpointService.registries(endpointId, namespace);\n return retrievePorRegistryModelFromRepositoryWithRegistries(repository, regs, registryId);\n } catch (err) {\n throw { msg: 'Unable to retrieve the registry associated to the repository', err: err };\n }\n });\n }\n\n function loadRegistriesForDropdown(endpointId, namespace) {\n return $async(async () => {\n try {\n const registries = await EndpointService.registries(endpointId, namespace);\n\n // hide default(anonymous) dockerhub registry if user has an authenticated one\n if (!registries.some((registry) => registry.Type === RegistryTypes.DOCKERHUB)) {\n registries.push(new DockerHubViewModel());\n }\n\n return registries;\n } catch (err) {\n throw { msg: 'Unable to retrieve the registries', err: err };\n }\n });\n }\n },\n]);\n","angular.module('portainer.app').factory('ResourceControlService', [\n '$q',\n 'ResourceControl',\n 'UserService',\n 'TeamService',\n 'ResourceControlHelper',\n function ResourceControlServiceFactory($q, ResourceControl, UserService, TeamService, ResourceControlHelper) {\n 'use strict';\n const service = {};\n\n service.duplicateResourceControl = duplicateResourceControl;\n service.applyResourceControl = applyResourceControl;\n service.retrieveOwnershipDetails = retrieveOwnershipDetails;\n\n /**\n * PRIVATE SECTION\n */\n\n /**\n * Update a ResourceControl\n * @param {String} rcID ID of involved resource\n * @param {ResourceControlOwnershipParameters} ownershipParameters Transcient type from view data to payload\n */\n function updateResourceControl(rcID, ownershipParameters) {\n const payload = {\n AdministratorsOnly: ownershipParameters.AdministratorsOnly,\n Public: ownershipParameters.Public,\n Users: ownershipParameters.Users,\n Teams: ownershipParameters.Teams,\n };\n\n return ResourceControl.update({ id: rcID }, payload).$promise;\n }\n\n /**\n * END PRIVATE SECTION\n */\n\n /**\n * PUBLIC SECTION\n */\n\n /**\n * Apply a ResourceControl after Resource creation\n * @param {int} userId ID of User performing the action\n * @param {AccessControlFormData} accessControlData ResourceControl to apply\n * @param {ResourceControlViewModel} resourceControl ResourceControl to update\n * @param {[]int} subResources SubResources managed by the ResourceControl\n */\n function applyResourceControl(userId, accessControlData, resourceControl, subResources = []) {\n const ownershipParameters = ResourceControlHelper.RCFormDataToOwnershipParameters(userId, accessControlData, subResources);\n return updateResourceControl(resourceControl.Id, ownershipParameters);\n }\n\n /**\n * Duplicate an existing ResourceControl (default to AdministratorsOnly if undefined)\n * @param {int} userId ID of User performing the action\n * @param {ResourceControlViewModel} oldResourceControl ResourceControl to duplicate\n * @param {ResourceControlViewModel} newResourceControl ResourceControl to apply duplication to\n */\n function duplicateResourceControl(userId, oldResourceControl, newResourceControl) {\n const ownershipParameters = ResourceControlHelper.RCViewModelToOwnershipParameters(userId, oldResourceControl);\n return updateResourceControl(newResourceControl.Id, ownershipParameters);\n }\n\n /**\n * Retrieve users and team details for ResourceControlViewModel\n * @param {ResourceControlViewModel} resourceControl ResourceControl view model\n */\n function retrieveOwnershipDetails(resourceControl) {\n var deferred = $q.defer();\n\n if (!resourceControl) {\n deferred.resolve({ authorizedUsers: [], authorizedTeams: [] });\n return deferred.promise;\n }\n\n $q.all({\n users: resourceControl.UserAccesses.length > 0 ? UserService.users(false) : [],\n teams: resourceControl.TeamAccesses.length > 0 ? TeamService.teams() : [],\n })\n .then(function success(data) {\n var authorizedUsers = ResourceControlHelper.retrieveAuthorizedUsers(resourceControl, data.users);\n var authorizedTeams = ResourceControlHelper.retrieveAuthorizedTeams(resourceControl, data.teams);\n deferred.resolve({ authorizedUsers: authorizedUsers, authorizedTeams: authorizedTeams });\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve user and team information', err: err });\n });\n\n return deferred.promise;\n }\n\n /**\n * END PUBLIC SECTION\n */\n\n return service;\n },\n]);\n","import { SettingsViewModel, PublicSettingsViewModel } from '../../models/settings';\n\nangular.module('portainer.app').factory('SettingsService', [\n '$q',\n 'Settings',\n function SettingsServiceFactory($q, Settings) {\n 'use strict';\n var service = {};\n\n service.settings = function () {\n var deferred = $q.defer();\n\n Settings.get()\n .$promise.then(function success(data) {\n var settings = new SettingsViewModel(data);\n deferred.resolve(settings);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve application settings', err: err });\n });\n\n return deferred.promise;\n };\n\n service.update = function (settings) {\n return Settings.update({}, settings).$promise;\n };\n\n service.publicSettings = function () {\n var deferred = $q.defer();\n\n Settings.publicSettings()\n .$promise.then(function success(data) {\n var settings = new PublicSettingsViewModel(data);\n deferred.resolve(settings);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve application settings', err: err });\n });\n\n return deferred.promise;\n };\n\n service.checkLDAPConnectivity = function (settings) {\n return Settings.checkLDAPConnectivity({}, settings).$promise;\n };\n\n return service;\n },\n]);\n","import angular from 'angular';\n\nangular.module('portainer.app').service('SSLService', SSLServiceFactory);\n\n/* @ngInject */\nfunction SSLServiceFactory(SSL) {\n return {\n upload,\n get,\n };\n\n function get() {\n return SSL.get().$promise;\n }\n\n function upload(httpEnabled, cert, key) {\n return SSL.upload({ httpEnabled, cert, key }).$promise;\n }\n}\n","import _ from 'lodash-es';\nimport { RepositoryMechanismTypes } from 'Kubernetes/models/deploy';\nimport { StackViewModel, OrphanedStackViewModel } from '../../models/stack';\n\nangular.module('portainer.app').factory('StackService', [\n '$q',\n '$async',\n 'Stack',\n 'FileUploadService',\n 'StackHelper',\n 'ServiceService',\n 'ContainerService',\n 'SwarmService',\n 'EndpointProvider',\n function StackServiceFactory($q, $async, Stack, FileUploadService, StackHelper, ServiceService, ContainerService, SwarmService, EndpointProvider) {\n 'use strict';\n var service = {\n updateGit,\n updateKubeGit,\n };\n\n service.stack = function (id) {\n var deferred = $q.defer();\n\n Stack.get({ id: id })\n .$promise.then(function success(data) {\n var stack = new StackViewModel(data);\n deferred.resolve(stack);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve stack details', err: err });\n });\n\n return deferred.promise;\n };\n\n service.getStackFile = function (id) {\n var deferred = $q.defer();\n\n Stack.getStackFile({ id: id })\n .$promise.then(function success(data) {\n deferred.resolve(data.StackFileContent);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve stack content', err: err });\n });\n\n return deferred.promise;\n };\n\n service.migrateSwarmStack = function (stack, targetEndpointId, newName) {\n var deferred = $q.defer();\n\n EndpointProvider.setEndpointID(targetEndpointId);\n\n SwarmService.swarm()\n .then(function success(data) {\n var swarm = data;\n if (swarm.Id === stack.SwarmId) {\n deferred.reject({ msg: 'Target environment is located in the same Swarm cluster as the current environment', err: null });\n return;\n }\n return Stack.migrate({ id: stack.Id, endpointId: stack.EndpointId }, { EndpointID: targetEndpointId, SwarmID: swarm.Id, Name: newName }).$promise;\n })\n .then(function success() {\n deferred.resolve();\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to migrate stack', err: err });\n })\n .finally(function final() {\n EndpointProvider.setEndpointID(stack.EndpointId);\n });\n\n return deferred.promise;\n };\n\n service.migrateComposeStack = function (stack, targetEndpointId, newName) {\n var deferred = $q.defer();\n\n EndpointProvider.setEndpointID(targetEndpointId);\n\n Stack.migrate({ id: stack.Id, endpointId: stack.EndpointId }, { EndpointID: targetEndpointId, Name: newName })\n .$promise.then(function success() {\n deferred.resolve();\n })\n .catch(function error(err) {\n EndpointProvider.setEndpointID(stack.EndpointId);\n deferred.reject({ msg: 'Unable to migrate stack', err: err });\n });\n\n return deferred.promise;\n };\n\n service.stacks = function (compose, swarm, endpointId, includeOrphanedStacks = false) {\n var deferred = $q.defer();\n\n var queries = [];\n if (compose) {\n queries.push(service.composeStacks(endpointId, true, { EndpointID: endpointId, IncludeOrphanedStacks: includeOrphanedStacks }));\n }\n if (swarm) {\n queries.push(service.swarmStacks(endpointId, true, { EndpointID: endpointId, IncludeOrphanedStacks: includeOrphanedStacks }));\n }\n\n $q.all(queries)\n .then(function success(data) {\n var stacks = [];\n if (data[0]) {\n stacks = stacks.concat(data[0]);\n }\n if (data[1]) {\n stacks = stacks.concat(data[1]);\n }\n stacks = _.uniqWith(stacks, (s1, s2) => s1.Id === s2.Id && s1.Name === s2.Name);\n deferred.resolve(stacks);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve stacks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.externalSwarmStacks = function () {\n var deferred = $q.defer();\n\n ServiceService.services()\n .then(function success(services) {\n deferred.resolve(StackHelper.getExternalStacksFromServices(services));\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve external stacks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.externalComposeStacks = function () {\n var deferred = $q.defer();\n\n ContainerService.containers(1)\n .then(function success(containers) {\n deferred.resolve(StackHelper.getExternalStacksFromContainers(containers));\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve external stacks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.unionStacks = function (stacks, externalStacks) {\n stacks.forEach((stack) => {\n externalStacks.forEach((externalStack) => {\n if (stack.Orphaned && stack.Name == externalStack.Name) {\n stack.OrphanedRunning = true;\n }\n });\n });\n const result = _.unionWith(stacks, externalStacks, function (a, b) {\n return a.Name === b.Name;\n });\n\n return result;\n };\n\n service.composeStacks = function (endpointId, includeExternalStacks, filters) {\n var deferred = $q.defer();\n\n $q.all({\n stacks: Stack.query({ filters: filters }).$promise,\n externalStacks: includeExternalStacks ? service.externalComposeStacks() : [],\n })\n .then(function success(data) {\n var stacks = data.stacks.map(function (item) {\n if (item.EndpointId == endpointId) {\n return new StackViewModel(item);\n } else {\n return new OrphanedStackViewModel(item);\n }\n });\n var externalStacks = data.externalStacks;\n const result = service.unionStacks(stacks, externalStacks);\n deferred.resolve(result);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve stacks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.swarmStacks = function (endpointId, includeExternalStacks, filters = {}) {\n var deferred = $q.defer();\n\n SwarmService.swarm()\n .then(function success(data) {\n var swarm = data;\n filters = { SwarmID: swarm.Id, ...filters };\n\n return $q.all({\n stacks: Stack.query({ filters: filters }).$promise,\n externalStacks: includeExternalStacks ? service.externalSwarmStacks() : [],\n });\n })\n .then(function success(data) {\n var stacks = data.stacks.map(function (item) {\n if (item.EndpointId == endpointId) {\n return new StackViewModel(item);\n } else {\n return new OrphanedStackViewModel(item);\n }\n });\n var externalStacks = data.externalStacks;\n const result = service.unionStacks(stacks, externalStacks);\n deferred.resolve(result);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve stacks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.remove = function (stack, external, endpointId) {\n var deferred = $q.defer();\n\n Stack.remove({ id: stack.Id ? stack.Id : stack.Name, external: external, endpointId: endpointId })\n .$promise.then(function success() {\n deferred.resolve();\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to remove the stack', err: err });\n });\n\n return deferred.promise;\n };\n\n service.associate = function (stack, endpointId, orphanedRunning) {\n var deferred = $q.defer();\n\n if (stack.Type == 1) {\n SwarmService.swarm()\n .then(function success(data) {\n const swarm = data;\n return Stack.associate({ id: stack.Id, endpointId: endpointId, swarmId: swarm.Id, orphanedRunning }).$promise;\n })\n .then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to associate the stack', err: err });\n });\n } else {\n Stack.associate({ id: stack.Id, endpointId: endpointId, orphanedRunning })\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to associate the stack', err: err });\n });\n }\n\n return deferred.promise;\n };\n\n service.updateStack = function (stack, stackFile, env, prune, webhook, pullImage) {\n return Stack.update(\n { endpointId: stack.EndpointId },\n {\n id: stack.Id,\n StackFileContent: stackFile,\n Env: env,\n Prune: prune,\n Webhook: webhook,\n PullImage: pullImage,\n }\n ).$promise;\n };\n\n service.updateKubeStack = function (stack, stackFile, gitConfig) {\n let payload = {};\n\n if (stackFile) {\n payload = {\n StackFileContent: stackFile,\n };\n } else {\n const autoUpdate = {};\n if (gitConfig.AutoUpdate && gitConfig.AutoUpdate.RepositoryAutomaticUpdates) {\n autoUpdate.ForceUpdate = gitConfig.AutoUpdate.RepositoryAutomaticUpdatesForce;\n autoUpdate.ForcePullImage = gitConfig.AutoUpdate.RepositoryAutomaticUpdatesForce;\n if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) {\n autoUpdate.Interval = gitConfig.AutoUpdate.RepositoryFetchInterval;\n } else if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) {\n autoUpdate.Webhook = gitConfig.AutoUpdate.RepositoryWebhookURL.split('/').reverse()[0];\n }\n }\n payload = {\n AutoUpdate: autoUpdate,\n RepositoryReferenceName: gitConfig.RefName,\n RepositoryAuthentication: gitConfig.RepositoryAuthentication,\n RepositoryUsername: gitConfig.RepositoryUsername,\n RepositoryPassword: gitConfig.RepositoryPassword,\n };\n }\n\n return Stack.update({ id: stack.Id, endpointId: stack.EndpointId }, payload).$promise;\n };\n\n service.createComposeStackFromFileUpload = function (name, stackFile, env, endpointId, webhook) {\n return FileUploadService.createComposeStack(name, stackFile, env, endpointId, webhook);\n };\n\n service.createSwarmStackFromFileUpload = function (name, stackFile, env, endpointId, webhook) {\n var deferred = $q.defer();\n\n SwarmService.swarm()\n .then(function success(data) {\n var swarm = data;\n return FileUploadService.createSwarmStack(name, swarm.Id, stackFile, env, endpointId, webhook);\n })\n .then(function success(data) {\n deferred.resolve(data.data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create the stack', err: err });\n });\n\n return deferred.promise;\n };\n service.createComposeStackFromFileContent = function (name, stackFileContent, env, endpointId, webhook) {\n var payload = {\n Name: name,\n StackFileContent: stackFileContent,\n Env: env,\n Webhook: webhook,\n };\n return Stack.create({ method: 'string', type: 2, endpointId: endpointId }, payload).$promise;\n };\n\n service.createSwarmStackFromFileContent = function (name, stackFileContent, env, endpointId, webhook) {\n var deferred = $q.defer();\n\n SwarmService.swarm()\n .then(function success(swarm) {\n var payload = {\n Name: name,\n SwarmID: swarm.Id,\n StackFileContent: stackFileContent,\n Env: env,\n Webhook: webhook,\n };\n return Stack.create({ method: 'string', type: 1, endpointId: endpointId }, payload).$promise;\n })\n .then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create the stack', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createComposeStackFromGitRepository = function (name, repositoryOptions, env, endpointId) {\n var payload = {\n Name: name,\n RepositoryURL: repositoryOptions.RepositoryURL,\n RepositoryReferenceName: repositoryOptions.RepositoryReferenceName,\n ComposeFile: repositoryOptions.ComposeFilePathInRepository,\n AdditionalFiles: repositoryOptions.AdditionalFiles,\n RepositoryAuthentication: repositoryOptions.RepositoryAuthentication,\n RepositoryUsername: repositoryOptions.RepositoryUsername,\n RepositoryPassword: repositoryOptions.RepositoryPassword,\n FromAppTemplate: repositoryOptions.FromAppTemplate,\n Env: env,\n };\n\n if (repositoryOptions.AutoUpdate) {\n payload.AutoUpdate = repositoryOptions.AutoUpdate;\n }\n\n return Stack.create({ method: 'repository', type: 2, endpointId: endpointId }, payload).$promise;\n };\n\n service.createSwarmStackFromGitRepository = function (name, repositoryOptions, env, endpointId) {\n var deferred = $q.defer();\n\n SwarmService.swarm()\n .then(function success(data) {\n var swarm = data;\n var payload = {\n Name: name,\n SwarmID: swarm.Id,\n RepositoryURL: repositoryOptions.RepositoryURL,\n RepositoryReferenceName: repositoryOptions.RepositoryReferenceName,\n ComposeFile: repositoryOptions.ComposeFilePathInRepository,\n AdditionalFiles: repositoryOptions.AdditionalFiles,\n RepositoryAuthentication: repositoryOptions.RepositoryAuthentication,\n RepositoryUsername: repositoryOptions.RepositoryUsername,\n RepositoryPassword: repositoryOptions.RepositoryPassword,\n FromAppTemplate: repositoryOptions.FromAppTemplate,\n Env: env,\n };\n\n if (repositoryOptions.AutoUpdate) {\n payload.AutoUpdate = repositoryOptions.AutoUpdate;\n }\n\n return Stack.create({ method: 'repository', type: 1, endpointId: endpointId }, payload).$promise;\n })\n .then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create the stack', err: err });\n });\n\n return deferred.promise;\n };\n\n service.duplicateStack = function duplicateStack(name, stackFileContent, env, endpointId, type) {\n var action = type === 1 ? service.createSwarmStackFromFileContent : service.createComposeStackFromFileContent;\n return action(name, stackFileContent, env, endpointId);\n };\n\n async function kubernetesDeployAsync(endpointId, method, payload) {\n try {\n await Stack.create({ endpointId: endpointId, method: method, type: 3 }, payload).$promise;\n } catch (err) {\n throw { err: err };\n }\n }\n\n service.kubernetesDeploy = function (endpointId, method, payload) {\n return $async(kubernetesDeployAsync, endpointId, method, payload);\n };\n\n service.start = start;\n function start(id) {\n return Stack.start({ id }).$promise;\n }\n\n service.stop = stop;\n function stop(id, endpointId) {\n return Stack.stop({ id: id, endpointId: endpointId }).$promise;\n }\n\n function updateGit(id, endpointId, env, prune, gitConfig, pullImage) {\n return Stack.updateGit(\n { endpointId, id },\n {\n env,\n prune,\n RepositoryReferenceName: gitConfig.RefName,\n RepositoryAuthentication: gitConfig.RepositoryAuthentication,\n RepositoryUsername: gitConfig.RepositoryUsername,\n RepositoryPassword: gitConfig.RepositoryPassword,\n PullImage: pullImage,\n }\n ).$promise;\n }\n\n function updateKubeGit(id, endpointId, namespace, gitConfig) {\n return Stack.updateGit(\n { endpointId, id },\n {\n Namespace: namespace,\n RepositoryReferenceName: gitConfig.RefName,\n RepositoryAuthentication: gitConfig.RepositoryAuthentication,\n RepositoryUsername: gitConfig.RepositoryUsername,\n RepositoryPassword: gitConfig.RepositoryPassword,\n }\n ).$promise;\n }\n\n service.updateGitStackSettings = function (id, endpointId, env, gitConfig) {\n // prepare auto update\n const autoUpdate = {};\n\n if (gitConfig.AutoUpdate && gitConfig.AutoUpdate.RepositoryAutomaticUpdates) {\n autoUpdate.ForceUpdate = gitConfig.AutoUpdate.RepositoryAutomaticUpdatesForce;\n autoUpdate.ForcePullImage = gitConfig.AutoUpdate.ForcePullImage;\n if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) {\n autoUpdate.Interval = gitConfig.AutoUpdate.RepositoryFetchInterval;\n } else if (gitConfig.AutoUpdate.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) {\n autoUpdate.Webhook = gitConfig.AutoUpdate.RepositoryWebhookURL.split('/').reverse()[0];\n }\n }\n\n return Stack.updateGitStackSettings(\n { endpointId, id },\n {\n AutoUpdate: autoUpdate,\n Env: env,\n RepositoryReferenceName: gitConfig.RefName,\n RepositoryAuthentication: gitConfig.RepositoryAuthentication,\n RepositoryUsername: gitConfig.RepositoryUsername,\n RepositoryPassword: gitConfig.RepositoryPassword,\n Prune: gitConfig.Option.Prune,\n }\n ).$promise;\n };\n\n return service;\n },\n]);\n","import { StatusVersionViewModel, StatusViewModel } from '../../models/status';\n\nangular.module('portainer.app').factory('StatusService', [\n '$q',\n 'Status',\n function StatusServiceFactory($q, Status) {\n 'use strict';\n var service = {};\n\n service.status = function () {\n var deferred = $q.defer();\n\n Status.get()\n .$promise.then(function success(data) {\n var status = new StatusViewModel(data);\n deferred.resolve(status);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve application status', err: err });\n });\n\n return deferred.promise;\n };\n\n service.version = function () {\n var deferred = $q.defer();\n\n Status.version()\n .$promise.then(function success(data) {\n var status = new StatusVersionViewModel(data);\n deferred.resolve(status);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve application version info', err: err });\n });\n\n return deferred.promise;\n };\n\n service.nodesCount = async function nodesCount() {\n const response = await Status.nodesCount().$promise;\n return response.nodes;\n };\n\n return service;\n },\n]);\n","angular.module('portainer.app').factory('SupportService', [\n '$q',\n 'Support',\n function SupportServiceFactory($q, Support) {\n 'use strict';\n var service = {};\n\n service.supportProducts = function () {\n var deferred = $q.defer();\n\n Support.get()\n .$promise.then(function success(data) {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve support options', err: err });\n });\n\n return deferred.promise;\n };\n\n return service;\n },\n]);\n","import { TagViewModel } from '../../models/tag';\n\nangular.module('portainer.app').factory('TagService', [\n '$q',\n '$async',\n 'Tags',\n function TagServiceFactory($q, $async, Tags) {\n 'use strict';\n var service = {};\n\n service.tags = function () {\n var deferred = $q.defer();\n Tags.query()\n .$promise.then(function success(data) {\n var tags = data.map(function (item) {\n return new TagViewModel(item);\n });\n deferred.resolve(tags);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve tags', err: err });\n });\n return deferred.promise;\n };\n\n service.tagNames = function () {\n var deferred = $q.defer();\n Tags.query()\n .$promise.then(function success(data) {\n var tags = data.map(function (item) {\n return item.Name;\n });\n deferred.resolve(tags);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve tags', err: err });\n });\n return deferred.promise;\n };\n\n async function createTagAsync(name) {\n var payload = {\n Name: name,\n };\n try {\n const tag = await Tags.create({}, payload).$promise;\n return new TagViewModel(tag);\n } catch (err) {\n throw { msg: 'Unable to create tag', err };\n }\n }\n\n function createTag(name) {\n return $async(createTagAsync, name);\n }\n service.createTag = createTag;\n\n service.deleteTag = function (id) {\n return Tags.remove({ id: id }).$promise;\n };\n\n return service;\n },\n]);\n","import { TeamMembershipModel } from '../../models/teamMembership';\n\nangular.module('portainer.app').factory('TeamMembershipService', [\n '$q',\n 'TeamMemberships',\n function TeamMembershipFactory($q, TeamMemberships) {\n 'use strict';\n var service = {};\n\n service.memberships = function () {\n var deferred = $q.defer();\n TeamMemberships.query()\n .$promise.then(function success(data) {\n var memberships = data.map(function (item) {\n return new TeamMembershipModel(item);\n });\n deferred.resolve(memberships);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve team memberships', err: err });\n });\n return deferred.promise;\n };\n\n service.createMembership = function (userId, teamId, role) {\n var payload = {\n UserID: userId,\n TeamID: teamId,\n Role: role,\n };\n return TeamMemberships.create({}, payload).$promise;\n };\n\n service.deleteMembership = function (id) {\n return TeamMemberships.remove({ id: id }).$promise;\n };\n\n service.updateMembership = function (id, userId, teamId, role) {\n var payload = {\n UserID: userId,\n TeamID: teamId,\n Role: role,\n };\n return TeamMemberships.update({ id: id }, payload).$promise;\n };\n\n return service;\n },\n]);\n","import { TeamViewModel } from '../../models/team';\nimport { TeamMembershipModel } from '../../models/teamMembership';\n\nangular.module('portainer.app').factory('TeamService', [\n '$q',\n 'Teams',\n 'TeamMembershipService',\n function TeamServiceFactory($q, Teams) {\n 'use strict';\n var service = {};\n\n service.teams = function () {\n var deferred = $q.defer();\n Teams.query()\n .$promise.then(function success(data) {\n var teams = data.map(function (item) {\n return new TeamViewModel(item);\n });\n deferred.resolve(teams);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve teams', err: err });\n });\n return deferred.promise;\n };\n\n service.team = function (id) {\n var deferred = $q.defer();\n Teams.get({ id: id })\n .$promise.then(function success(data) {\n var team = new TeamViewModel(data);\n deferred.resolve(team);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve team details', err: err });\n });\n return deferred.promise;\n };\n\n service.createTeam = function (name, leaderIds) {\n var deferred = $q.defer();\n var payload = {\n Name: name,\n TeamLeaders: leaderIds,\n };\n Teams.create({}, payload)\n .$promise.then(function success() {\n deferred.resolve();\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create team', err: err });\n });\n return deferred.promise;\n };\n\n service.deleteTeam = function (id) {\n return Teams.remove({ id: id }).$promise;\n };\n\n service.userMemberships = function (id) {\n var deferred = $q.defer();\n Teams.queryMemberships({ id: id })\n .$promise.then(function success(data) {\n var memberships = data.map(function (item) {\n return new TeamMembershipModel(item);\n });\n deferred.resolve(memberships);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve user memberships for the team', err: err });\n });\n return deferred.promise;\n };\n\n return service;\n },\n]);\n","import { DockerHubViewModel } from 'Portainer/models/dockerhub';\nimport { TemplateViewModel } from '../../models/template';\n\nangular.module('portainer.app').factory('TemplateService', TemplateServiceFactory);\n\n/* @ngInject */\nfunction TemplateServiceFactory($q, Templates, TemplateHelper, ImageHelper, ContainerHelper, EndpointService) {\n var service = {\n templates,\n };\n\n function templates(endpointId) {\n const deferred = $q.defer();\n\n $q.all({\n templates: Templates.query().$promise,\n registries: EndpointService.registries(endpointId),\n })\n .then(function success({ templates, registries }) {\n const version = templates.version;\n deferred.resolve(\n templates.templates.map((item) => {\n try {\n const template = new TemplateViewModel(item, version);\n const registryURL = template.RegistryModel.Registry.URL;\n const registry = registryURL ? registries.find((reg) => reg.URL === registryURL) : new DockerHubViewModel();\n template.RegistryModel.Registry = registry;\n return template;\n } catch (err) {\n deferred.reject({ msg: 'Unable to retrieve templates', err: err });\n }\n })\n );\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve templates', err: err });\n });\n\n return deferred.promise;\n }\n\n service.templateFile = templateFile;\n function templateFile(repositoryUrl, composeFilePathInRepository) {\n return Templates.file({ repositoryUrl, composeFilePathInRepository }).$promise;\n }\n\n service.createTemplateConfiguration = function (template, containerName, network) {\n var imageConfiguration = ImageHelper.createImageConfigForContainer(template.RegistryModel);\n var containerConfiguration = createContainerConfiguration(template, containerName, network);\n containerConfiguration.Image = imageConfiguration.fromImage;\n return containerConfiguration;\n };\n\n function createContainerConfiguration(template, containerName, network) {\n var configuration = TemplateHelper.getDefaultContainerConfiguration();\n configuration.HostConfig.NetworkMode = network.Name;\n configuration.HostConfig.Privileged = template.Privileged;\n configuration.HostConfig.RestartPolicy = { Name: template.RestartPolicy };\n configuration.HostConfig.ExtraHosts = template.Hosts ? template.Hosts : [];\n configuration.name = containerName;\n configuration.Hostname = template.Hostname;\n configuration.Env = TemplateHelper.EnvToStringArray(template.Env);\n configuration.Cmd = ContainerHelper.commandStringToArray(template.Command);\n var portConfiguration = TemplateHelper.portArrayToPortConfiguration(template.Ports);\n configuration.HostConfig.PortBindings = portConfiguration.bindings;\n configuration.ExposedPorts = portConfiguration.exposedPorts;\n var consoleConfiguration = TemplateHelper.getConsoleConfiguration(template.Interactive);\n configuration.OpenStdin = consoleConfiguration.openStdin;\n configuration.Tty = consoleConfiguration.tty;\n configuration.Labels = TemplateHelper.updateContainerConfigurationWithLabels(template.Labels);\n return configuration;\n }\n\n service.updateContainerConfigurationWithVolumes = function (configuration, template, generatedVolumesPile) {\n var volumes = template.Volumes;\n TemplateHelper.createVolumeBindings(volumes, generatedVolumesPile);\n volumes.forEach(function (volume) {\n if (volume.binding) {\n configuration.Volumes[volume.container] = {};\n configuration.HostConfig.Binds.push(volume.binding);\n }\n });\n };\n\n return service;\n}\n","import _ from 'lodash-es';\nimport { UserTokenModel, UserViewModel } from '@/portainer/models/user';\nimport { getUser, getUsers } from '@/portainer/users/user.service';\n\nimport { TeamMembershipModel } from '../../models/teamMembership';\n\n/* @ngInject */\nexport function UserService($q, Users, TeamService, TeamMembershipService) {\n 'use strict';\n var service = {};\n\n service.users = async function (includeAdministrators) {\n const users = await getUsers(includeAdministrators);\n\n return users.map((u) => new UserViewModel(u));\n };\n\n service.user = async function (includeAdministrators) {\n const user = await getUser(includeAdministrators);\n\n return new UserViewModel(user);\n };\n\n service.createUser = function (username, password, role, teamIds) {\n var deferred = $q.defer();\n\n var payload = {\n username: username,\n password: password,\n role: role,\n };\n\n Users.create({}, payload)\n .$promise.then(function success(data) {\n var userId = data.Id;\n var teamMembershipQueries = [];\n angular.forEach(teamIds, function (teamId) {\n teamMembershipQueries.push(TeamMembershipService.createMembership(userId, teamId, 2));\n });\n $q.all(teamMembershipQueries).then(function success() {\n deferred.resolve();\n });\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create user', err: err });\n });\n\n return deferred.promise;\n };\n\n service.deleteUser = function (id) {\n return Users.remove({ id: id }).$promise;\n };\n\n service.updateUser = function (id, { password, role, username }) {\n return Users.update({ id }, { password, role, username }).$promise;\n };\n\n service.updateUserPassword = function (id, currentPassword, newPassword) {\n var payload = {\n Password: currentPassword,\n NewPassword: newPassword,\n };\n\n return Users.updatePassword({ id: id }, payload).$promise;\n };\n\n service.updateUserTheme = function (id, userTheme) {\n return Users.updateTheme({ id }, { userTheme }).$promise;\n };\n\n service.userMemberships = function (id) {\n var deferred = $q.defer();\n\n Users.queryMemberships({ id: id })\n .$promise.then(function success(data) {\n var memberships = data.map(function (item) {\n return new TeamMembershipModel(item);\n });\n deferred.resolve(memberships);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve user memberships', err: err });\n });\n\n return deferred.promise;\n };\n\n service.userLeadingTeams = function (id) {\n var deferred = $q.defer();\n\n $q.all({\n teams: TeamService.teams(),\n memberships: service.userMemberships(id),\n })\n .then(function success(data) {\n var memberships = data.memberships;\n var teams = data.teams.filter(function (team) {\n var membership = _.find(memberships, { TeamId: team.Id });\n if (membership && membership.Role === 1) {\n return team;\n }\n });\n deferred.resolve(teams);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve user teams', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createAccessToken = function (id, description) {\n const deferred = $q.defer();\n const payload = { description };\n Users.createAccessToken({ id }, payload)\n .$promise.then((data) => {\n deferred.resolve(data);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to create user', err: err });\n });\n return deferred.promise;\n };\n\n service.getAccessTokens = function (id) {\n var deferred = $q.defer();\n\n Users.getAccessTokens({ id: id })\n .$promise.then(function success(data) {\n var userTokens = data.map(function (item) {\n return new UserTokenModel(item);\n });\n deferred.resolve(userTokens);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve user tokens', err: err });\n });\n\n return deferred.promise;\n };\n\n service.deleteAccessToken = function (id, tokenId) {\n return Users.deleteAccessToken({ id: id, tokenId: tokenId }).$promise;\n };\n\n service.initAdministrator = function (username, password) {\n return Users.initAdminUser({ Username: username, Password: password }).$promise;\n };\n\n service.administratorExists = function () {\n var deferred = $q.defer();\n\n Users.checkAdminUser({})\n .$promise.then(function success() {\n deferred.resolve(true);\n })\n .catch(function error(err) {\n if (err.status === 404) {\n deferred.resolve(false);\n }\n\n if (err.status === 303) {\n deferred.resolve(false);\n }\n deferred.reject({ msg: 'Unable to verify administrator account existence', err: err });\n });\n\n return deferred.promise;\n };\n\n return service;\n}\n","import { WebhookViewModel } from '../../models/webhook';\n\nangular.module('portainer.app').factory('WebhookService', [\n '$q',\n 'Webhooks',\n function WebhookServiceFactory($q, Webhooks) {\n 'use strict';\n var service = {};\n\n service.webhooks = function (serviceID, endpointID) {\n var deferred = $q.defer();\n var filters = { ResourceID: serviceID, EndpointID: endpointID };\n\n Webhooks.query({ filters: filters })\n .$promise.then(function success(data) {\n var webhooks = data.map(function (item) {\n return new WebhookViewModel(item);\n });\n deferred.resolve(webhooks);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve webhooks', err: err });\n });\n\n return deferred.promise;\n };\n\n service.createWebhook = function (serviceID, endpointID, registryID, webhookType) {\n // webhookType 1. service 2. container\n return Webhooks.create({ ResourceID: serviceID, EndpointID: endpointID, WebhookType: webhookType, registryID }).$promise;\n };\n\n service.updateServiceWebhook = function (id, registryID) {\n return Webhooks.update({ id, registryID }).$promise;\n };\n\n service.deleteWebhook = function (id) {\n return Webhooks.remove({ id: id }).$promise;\n };\n\n return service;\n },\n]);\n","/**\n * Look a the following PR for how to use the wrapper\n * and documentation about it\n * https://github.com/portainer/portainer/pull/2945\n */\n\nangular.module('portainer').factory('$async', [\n '$q',\n function ($q) {\n return function (asyncFunc, ...args) {\n const def = $q.defer();\n const wrapper = function (params) {\n const deferred = $q.defer();\n asyncFunc(...params)\n .then(deferred.resolve)\n .catch(deferred.reject);\n return deferred.promise;\n };\n\n wrapper(args).then(def.resolve).catch(def.reject);\n return def.promise;\n };\n },\n]);\n","import { clear as clearSessionStorage } from './session-storage';\nangular.module('portainer.app').factory('Authentication', [\n '$async',\n '$state',\n 'Auth',\n 'OAuth',\n 'jwtHelper',\n 'LocalStorage',\n 'StateManager',\n 'EndpointProvider',\n 'UserService',\n 'ThemeManager',\n function AuthenticationFactory($async, $state, Auth, OAuth, jwtHelper, LocalStorage, StateManager, EndpointProvider, UserService, ThemeManager) {\n 'use strict';\n\n var service = {};\n var user = {};\n\n service.init = init;\n service.OAuthLogin = OAuthLogin;\n service.login = login;\n service.logout = logout;\n service.isAuthenticated = isAuthenticated;\n service.getUserDetails = getUserDetails;\n service.isAdmin = isAdmin;\n service.hasAuthorizations = hasAuthorizations;\n service.redirectIfUnauthorized = redirectIfUnauthorized;\n\n async function initAsync() {\n try {\n const jwt = LocalStorage.getJWT();\n if (jwt) {\n await setUser(jwt);\n }\n return !!jwt;\n } catch (error) {\n return false;\n }\n }\n\n async function logoutAsync(performApiLogout) {\n if (performApiLogout) {\n await Auth.logout().$promise;\n }\n\n clearSessionStorage();\n StateManager.clean();\n EndpointProvider.clean();\n LocalStorage.cleanAuthData();\n LocalStorage.storeLoginStateUUID('');\n }\n\n function logout(performApiLogout) {\n return $async(logoutAsync, performApiLogout);\n }\n\n function init() {\n return $async(initAsync);\n }\n\n async function OAuthLoginAsync(code) {\n const response = await OAuth.validate({ code: code }).$promise;\n await setUser(response.jwt);\n }\n\n function OAuthLogin(code) {\n return $async(OAuthLoginAsync, code);\n }\n\n async function loginAsync(username, password) {\n const response = await Auth.login({ username: username, password: password }).$promise;\n await setUser(response.jwt);\n }\n\n function login(username, password) {\n return $async(loginAsync, username, password);\n }\n\n function isAuthenticated() {\n var jwt = LocalStorage.getJWT();\n return jwt && !jwtHelper.isTokenExpired(jwt);\n }\n\n function getUserDetails() {\n return user;\n }\n\n async function retrievePermissions() {\n const data = await UserService.user(user.ID);\n user.endpointAuthorizations = data.EndpointAuthorizations;\n user.portainerAuthorizations = data.PortainerAuthorizations;\n\n // Initialize user theme base on UserTheme from database\n const userTheme = data.UserTheme;\n if (userTheme === 'auto' || !userTheme) {\n ThemeManager.autoTheme();\n } else {\n ThemeManager.setTheme(userTheme);\n }\n }\n\n async function setUser(jwt) {\n LocalStorage.storeJWT(jwt);\n var tokenPayload = jwtHelper.decodeToken(jwt);\n user.username = tokenPayload.username;\n user.ID = tokenPayload.id;\n user.role = tokenPayload.role;\n user.forceChangePassword = tokenPayload.forceChangePassword;\n await retrievePermissions();\n }\n\n function isAdmin() {\n if (user.role === 1) {\n return true;\n }\n return false;\n }\n\n function hasAuthorizations(authorizations) {\n const endpointId = EndpointProvider.endpointID();\n if (isAdmin()) {\n return true;\n }\n if (!user.endpointAuthorizations || !user.endpointAuthorizations[endpointId]) {\n return false;\n }\n const userEndpointAuthorizations = user.endpointAuthorizations[endpointId];\n return authorizations.some((authorization) => userEndpointAuthorizations[authorization]);\n }\n\n function redirectIfUnauthorized(authorizations) {\n const authorized = hasAuthorizations(authorizations);\n if (!authorized) {\n $state.go('portainer.home');\n }\n }\n\n return service;\n },\n]);\n","import Chart from 'chart.js';\nimport filesize from 'filesize';\n\nangular.module('portainer.app').factory('ChartService', [\n function ChartService() {\n 'use strict';\n\n // Max. number of items to display on a chart\n var CHART_LIMIT = 600;\n\n var service = {};\n\n function defaultChartOptions(pos, tooltipCallback, scalesCallback, isStacked) {\n return {\n animation: { duration: 0 },\n responsiveAnimationDuration: 0,\n responsive: true,\n tooltips: {\n mode: 'index',\n intersect: false,\n position: pos,\n callbacks: {\n label: function (tooltipItem, data) {\n var datasetLabel = data.datasets[tooltipItem.datasetIndex].label;\n return tooltipCallback(datasetLabel, tooltipItem.yLabel);\n },\n },\n },\n layout: {\n padding: {\n left: 15,\n },\n },\n hover: { animationDuration: 0 },\n scales: {\n yAxes: [\n {\n stacked: isStacked,\n ticks: {\n beginAtZero: true,\n callback: scalesCallback,\n precision: 0,\n },\n },\n ],\n },\n };\n }\n\n function CreateChart(context, label, tooltipCallback, scalesCallback) {\n return new Chart(context, {\n type: 'line',\n data: {\n labels: [],\n datasets: [\n {\n label: label,\n data: [],\n fill: true,\n backgroundColor: 'rgba(151,187,205,0.4)',\n borderColor: 'rgba(151,187,205,0.6)',\n pointBackgroundColor: 'rgba(151,187,205,1)',\n pointBorderColor: 'rgba(151,187,205,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n ],\n },\n options: defaultChartOptions('nearest', tooltipCallback, scalesCallback),\n });\n }\n\n function CreateMemoryChart(context, tooltipCallback, scalesCallback) {\n return new Chart(context, {\n type: 'line',\n data: {\n labels: [],\n datasets: [\n {\n label: 'Memory',\n data: [],\n fill: true,\n backgroundColor: 'rgba(151,187,205,0.4)',\n borderColor: 'rgba(151,187,205,0.6)',\n pointBackgroundColor: 'rgba(151,187,205,1)',\n pointBorderColor: 'rgba(151,187,205,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n {\n label: 'Cache',\n data: [],\n fill: true,\n backgroundColor: 'rgba(255,180,174,0.4)',\n borderColor: 'rgba(255,180,174,0.6)',\n pointBackgroundColor: 'rgba(255,180,174,1)',\n pointBorderColor: 'rgba(255,180,174,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n ],\n },\n options: defaultChartOptions('nearest', tooltipCallback, scalesCallback, true),\n });\n }\n\n function CreateIOChart(context, tooltipCallback, scalesCallback) {\n return new Chart(context, {\n type: 'line',\n data: {\n labels: [],\n datasets: [\n {\n label: 'Read (Aggregate)',\n data: [],\n fill: true,\n backgroundColor: 'rgba(151,187,205,0.4)',\n borderColor: 'rgba(151,187,205,0.6)',\n pointBackgroundColor: 'rgba(151,187,205,1)',\n pointBorderColor: 'rgba(151,187,205,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n {\n label: 'Write (Aggregate)',\n data: [],\n fill: true,\n backgroundColor: 'rgba(255,180,174,0.4)',\n borderColor: 'rgba(255,180,174,0.6)',\n pointBackgroundColor: 'rgba(255,180,174,1)',\n pointBorderColor: 'rgba(255,180,174,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n ],\n },\n options: defaultChartOptions('nearest', tooltipCallback, scalesCallback, true),\n });\n }\n\n service.CreateCPUChart = function (context) {\n return CreateChart(context, 'CPU', percentageBasedTooltipLabel, percentageBasedAxisLabel);\n };\n\n service.CreateIOChart = function (context) {\n return CreateIOChart(context, byteBasedTooltipLabel, byteBasedAxisLabel);\n };\n\n service.CreateMemoryChart = function (context) {\n return CreateMemoryChart(context, byteBasedTooltipLabel, byteBasedAxisLabel);\n };\n\n service.CreateNetworkChart = function (context) {\n return new Chart(context, {\n type: 'line',\n data: {\n labels: [],\n datasets: [\n {\n label: 'RX on eth0',\n data: [],\n fill: false,\n backgroundColor: 'rgba(151,187,205,0.4)',\n borderColor: 'rgba(151,187,205,0.6)',\n pointBackgroundColor: 'rgba(151,187,205,1)',\n pointBorderColor: 'rgba(151,187,205,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n {\n label: 'TX on eth0',\n data: [],\n fill: false,\n backgroundColor: 'rgba(255,180,174,0.4)',\n borderColor: 'rgba(255,180,174,0.6)',\n pointBackgroundColor: 'rgba(255,180,174,1)',\n pointBorderColor: 'rgba(255,180,174,1)',\n pointRadius: 2,\n borderWidth: 2,\n },\n ],\n },\n options: defaultChartOptions('average', byteBasedTooltipLabel, byteBasedAxisLabel),\n });\n };\n\n function LimitChartItems(chart, CHART_LIMIT) {\n if (chart.data.datasets[0].data.length > CHART_LIMIT) {\n chart.data.labels.pop();\n chart.data.datasets[0].data.pop();\n chart.data.datasets[1].data.pop();\n }\n }\n\n function UpdateChart(label, value, chart) {\n chart.data.labels.push(label);\n chart.data.datasets[0].data.push(value);\n\n if (chart.data.datasets[0].data.length > CHART_LIMIT) {\n chart.data.labels.pop();\n chart.data.datasets[0].data.pop();\n }\n\n chart.update(0);\n }\n\n service.UpdateMemoryChart = function UpdateChart(label, memoryValue, cacheValue, chart) {\n chart.data.labels.push(label);\n chart.data.datasets[0].data.push(memoryValue);\n\n if (cacheValue) {\n chart.data.datasets[1].data.push(cacheValue);\n } else {\n // cache values are not available for Windows\n chart.data.datasets.splice(1, 1);\n }\n\n LimitChartItems(chart);\n\n chart.update(0);\n };\n service.UpdateCPUChart = UpdateChart;\n service.UpdateIOChart = function (label, read, write, chart) {\n chart.data.labels.push(label);\n chart.data.datasets[0].data.push(read);\n chart.data.datasets[1].data.push(write);\n LimitChartItems(chart);\n chart.update(0);\n };\n\n service.UpdateNetworkChart = function (label, rx, tx, chart) {\n chart.data.labels.push(label);\n chart.data.datasets[0].data.push(rx);\n chart.data.datasets[1].data.push(tx);\n\n LimitChartItems(chart);\n\n chart.update(0);\n };\n\n function byteBasedTooltipLabel(label, value) {\n var processedValue = 0;\n if (value > 5) {\n processedValue = filesize(value, { base: 10, round: 1 });\n } else {\n processedValue = value.toFixed(1) + 'B';\n }\n return label + ': ' + processedValue;\n }\n\n function byteBasedAxisLabel(value) {\n if (value > 5) {\n return filesize(value, { base: 10, round: 1 });\n }\n return value.toFixed(1) + 'B';\n }\n\n function percentageBasedAxisLabel(value) {\n if (value > 1) {\n return Math.round(value) + '%';\n }\n return value.toFixed(1) + '%';\n }\n\n function percentageBasedTooltipLabel(label, value) {\n var processedValue = 0;\n if (value > 1) {\n processedValue = Math.round(value);\n } else {\n processedValue = value.toFixed(1);\n }\n return label + ': ' + processedValue + '%';\n }\n\n return service;\n },\n]);\n","import _ from 'lodash-es';\nimport CodeMirror from 'codemirror';\nimport 'codemirror/mode/yaml/yaml.js';\nimport 'codemirror/addon/lint/lint.js';\nimport 'codemirror/addon/lint/yaml-lint.js';\nimport 'codemirror/addon/display/placeholder.js';\nimport 'codemirror/addon/search/search.js';\nimport 'codemirror/addon/search/searchcursor.js';\nimport 'codemirror/addon/search/jump-to-line.js';\nimport 'codemirror/addon/dialog/dialog.js';\nimport './codeMirrorDialog.css';\n\nangular.module('portainer.app').factory('CodeMirrorService', function CodeMirrorService() {\n 'use strict';\n\n var service = {};\n\n var codeMirrorGenericOptions = {\n lineNumbers: true,\n extraKeys: {\n 'Alt-F': 'findPersistent',\n },\n };\n\n var codeMirrorYAMLOptions = {\n mode: 'text/x-yaml',\n gutters: ['CodeMirror-lint-markers'],\n lint: true,\n extraKeys: {\n 'Alt-F': 'findPersistent',\n Tab: function (cm) {\n var spaces = Array(cm.getOption('indentUnit') + 1).join(' ');\n cm.replaceSelection(spaces);\n },\n },\n };\n\n service.applyCodeMirrorOnElement = function (element, yamlLint, readOnly) {\n var options = angular.copy(codeMirrorGenericOptions);\n\n if (yamlLint) {\n _.assign(options, codeMirrorYAMLOptions);\n }\n\n if (readOnly) {\n options.readOnly = true;\n }\n\n var cm = CodeMirror.fromTextArea(element, options);\n cm.setSize('100%', 500);\n return cm;\n };\n\n return service;\n});\n","import angular from 'angular';\n\nimport * as sessionStorage from './session-storage';\n\nangular.module('portainer.app').factory('DatatableService', DatatableServiceFactory);\n\nconst DATATABLE_PREFIX = 'datatable_';\nconst TEXT_FILTER_KEY_PREFIX = `${DATATABLE_PREFIX}text_filter_`;\n\n/* @ngInject */\nfunction DatatableServiceFactory(LocalStorage) {\n return {\n setDataTableSettings,\n getDataTableSettings,\n setDataTableTextFilters,\n getDataTableTextFilters,\n setDataTableFilters,\n getDataTableFilters,\n getDataTableOrder,\n setDataTableOrder,\n setDataTableExpandedItems,\n setColumnVisibilitySettings,\n getDataTableExpandedItems,\n setDataTableSelectedItems,\n getDataTableSelectedItems,\n getColumnVisibilitySettings,\n };\n\n function setDataTableSettings(key, settings) {\n LocalStorage.storeDataTableSettings(key, settings);\n }\n\n function getDataTableSettings(key) {\n return LocalStorage.getDataTableSettings(key);\n }\n\n function setDataTableTextFilters(key, filters) {\n sessionStorage.save(TEXT_FILTER_KEY_PREFIX + key, filters);\n }\n\n function getDataTableTextFilters(key) {\n return sessionStorage.get(TEXT_FILTER_KEY_PREFIX + key);\n }\n\n function setDataTableFilters(key, filters) {\n LocalStorage.storeDataTableFilters(key, filters);\n }\n\n function getDataTableFilters(key) {\n return LocalStorage.getDataTableFilters(key);\n }\n\n function getDataTableOrder(key) {\n return LocalStorage.getDataTableOrder(key);\n }\n\n function setDataTableOrder(key, orderBy, reverse) {\n var filter = {\n orderBy: orderBy,\n reverse: reverse,\n };\n LocalStorage.storeDataTableOrder(key, filter);\n }\n\n function setDataTableExpandedItems(key, expandedItems) {\n LocalStorage.storeDataTableExpandedItems(key, expandedItems);\n }\n\n function setColumnVisibilitySettings(key, columnVisibility) {\n LocalStorage.storeColumnVisibilitySettings(key, columnVisibility);\n }\n\n function getDataTableExpandedItems(key) {\n return LocalStorage.getDataTableExpandedItems(key);\n }\n\n function setDataTableSelectedItems(key, selectedItems) {\n LocalStorage.storeDataTableSelectedItems(key, selectedItems);\n }\n\n function getDataTableSelectedItems(key) {\n return LocalStorage.getDataTableSelectedItems(key);\n }\n\n function getColumnVisibilitySettings(key) {\n return LocalStorage.getColumnVisibilitySettings(key);\n }\n}\n","angular.module('portainer.app').factory(\n 'EndpointProvider',\n /* @ngInject */\n function EndpointProviderFactory(LocalStorage, $uiRouterGlobals) {\n const state = {\n currentEndpoint: null,\n };\n var service = {};\n var endpoint = {};\n\n service.initialize = function () {\n var endpointID = LocalStorage.getEndpointID();\n var endpointPublicURL = LocalStorage.getEndpointPublicURL();\n var offlineMode = LocalStorage.getOfflineMode();\n\n if (endpointID) {\n endpoint.ID = endpointID;\n }\n if (endpointPublicURL) {\n endpoint.PublicURL = endpointPublicURL;\n }\n if (offlineMode) {\n endpoint.OfflineMode = offlineMode;\n }\n };\n\n service.clean = function () {\n LocalStorage.cleanEndpointData();\n endpoint = {};\n };\n\n service.endpoint = function () {\n return endpoint;\n };\n\n service.endpointID = function () {\n if (endpoint.ID === undefined) {\n endpoint.ID = LocalStorage.getEndpointID();\n }\n if (endpoint.ID === null || endpoint.ID === undefined) {\n return service.getUrlEndpointID();\n }\n return endpoint.ID;\n };\n\n // TODO: technical debt\n // Reference issue: JIRA EE-338 (backport of JIRA CE-463)\n // Documentation (https://ui-router.github.io/ng1/docs/latest/modules/injectables.html) show the usage of either\n // * $stateParams\n // * $transition$\n // * $uiRouterGlobals\n // to retrieve the URL params\n //\n // * $stateParams: is deprecated and will cause a circular dependency injection error\n // because EndpointProvider is used by EndpointStatusInterceptor which is injected inside $httpProvider\n // >> [$injector:cdep] Circular dependency found: $uiRouter <- $stateParams <- EndpointProvider <- EndpointStatusInterceptor <- $http <- $uiRouter\n // For more details, see https://stackoverflow.com/questions/20230691/injecting-state-ui-router-into-http-interceptor-causes-circular-dependency#20230786\n //\n // * $transition$: mentionned as the replacement of $stateParams (https://ui-router.github.io/guide/ng1/migrate-to-1_0#stateparams-deprecation)\n // but is not injectable without tweaks inside a service\n //\n // * $uiRouterGlobal: per https://github.com/angular-ui/ui-router/issues/3237#issuecomment-271979688\n // seems the recommanded way to retrieve params inside a service/factory\n //\n // We need this function to fallback on URL endpoint ID when no endpoint has been selected\n service.getUrlEndpointID = () => {\n return $uiRouterGlobals.params.id;\n };\n\n service.setEndpointID = function (id) {\n endpoint.ID = id;\n LocalStorage.storeEndpointID(id);\n };\n\n service.endpointPublicURL = function () {\n if (endpoint.PublicURL === undefined) {\n endpoint.PublicURL = LocalStorage.getEndpointPublicURL();\n }\n return endpoint.PublicURL;\n };\n\n service.setEndpointPublicURL = function (publicURL) {\n endpoint.PublicURL = publicURL;\n LocalStorage.storeEndpointPublicURL(publicURL);\n };\n\n service.endpoints = function () {\n return LocalStorage.getEndpoints();\n };\n\n service.setEndpoints = function (data) {\n LocalStorage.storeEndpoints(data);\n };\n\n service.offlineMode = function () {\n return endpoint.OfflineMode;\n };\n\n service.setOfflineMode = function (isOffline) {\n endpoint.OfflineMode = isOffline;\n LocalStorage.storeOfflineMode(isOffline);\n };\n\n service.setOfflineModeFromStatus = function (status) {\n var isOffline = status !== 1;\n endpoint.OfflineMode = isOffline;\n LocalStorage.storeOfflineMode(isOffline);\n };\n\n service.currentEndpoint = function () {\n return state.currentEndpoint;\n };\n\n service.setCurrentEndpoint = function (endpoint) {\n state.currentEndpoint = endpoint;\n };\n\n return service;\n }\n);\n","import { PortainerEndpointCreationTypes } from 'Portainer/models/endpoint/models';\nimport { genericHandler, jsonObjectsToArrayHandler } from '../../docker/rest/response/handlers';\n\nangular.module('portainer.app').factory('FileUploadService', [\n '$q',\n 'Upload',\n 'EndpointProvider',\n function FileUploadFactory($q, Upload, EndpointProvider) {\n 'use strict';\n\n var service = {};\n\n function uploadFile(url, file) {\n return Upload.upload({ url: url, data: { file: file } });\n }\n\n service.buildImage = function (names, file, path) {\n var endpointID = EndpointProvider.endpointID();\n return Upload.http({\n url: 'api/endpoints/' + endpointID + '/docker/build',\n headers: {\n 'Content-Type': file.type,\n },\n data: file,\n params: {\n t: names,\n dockerfile: path,\n },\n ignoreLoadingBar: true,\n transformResponse: function (data) {\n return jsonObjectsToArrayHandler(data);\n },\n });\n };\n\n service.loadImages = function (file) {\n var endpointID = EndpointProvider.endpointID();\n return Upload.http({\n url: 'api/endpoints/' + endpointID + '/docker/images/load',\n headers: {\n 'Content-Type': file.type,\n },\n data: file,\n ignoreLoadingBar: true,\n transformResponse: genericHandler,\n });\n };\n\n service.createSchedule = function (payload) {\n return Upload.upload({\n url: 'api/edge_jobs?method=file',\n data: {\n file: payload.File,\n Name: payload.Name,\n CronExpression: payload.CronExpression,\n Image: payload.Image,\n Endpoints: Upload.json(payload.Endpoints),\n RetryCount: payload.RetryCount,\n RetryInterval: payload.RetryInterval,\n },\n });\n };\n\n service.uploadBackup = function (file, password) {\n return Upload.upload({\n url: 'api/restore',\n data: {\n file,\n password,\n },\n });\n };\n\n service.createSwarmStack = function (stackName, swarmId, file, env, endpointId, webhook) {\n return Upload.upload({\n url: 'api/stacks?method=file&type=1&endpointId=' + endpointId,\n data: {\n file: file,\n Name: stackName,\n SwarmID: swarmId,\n Env: Upload.json(env),\n Webhook: webhook,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.createComposeStack = function (stackName, file, env, endpointId, webhook) {\n return Upload.upload({\n url: 'api/stacks?method=file&type=2&endpointId=' + endpointId,\n data: {\n file: file,\n Name: stackName,\n Env: Upload.json(env),\n Webhook: webhook,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.createEdgeStack = function createEdgeStack({ EdgeGroups, Registries, ...payload }, file, dryrun) {\n return Upload.upload({\n url: `api/edge_stacks?method=file&dryrun=${dryrun}`,\n data: {\n file,\n EdgeGroups: Upload.json(EdgeGroups),\n Registries: Upload.json(Registries),\n ...payload,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.createCustomTemplate = function createCustomTemplate(data) {\n return Upload.upload({\n url: 'api/custom_templates?method=file',\n data,\n ignoreLoadingBar: true,\n });\n };\n\n service.configureRegistry = function (registryId, registryManagementConfigurationModel) {\n return Upload.upload({\n url: 'api/registries/' + registryId + '/configure',\n data: registryManagementConfigurationModel,\n });\n };\n\n service.createEndpoint = function (\n name,\n creationType,\n URL,\n PublicURL,\n groupID,\n tagIds,\n TLS,\n TLSSkipVerify,\n TLSSkipClientVerify,\n TLSCAFile,\n TLSCertFile,\n TLSKeyFile,\n checkinInterval,\n isEdgeDevice,\n EdgePingInterval,\n EdgeSnapshotInterval,\n EdgeCommandInterval\n ) {\n return Upload.upload({\n url: 'api/endpoints',\n data: {\n Name: name,\n EndpointCreationType: creationType,\n URL: URL,\n PublicURL: PublicURL,\n GroupID: groupID,\n TagIds: Upload.json(tagIds),\n TLS: TLS,\n TLSSkipVerify: TLSSkipVerify,\n TLSSkipClientVerify: TLSSkipClientVerify,\n TLSCACertFile: TLSCAFile,\n TLSCertFile: TLSCertFile,\n TLSKeyFile: TLSKeyFile,\n CheckinInterval: checkinInterval,\n IsEdgeDevice: isEdgeDevice,\n EdgePingInterval: EdgePingInterval,\n EdgeSnapshotInterval: EdgeSnapshotInterval,\n EdgeCommandInterval: EdgeCommandInterval,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.createAzureEndpoint = function (name, applicationId, tenantId, authenticationKey, groupId, tagIds) {\n return Upload.upload({\n url: 'api/endpoints',\n data: {\n Name: name,\n EndpointCreationType: PortainerEndpointCreationTypes.AzureEnvironment,\n GroupID: groupId,\n TagIds: Upload.json(tagIds),\n AzureApplicationID: applicationId,\n AzureTenantID: tenantId,\n AzureAuthenticationKey: authenticationKey,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.createKubeConfigEndpoint = function (name, kubeConfig, groupId, tagIds) {\n return Upload.upload({\n url: 'api/endpoints',\n data: {\n Name: name,\n EndpointCreationType: PortainerEndpointCreationTypes.KubeConfigEnvironment,\n GroupID: groupId,\n TagIds: Upload.json(tagIds),\n KubeConfig: kubeConfig,\n },\n ignoreLoadingBar: true,\n });\n };\n\n service.uploadLDAPTLSFiles = function (TLSCAFile, TLSCertFile, TLSKeyFile) {\n var queue = [];\n\n if (TLSCAFile) {\n queue.push(uploadFile('api/upload/tls/ca?folder=ldap', TLSCAFile));\n }\n if (TLSCertFile) {\n queue.push(uploadFile('api/upload/tls/cert?folder=ldap', TLSCertFile));\n }\n if (TLSKeyFile) {\n queue.push(uploadFile('api/upload/tls/key?folder=ldap', TLSKeyFile));\n }\n\n return $q.all(queue);\n };\n\n service.uploadTLSFilesForEndpoint = function (endpointID, TLSCAFile, TLSCertFile, TLSKeyFile) {\n var queue = [];\n\n if (TLSCAFile) {\n queue.push(uploadFile('api/upload/tls/ca?folder=' + endpointID, TLSCAFile));\n }\n if (TLSCertFile) {\n queue.push(uploadFile('api/upload/tls/cert?folder=' + endpointID, TLSCertFile));\n }\n if (TLSKeyFile) {\n queue.push(uploadFile('api/upload/tls/key?folder=' + endpointID, TLSKeyFile));\n }\n\n return $q.all(queue);\n };\n\n service.uploadOwnershipVoucher = function (voucherFile) {\n return Upload.upload({\n url: 'api/fdo/register',\n data: {\n voucher: voucherFile,\n },\n ignoreLoadingBar: true,\n });\n };\n\n return service;\n },\n]);\n","import { ResourceControlOwnership as RCO } from '@/portainer/access-control/types';\n\nangular.module('portainer.app').factory('FormValidator', [\n function FormValidatorFactory() {\n 'use strict';\n\n var validator = {};\n\n validator.validateAccessControl = function (accessControlData, isAdmin) {\n if (!accessControlData.AccessControlEnabled) {\n return '';\n }\n\n if (isAdmin && accessControlData.Ownership === RCO.RESTRICTED && accessControlData.AuthorizedUsers.length === 0 && accessControlData.AuthorizedTeams.length === 0) {\n return 'You must specify at least one team or user.';\n } else if (!isAdmin && accessControlData.Ownership === RCO.RESTRICTED && accessControlData.AuthorizedTeams.length === 0) {\n return 'You must specify at least a team.';\n }\n return '';\n };\n\n return validator;\n },\n]);\n","angular.module('portainer.app').factory('LocalStorage', [\n 'localStorageService',\n function LocalStorageFactory(localStorageService) {\n return {\n storeEndpointID: function (id) {\n localStorageService.set('ENDPOINT_ID', id);\n },\n getEndpointID: function () {\n return localStorageService.get('ENDPOINT_ID');\n },\n storeEndpointPublicURL: function (publicURL) {\n localStorageService.set('ENDPOINT_PUBLIC_URL', publicURL);\n },\n getEndpointPublicURL: function () {\n return localStorageService.get('ENDPOINT_PUBLIC_URL');\n },\n storeLoginStateUUID: function (uuid) {\n localStorageService.set('LOGIN_STATE_UUID', uuid);\n },\n getLoginStateUUID: function () {\n return localStorageService.get('LOGIN_STATE_UUID');\n },\n storeOfflineMode: function (isOffline) {\n localStorageService.set('ENDPOINT_OFFLINE_MODE', isOffline);\n },\n getOfflineMode: function () {\n return localStorageService.get('ENDPOINT_OFFLINE_MODE');\n },\n storeEndpoints: function (data) {\n localStorageService.set('ENDPOINTS_DATA', data);\n },\n getEndpoints: function () {\n return localStorageService.get('ENDPOINTS_DATA');\n },\n storeEndpointState: function (state) {\n localStorageService.set('ENDPOINT_STATE', state);\n },\n getEndpointState: function () {\n return localStorageService.get('ENDPOINT_STATE');\n },\n storeApplicationState: function (state) {\n localStorageService.set('APPLICATION_STATE', state);\n },\n getApplicationState: function () {\n return localStorageService.get('APPLICATION_STATE');\n },\n storeUIState: function (state) {\n localStorageService.set('UI_STATE', state);\n },\n getUIState: function () {\n return localStorageService.get('UI_STATE');\n },\n storeJWT: function (jwt) {\n localStorageService.set('JWT', jwt);\n },\n getJWT: function () {\n return localStorageService.get('JWT');\n },\n deleteJWT: function () {\n localStorageService.remove('JWT');\n },\n storePaginationLimit: function (key, count) {\n localStorageService.set('datatable_pagination_' + key, count);\n },\n getPaginationLimit: function (key) {\n return localStorageService.get('datatable_pagination_' + key);\n },\n getDataTableOrder: function (key) {\n return localStorageService.get('datatable_order_' + key);\n },\n storeDataTableOrder: function (key, data) {\n localStorageService.set('datatable_order_' + key, data);\n },\n getDataTableTextFilters: function (key) {\n return localStorageService.get('datatable_text_filter_' + key);\n },\n storeDataTableTextFilters: function (key, data) {\n localStorageService.set('datatable_text_filter_' + key, data);\n },\n getDataTableFilters: function (key) {\n return localStorageService.get('datatable_filters_' + key);\n },\n storeDataTableFilters: function (key, data) {\n localStorageService.set('datatable_filters_' + key, data);\n },\n getDataTableSettings: function (key) {\n return localStorageService.get('datatable_settings_' + key);\n },\n storeDataTableSettings: function (key, data) {\n localStorageService.set('datatable_settings_' + key, data);\n },\n getDataTableExpandedItems: function (key) {\n return localStorageService.get('datatable_expandeditems_' + key);\n },\n storeDataTableExpandedItems: function (key, data) {\n localStorageService.set('datatable_expandeditems_' + key, data);\n },\n getDataTableSelectedItems: function (key) {\n return localStorageService.get('datatable_selecteditems_' + key);\n },\n storeDataTableSelectedItems: function (key, data) {\n localStorageService.set('datatable_selecteditems_' + key, data);\n },\n storeSwarmVisualizerSettings: function (key, data) {\n localStorageService.set('swarmvisualizer_' + key, data);\n },\n getSwarmVisualizerSettings: function (key) {\n return localStorageService.get('swarmvisualizer_' + key);\n },\n storeColumnVisibilitySettings: function (key, data) {\n localStorageService.set('col_visibility_' + key, data);\n },\n getColumnVisibilitySettings: function (key) {\n return localStorageService.get('col_visibility_' + key);\n },\n storeJobImage: function (data) {\n localStorageService.set('job_image', data);\n },\n getJobImage: function () {\n return localStorageService.get('job_image');\n },\n storeActiveTab: function (key, index) {\n return localStorageService.set('active_tab_' + key, index);\n },\n getActiveTab: function (key) {\n const activeTab = localStorageService.get('active_tab_' + key);\n return activeTab === null ? 0 : activeTab;\n },\n storeLogoutReason: (reason) => localStorageService.set('logout_reason', reason),\n getLogoutReason: () => localStorageService.get('logout_reason'),\n cleanLogoutReason: () => localStorageService.remove('logout_reason'),\n clean: function () {\n localStorageService.clearAll();\n },\n cleanAuthData() {\n localStorageService.remove('JWT', 'APPLICATION_STATE', 'LOGIN_STATE_UUID');\n },\n cleanEndpointData() {\n localStorageService.remove('ENDPOINT_ID', 'ENDPOINT_PUBLIC_URL', 'ENDPOINT_OFFLINE_MODE', 'ENDPOINTS_DATA', 'ENDPOINT_STATE');\n },\n storeKubernetesSummaryToggle(value) {\n localStorageService.set('kubernetes_summary_expanded', value);\n },\n getKubernetesSummaryToggle() {\n return localStorageService.get('kubernetes_summary_expanded');\n },\n storeOAuthLoginBlockForNonAdmin(code) {\n localStorageService.set('oauth_login_block_code_' + code, true);\n },\n getOAuthLoginBlockForNonAdmin(code) {\n return localStorageService.get('oauth_login_block_code_' + code);\n },\n };\n },\n]);\n","import angular from 'angular';\nimport { getEnvironments } from '../environments/environment.service';\n\nangular.module('portainer.app').factory('NameValidator', NameValidatorFactory);\n/* @ngInject */\nfunction NameValidatorFactory(Notifications) {\n return {\n validateEnvironmentName,\n };\n\n async function validateEnvironmentName(name) {\n try {\n const endpoints = await getEnvironments({ limit: 1, name });\n return endpoints.value.length > 0;\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment details');\n }\n }\n}\n","angular.module('portainer.app').factory('PaginationService', [\n 'LocalStorage',\n 'PAGINATION_MAX_ITEMS',\n function PaginationServiceFactory(LocalStorage, PAGINATION_MAX_ITEMS) {\n 'use strict';\n\n var service = {};\n\n service.getPaginationLimit = function (key) {\n var paginationLimit = PAGINATION_MAX_ITEMS;\n\n var storedLimit = LocalStorage.getPaginationLimit(key);\n if (storedLimit !== null) {\n paginationLimit = storedLimit;\n }\n return '' + paginationLimit;\n };\n\n service.setPaginationLimit = function (key, limit) {\n LocalStorage.storePaginationLimit(key, limit);\n };\n\n return service;\n },\n]);\n","import _ from 'lodash-es';\nimport genericAsyncGenerator from '@/portainer/registry-management/services/genericAsyncGenerator';\n\nangular.module('portainer.app').factory('RegistryEcrService', RegistryEcrServiceFactory);\n\n/* @ngInject */\nfunction RegistryEcrServiceFactory($q, RegistryManifestsJquery, Ecr) {\n 'use strict';\n const service = {\n retagWithProgress,\n batchDeleteTags,\n deleteRepository,\n };\n\n function batchDeleteTags(params, data) {\n return Ecr.batchDeleteTags(params, data).$promise;\n }\n\n function deleteRepository(registry, endpointId, repository) {\n return Ecr.deleteRepository({ id: registry.Id, endpointId: endpointId, repositoryName: repository.Name }).$promise;\n }\n\n /**\n * RETAG\n */\n function _addTag(registry, endpointId, repository, tag, manifest) {\n const id = registry.Id;\n delete manifest.digest;\n return RegistryManifestsJquery.put(\n {\n id: id,\n endpointId: endpointId,\n repository: repository,\n tag: tag,\n },\n manifest\n );\n }\n\n function _addTagFromGenerator(registry, endpointId, repository, tag) {\n return _addTag(registry, endpointId, repository, tag.NewName, tag.ManifestV2);\n }\n\n async function* _addTagsWithProgress(registry, endpointId, repository, modifiedTags) {\n for await (const partialResult of genericAsyncGenerator($q, modifiedTags, _addTagFromGenerator, [registry, endpointId, repository])) {\n yield partialResult;\n }\n }\n\n async function* retagWithProgress(registry, endpointId, repository, modifiedTags, modifiedDigests, impactedTags) {\n yield* _addTagsWithProgress(registry, endpointId, repository, modifiedTags);\n\n const oldTagNames = modifiedTags.map((tag) => tag.Name);\n const newTagNames = modifiedTags.map((tag) => tag.NewName);\n const toDelTags = _.without(oldTagNames, ...newTagNames);\n\n if (toDelTags.length) {\n await batchDeleteTags({ id: registry.Id, endpointId: endpointId, repositoryName: repository }, { Tags: toDelTags });\n }\n\n yield modifiedDigests.length + impactedTags.length;\n }\n\n return service;\n}\n","import _ from 'lodash-es';\nimport { RegistryGitlabProject } from '../models/gitlabRegistry';\nimport { RegistryRepositoryGitlabViewModel } from '../models/registryRepository';\n\nangular.module('portainer.app').factory('RegistryGitlabService', [\n '$async',\n 'Gitlab',\n function RegistryGitlabServiceFactory($async, Gitlab) {\n 'use strict';\n var service = {};\n\n /**\n * PROJECTS\n */\n\n async function _getProjectsPage(env, params, projects) {\n const response = await Gitlab(env).projects(params).$promise;\n projects = _.concat(projects, response.data);\n if (response.next) {\n params.page = response.next;\n projects = await _getProjectsPage(env, params, projects);\n }\n return projects;\n }\n\n async function projectsAsync(url, token) {\n try {\n const data = await _getProjectsPage({ url: url, token: token }, { page: 1 }, []);\n return _.map(data, (project) => new RegistryGitlabProject(project));\n } catch (error) {\n throw { msg: 'Unable to retrieve projects', err: error };\n }\n }\n\n /**\n * END PROJECTS\n */\n\n /**\n * REPOSITORIES\n */\n\n async function _getRepositoriesPage(params, repositories) {\n const response = await Gitlab().repositories(params).$promise;\n repositories = _.concat(repositories, response.data);\n if (response.next) {\n params.page = response.next;\n repositories = await _getRepositoriesPage(params, repositories);\n }\n return repositories;\n }\n\n async function repositoriesAsync(registry, endpointId) {\n try {\n const params = {\n id: registry.Id,\n endpointId: endpointId,\n projectId: registry.Gitlab.ProjectId,\n page: 1,\n };\n const data = await _getRepositoriesPage(params, []);\n return _.filter(\n _.map(data, (r) => new RegistryRepositoryGitlabViewModel(r)),\n (r) => r.TagsCount > 0\n );\n } catch (error) {\n throw { msg: 'Unable to retrieve repositories', err: error };\n }\n }\n\n /**\n * END REPOSITORIES\n */\n\n /**\n * SERVICE FUNCTIONS DECLARATION\n */\n\n function projects(url, token) {\n return $async(projectsAsync, url, token);\n }\n\n function repositories(registry, endpointId) {\n return $async(repositoriesAsync, registry, endpointId);\n }\n\n service.projects = projects;\n service.repositories = repositories;\n return service;\n },\n]);\n","import _ from 'lodash';\n\nangular.module('portainer.app').factory('RegistryModalService', ModalServiceFactory);\n\nfunction ModalServiceFactory($q, ModalService, RegistryService) {\n const service = {};\n\n function registries2Options(registries) {\n return registries.map((r) => ({\n text: r.Name,\n value: String(r.Id),\n }));\n }\n\n service.registryModal = async function (repository, registries) {\n const deferred = $q.defer();\n\n const options = registries2Options(registries);\n const registryModel = RegistryService.retrievePorRegistryModelFromRepositoryWithRegistries(repository, registries);\n const defaultValue = String(_.get(registryModel, 'Registry.Id', '0'));\n\n ModalService.selectRegistry({\n title: 'Which registry do you want to use?',\n inputType: 'select',\n inputOptions: options,\n value: defaultValue,\n callback: (registryId) => {\n if (registryId) {\n const registryModel = RegistryService.retrievePorRegistryModelFromRepositoryWithRegistries(repository, registries, registryId);\n deferred.resolve(registryModel);\n } else {\n deferred.resolve(null);\n }\n },\n });\n\n return deferred.promise;\n };\n\n return service;\n}\n","/**\n * clears the sessionStorage\n */\nexport function clear() {\n sessionStorage.clear();\n}\n\n/**\n * stores `value` as string in `sessionStorage[key]`\n *\n * @param {string} key the key to store value at\n * @param {any} value the value to store - will be stringified using JSON.stringify\n *\n */\nexport function save(key, value) {\n sessionStorage.setItem(key, JSON.stringify(value));\n}\n\n/**\n * get parses the value stored in sessionStorage[key], if it's not available returns undefined\n *\n * @param {string} key\n */\nexport function get(key) {\n try {\n const value = sessionStorage.getItem(key);\n return JSON.parse(value);\n } catch (e) {\n return;\n }\n}\n","import moment from 'moment';\n\nangular.module('portainer.app').factory('StateManager', StateManagerFactory);\n\n/* @ngInject */\nfunction StateManagerFactory(\n $async,\n $q,\n SystemService,\n InfoHelper,\n LocalStorage,\n SettingsService,\n StatusService,\n APPLICATION_CACHE_VALIDITY,\n AgentPingService,\n $analytics,\n EndpointProvider\n) {\n var manager = {};\n\n var state = {\n loading: true,\n application: {},\n endpoint: {},\n UI: {\n dismissedInfoPanels: {},\n dismissedInfoHash: '',\n timesPasswordChangeSkipped: {},\n },\n };\n\n manager.dismissInformationPanel = function (id) {\n state.UI.dismissedInfoPanels[id] = true;\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.dismissImportantInformation = function (hash) {\n state.UI.dismissedInfoHash = hash;\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.setRequiredPasswordLength = function (length) {\n state.UI.requiredPasswordLength = length;\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.setPasswordChangeSkipped = function (userID) {\n state.UI.instanceId = state.UI.instanceId || state.application.instanceId;\n state.UI.timesPasswordChangeSkipped[userID] = state.UI.timesPasswordChangeSkipped[userID] + 1 || 1;\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.resetPasswordChangeSkips = function (userID) {\n if (state.UI.timesPasswordChangeSkipped[userID]) state.UI.timesPasswordChangeSkipped[userID] = 0;\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.clearPasswordChangeSkips = function () {\n state.UI.timesPasswordChangeSkipped = {};\n LocalStorage.storeUIState(state.UI);\n };\n\n manager.getState = function () {\n return state;\n };\n\n manager.clean = function () {\n state.endpoint = {};\n state.application = {};\n };\n\n manager.cleanEndpoint = function () {\n state.endpoint = {};\n EndpointProvider.clean();\n };\n\n manager.updateLogo = function (logoURL) {\n state.application.logo = logoURL;\n LocalStorage.storeApplicationState(state.application);\n };\n\n manager.updateTheme = function (theme) {\n state.application.theme = theme;\n LocalStorage.storeApplicationState(state.application);\n };\n\n manager.updateSnapshotInterval = function (interval) {\n state.application.snapshotInterval = interval;\n LocalStorage.storeApplicationState(state.application);\n };\n\n manager.updateEnableEdgeComputeFeatures = function updateEnableEdgeComputeFeatures(enableEdgeComputeFeatures) {\n state.application.enableEdgeComputeFeatures = enableEdgeComputeFeatures;\n LocalStorage.storeApplicationState(state.application);\n };\n\n manager.updateEnableTelemetry = function updateEnableTelemetry(enableTelemetry) {\n state.application.enableTelemetry = enableTelemetry;\n $analytics.setOptOut(!enableTelemetry);\n LocalStorage.storeApplicationState(state.application);\n };\n\n function assignStateFromStatusAndSettings(status, settings) {\n state.application.version = status.Version;\n state.application.edition = status.Edition;\n state.application.instanceId = status.InstanceID;\n state.application.demoEnvironment = status.DemoEnvironment;\n\n state.application.enableTelemetry = settings.EnableTelemetry;\n state.application.logo = settings.LogoURL;\n state.application.theme = settings.Theme;\n state.application.snapshotInterval = settings.SnapshotInterval;\n state.application.enableEdgeComputeFeatures = settings.EnableEdgeComputeFeatures;\n state.application.validity = moment().unix();\n }\n\n function loadApplicationState() {\n var deferred = $q.defer();\n\n $q.all({\n settings: SettingsService.publicSettings(),\n status: StatusService.status(),\n })\n .then(function success(data) {\n var status = data.status;\n var settings = data.settings;\n assignStateFromStatusAndSettings(status, settings);\n LocalStorage.storeApplicationState(state.application);\n deferred.resolve(state);\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to retrieve server settings and status', err: err });\n });\n\n return deferred.promise;\n }\n\n manager.initialize = initialize;\n async function initialize() {\n return $async(async () => {\n const endpointState = LocalStorage.getEndpointState();\n if (endpointState) {\n state.endpoint = endpointState;\n }\n\n const applicationState = LocalStorage.getApplicationState();\n if (isAppStateValid(applicationState)) {\n state.application = applicationState;\n } else {\n await loadApplicationState();\n }\n\n const UIState = LocalStorage.getUIState();\n if (UIState) {\n state.UI = UIState;\n if (state.UI.instanceId && state.UI.instanceId !== state.application.instanceId) {\n state.UI.instanceId = state.application.instanceId;\n state.UI.timesPasswordChangeSkipped = {};\n LocalStorage.storeUIState(state.UI);\n }\n }\n\n state.loading = false;\n $analytics.setPortainerStatus(state.application.instanceId, state.application.version);\n $analytics.setOptOut(!state.application.enableTelemetry);\n return state;\n });\n }\n\n function isAppStateValid(appState) {\n if (!appState || !appState.validity) {\n return false;\n }\n const now = moment().unix();\n const cacheValidity = now - appState.validity;\n return cacheValidity < APPLICATION_CACHE_VALIDITY;\n }\n\n manager.updateEndpointState = function (endpoint) {\n var deferred = $q.defer();\n\n if (endpoint.Type === 3) {\n state.endpoint.name = endpoint.Name;\n state.endpoint.mode = { provider: 'AZURE' };\n LocalStorage.storeEndpointState(state.endpoint);\n deferred.resolve();\n return deferred.promise;\n } else if (endpoint.Type === 5 || endpoint.Type === 6 || endpoint.Type === 7) {\n state.endpoint.name = endpoint.Name;\n state.endpoint.mode = { provider: 'KUBERNETES' };\n LocalStorage.storeEndpointState(state.endpoint);\n deferred.resolve();\n return deferred.promise;\n } else if (endpoint.Type === 8) {\n state.endpoint.name = endpoint.Name;\n state.endpoint.mode = { provider: 'NOMAD' };\n LocalStorage.storeEndpointState(state.endpoint);\n deferred.resolve();\n return deferred.promise;\n }\n\n const reload = endpoint.Status === 1 || !endpoint.Snaphosts || !endpoint.Snaphosts.length || !endpoint.Snapshots[0].SnapshotRaw;\n\n $q.all({\n version: reload ? SystemService.version() : $q.when(endpoint.Snapshots[0].SnapshotRaw.Version),\n info: reload ? SystemService.info() : $q.when(endpoint.Snapshots[0].SnapshotRaw.Info),\n })\n .then(function success(data) {\n var endpointMode = InfoHelper.determineEndpointMode(data.info, endpoint.Type);\n var endpointAPIVersion = parseFloat(data.version.ApiVersion);\n state.endpoint.mode = endpointMode;\n state.endpoint.name = endpoint.Name;\n state.endpoint.type = endpoint.Type;\n state.endpoint.apiVersion = endpointAPIVersion;\n\n if (endpointMode.agentProxy && endpoint.Status === 1) {\n return AgentPingService.ping().then(function onPingSuccess(data) {\n state.endpoint.agentApiVersion = data.version;\n });\n }\n })\n .then(function () {\n LocalStorage.storeEndpointState(state.endpoint);\n deferred.resolve();\n })\n .catch(function error(err) {\n deferred.reject({ msg: 'Unable to connect to the Docker environment', err: err });\n })\n .finally(function final() {\n state.loading = false;\n });\n\n return deferred.promise;\n };\n\n manager.getAgentApiVersion = function getAgentApiVersion() {\n return state.endpoint.agentApiVersion;\n };\n\n return manager;\n}\n","angular.module('portainer.app').service('ThemeManager', ThemeManager);\n\n/* @ngInject */\n\nexport function ThemeManager(StateManager) {\n return {\n setTheme,\n autoTheme,\n defaultTheme,\n };\n\n function setTheme(theme) {\n if (!theme) {\n document.documentElement.removeAttribute('theme');\n } else {\n document.documentElement.setAttribute('theme', theme);\n StateManager.updateTheme(theme);\n }\n }\n\n function autoTheme() {\n const systemTheme = window.matchMedia('(prefers-color-scheme: dark)').matches ? 'dark' : '';\n this.setTheme(systemTheme);\n }\n\n function defaultTheme() {\n document.documentElement.removeAttribute('theme');\n }\n}\n","export const authenticationMethodTypesMap = {\n INTERNAL: 1,\n LDAP: 2,\n OAUTH: 3,\n};\n\nexport const authenticationMethodTypesLabels = {\n [authenticationMethodTypesMap.INTERNAL]: 'Internal',\n [authenticationMethodTypesMap.LDAP]: 'LDAP',\n [authenticationMethodTypesMap.OAUTH]: 'OAuth',\n};\n","export const authenticationActivityTypesMap = {\n AuthSuccess: 1,\n AuthFailure: 2,\n Logout: 3,\n};\n\nexport const authenticationActivityTypesLabels = {\n [authenticationActivityTypesMap.AuthSuccess]: 'Authentication success',\n [authenticationActivityTypesMap.AuthFailure]: 'Authentication failure',\n [authenticationActivityTypesMap.Logout]: 'Logout',\n};\n","const autoNgTemplateLoaderTemplate1 = require('./auto-user-provision-toggle.html');\n\nexport const autoUserProvisionToggle = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n transclude: {\n description: 'fieldDescription',\n },\n bindings: {\n ngModel: '=',\n },\n};\n","import { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\n\nexport interface Props {\n onSubmit(): void;\n isLoading: boolean;\n}\n\nexport function SaveAuthSettingsButton({ onSubmit, isLoading }: Props) {\n return (\n <>\n Actions\n

    \n
    \n onSubmit()}\n >\n Save settings\n \n
    \n
    \n \n );\n}\n","import { ReactNode } from 'react';\n\nexport interface Props {\n value: string;\n icon?: ReactNode;\n color: string;\n}\n\n// Helper function used as workaround to add opacity to the background color\nfunction setOpacity(hex: string, alpha: number) {\n return `${hex}${Math.floor(alpha * 255)\n .toString(16)\n .padStart(2, '0')}`;\n}\n\nexport function Badge({ icon, value, color }: Props) {\n return (\n \n {icon}\n {value}\n \n );\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"sliderBadge\":\"app-portainer-settings-authentication-internal-auth-components-PasswordLengthSlider-PasswordLengthSlider-module__slider-badge\",\"root\":\"app-portainer-settings-authentication-internal-auth-components-PasswordLengthSlider-PasswordLengthSlider-module__root\"};","import RcSlider from 'rc-slider';\nimport clsx from 'clsx';\nimport { Lock, XCircle, CheckCircle } from 'react-feather';\n\nimport { Badge } from '@/portainer/settings/authentication/internal-auth/components/Badge';\n\nimport 'rc-slider/assets/index.css';\n\nimport styles from './PasswordLengthSlider.module.css';\n\nexport interface Props {\n min: number;\n max: number;\n step: number;\n value: number;\n onChange(value: number): void;\n}\n\ntype Strength = 'weak' | 'good' | 'strong' | 'veryStrong';\n\nconst sliderProperties: Record<\n Strength,\n { strength: string; color: string; text: string }\n> = {\n weak: {\n strength: 'weak',\n color: '#F04438',\n text: 'Weak password',\n },\n good: {\n strength: 'good',\n color: '#F79009',\n text: 'Good password',\n },\n strong: {\n strength: 'strong',\n color: '#12B76A',\n text: 'Strong password',\n },\n veryStrong: {\n strength: 'veryStrong',\n color: '#0BA5EC',\n text: 'Very strong password',\n },\n};\n\nconst SliderWithTooltip = RcSlider.createSliderWithTooltip(RcSlider);\n\nexport function PasswordLengthSlider({\n min,\n max,\n step,\n value,\n onChange,\n}: Props) {\n const sliderProps = getSliderProps(value);\n\n function getSliderProps(value: number) {\n if (value < 10) {\n return sliderProperties.weak;\n }\n\n if (value < 12) {\n return sliderProperties.good;\n }\n\n if (value < 14) {\n return sliderProperties.strong;\n }\n\n return sliderProperties.veryStrong;\n }\n\n function getBadgeIcon(strength: string) {\n switch (strength) {\n case 'weak':\n return ;\n case 'good':\n case 'strong':\n return (\n \n );\n default:\n return ;\n }\n }\n\n function handleChange(sliderValue: number) {\n onChange(sliderValue);\n }\n\n return (\n
    \n
    \n `${value} characters`}\n min={min}\n max={max}\n step={step}\n defaultValue={12}\n value={value}\n onChange={handleChange}\n handleStyle={{\n height: 25,\n width: 25,\n borderWidth: 1.85,\n borderColor: sliderProps.color,\n top: 1.5,\n boxShadow: 'none',\n }}\n railStyle={{ height: 10 }}\n trackStyle={{ backgroundColor: sliderProps.color, height: 10 }}\n />\n
    \n\n
    \n \n
    \n
    \n );\n}\n","import { react2angular } from '@/react-tools/react2angular';\nimport { confirmDestructive } from '@/portainer/services/modal.service/confirm';\n\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\n\nimport { SaveAuthSettingsButton } from '../components/SaveAuthSettingsButton';\nimport { Settings } from '../../types';\n\nimport { PasswordLengthSlider } from './components/PasswordLengthSlider/PasswordLengthSlider';\n\nexport interface Props {\n onSaveSettings(): void;\n isLoading: boolean;\n value: Settings['InternalAuthSettings'];\n onChange(value: number): void;\n}\n\nexport function InternalAuth({\n onSaveSettings,\n isLoading,\n value,\n onChange,\n}: Props) {\n function onSubmit() {\n if (value.RequiredPasswordLength < 10) {\n confirmDestructive({\n title: 'Allow weak passwords?',\n message:\n 'You have set an insecure minimum password length. This could leave your system vulnerable to attack, are you sure?',\n buttons: {\n confirm: {\n label: 'Yes',\n className: 'btn-danger',\n },\n },\n callback: function onConfirm(confirmed) {\n if (confirmed) onSaveSettings();\n },\n });\n } else {\n onSaveSettings();\n }\n }\n\n return (\n <>\n Information\n
    \n When using internal authentication, Portainer will encrypt user\n passwords and store credentials locally.\n
    \n\n Password rules\n
    \n Define minimum length for user-generated passwords.\n
    \n\n
    \n \n
    \n\n \n \n );\n}\n\nexport const InternalAuthAngular = react2angular(InternalAuth, [\n 'onSaveSettings',\n 'isLoading',\n 'value',\n 'onChange',\n]);\n","import angular from 'angular';\n\nimport ldapModule from './ldap';\n\nimport { autoUserProvisionToggle } from './auto-user-provision-toggle';\nimport { saveAuthSettingsButton } from './save-auth-settings-button';\nimport { InternalAuthAngular } from './internal-auth';\n\nexport default angular\n .module('portainer.settings.authentication', [ldapModule])\n .component('internalAuth', InternalAuthAngular)\n .component('saveAuthSettingsButton', saveAuthSettingsButton)\n .component('autoUserProvisionToggle', autoUserProvisionToggle).name;\n","import _ from 'lodash-es';\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nconst DEFAULT_GROUP_FILTER = '(objectClass=group)';\nimport { isLimitedToBE } from '@/portainer/feature-flags/feature-flags.service';\n\nexport default class AdSettingsController {\n /* @ngInject */\n constructor(LDAPService) {\n this.LDAPService = LDAPService;\n\n this.domainSuffix = '';\n this.limitedFeatureId = FeatureId.HIDE_INTERNAL_AUTH;\n this.onTlscaCertChange = this.onTlscaCertChange.bind(this);\n this.searchUsers = this.searchUsers.bind(this);\n this.searchGroups = this.searchGroups.bind(this);\n this.searchAdminGroups = this.searchAdminGroups.bind(this);\n this.parseDomainName = this.parseDomainName.bind(this);\n this.onAccountChange = this.onAccountChange.bind(this);\n }\n\n parseDomainName(account) {\n this.domainName = '';\n\n if (!account || !account.includes('@')) {\n return;\n }\n\n const [, domainName] = account.split('@');\n if (!domainName) {\n return;\n }\n\n const parts = _.compact(domainName.split('.'));\n this.domainSuffix = parts.map((part) => `dc=${part}`).join(',');\n }\n\n onAccountChange(account) {\n this.parseDomainName(account);\n }\n\n searchUsers() {\n return this.LDAPService.users(this.settings);\n }\n\n searchGroups() {\n return this.LDAPService.groups(this.settings);\n }\n\n searchAdminGroups() {\n if (this.settings.AdminAutoPopulate) {\n this.settings.AdminGroups = this.selectedAdminGroups.map((team) => team.name);\n }\n\n const settings = {\n ...this.settings,\n AdminGroupSearchSettings: this.settings.AdminGroupSearchSettings.map((search) => ({ ...search, GroupFilter: search.GroupFilter || DEFAULT_GROUP_FILTER })),\n };\n\n return this.LDAPService.adminGroups(settings);\n }\n\n onTlscaCertChange(file) {\n this.tlscaCert = file;\n }\n\n addLDAPUrl() {\n this.settings.URLs.push('');\n }\n\n removeLDAPUrl(index) {\n this.settings.URLs.splice(index, 1);\n }\n\n isSaveSettingButtonDisabled() {\n return isLimitedToBE(this.limitedFeatureId) || !this.isLdapFormValid();\n }\n\n $onInit() {\n this.tlscaCert = this.settings.TLSCACert;\n this.parseDomainName(this.settings.ReaderDN);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ad-settings.html');\n\nimport controller from './ad-settings.controller';\n\nexport const adSettings = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n selectedAdminGroups: '=',\n tlscaCert: '=',\n state: '=',\n connectivityCheck: '<',\n onSaveSettings: '<',\n saveButtonState: '<',\n isLdapFormValid: '&?',\n },\n};\n","import angular from 'angular';\n\nimport { adSettings } from './ad-settings';\nimport { ldapSettings } from './ldap-settings';\nimport { ldapSettingsCustom } from './ldap-settings-custom';\nimport { ldapSettingsOpenLdap } from './ldap-settings-openldap';\n\nimport { ldapConnectivityCheck } from './ldap-connectivity-check';\nimport { ldapGroupsDatatable } from './ldap-groups-datatable';\nimport { ldapGroupSearch } from './ldap-group-search';\nimport { ldapGroupSearchItem } from './ldap-group-search-item';\nimport { ldapUserSearch } from './ldap-user-search';\nimport { ldapUserSearchItem } from './ldap-user-search-item';\nimport { ldapSettingsDnBuilder } from './ldap-settings-dn-builder';\nimport { ldapSettingsGroupDnBuilder } from './ldap-settings-group-dn-builder';\nimport { ldapCustomAdminGroup } from './ldap-custom-admin-group';\nimport { ldapCustomGroupSearch } from './ldap-custom-group-search';\nimport { ldapSettingsSecurity } from './ldap-settings-security';\nimport { ldapSettingsTestLogin } from './ldap-settings-test-login';\nimport { ldapCustomUserSearch } from './ldap-custom-user-search';\nimport { ldapUsersDatatable } from './ldap-users-datatable';\nimport { LDAPService } from './ldap.service';\nimport { LDAP } from './ldap.rest';\n\nexport default angular\n .module('portainer.settings.authentication.ldap', [])\n .service('LDAPService', LDAPService)\n .service('LDAP', LDAP)\n .component('ldapConnectivityCheck', ldapConnectivityCheck)\n .component('ldapGroupsDatatable', ldapGroupsDatatable)\n .component('ldapSettings', ldapSettings)\n .component('adSettings', adSettings)\n .component('ldapGroupSearch', ldapGroupSearch)\n .component('ldapGroupSearchItem', ldapGroupSearchItem)\n .component('ldapUserSearch', ldapUserSearch)\n .component('ldapUserSearchItem', ldapUserSearchItem)\n .component('ldapSettingsCustom', ldapSettingsCustom)\n .component('ldapSettingsDnBuilder', ldapSettingsDnBuilder)\n .component('ldapSettingsGroupDnBuilder', ldapSettingsGroupDnBuilder)\n .component('ldapCustomGroupSearch', ldapCustomGroupSearch)\n .component('ldapSettingsOpenLdap', ldapSettingsOpenLdap)\n .component('ldapSettingsSecurity', ldapSettingsSecurity)\n .component('ldapSettingsTestLogin', ldapSettingsTestLogin)\n .component('ldapCustomUserSearch', ldapCustomUserSearch)\n .component('ldapCustomAdminGroup', ldapCustomAdminGroup)\n .component('ldapUsersDatatable', ldapUsersDatatable).name;\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-connectivity-check.html');\n\nexport const ldapConnectivityCheck = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n settings: '<',\n state: '<',\n connectivityCheck: '<',\n limitedFeatureId: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-custom-admin-group.html');\n\nimport controller from './ldap-custom-admin-group.controller';\n\nexport const ldapCustomAdminGroup = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n selectedAdminGroups: '=',\n defaultAdminGroupSearchFilter: '<',\n onSearchClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapCustomAdminGroupController {\n /* @ngInject */\n constructor($async, Notifications, LDAPService) {\n Object.assign(this, { $async, Notifications, LDAPService });\n\n this.groups = null;\n this.groupstest = null;\n this.enableAssignAdminGroup = false;\n\n this.onRemoveClick = this.onRemoveClick.bind(this);\n this.onAddClick = this.onAddClick.bind(this);\n this.search = this.search.bind(this);\n }\n\n onAddClick() {\n this.settings.AdminGroupSearchSettings.push({ GroupBaseDN: '', GroupAttribute: '', GroupFilter: '' });\n }\n\n onRemoveClick(index) {\n this.settings.AdminGroupSearchSettings.splice(index, 1);\n }\n\n search() {\n return this.$async(async () => {\n try {\n this.groups = null;\n this.groups = await this.onSearchClick();\n this.enableAssignAdminGroup = this.groups && this.groups.length > 0;\n } catch (error) {\n this.Notifications.error('Failure', error, 'Failed to search groups');\n }\n });\n }\n\n async $onInit() {\n if (this.settings.AdminAutoPopulate && this.settings.AdminGroups && this.settings.AdminGroups.length > 0) {\n const settings = {\n ...this.settings,\n AdminGroupSearchSettings: this.settings.AdminGroupSearchSettings.map((search) => ({ ...search, GroupFilter: search.GroupFilter || this.defaultAdminGroupSearchFilter })),\n };\n\n this.groups = await this.LDAPService.adminGroups(settings);\n }\n\n if (this.groups && this.groups.length > 0) {\n this.enableAssignAdminGroup = true;\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-custom-group-search.html');\n\nimport controller from './ldap-custom-group-search.controller';\n\nexport const ldapCustomGroupSearch = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n onSearchClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapCustomGroupSearchController {\n /* @ngInject */\n constructor($async, Notifications) {\n Object.assign(this, { $async, Notifications });\n\n this.groups = null;\n this.showTable = false;\n\n this.onRemoveClick = this.onRemoveClick.bind(this);\n this.onAddClick = this.onAddClick.bind(this);\n this.search = this.search.bind(this);\n }\n\n onAddClick() {\n this.settings.push({ GroupBaseDN: '', GroupAttribute: '', GroupFilter: '' });\n }\n\n onRemoveClick(index) {\n this.settings.splice(index, 1);\n }\n\n search() {\n return this.$async(async () => {\n try {\n this.groups = null;\n this.showTable = true;\n this.groups = await this.onSearchClick();\n } catch (error) {\n this.showTable = false;\n this.Notifications.error('Failure', error, 'Failed to search users');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-custom-user-search.html');\n\nimport controller from './ldap-custom-user-search.controller';\n\nexport const ldapCustomUserSearch = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n onSearchClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapCustomUserSearchController {\n /* @ngInject */\n constructor($async, Notifications) {\n Object.assign(this, { $async, Notifications });\n\n this.users = null;\n\n this.onRemoveClick = this.onRemoveClick.bind(this);\n this.onAddClick = this.onAddClick.bind(this);\n this.search = this.search.bind(this);\n }\n\n onAddClick() {\n this.settings.push({ BaseDN: '', UserNameAttribute: '', Filter: '' });\n }\n\n onRemoveClick(index) {\n this.settings.splice(index, 1);\n }\n\n search() {\n return this.$async(async () => {\n try {\n this.users = null;\n this.showTable = true;\n this.users = await this.onSearchClick();\n } catch (error) {\n this.showTable = false;\n this.Notifications.error('Failure', error, 'Failed to search users');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-group-search-item.html');\n\nimport controller from './ldap-group-search-item.controller';\n\nexport const ldapGroupSearchItem = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n config: '=',\n index: '<',\n domainSuffix: '@',\n baseFilter: '@',\n\n onRemoveClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapSettingsAdGroupSearchItemController {\n /* @ngInject */\n constructor(Notifications) {\n Object.assign(this, { Notifications });\n\n this.groups = [];\n\n this.onChangeBaseDN = this.onChangeBaseDN.bind(this);\n }\n\n onChangeBaseDN(baseDN) {\n this.config.GroupBaseDN = baseDN;\n }\n\n addGroup() {\n this.groups.push({ type: 'ou', value: '' });\n }\n\n removeGroup($index) {\n this.groups.splice($index, 1);\n this.onGroupsChange();\n }\n\n onGroupsChange() {\n const groupsFilter = this.groups.map(({ type, value }) => `(${type}=${value})`).join('');\n this.onFilterChange(groupsFilter ? `(&${this.baseFilter}(|${groupsFilter}))` : `${this.baseFilter}`);\n }\n\n onFilterChange(filter) {\n this.config.GroupFilter = filter;\n }\n\n parseGroupFilter() {\n const match = this.config.GroupFilter.match(/^\\(&\\(objectClass=(\\w+)\\)\\(\\|((\\(\\w+=.+\\))+)\\)\\)$/);\n if (!match) {\n return;\n }\n\n const [, , groupFilter = ''] = match;\n\n this.groups = groupFilter\n .slice(1, -1)\n .split(')(')\n .map((str) => str.split('='))\n .map(([type, value]) => ({ type, value }));\n }\n\n $onInit() {\n this.parseGroupFilter();\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-group-search.html');\n\nimport controller from './ldap-group-search.controller';\n\nexport const ldapGroupSearch = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n domainSuffix: '@',\n baseFilter: '@',\n\n onSearchClick: '<',\n limitedFeatureId: '<',\n },\n};\n","import _ from 'lodash-es';\n\nexport default class LdapGroupSearchController {\n /* @ngInject */\n constructor($async, Notifications) {\n Object.assign(this, { $async, Notifications });\n\n this.groups = null;\n\n this.onRemoveClick = this.onRemoveClick.bind(this);\n this.onAddClick = this.onAddClick.bind(this);\n this.search = this.search.bind(this);\n }\n\n onAddClick() {\n const lastSetting = _.last(this.settings);\n this.settings.push({ GroupBaseDN: this.domainSuffix, GroupAttribute: lastSetting.GroupAttribute, GroupFilter: this.baseFilter });\n }\n\n onRemoveClick(index) {\n this.settings.splice(index, 1);\n }\n\n search() {\n return this.$async(async () => {\n try {\n this.groups = null;\n this.showTable = true;\n this.groups = await this.onSearchClick();\n } catch (error) {\n this.showTable = false;\n this.Notifications.error('Failure', error, 'Failed to search users');\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-groups-datatable.html');\n\nexport const ldapGroupsDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-custom.html');\n\nimport controller from './ldap-settings-custom.controller';\n\nexport const ldapSettingsCustom = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n tlscaCert: '=',\n state: '=',\n selectedAdminGroups: '=',\n onTlscaCertChange: '<',\n connectivityCheck: '<',\n onSearchUsersClick: '<',\n onSearchGroupsClick: '<',\n onSearchAdminGroupsClick: '<',\n onSaveSettings: '<',\n saveButtonState: '<',\n saveButtonDisabled: '<',\n },\n};\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nexport default class LdapSettingsCustomController {\n constructor() {\n this.limitedFeatureId = FeatureId.EXTERNAL_AUTH_LDAP;\n }\n\n addLDAPUrl() {\n this.settings.URLs.push('');\n }\n\n removeLDAPUrl(index) {\n this.settings.URLs.splice(index, 1);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-dn-builder.html');\n\nimport controller from './ldap-settings-dn-builder.controller';\n\nexport const ldapSettingsDnBuilder = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n // ngModel: string (dc=,cn=,)\n ngModel: '<',\n // onChange(string) => void\n onChange: '<',\n // suffix: string (dc=,dc=,)\n suffix: '@',\n label: '@',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapSettingsBaseDnBuilderController {\n /* @ngInject */\n constructor() {\n this.entries = [];\n }\n\n addEntry() {\n this.entries.push({ type: 'ou', value: '' });\n }\n\n removeEntry($index) {\n this.entries.splice($index, 1);\n this.onEntriesChange();\n }\n\n moveUp($index) {\n if ($index <= 0) {\n return;\n }\n arrayMove(this.entries, $index, $index - 1);\n this.onEntriesChange();\n }\n\n moveDown($index) {\n if ($index >= this.entries.length - 1) {\n return;\n }\n arrayMove(this.entries, $index, $index + 1);\n this.onEntriesChange();\n }\n\n onEntriesChange() {\n const dn = this.entries\n .filter(({ value }) => value)\n .map(({ type, value }) => `${type}=${value}`)\n .concat(this.suffix)\n .filter((value) => value)\n .join(',');\n\n this.onChange(dn);\n }\n\n getOUValues(dn, domainSuffix = '') {\n const regex = /(\\w+)=(\\w*),?/;\n let ouValues = [];\n let left = dn;\n let match = left.match(regex);\n while (match && left !== domainSuffix) {\n const [, type, value] = match;\n ouValues.push({ type, value });\n left = left.replace(regex, '');\n match = left.match(/(\\w+)=(\\w+),?/);\n }\n return ouValues;\n }\n\n parseBaseDN() {\n this.entries = this.getOUValues(this.ngModel, this.suffix);\n }\n\n $onChanges({ suffix, ngModel }) {\n if ((!suffix && !ngModel) || (suffix && suffix.isFirstChange())) {\n return;\n }\n this.onEntriesChange();\n }\n\n $onInit() {\n this.parseBaseDN();\n }\n}\n\nfunction arrayMove(array, fromIndex, toIndex) {\n if (!checkValidIndex(array, fromIndex) || !checkValidIndex(array, toIndex)) {\n throw new Error('index is out of bounds');\n }\n const [item] = array.splice(fromIndex, 1);\n\n array.splice(toIndex, 0, item);\n\n function checkValidIndex(array, index) {\n return index >= 0 && index <= array.length;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-group-dn-builder.html');\n\nimport controller from './ldap-settings-group-dn-builder.controller';\n\nexport const ldapSettingsGroupDnBuilder = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n // ngModel: string (dc=,cn=,)\n ngModel: '<',\n // onChange(string) => void\n onChange: '<',\n // suffix: string (dc=,dc=,)\n suffix: '@',\n // index: int >= 0\n index: '<',\n onRemoveClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapSettingsGroupDnBuilderController {\n /* @ngInject */\n constructor() {\n this.groupName = '';\n this.entries = '';\n\n this.onEntriesChange = this.onEntriesChange.bind(this);\n this.onGroupNameChange = this.onGroupNameChange.bind(this);\n this.onGroupChange = this.onGroupChange.bind(this);\n this.removeGroup = this.removeGroup.bind(this);\n }\n\n onEntriesChange(entries) {\n this.onGroupChange(this.groupName, entries);\n }\n\n onGroupNameChange() {\n this.onGroupChange(this.groupName, this.entries);\n }\n\n onGroupChange(groupName, entries) {\n if (!groupName) {\n return;\n }\n const groupNameEntry = `cn=${groupName}`;\n this.onChange(this.index, entries || this.suffix ? `${groupNameEntry},${entries || this.suffix}` : groupNameEntry);\n }\n\n removeGroup() {\n this.onRemoveClick(this.index);\n }\n\n parseEntries(value, suffix) {\n if (value === suffix) {\n this.groupName = '';\n this.entries = suffix;\n return;\n }\n\n const [groupName, entries] = this.ngModel.split(/,(.+)/);\n this.groupName = groupName.replace('cn=', '');\n this.entries = entries || '';\n }\n\n $onChange({ ngModel, suffix }) {\n if ((!suffix || suffix.isFirstChange()) && !ngModel) {\n return;\n }\n this.parseEntries(ngModel.value, suffix.value);\n }\n\n $onInit() {\n this.parseEntries(this.ngModel, this.suffix);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-openldap.html');\n\nimport controller from './ldap-settings-openldap.controller';\n\nexport const ldapSettingsOpenLdap = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n tlscaCert: '=',\n state: '=',\n connectivityCheck: '<',\n\n onTlscaCertChange: '<',\n onSearchUsersClick: '<',\n onSearchGroupsClick: '<',\n onSaveSettings: '<',\n saveButtonState: '<',\n saveButtonDisabled: '<',\n },\n};\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nexport default class LdapSettingsOpenLDAPController {\n /* @ngInject */\n constructor() {\n this.domainSuffix = '';\n this.limitedFeatureId = FeatureId.EXTERNAL_AUTH_LDAP;\n\n this.findDomainSuffix = this.findDomainSuffix.bind(this);\n this.parseDomainSuffix = this.parseDomainSuffix.bind(this);\n this.onAccountChange = this.onAccountChange.bind(this);\n }\n\n findDomainSuffix() {\n const serviceAccount = this.settings.ReaderDN;\n let domainSuffix = this.parseDomainSuffix(serviceAccount);\n if (!domainSuffix && this.settings.SearchSettings.length > 0) {\n const searchSettings = this.settings.SearchSettings[0];\n domainSuffix = this.parseDomainSuffix(searchSettings.BaseDN);\n }\n\n this.domainSuffix = domainSuffix;\n }\n\n parseDomainSuffix(string = '') {\n const index = string.toLowerCase().indexOf('dc=');\n return index !== -1 ? string.substring(index) : '';\n }\n\n onAccountChange(serviceAccount) {\n this.domainSuffix = this.parseDomainSuffix(serviceAccount);\n }\n\n addLDAPUrl() {\n this.settings.URLs.push('');\n }\n\n removeLDAPUrl(index) {\n this.settings.URLs.splice(index, 1);\n }\n\n $onInit() {\n this.findDomainSuffix();\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-security.html');\n\nexport const ldapSettingsSecurity = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n settings: '=',\n tlscaCert: '<',\n onTlscaCertChange: '<',\n uploadInProgress: '<',\n title: '@',\n limitedFeatureId: '<',\n },\n};\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings-test-login.html');\n\nimport controller from './ldap-settings-test-login.controller';\n\nexport const ldapSettingsTestLogin = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n limitedFeatureId: '<',\n showBeIndicatorIfNeeded: '<',\n },\n};\n","const TEST_STATUS = {\n LOADING: 'LOADING',\n SUCCESS: 'SUCCESS',\n FAILURE: 'FAILURE',\n};\n\nexport default class LdapSettingsTestLogin {\n /* @ngInject */\n constructor($async, LDAPService, Notifications) {\n Object.assign(this, { $async, LDAPService, Notifications });\n\n this.TEST_STATUS = TEST_STATUS;\n\n this.state = {\n testStatus: '',\n };\n }\n\n async testLogin(username, password) {\n return this.$async(async () => {\n this.state.testStatus = TEST_STATUS.LOADING;\n try {\n const response = await this.LDAPService.testLogin(this.settings, username, password);\n this.state.testStatus = response.valid ? TEST_STATUS.SUCCESS : TEST_STATUS.FAILURE;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to test login');\n this.state.testStatus = TEST_STATUS.FAILURE;\n }\n });\n }\n}\n","export function buildLdapSettingsModel() {\n return {\n AnonymousMode: true,\n ReaderDN: '',\n URLs: [''],\n ServerType: 0,\n TLSConfig: {\n TLS: false,\n TLSSkipVerify: false,\n },\n StartTLS: false,\n SearchSettings: [\n {\n BaseDN: '',\n Filter: '',\n UserNameAttribute: '',\n },\n ],\n GroupSearchSettings: [\n {\n GroupBaseDN: '',\n GroupFilter: '',\n GroupAttribute: '',\n },\n ],\n AdminGroupSearchSettings: [\n {\n GroupBaseDN: '',\n GroupFilter: '',\n GroupAttribute: '',\n },\n ],\n AutoCreateUsers: true,\n };\n}\n\nexport function buildAdSettingsModel() {\n const settings = buildLdapSettingsModel();\n\n settings.ServerType = 2;\n settings.AnonymousMode = false;\n settings.SearchSettings[0].UserNameAttribute = 'sAMAccountName';\n settings.SearchSettings[0].Filter = '(objectClass=user)';\n settings.GroupSearchSettings[0].GroupAttribute = 'member';\n settings.GroupSearchSettings[0].GroupFilter = '(objectClass=group)';\n\n return settings;\n}\n\nexport function buildOpenLDAPSettingsModel() {\n const settings = buildLdapSettingsModel();\n\n settings.ServerType = 1;\n settings.AnonymousMode = false;\n settings.SearchSettings[0].UserNameAttribute = 'uid';\n settings.SearchSettings[0].Filter = '(objectClass=inetOrgPerson)';\n settings.GroupSearchSettings[0].GroupAttribute = 'member';\n settings.GroupSearchSettings[0].GroupFilter = '(objectClass=groupOfNames)';\n\n return settings;\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-settings.html');\n\nimport controller from './ldap-settings.controller';\n\nexport const ldapSettings = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n tlscaCert: '=',\n selectedAdminGroups: '=',\n state: '<',\n connectivityCheck: '<',\n onSaveSettings: '<',\n saveButtonState: '<',\n isLdapFormValid: '<',\n },\n};\n","import { Edit } from 'react-feather';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport Openldap from '@/assets/ico/vendor/openldap.svg?c';\n\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nconst SERVER_TYPES = {\n CUSTOM: 0,\n OPEN_LDAP: 1,\n AD: 2,\n};\n\nexport const options = [\n {\n id: 'ldap_custom',\n icon: ,\n label: 'Custom',\n value: SERVER_TYPES.CUSTOM,\n },\n {\n id: 'ldap_openldap',\n icon: Openldap,\n label: 'OpenLDAP',\n value: SERVER_TYPES.OPEN_LDAP,\n feature: FeatureId.EXTERNAL_AUTH_LDAP,\n },\n];\n","import { buildLdapSettingsModel, buildOpenLDAPSettingsModel } from '@/portainer/settings/authentication/ldap/ldap-settings.model';\nimport { options } from './ldap-options';\n\nconst SERVER_TYPES = {\n CUSTOM: 0,\n OPEN_LDAP: 1,\n AD: 2,\n};\n\nconst DEFAULT_GROUP_FILTER = '(objectClass=groupOfNames)';\nconst DEFAULT_USER_FILTER = '(objectClass=inetOrgPerson)';\n\nexport default class LdapSettingsController {\n /* @ngInject */\n constructor(LDAPService) {\n Object.assign(this, { LDAPService, SERVER_TYPES });\n\n this.tlscaCert = null;\n this.settingsDrafts = {};\n\n this.boxSelectorOptions = options;\n\n this.onTlscaCertChange = this.onTlscaCertChange.bind(this);\n this.searchUsers = this.searchUsers.bind(this);\n this.searchGroups = this.searchGroups.bind(this);\n this.searchAdminGroups = this.searchAdminGroups.bind(this);\n this.onChangeServerType = this.onChangeServerType.bind(this);\n }\n\n onTlscaCertChange(file) {\n this.tlscaCert = file;\n }\n\n $onInit() {\n this.tlscaCert = this.settings.TLSConfig.TLSCACert;\n }\n\n onChangeServerType(serverType) {\n this.settingsDrafts[this.settings.ServerType] = this.settings;\n\n if (this.settingsDrafts[serverType]) {\n this.settings = this.settingsDrafts[serverType];\n return;\n }\n\n switch (serverType) {\n case SERVER_TYPES.OPEN_LDAP:\n this.settings = buildOpenLDAPSettingsModel();\n break;\n case SERVER_TYPES.CUSTOM:\n this.settings = buildLdapSettingsModel();\n break;\n }\n }\n\n searchUsers() {\n const settings = {\n ...this.settings,\n SearchSettings: this.settings.SearchSettings.map((search) => ({ ...search, Filter: search.Filter || DEFAULT_USER_FILTER })),\n };\n return this.LDAPService.users(settings);\n }\n\n searchGroups() {\n const settings = {\n ...this.settings,\n GroupSearchSettings: this.settings.GroupSearchSettings.map((search) => ({ ...search, GroupFilter: search.GroupFilter || DEFAULT_GROUP_FILTER })),\n };\n return this.LDAPService.groups(settings);\n }\n\n searchAdminGroups() {\n if (this.settings.AdminAutoPopulate) {\n this.settings.AdminGroups = this.selectedAdminGroups.map((team) => team.Name);\n }\n\n const settings = {\n ...this.settings,\n AdminGroupSearchSettings: this.settings.AdminGroupSearchSettings.map((search) => ({ ...search, GroupFilter: search.GroupFilter || DEFAULT_GROUP_FILTER })),\n };\n\n return this.LDAPService.adminGroups(settings);\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-user-search-item.html');\n\nimport controller from './ldap-user-search-item.controller';\n\nexport const ldapUserSearchItem = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n config: '=',\n index: '<',\n showUsernameFormat: '<',\n domainSuffix: '@',\n baseFilter: '@',\n onRemoveClick: '<',\n limitedFeatureId: '<',\n },\n};\n","export default class LdapUserSearchItemController {\n /* @ngInject */\n constructor() {\n this.groups = [];\n\n this.onBaseDNChange = this.onBaseDNChange.bind(this);\n this.onGroupChange = this.onGroupChange.bind(this);\n this.onGroupsChange = this.onGroupsChange.bind(this);\n this.removeGroup = this.removeGroup.bind(this);\n }\n\n onBaseDNChange(baseDN) {\n this.config.BaseDN = baseDN;\n }\n\n onGroupChange(index, group) {\n this.groups[index] = group;\n this.onGroupsChange(this.groups);\n }\n\n onGroupsChange(groups) {\n this.config.Filter = this.generateUserFilter(groups);\n }\n\n removeGroup(index) {\n this.groups.splice(index, 1);\n this.onGroupsChange(this.groups);\n }\n\n addGroup() {\n this.groups.push(this.domainSuffix ? `cn=,${this.domainSuffix}` : 'cn=');\n }\n\n generateUserFilter(groups) {\n const filteredGroups = groups.filter((group) => group !== this.domainSuffix);\n\n if (!filteredGroups.length) {\n return this.baseFilter;\n }\n\n const groupsFilter = filteredGroups.map((group) => `(memberOf=${group})`);\n\n return `(&${this.baseFilter}${groupsFilter.length > 1 ? `(|${groupsFilter.join('')})` : groupsFilter[0]})`;\n }\n\n parseFilter() {\n const filter = this.config.Filter;\n if (filter === this.baseFilter) {\n return;\n }\n\n if (!filter.includes('|')) {\n const index = filter.indexOf('memberOf=');\n if (index > -1) {\n this.groups = [filter.slice(index + 9, -2)];\n }\n return;\n }\n\n const members = filter.slice(filter.indexOf('|') + 2, -3);\n this.groups = members.split(')(').map((member) => member.replace('memberOf=', ''));\n }\n\n $onInit() {\n this.parseFilter();\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-user-search.html');\n\nimport controller from './ldap-user-search.controller';\n\nexport const ldapUserSearch = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n settings: '=',\n domainSuffix: '@',\n showUsernameFormat: '<',\n baseFilter: '@',\n limitedFeatureId: '<',\n\n onSearchClick: '<',\n },\n};\n","import _ from 'lodash';\n\nexport default class LdapUserSearchController {\n /* @ngInject */\n constructor($async, Notifications) {\n Object.assign(this, { $async, Notifications });\n\n this.users = null;\n this.showTable = false;\n\n this.onRemoveClick = this.onRemoveClick.bind(this);\n this.onAddClick = this.onAddClick.bind(this);\n this.search = this.search.bind(this);\n }\n\n onAddClick() {\n const lastSetting = _.last(this.settings);\n this.settings.push({ BaseDN: this.domainSuffix, UserNameAttribute: lastSetting.UserNameAttribute, Filter: this.baseFilter });\n }\n\n onRemoveClick(index) {\n this.settings.splice(index, 1);\n }\n\n search() {\n return this.$async(async () => {\n try {\n this.users = null;\n this.showTable = true;\n const users = await this.onSearchClick();\n this.users = _.compact(users);\n } catch (error) {\n this.Notifications.error('Failure', error, 'Failed to search users');\n this.showTable = false;\n }\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./ldap-users-datatable.html');\n\nexport const ldapUsersDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'GenericDatatableController',\n bindings: {\n titleText: '@',\n titleIcon: '@',\n dataset: '<',\n tableKey: '@',\n orderBy: '@',\n reverseOrder: '<',\n },\n};\n","const API_ENDPOINT_LDAP = 'api/ldap';\n\n/* @ngInject */\nexport function LDAP($resource) {\n return $resource(\n `${API_ENDPOINT_LDAP}/:action`,\n {},\n {\n check: { method: 'POST', params: { action: 'check' } },\n users: { method: 'POST', isArray: true, params: { action: 'users' } },\n groups: { method: 'POST', isArray: true, params: { action: 'groups' } },\n adminGroups: { method: 'POST', isArray: true, params: { action: 'admin-groups' } },\n testLogin: { method: 'POST', params: { action: 'test' } },\n }\n );\n}\n","/* @ngInject */\nexport function LDAPService(LDAP) {\n return { users, groups, adminGroups, check, testLogin };\n\n function users(ldapSettings) {\n return LDAP.users({ ldapSettings }).$promise;\n }\n\n async function groups(ldapSettings) {\n const userGroups = await LDAP.groups({ ldapSettings }).$promise;\n return userGroups.map(({ Name, Groups }) => {\n let name = Name;\n if (Name.includes(',') && Name.includes('=')) {\n const [cnName] = Name.split(',');\n const split = cnName.split('=');\n name = split[1];\n }\n return { Groups, Name: name };\n });\n }\n\n async function adminGroups(ldapSettings) {\n const userGroups = await LDAP.adminGroups({ ldapSettings }).$promise;\n return userGroups.sort((a, b) => (a.toLowerCase() > b.toLowerCase() ? 1 : -1)).map((name) => ({ name, selected: ldapSettings.AdminGroups.includes(name) }));\n }\n\n function check(ldapSettings) {\n return LDAP.check({ ldapSettings }).$promise;\n }\n\n function testLogin(ldapSettings, username, password) {\n return LDAP.testLogin({ ldapSettings, username, password }).$promise;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./save-auth-settings-button.html');\n\nexport const saveAuthSettingsButton = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n bindings: {\n onSaveSettings: '<',\n saveButtonDisabled: '<',\n saveButtonState: '<',\n limitedFeatureId: '<',\n limitedFeatureClass: '<',\n className: '<',\n },\n};\n","import angular from 'angular';\n\nimport { sslCertificate } from './ssl-certificate';\n\nexport default angular.module('portainer.settings.general', []).component('sslCertificateSettings', sslCertificate).name;\n","const autoNgTemplateLoaderTemplate1 = require('./ssl-certificate.html');\n\nimport controller from './ssl-certificate.controller.js';\n\nexport const sslCertificate = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","class SslCertificateController {\n /* @ngInject */\n constructor($async, $scope, $state, SSLService, Notifications) {\n Object.assign(this, { $async, $scope, $state, SSLService, Notifications });\n\n this.cert = null;\n this.originalValues = {\n forceHTTPS: false,\n certFile: null,\n keyFile: null,\n };\n\n this.formValues = {\n certFile: null,\n keyFile: null,\n forceHTTPS: false,\n };\n\n this.state = {\n actionInProgress: false,\n reloadingPage: false,\n };\n\n const pemPattern = '.pem';\n this.certFilePattern = `${pemPattern},.crt,.cer,.cert`;\n this.keyFilePattern = `${pemPattern},.key`;\n\n this.save = this.save.bind(this);\n this.onChangeForceHTTPS = this.onChangeForceHTTPS.bind(this);\n }\n\n isFormChanged() {\n return Object.entries(this.originalValues).some(([key, value]) => value != this.formValues[key]);\n }\n\n onChangeForceHTTPS(checked) {\n return this.$scope.$evalAsync(() => {\n this.formValues.forceHTTPS = checked;\n });\n }\n\n async save() {\n return this.$async(async () => {\n this.state.actionInProgress = true;\n try {\n const cert = this.formValues.certFile ? await this.formValues.certFile.text() : null;\n const key = this.formValues.keyFile ? await this.formValues.keyFile.text() : null;\n const httpEnabled = !this.formValues.forceHTTPS;\n await this.SSLService.upload(httpEnabled, cert, key);\n\n await new Promise((resolve) => setTimeout(resolve, 2000));\n location.reload();\n this.state.reloadingPage = true;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed applying changes');\n }\n this.state.actionInProgress = false;\n });\n }\n\n wasHTTPsChanged() {\n return this.originalValues.forceHTTPS !== this.formValues.forceHTTPS;\n }\n\n async $onInit() {\n return this.$async(async () => {\n try {\n const certInfo = await this.SSLService.get();\n\n this.formValues.forceHTTPS = !certInfo.httpEnabled;\n this.originalValues.forceHTTPS = this.formValues.forceHTTPS;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading certificate info');\n }\n });\n }\n}\n\nexport default SslCertificateController;\n","import { useRouter } from '@uirouter/react';\n\nimport { confirmDeletionAsync } from '@/portainer/services/modal.service/confirm';\n\nimport { Button } from '@@/buttons';\nimport { Icon } from '@@/Icon';\n\nimport { Credential } from '../types';\nimport { useDeleteCredentialMutation } from '../cloudSettings.service';\n\ninterface Props {\n selectedItems: Credential[];\n}\n\nexport function CredentialsDatatableActions({ selectedItems }: Props) {\n const router = useRouter();\n const deleteCredentialMutation = useDeleteCredentialMutation();\n\n return (\n <>\n onDeleteClick(selectedItems)}\n data-cy=\"credentials-deleteButton\"\n >\n \n Remove\n \n\n \n router.stateService.go('portainer.settings.cloud.addCredential')\n }\n data-cy=\"credentials-addButton\"\n >\n \n Add credentials\n \n \n );\n\n async function onDeleteClick(selectedItems: Credential[]) {\n const confirmed = await confirmDeletionAsync(\n `Are you sure you want to remove the selected credentials?`\n );\n\n if (!confirmed) {\n return;\n }\n\n selectedItems.forEach((item) => {\n deleteCredentialMutation.mutate(item);\n });\n\n router.stateService.reload();\n }\n}\n","import { CellProps, Column } from 'react-table';\n\nimport { Link } from '@@/Link';\n\nimport { Credential } from '../../types';\n\nexport const name: Column = {\n Header: 'Name',\n accessor: (row) => row.name,\n id: 'name',\n Cell: NameCell,\n disableFilters: true,\n Filter: () => null,\n canHide: false,\n sortType: 'string',\n};\n\nexport function NameCell({ value: name, row }: CellProps) {\n return (\n \n {name}\n \n );\n}\n","import { CellProps, Column } from 'react-table';\n\nimport { Credential, providerTitles } from '../../types';\n\nexport const provider: Column = {\n Header: 'Cloud Provider',\n accessor: (row) => providerTitles[row.provider],\n id: 'provider',\n Cell: ProviderCell,\n disableFilters: true,\n Filter: () => null,\n canHide: false,\n sortType: 'string',\n};\n\nexport function ProviderCell({ value: provider }: CellProps) {\n return provider;\n}\n","import { useEffect } from 'react';\nimport { useRowSelectColumn } from '@lineup-lite/hooks';\nimport {\n useTable,\n useSortBy,\n useFilters,\n useGlobalFilter,\n usePagination,\n} from 'react-table';\n\nimport { useDebounce } from '@/portainer/hooks/useDebounce';\n\nimport {\n TableActions,\n TableContainer,\n TableHeaderRow,\n TableRow,\n TableTitle,\n} from '@@/datatables';\nimport { SearchBar, useSearchBarState } from '@@/datatables/SearchBar';\nimport { multiple } from '@@/datatables/filter-types';\nimport { useTableSettings } from '@@/datatables/useTableSettings';\nimport { Table } from '@@/datatables/Table';\nimport { TableFooter } from '@@/datatables/TableFooter';\nimport { SelectedRowsCount } from '@@/datatables/SelectedRowsCount';\nimport { PaginationControls } from '@@/PaginationControls';\nimport { Checkbox } from '@@/form-components/Checkbox';\nimport { useRowSelect } from '@@/datatables/useRowSelect';\n\nimport { Credential, CredentialTableSettings } from '../types';\n\nimport { CredentialsDatatableActions } from './CredentialsDatatableActions';\nimport { useColumns } from './columns';\n\ninterface Props {\n storageKey: string;\n dataset: Credential[];\n isLoading: boolean;\n}\n\nexport function CredentialsDatatable({\n storageKey,\n dataset,\n isLoading,\n}: Props) {\n const { settings, setTableSettings } =\n useTableSettings();\n const columns = useColumns();\n const [searchBarValue, setSearchBarValue] = useSearchBarState(storageKey);\n const {\n getTableProps,\n getTableBodyProps,\n headerGroups,\n page,\n prepareRow,\n selectedFlatRows,\n gotoPage,\n setPageSize,\n setGlobalFilter,\n state: { pageIndex, pageSize },\n } = useTable(\n {\n defaultCanFilter: false,\n columns,\n data: dataset,\n filterTypes: { multiple },\n initialState: {\n pageSize: settings.pageSize || 10,\n sortBy: [settings.sortBy],\n globalFilter: searchBarValue,\n },\n isRowSelectable() {\n return true;\n },\n autoResetSelectedRows: false,\n getRowId(row: Credential) {\n return String(row.id);\n },\n selectCheckboxComponent: Checkbox,\n },\n useFilters,\n useGlobalFilter,\n useSortBy,\n usePagination,\n useRowSelect,\n useRowSelectColumn\n );\n\n const debouncedSearchValue = useDebounce(searchBarValue);\n\n const tableProps = getTableProps();\n const tbodyProps = getTableBodyProps();\n\n useEffect(() => {\n setGlobalFilter(debouncedSearchValue);\n }, [debouncedSearchValue, setGlobalFilter]);\n\n return (\n \n \n setSearchBarValue(value)}\n data-cy=\"credentials-searchBar\"\n placeholder=\"Search for a credential...\"\n />\n \n row.original)}\n />\n \n \n\n \n \n {headerGroups.map((headerGroup) => {\n const { key, className, role, style } =\n headerGroup.getHeaderGroupProps();\n return (\n \n key={key}\n className={className}\n role={role}\n style={style}\n headers={headerGroup.headers}\n onSortChange={handleSortChange}\n />\n );\n })}\n \n \n {isLoading && (\n \n \n Loading...\n \n \n )}\n {page.length === 0 && !isLoading && (\n \n \n No credentials available.\n \n \n )}\n {page.length >= 1 &&\n page.map((row) => {\n prepareRow(row);\n const { key, className, role, style } = row.getRowProps();\n return (\n \n cells={row.cells}\n key={key}\n className={className}\n role={role}\n style={style}\n />\n );\n })}\n \n \n\n \n \n gotoPage(p - 1)}\n totalCount={dataset.length}\n onPageLimitChange={handlePageSizeChange}\n />\n \n \n );\n\n function handleSortChange(id: string, desc: boolean) {\n setTableSettings((settings) => ({\n ...settings,\n sortBy: { id, desc },\n }));\n }\n\n function handlePageSizeChange(pageSize: number) {\n setPageSize(pageSize);\n setTableSettings((settings) => ({ ...settings, pageSize }));\n }\n}\n","import { useMemo } from 'react';\n\nimport { name } from './name';\nimport { provider } from './provider';\n\nexport function useColumns() {\n return useMemo(() => [name, provider], []);\n}\n","import { TableSettingsProvider } from '@@/datatables/useTableSettings';\n\nimport { useCloudCredentials } from '../cloudSettings.service';\n\nimport { CredentialsDatatable } from './CredentialsDatatable';\n\nexport function CredentialsDatatableContainer() {\n const defaultSettings = {\n autoRefreshRate: 0,\n pageSize: 10,\n sortBy: { id: 'state', desc: false },\n };\n const storageKey = 'cloudCredentials';\n\n const cloudCredentialsQuery = useCloudCredentials();\n\n const credentials = cloudCredentialsQuery.data || [];\n\n return (\n \n \n \n );\n}\n","import { react2angular } from '@/react-tools/react2angular';\n\nimport { PageHeader } from '@@/PageHeader';\n\nimport { CredentialsDatatableContainer } from './CloudCredentialsDatatable/CredentialsDatatableContainer';\n\nexport function CloudView() {\n return (\n <>\n \n\n
    \n
    \n \n
    \n
    \n \n );\n}\n\nexport const CloudViewAngular = react2angular(CloudView, []);\n","import angular from 'angular';\n\nimport { CloudViewAngular } from './CloudView';\n\nexport default angular\n .module('portainer.settings.cloud', [])\n .component('settingsCloudView', CloudViewAngular).name;\n","import Civo from '@/assets/ico/vendor/civo.svg?c';\nimport Linode from '@/assets/ico/vendor/linode.svg?c';\nimport Digitalocean from '@/assets/ico/vendor/digitalocean.svg?c';\nimport Googlecloud from '@/assets/ico/vendor/googlecloud.svg?c';\nimport Aws from '@/assets/ico/vendor/aws.svg?c';\nimport Azure from '@/assets/ico/vendor/azure.svg?c';\n\nimport { BoxSelector, BoxSelectorOption } from '@@/BoxSelector';\n\nimport { KaasProvider } from '../types';\n\ntype Props = {\n value: KaasProvider;\n onChange: (provider: KaasProvider) => void;\n};\n\nconst providerOptions: BoxSelectorOption[] = [\n {\n id: KaasProvider.CIVO,\n icon: Civo,\n label: 'Civo',\n description: 'Civo Kubernetes',\n value: KaasProvider.CIVO,\n },\n {\n id: KaasProvider.LINODE,\n icon: Linode,\n label: 'Linode',\n description: 'Linode Kubernetes Engine (LKE)',\n value: KaasProvider.LINODE,\n },\n {\n id: KaasProvider.DIGITAL_OCEAN,\n icon: Digitalocean,\n label: 'DigitalOcean',\n description: 'DigitalOcean Kubernetes (DOKS)',\n value: KaasProvider.DIGITAL_OCEAN,\n },\n {\n id: KaasProvider.GOOGLE_CLOUD,\n icon: Googlecloud,\n label: 'Google Cloud',\n description: 'Google Kubernetes Engine (GKE)',\n value: KaasProvider.GOOGLE_CLOUD,\n },\n {\n id: KaasProvider.AWS,\n icon: Aws,\n label: 'Amazon Web Services (AWS)',\n description: 'Elastic Kubernetes Service (EKS)',\n value: KaasProvider.AWS,\n },\n {\n id: KaasProvider.AZURE,\n icon: Azure,\n label: 'Microsoft Azure',\n description: 'Azure Kubernetes Service (AKS)',\n value: KaasProvider.AZURE,\n },\n];\n\nexport function CloudProviderSelector({ value, onChange }: Props) {\n return (\n \n );\n}\n","import { useState } from 'react';\n\nimport { react2angular } from '@/react-tools/react2angular';\n\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { PageHeader } from '@@/PageHeader';\nimport { Widget, WidgetBody } from '@@/Widget';\n\nimport { KaasProvider } from '../types';\nimport { CloudProviderSelector } from '../components/CloudProviderSelector';\n\nimport { CredentialsForm } from './CredentialsForm';\n\nexport default function CreateCredentialView() {\n const [selectedProvider, setSelectedProvider] = useState(\n KaasProvider.CIVO\n );\n return (\n <>\n \n\n
    \n
    \n \n \n Cloud service provider\n {\n setSelectedProvider(provider);\n }}\n />\n \n \n \n
    \n
    \n \n );\n}\n\nexport const CreateCredentialViewAngular = react2angular(\n CreateCredentialView,\n []\n);\n","import _ from 'lodash';\nimport { useRouter } from '@uirouter/react';\n\nimport {\n AccessKeyFormValues,\n APIFormValues,\n AzureFormValues,\n Credential,\n CreateCredentialPayload,\n GenericFormValues,\n KaasProvider,\n ServiceAccountFormValues,\n UpdateCredentialPayload,\n} from '../types';\nimport { APICredentialsForm } from '../components/APICredentialsForm';\nimport { GCPCredentialsForm } from '../components/GCPCredentialsForm';\nimport { AWSCredentialsForm } from '../components/AWSCredentialsForm';\nimport { AzureCredentialsForm } from '../components/AzureCredentialsForm';\nimport { sensitiveFieldChanged, sensitiveFields, trimObject } from '../utils';\nimport {\n useCloudCredentials,\n useUpdateCredentialMutation,\n} from '../cloudSettings.service';\n\ntype Props = {\n credential: Credential;\n};\n\nenum FormTypes {\n API = 'api',\n SERVICE_ACCOUNT = 'service-account',\n ACCESS_KEY = 'access-key',\n AZURE = 'azure',\n}\n\nexport function EditCredentialForm({ credential }: Props) {\n const { provider } = credential;\n const formType = getFormType(provider);\n\n const router = useRouter();\n const cloudCredentialsQuery = useCloudCredentials();\n const credentialNames =\n cloudCredentialsQuery.data\n ?.filter((c) => c.name !== credential.name && c.provider === provider)\n .map((c: CreateCredentialPayload) => c.name) || [];\n\n const updateCredentialMutation = useUpdateCredentialMutation();\n\n const initialValues = {\n name: credential.name,\n provider: credential.provider,\n credentials: credential.credentials,\n };\n\n return (\n <>\n {formType === FormTypes.API && 'apiKey' in credential.credentials && (\n \n )}\n {formType === FormTypes.SERVICE_ACCOUNT &&\n 'jsonKeyBase64' in credential.credentials && (\n \n )}\n {formType === FormTypes.ACCESS_KEY &&\n 'secretAccessKey' in credential.credentials && (\n \n )}\n {formType === FormTypes.AZURE &&\n 'clientSecret' in credential.credentials && (\n \n )}\n \n );\n\n function onSubmit(values: GenericFormValues) {\n const newCredentials: UpdateCredentialPayload = {\n name: values.name.trim(),\n provider,\n };\n if (sensitiveFieldChanged(values.credentials)) {\n newCredentials.credentials = trimObject(values.credentials);\n } else {\n const visibleCredentials = _.omit(values.credentials, sensitiveFields);\n if (Object.keys(visibleCredentials).length > 0) {\n newCredentials.credentials = trimObject(visibleCredentials);\n }\n }\n updateCredentialMutation.mutate({\n credential: newCredentials,\n id: credential.id,\n });\n router.stateService.go('portainer.settings.cloud');\n }\n}\n\nfunction getFormType(provider: KaasProvider) {\n switch (provider) {\n case KaasProvider.GOOGLE_CLOUD:\n return FormTypes.SERVICE_ACCOUNT;\n\n case KaasProvider.AWS:\n return FormTypes.ACCESS_KEY;\n\n case KaasProvider.AZURE:\n return FormTypes.AZURE;\n\n case KaasProvider.CIVO:\n case KaasProvider.DIGITAL_OCEAN:\n case KaasProvider.LINODE:\n default:\n return FormTypes.API;\n }\n}\n","import angular from 'angular';\n\nimport { CreateCredentialViewAngular } from './CreateCredentialView';\n\nexport default angular\n .module('portainer.settings.cloud.addCredential', [])\n .component('addCloudCredentialView', CreateCredentialViewAngular).name;\n","import { useCurrentStateAndParams } from '@uirouter/react';\n\nimport { react2angular } from '@/react-tools/react2angular';\n\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { PageHeader } from '@@/PageHeader';\nimport { Widget, WidgetBody } from '@@/Widget';\n\nimport { useCloudCredential } from '../cloudSettings.service';\n\nimport { EditCredentialForm } from './EditCredentialForm';\n\nexport default function EditCredentialView() {\n const { params } = useCurrentStateAndParams();\n\n const cloudCredentialQuery = useCloudCredential(params.id);\n const credential = cloudCredentialQuery.data;\n\n return (\n <>\n \n\n
    \n
    \n \n \n Edit Cloud Credentials\n {credential && }\n \n \n
    \n
    \n \n );\n}\n\nexport const EditCredentialViewAngular = react2angular(EditCredentialView, []);\n","import angular from 'angular';\n\nimport { EditCredentialViewAngular } from './EditCredentialView';\n\nexport default angular\n .module('portainer.settings.cloud.credential', [])\n .component('editCloudCredentialView', EditCredentialViewAngular).name;\n","import { useQueryClient } from 'react-query';\nimport { useRouter } from '@uirouter/react';\n\nimport { Profile } from '@/portainer/hostmanagement/fdo/model';\nimport {\n confirmAsync,\n confirmDestructiveAsync,\n} from '@/portainer/services/modal.service/confirm';\nimport * as notifications from '@/portainer/services/notifications';\nimport {\n deleteProfile,\n duplicateProfile,\n} from '@/portainer/hostmanagement/fdo/fdo.service';\n\nimport { Link } from '@@/Link';\nimport { Button } from '@@/buttons';\n\ninterface Props {\n isFDOEnabled: boolean;\n selectedItems: Profile[];\n}\n\nexport function FDOProfilesDatatableActions({\n isFDOEnabled,\n selectedItems,\n}: Props) {\n const router = useRouter();\n const queryClient = useQueryClient();\n\n return (\n
    \n \n \n \n\n onDuplicateProfileClick()}\n icon=\"plus-circle\"\n featherIcon\n >\n Duplicate\n \n\n onDeleteProfileClick()}\n icon=\"trash-2\"\n featherIcon\n >\n Remove\n \n
    \n );\n\n async function onDuplicateProfileClick() {\n const confirmed = await confirmAsync({\n title: 'Are you sure ?',\n message: 'This action will duplicate the selected profile. Continue?',\n buttons: {\n confirm: {\n label: 'Confirm',\n className: 'btn-primary',\n },\n },\n });\n\n if (!confirmed) {\n return;\n }\n\n try {\n const profile = selectedItems[0];\n const newProfile = await duplicateProfile(profile.id);\n notifications.success('Profile successfully duplicated', profile.name);\n router.stateService.go('portainer.endpoints.profile.edit', {\n id: newProfile.id,\n });\n } catch (err) {\n notifications.error(\n 'Failure',\n err as Error,\n 'Unable to duplicate profile'\n );\n }\n }\n\n async function onDeleteProfileClick() {\n const confirmed = await confirmDestructiveAsync({\n title: 'Are you sure ?',\n message: 'This action will delete the selected profile(s). Continue?',\n buttons: {\n confirm: {\n label: 'Remove',\n className: 'btn-danger',\n },\n },\n });\n\n if (!confirmed) {\n return;\n }\n\n await Promise.all(\n selectedItems.map(async (profile) => {\n try {\n await deleteProfile(profile.id);\n\n notifications.success('Profile successfully removed', profile.name);\n } catch (err) {\n notifications.error(\n 'Failure',\n err as Error,\n 'Unable to remove profile'\n );\n }\n })\n );\n\n await queryClient.invalidateQueries('fdo_profiles');\n }\n}\n","import { Column } from 'react-table';\n\nimport { isoDateFromTimestamp } from '@/portainer/filters/filters';\nimport { Profile } from '@/portainer/hostmanagement/fdo/model';\n\nexport const created: Column = {\n Header: 'Created',\n accessor: 'dateCreated',\n id: 'created',\n Cell: ({ value }) => isoDateFromTimestamp(value),\n disableFilters: true,\n canHide: true,\n Filter: () => null,\n};\n","import { CellProps, Column } from 'react-table';\nimport { useSref } from '@uirouter/react';\n\nimport { Profile } from '@/portainer/hostmanagement/fdo/model';\n\nexport const name: Column = {\n Header: 'Name',\n accessor: 'name',\n id: 'name',\n Cell: NameCell,\n disableFilters: true,\n Filter: () => null,\n canHide: true,\n sortType: 'string',\n};\n\nexport function NameCell({\n value: name,\n row: { original: profile },\n}: CellProps) {\n const linkProps = useSref('portainer.endpoints.profile.edit', {\n id: profile.id,\n });\n\n return (\n \n {name}\n \n );\n}\n","import { useTable, usePagination, useSortBy } from 'react-table';\nimport { useRowSelectColumn } from '@lineup-lite/hooks';\nimport { FDOProfilesDatatableActions } from 'Portainer/settings/edge-compute/FDOProfilesDatatable/FDOProfilesDatatableActions';\n\nimport { Profile } from '@/portainer/hostmanagement/fdo/model';\nimport PortainerError from '@/portainer/error';\n\nimport { PaginationControls } from '@@/PaginationControls';\nimport { SelectedRowsCount } from '@@/datatables/SelectedRowsCount';\nimport { TableFooter } from '@@/datatables/TableFooter';\nimport { useTableSettings } from '@@/datatables/useTableSettings';\nimport { useRowSelect } from '@@/datatables/useRowSelect';\nimport {\n Table,\n TableContainer,\n TableHeaderRow,\n TableRow,\n TableTitle,\n} from '@@/datatables';\nimport {\n PaginationTableSettings,\n SortableTableSettings,\n} from '@@/datatables/types-old';\n\nimport { useFDOProfiles } from './useFDOProfiles';\nimport { useColumns } from './columns';\n\nexport interface FDOProfilesTableSettings\n extends SortableTableSettings,\n PaginationTableSettings {}\n\nexport interface FDOProfilesDatatableProps {\n isFDOEnabled: boolean;\n}\n\nexport function FDOProfilesDatatable({\n isFDOEnabled,\n}: FDOProfilesDatatableProps) {\n const { settings, setTableSettings } =\n useTableSettings();\n const columns = useColumns();\n\n const { isLoading, profiles, error } = useFDOProfiles();\n\n const {\n getTableProps,\n getTableBodyProps,\n headerGroups,\n page,\n prepareRow,\n selectedFlatRows,\n gotoPage,\n setPageSize,\n state: { pageIndex, pageSize },\n } = useTable(\n {\n defaultCanFilter: false,\n columns,\n data: profiles,\n initialState: {\n pageSize: settings.pageSize || 10,\n sortBy: [settings.sortBy],\n },\n isRowSelectable() {\n return isFDOEnabled;\n },\n selectColumnWidth: 5,\n },\n useSortBy,\n usePagination,\n useRowSelect,\n useRowSelectColumn\n );\n\n const tableProps = getTableProps();\n const tbodyProps = getTableBodyProps();\n\n return (\n \n \n row.original)}\n />\n \n\n \n \n {headerGroups.map((headerGroup) => {\n const { key, className, role, style } =\n headerGroup.getHeaderGroupProps();\n return (\n \n key={key}\n className={className}\n role={role}\n style={style}\n headers={headerGroup.headers}\n />\n );\n })}\n \n \n {!isLoading && profiles && profiles.length > 0 ? (\n page.map((row) => {\n prepareRow(row);\n const { key, className, role, style } = row.getRowProps();\n\n return (\n \n cells={row.cells}\n key={key}\n className={className}\n role={role}\n style={style}\n />\n );\n })\n ) : (\n \n \n {userMessage(isLoading, error)}\n \n \n )}\n \n \n\n \n \n gotoPage(p - 1)}\n totalCount={profiles ? profiles.length : 0}\n onPageLimitChange={handlePageSizeChange}\n />\n \n \n );\n\n function handlePageSizeChange(pageSize: number) {\n setPageSize(pageSize);\n setTableSettings((settings) => ({ ...settings, pageSize }));\n }\n}\n\nfunction userMessage(isLoading: boolean, error?: PortainerError) {\n if (isLoading) {\n return 'Loading...';\n }\n\n if (error) {\n return error.message;\n }\n\n return 'No profiles found';\n}\n","import { useMemo } from 'react';\n\nimport { created } from './created';\nimport { name } from './name';\n\nexport function useColumns() {\n return useMemo(() => [name, created], []);\n}\n","import { useEffect, useMemo } from 'react';\nimport { useQuery } from 'react-query';\n\nimport PortainerError from '@/portainer/error';\nimport * as notifications from '@/portainer/services/notifications';\nimport { getProfiles } from '@/portainer/hostmanagement/fdo/fdo.service';\n\nexport function useFDOProfiles() {\n const { isLoading, data, isError, error } = useQuery('fdo_profiles', () =>\n getProfiles()\n );\n\n useEffect(() => {\n if (isError) {\n notifications.error(\n 'Failure',\n error as Error,\n 'Failed retrieving FDO profiles'\n );\n }\n }, [isError, error]);\n\n const profiles = useMemo(() => data || [], [data]);\n\n return {\n isLoading,\n profiles,\n error: isError ? (error as PortainerError) : undefined,\n };\n}\n","import { TableSettingsProvider } from '@@/datatables/useTableSettings';\n\nimport {\n FDOProfilesDatatable,\n FDOProfilesDatatableProps,\n} from './FDOProfilesDatatable';\n\nexport function FDOProfilesDatatableContainer({\n ...props\n}: FDOProfilesDatatableProps) {\n const defaultSettings = {\n pageSize: 10,\n sortBy: { id: 'name', desc: false },\n };\n\n return (\n \n {/* eslint-disable-next-line react/jsx-props-no-spreading */}\n \n \n );\n}\n","import { react2angular } from '@/react-tools/react2angular';\n\nimport { SettingsFDO } from './SettingsFDO';\n\nconst SettingsFDOAngular = react2angular(SettingsFDO, ['settings', 'onSubmit']);\nexport { SettingsFDO, SettingsFDOAngular };\n","import { useEffect, useState } from 'react';\nimport { Formik, Field, Form } from 'formik';\n\nimport { FDOConfiguration } from '@/portainer/hostmanagement/fdo/model';\nimport { FDOProfilesDatatableContainer } from '@/portainer/settings/edge-compute/FDOProfilesDatatable/FDOProfilesDatatableContainer';\n\nimport { Switch } from '@@/form-components/SwitchField/Switch';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { TextTip } from '@@/Tip/TextTip';\nimport { Input } from '@@/form-components/Input';\n\nimport styles from './SettingsFDO.module.css';\nimport { validationSchema } from './SettingsFDO.validation';\n\nexport interface Settings {\n fdoConfiguration: FDOConfiguration;\n EnableEdgeComputeFeatures: boolean;\n}\n\ninterface Props {\n settings: Settings;\n onSubmit(values: FDOConfiguration): void;\n}\n\nexport function SettingsFDO({ settings, onSubmit }: Props) {\n const fdoConfiguration = settings ? settings.fdoConfiguration : null;\n const initialFDOEnabled = fdoConfiguration ? fdoConfiguration.enabled : false;\n\n const [isFDOEnabled, setIsFDOEnabled] = useState(initialFDOEnabled);\n useEffect(() => {\n setIsFDOEnabled(settings?.fdoConfiguration?.enabled);\n }, [settings]);\n\n const initialValues = {\n enabled: initialFDOEnabled,\n ownerURL: fdoConfiguration ? fdoConfiguration.ownerURL : '',\n ownerUsername: fdoConfiguration ? fdoConfiguration.ownerUsername : '',\n ownerPassword: fdoConfiguration ? fdoConfiguration.ownerPassword : '',\n };\n\n const edgeComputeFeaturesEnabled = settings\n ? settings.EnableEdgeComputeFeatures\n : false;\n\n return (\n
    \n \n \n \n validationSchema()}\n validateOnChange\n validateOnMount\n >\n {({\n values,\n errors,\n handleSubmit,\n setFieldValue,\n isSubmitting,\n isValid,\n dirty,\n }) => (\n
    \n \n onChangedEnabled(e, setFieldValue)}\n />\n \n\n \n When enabled, this will allow Portainer to interact with FDO\n Services.\n \n\n {edgeComputeFeaturesEnabled && values.enabled && (\n <>\n
    \n\n \n \n \n\n \n \n \n\n \n \n \n \n )}\n\n
    \n
    \n \n Save settings\n \n
    \n
    \n \n )}\n \n\n {edgeComputeFeaturesEnabled && isFDOEnabled && (\n
    \n Device Profiles\n \n Add, Edit and Manage the list of device profiles available\n during FDO device setup\n \n \n
    \n )}\n
    \n
    \n
    \n );\n\n async function onChangedEnabled(\n e: boolean,\n setFieldValue: (\n field: string,\n value: unknown,\n shouldValidate?: boolean\n ) => void\n ) {\n setIsFDOEnabled(e);\n setFieldValue('enabled', e);\n }\n}\n","import { object, string } from 'yup';\n\nexport function validationSchema() {\n return object().shape({\n ownerURL: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n ownerUsername: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n ownerPassword: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n });\n}\n","// extracted by mini-css-extract-plugin\nexport default {\"fdoTable\":\"app-portainer-settings-edge-compute-SettingsFDO-SettingsFDO-module__fdo-table\"};","import { react2angular } from '@/react-tools/react2angular';\n\nimport { SettingsOpenAMT } from './SettingsOpenAMT';\n\nconst SettingsOpenAMTAngular = react2angular(SettingsOpenAMT, [\n 'settings',\n 'onSubmit',\n]);\nexport { SettingsOpenAMT, SettingsOpenAMTAngular };\n","import { useState } from 'react';\nimport { Formik, Field, Form } from 'formik';\n\nimport { OpenAMTConfiguration } from '@/portainer/hostmanagement/open-amt/model';\n\nimport { Switch } from '@@/form-components/SwitchField/Switch';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { TextTip } from '@@/Tip/TextTip';\nimport { Input } from '@@/form-components/Input';\nimport { FileUploadField } from '@@/form-components/FileUpload';\n\nimport { validationSchema } from './SettingsOpenAMT.validation';\n\nexport interface Settings {\n openAMTConfiguration: OpenAMTConfiguration;\n EnableEdgeComputeFeatures: boolean;\n}\n\ninterface Props {\n settings: Settings;\n onSubmit(values: OpenAMTConfiguration): void;\n}\n\nexport function SettingsOpenAMT({ settings, onSubmit }: Props) {\n const [certFile, setCertFile] = useState();\n async function handleFileUpload(\n file: File,\n setFieldValue: (\n field: string,\n value: unknown,\n shouldValidate?: boolean\n ) => void\n ) {\n if (file) {\n setCertFile(file);\n const fileContent = await readFileContent(file);\n setFieldValue('certFileContent', fileContent);\n setFieldValue('certFileName', file.name);\n }\n }\n\n function readFileContent(file: File) {\n return new Promise((resolve, reject) => {\n const fileReader = new FileReader();\n fileReader.onload = (e) => {\n if (e.target == null || e.target.result == null) {\n resolve('');\n return;\n }\n const base64 = e.target.result.toString();\n // remove prefix of \"data:application/x-pkcs12;base64,\" returned by \"readAsDataURL()\"\n const index = base64.indexOf('base64,');\n const cert = base64.substring(index + 7, base64.length);\n resolve(cert);\n };\n fileReader.onerror = () => {\n reject(new Error('error reading provisioning certificate file'));\n };\n fileReader.readAsDataURL(file);\n });\n }\n\n const openAMTConfiguration = settings ? settings.openAMTConfiguration : null;\n const initialValues = {\n enabled: openAMTConfiguration ? openAMTConfiguration.enabled : false,\n mpsServer: openAMTConfiguration ? openAMTConfiguration.mpsServer : '',\n mpsUser: openAMTConfiguration ? openAMTConfiguration.mpsUser : '',\n mpsPassword: openAMTConfiguration ? openAMTConfiguration.mpsPassword : '',\n domainName: openAMTConfiguration ? openAMTConfiguration.domainName : '',\n certFileContent: openAMTConfiguration\n ? openAMTConfiguration.certFileContent\n : '',\n certFileName: openAMTConfiguration ? openAMTConfiguration.certFileName : '',\n certFilePassword: openAMTConfiguration\n ? openAMTConfiguration.certFilePassword\n : '',\n };\n\n if (\n initialValues.certFileContent &&\n initialValues.certFileName &&\n !certFile\n ) {\n setCertFile(new File([], initialValues.certFileName));\n }\n\n const edgeComputeFeaturesEnabled = settings\n ? settings.EnableEdgeComputeFeatures\n : false;\n\n return (\n
    \n \n \n \n validationSchema()}\n validateOnChange\n validateOnMount\n >\n {({\n values,\n errors,\n handleSubmit,\n setFieldValue,\n isSubmitting,\n isValid,\n dirty,\n }) => (\n
    \n \n setFieldValue('enabled', e)}\n />\n \n\n \n When enabled, this will allow Portainer to interact with an\n OpenAMT MPS API.\n \n\n {edgeComputeFeaturesEnabled && values.enabled && (\n <>\n
    \n\n \n \n \n\n \n \n \n\n \n \n \n\n
    \n\n \n \n \n\n The certificate must contain the private key.
    On AMT 15 based devices you need to use SHA2.\"\n errors={errors.certFileContent}\n >\n \n handleFileUpload(file, setFieldValue)\n }\n />\n \n\n \n \n \n \n )}\n\n
    \n
    \n \n Save settings\n \n
    \n
    \n \n )}\n \n
    \n
    \n
    \n );\n}\n","import { object, string } from 'yup';\n\nexport function validationSchema() {\n return object().shape({\n mpsServer: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n mpsUser: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n mpsPassword: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n domainName: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n certFileContent: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n certFileName: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n certFilePassword: string().when('enabled', {\n is: true,\n then: string().required('Field is required'),\n }),\n });\n}\n","import { Formik, Form } from 'formik';\n\nimport { EdgeCheckinIntervalField } from '@/edge/components/EdgeCheckInIntervalField';\n\nimport { Switch } from '@@/form-components/SwitchField/Switch';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { validationSchema } from './EdgeComputeSettings.validation';\nimport { FormValues } from './types';\n\ninterface Props {\n settings?: FormValues;\n onSubmit(values: FormValues): void;\n}\n\nexport function EdgeComputeSettings({ settings, onSubmit }: Props) {\n if (!settings) {\n return null;\n }\n\n return (\n
    \n \n \n \n validationSchema()}\n onSubmit={onSubmit}\n validateOnMount\n >\n {({\n values,\n errors,\n handleSubmit,\n setFieldValue,\n isSubmitting,\n isValid,\n dirty,\n }) => (\n \n \n \n setFieldValue('EnableEdgeComputeFeatures', e)\n }\n />\n \n\n \n When enabled, this will enable Portainer to execute Edge\n Device features.\n \n\n \n \n setFieldValue('EnforceEdgeID', e.valueOf())\n }\n />\n \n\n {process.env.PORTAINER_EDITION !== 'BE' && (\n \n setFieldValue('EdgeAgentCheckinInterval', value)\n }\n isDefaultHidden\n label=\"Edge agent default poll frequency\"\n tooltip=\"Interval used by default by each Edge agent to check in with the Portainer instance. Affects Edge environment management and Edge compute features.\"\n />\n )}\n\n
    \n
    \n \n Save settings\n \n
    \n
    \n \n )}\n \n
    \n
    \n
    \n );\n}\n","import { boolean, number, object, SchemaOf } from 'yup';\n\nimport { FormValues } from './types';\n\nexport function validationSchema(): SchemaOf {\n return object().shape({\n EnableEdgeComputeFeatures: boolean().required('This field is required.'),\n EnforceEdgeID: boolean().required('This field is required.'),\n EdgeAgentCheckinInterval: number().default(0),\n });\n}\n","import axios, { parseAxiosError } from '@/portainer/services/axios';\n\ninterface GenerateUrlResponse {\n edgeKey: string;\n}\n\nexport async function generateKey() {\n try {\n const { data } = await axios.post(\n `/endpoints/edge/generate-key`\n );\n return data.edgeKey;\n } catch (err) {\n throw parseAxiosError(err as Error, 'Unable to generate key');\n }\n}\n","import { useField } from 'formik';\n\nimport { confirmAsync } from '@/portainer/services/modal.service/confirm';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Switch } from '@@/form-components/SwitchField/Switch';\n\nexport function EnabledWaitingRoomSwitch() {\n const [inputProps, meta, helpers] = useField('TrustOnFirstConnect');\n\n return (\n \n \n \n );\n\n async function handleChange(trust: boolean) {\n if (!trust) {\n helpers.setValue(false);\n return;\n }\n\n const confirmed = await confirmAsync({\n title: 'Disable Edge Environment Waiting Room',\n message:\n 'By disabling the waiting room feature, all devices requesting association will be automatically associated and could pose a security risk. Are you sure?',\n buttons: {\n cancel: {\n label: 'Cancel',\n className: 'btn-default',\n },\n confirm: {\n label: 'Confirm',\n className: 'btn-danger',\n },\n },\n });\n\n helpers.setValue(!!confirmed);\n }\n}\n","import { Field, Form, Formik } from 'formik';\nimport * as yup from 'yup';\nimport { useCallback, useEffect } from 'react';\n\nimport { baseHref } from '@/portainer/helpers/pathHelper';\nimport { notifySuccess } from '@/portainer/services/notifications';\nimport { useUpdateSettingsMutation } from '@/portainer/settings/queries';\nimport { Settings } from '@/portainer/settings/types';\n\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { FormControl } from '@@/form-components/FormControl';\nimport { FormSectionTitle } from '@@/form-components/FormSectionTitle';\nimport { Input } from '@@/form-components/Input';\n\nimport { EnabledWaitingRoomSwitch } from './EnableWaitingRoomSwitch';\n\ninterface FormValues {\n EdgePortainerUrl: string;\n TrustOnFirstConnect: boolean;\n}\nconst validation = yup.object({\n TrustOnFirstConnect: yup.boolean(),\n EdgePortainerUrl: yup\n .string()\n .test(\n 'url',\n 'URL should be a valid URI and cannot include localhost',\n (value) => {\n if (!value) {\n return false;\n }\n try {\n const url = new URL(value);\n return !!url.hostname && url.hostname !== 'localhost';\n } catch {\n return false;\n }\n }\n )\n .required('URL is required'),\n});\n\ninterface Props {\n settings: Settings;\n}\n\nconst defaultUrl = buildDefaultUrl();\n\nexport function AutoEnvCreationSettingsForm({ settings }: Props) {\n const url = settings.EdgePortainerUrl;\n\n const initialValues = {\n EdgePortainerUrl: url || defaultUrl,\n TrustOnFirstConnect: settings.TrustOnFirstConnect,\n };\n\n const mutation = useUpdateSettingsMutation();\n\n const { mutate: updateSettings } = mutation;\n\n const handleSubmit = useCallback(\n (variables: Partial) => {\n updateSettings(variables, {\n onSuccess() {\n notifySuccess(\n 'Success',\n 'Successfully updated Automatic Environment Creation settings'\n );\n },\n });\n },\n [updateSettings]\n );\n\n useEffect(() => {\n if (!url && validation.isValidSync({ EdgePortainerUrl: defaultUrl })) {\n updateSettings({ EdgePortainerUrl: defaultUrl });\n }\n }, [updateSettings, url]);\n\n return (\n \n initialValues={initialValues}\n onSubmit={handleSubmit}\n validationSchema={validation}\n validateOnMount\n enableReinitialize\n >\n {({ errors, isValid, dirty }) => (\n
    \n Configuration\n\n \n \n \n\n \n\n
    \n
    \n \n Save settings\n \n
    \n
    \n \n )}\n \n );\n}\n\nfunction buildDefaultUrl() {\n const baseHREF = baseHref();\n return window.location.origin + (baseHREF !== '/' ? baseHREF : '');\n}\n","import { useMutation } from 'react-query';\nimport { useEffect } from 'react';\n\nimport { generateKey } from '@/portainer/environments/environment.service/edge';\nimport { useSettings } from '@/portainer/settings/queries';\nimport { EdgeScriptForm } from '@/react/edge/components/EdgeScriptForm';\nimport { commandsTabs } from '@/react/edge/components/EdgeScriptForm/scripts';\n\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\n\nimport { AutoEnvCreationSettingsForm } from './AutoEnvCreationSettingsForm';\n\nconst commands = {\n linux: [\n commandsTabs.k8sLinux,\n commandsTabs.swarmLinux,\n commandsTabs.standaloneLinux,\n commandsTabs.nomadLinux,\n ],\n win: [commandsTabs.swarmWindows, commandsTabs.standaloneWindow],\n};\n\nexport function AutomaticEdgeEnvCreation() {\n const edgeKeyMutation = useGenerateKeyMutation();\n const { mutate: generateKey } = edgeKeyMutation;\n const settingsQuery = useSettings();\n\n const url = settingsQuery.data?.EdgePortainerUrl;\n\n useEffect(() => {\n if (url) {\n generateKey();\n }\n }, [generateKey, url]);\n\n if (!settingsQuery.data) {\n return null;\n }\n\n const edgeKey = edgeKeyMutation.data;\n\n return (\n \n \n \n \n\n {edgeKeyMutation.isLoading ? (\n
    Generating key for {url} ...
    \n ) : (\n edgeKey && (\n \n )\n )}\n
    \n
    \n );\n}\n\n// using mutation because we want this action to run only when required\nfunction useGenerateKeyMutation() {\n return useMutation(generateKey);\n}\n","import { Form, Formik } from 'formik';\nimport { useReducer } from 'react';\n\nimport { EdgeCheckinIntervalField } from '@/edge/components/EdgeCheckInIntervalField';\nimport { EdgeAsyncIntervalsForm } from '@/edge/components/EdgeAsyncIntervalsForm';\nimport { notifySuccess } from '@/portainer/services/notifications';\n\nimport { FormControl } from '@@/form-components/FormControl';\nimport { Switch } from '@@/form-components/SwitchField/Switch';\nimport { Widget, WidgetBody, WidgetTitle } from '@@/Widget';\nimport { FormSection } from '@@/form-components/FormSection';\nimport { LoadingButton } from '@@/buttons/LoadingButton';\nimport { TextTip } from '@@/Tip/TextTip';\n\nimport { useSettings, useUpdateSettingsMutation } from '../../queries';\n\nimport { FormValues } from './types';\n\nconst asyncIntervalFieldSettings = {\n ping: {\n label: 'Edge agent default ping frequency',\n tooltip:\n 'Interval used by default by each Edge agent to ping the Portainer instance. Affects Edge environment management and Edge compute features.',\n },\n snapshot: {\n label: 'Edge agent default snapshot frequency',\n tooltip:\n 'Interval used by default by each Edge agent to snapshot the agent state.',\n },\n command: {\n label: 'Edge agent default command frequency',\n tooltip: 'Interval used by default by each Edge agent to execute commands.',\n },\n};\n\nexport function DeploymentSyncOptions() {\n const settingsQuery = useSettings();\n const settingsMutation = useUpdateSettingsMutation();\n const [formKey, resetForm] = useReducer((state) => state + 1, 0);\n\n if (!settingsQuery.data) {\n return null;\n }\n\n const initialValues = {\n Edge: settingsQuery.data.Edge,\n EdgeAgentCheckinInterval: settingsQuery.data.EdgeAgentCheckinInterval,\n };\n\n return (\n
    \n \n \n \n \n initialValues={initialValues}\n onSubmit={handleSubmit}\n key={formKey}\n >\n {({ errors, setFieldValue, values, isValid, dirty }) => (\n
    \n \n \n setFieldValue('Edge.AsyncMode', e.valueOf())\n }\n />\n \n\n \n Enabling Async disables the tunnel function.\n \n\n \n {!values.Edge.AsyncMode ? (\n \n setFieldValue('EdgeAgentCheckinInterval', value)\n }\n isDefaultHidden\n label=\"Edge agent default poll frequency\"\n tooltip=\"Interval used by default by each Edge agent to check in with the Portainer instance. Affects Edge environment management and Edge compute features.\"\n />\n ) : (\n setFieldValue('Edge', value)}\n isDefaultHidden\n fieldSettings={asyncIntervalFieldSettings}\n />\n )}\n \n\n \n
    \n
    \n \n Save settings\n \n
    \n
    \n
    \n \n )}\n \n
    \n
    \n
    \n );\n\n function handleSubmit(values: FormValues) {\n settingsMutation.mutate(\n {\n Edge: values.Edge,\n EdgeAgentCheckinInterval: values.EdgeAgentCheckinInterval,\n },\n {\n onSuccess() {\n notifySuccess('Success', 'Settings updated successfully');\n resetForm();\n },\n }\n );\n }\n}\n","import { r2a } from '@/react-tools/react2angular';\n\nimport { Settings } from '../types';\n\nimport { EdgeComputeSettings } from './EdgeComputeSettings';\nimport { AutomaticEdgeEnvCreation } from './AutomaticEdgeEnvCreation';\nimport { DeploymentSyncOptions } from './DeploymentSyncOptions/DeploymentSyncOptions';\n\ninterface Props {\n settings: Settings;\n onSubmit(values: Settings): void;\n}\n\nexport function EdgeComputeSettingsView({ settings, onSubmit }: Props) {\n return (\n
    \n \n\n {process.env.PORTAINER_EDITION === 'BE' && (\n <>\n \n\n \n \n )}\n
    \n );\n}\n\nexport const EdgeComputeSettingsViewAngular = r2a(EdgeComputeSettingsView, [\n 'settings',\n 'onSubmit',\n]);\n","import angular from 'angular';\n\nimport authenticationModule from './authentication';\nimport generalModule from './general';\nimport cloudModule from './cloud';\nimport addCredentialModule from './cloud/CreateCredentialsView';\nimport editCredentialModule from './cloud/EditCredentialView';\n\nimport { SettingsFDOAngular } from './edge-compute/SettingsFDO';\nimport { SettingsOpenAMTAngular } from './edge-compute/SettingsOpenAMT';\nimport { EdgeComputeSettingsViewAngular } from './edge-compute/EdgeComputeSettingsView';\n\nexport default angular\n .module('portainer.settings', [authenticationModule, generalModule, cloudModule, addCredentialModule, editCredentialModule])\n .component('settingsEdgeCompute', EdgeComputeSettingsViewAngular)\n .component('settingsFdo', SettingsFDOAngular)\n .component('settingsOpenAmt', SettingsOpenAMTAngular).name;\n","export default class ActivityLogsDatatableController {\n /* @ngInject */\n constructor($controller, $scope, PaginationService) {\n this.PaginationService = PaginationService;\n\n this.tableKey = 'authLogs';\n\n const $onInit = this.$onInit;\n angular.extend(this, $controller('GenericDatatableController', { $scope }));\n\n this.changeSort = this.changeSort.bind(this);\n this.handleChangeLimit = this.handleChangeLimit.bind(this);\n this.$onInit = $onInit.bind(this);\n }\n\n changeSort(key) {\n let desc = false;\n if (key === this.sort.key) {\n desc = !this.sort.desc;\n }\n\n this.onChangeSort({ key, desc });\n }\n\n handleChangeLimit(limit) {\n this.PaginationService.setPaginationLimit(this.tableKey, limit);\n this.onChangeLimit(limit);\n }\n\n $onInit() {\n this.$onInitGeneric();\n\n const limit = this.PaginationService.getPaginationLimit(this.tableKey);\n if (limit) {\n this.onChangeLimit(+limit);\n }\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./activity-logs-datatable.html');\n\nimport './activity-logs-datatable.css';\n\nimport controller from './activity-logs-datatable.controller.js';\n\nexport const activityLogsDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n logs: '<',\n keyword: '<',\n sort: '<',\n limit: '<',\n totalItems: '<',\n currentPage: '<',\n feature: '@',\n\n onChangeContextFilter: '<',\n onChangeKeyword: '<',\n onChangeSort: '<',\n\n onChangeLimit: '<',\n onChangePage: '<',\n },\n};\n","import moment from 'moment';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nexport default class ActivityLogsViewController {\n /* @ngInject */\n constructor($async, $scope, UserActivityService, Notifications) {\n this.$async = $async;\n this.$scope = $scope;\n this.UserActivityService = UserActivityService;\n this.Notifications = Notifications;\n\n this.limitedFeature = FeatureId.ACTIVITY_AUDIT;\n this.state = {\n keyword: '',\n date: {\n from: 0,\n to: 0,\n },\n sort: {\n key: 'Timestamp',\n desc: true,\n },\n page: 1,\n limit: 10,\n totalItems: 0,\n logs: null,\n };\n\n this.today = moment().endOf('day');\n this.minValidDate = moment().subtract(7, 'd').startOf('day');\n\n this.onChangeDate = this.onChangeDate.bind(this);\n this.onChangeKeyword = this.onChangeKeyword.bind(this);\n this.onChangeSort = this.onChangeSort.bind(this);\n this.loadLogs = this.loadLogs.bind(this);\n this.onChangePage = this.onChangePage.bind(this);\n this.onChangeLimit = this.onChangeLimit.bind(this);\n }\n\n onChangePage(page) {\n this.state.page = page;\n this.loadLogs();\n }\n\n onChangeLimit(limit) {\n this.state.page = 1;\n this.state.limit = limit;\n this.loadLogs();\n }\n\n onChangeSort(sort) {\n this.state.page = 1;\n this.state.sort = sort;\n this.loadLogs();\n }\n\n onChangeKeyword(keyword) {\n return this.$scope.$evalAsync(() => {\n this.state.page = 1;\n this.state.keyword = keyword;\n this.loadLogs();\n });\n }\n\n onChangeDate({ startDate, endDate }) {\n this.state.page = 1;\n this.state.date = { to: endDate, from: startDate };\n this.loadLogs();\n }\n\n async export() {\n return this.$async(async () => {\n try {\n await this.UserActivityService.saveLogsAsCSV(this.state.sort, this.state.keyword, this.state.date, this.state.contextFilter);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading user activity logs csv');\n }\n });\n }\n\n async loadLogs() {\n return this.$async(async () => {\n this.state.logs = null;\n const offset = (this.state.page - 1) * this.state.limit;\n try {\n const { logs, totalCount } = await this.UserActivityService.logs(offset, this.state.limit, this.state.sort, this.state.keyword, this.state.date);\n this.state.logs = decorateLogs(logs);\n this.state.totalItems = totalCount;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading user activity logs');\n }\n });\n }\n\n $onInit() {\n return this.$async(async () => {\n this.loadLogs();\n });\n }\n}\n\nfunction decorateLogs(logs) {\n if (!logs || !logs.length) {\n return [];\n }\n\n return logs.map((log) => ({ ...log, payload: parseJSON(atob(log.payload)) }));\n}\n\nfunction parseJSON(json) {\n try {\n return JSON.parse(json);\n } catch (e) {\n return null;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./activity-logs-view.html');\n\nimport controller from './activity-logs-view.controller.js';\n\nexport const activityLogsView = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","import angular from 'angular';\n\nimport { activityLogsView } from './activity-logs-view';\nimport { activityLogsDatatable } from './activity-logs-datatable';\n\nexport default angular\n .module('portainer.app.user-activity.activity-logs-view', [])\n .component('activityLogsDatatable', activityLogsDatatable)\n .component('activityLogsView', activityLogsView).name;\n","import { authenticationMethodTypesMap, authenticationMethodTypesLabels } from '@/portainer/settings/authentication/auth-method-constants';\nimport { authenticationActivityTypesMap, authenticationActivityTypesLabels } from '@/portainer/settings/authentication/auth-type-constants';\n\nclass ActivityLogsDatatableController {\n /* @ngInject */\n constructor($controller, $scope, PaginationService) {\n this.PaginationService = PaginationService;\n\n this.tableKey = 'authLogs';\n\n this.contextFilterLabels = Object.values(authenticationMethodTypesMap).map((value) => ({ value, label: authenticationMethodTypesLabels[value] }));\n this.typeFilterLabels = Object.values(authenticationActivityTypesMap).map((value) => ({ value, label: authenticationActivityTypesLabels[value] }));\n\n const $onInit = this.$onInit;\n angular.extend(this, $controller('GenericDatatableController', { $scope }));\n this.$onInit = $onInit.bind(this);\n\n this.changeSort = this.changeSort.bind(this);\n this.handleChangeLimit = this.handleChangeLimit.bind(this);\n }\n\n changeSort(key) {\n let desc = false;\n if (key === this.sort.key) {\n desc = !this.sort.desc;\n }\n\n this.onChangeSort({ key, desc });\n }\n\n contextType(context) {\n if (!(context in authenticationMethodTypesLabels)) {\n return '';\n }\n return authenticationMethodTypesLabels[context];\n }\n\n activityType(type) {\n if (!(type in authenticationActivityTypesLabels)) {\n return '';\n }\n return authenticationActivityTypesLabels[type];\n }\n\n isAuthSuccess(type) {\n return type === authenticationActivityTypesMap.AuthSuccess;\n }\n\n isAuthFailure(type) {\n return type === authenticationActivityTypesMap.AuthFailure;\n }\n\n handleChangeLimit(limit) {\n this.PaginationService.setPaginationLimit(this.tableKey, limit);\n this.onChangeLimit(limit);\n }\n\n $onInit() {\n this.$onInitGeneric();\n\n const limit = this.PaginationService.getPaginationLimit(this.tableKey);\n if (limit) {\n this.handleChangeLimit(+limit);\n }\n }\n}\n\nexport default ActivityLogsDatatableController;\n","const autoNgTemplateLoaderTemplate1 = require('./auth-logs-datatable.html');\n\nimport controller from './auth-logs-datatable.controller';\n\nexport const authLogsDatatable = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n logs: '<',\n keyword: '<',\n sort: '<',\n limit: '<',\n totalItems: '<',\n currentPage: '<',\n contextFilter: '<',\n typeFilter: '<',\n feature: '@',\n\n onChangeContextFilter: '<',\n onChangeTypeFilter: '<',\n onChangeKeyword: '<',\n onChangeSort: '<',\n\n onChangeLimit: '<',\n onChangePage: '<',\n },\n};\n","import moment from 'moment';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\n\nexport default class AuthLogsViewController {\n /* @ngInject */\n constructor($async, UserActivityService, Notifications) {\n this.$async = $async;\n this.UserActivityService = UserActivityService;\n this.Notifications = Notifications;\n\n this.limitedFeature = FeatureId.ACTIVITY_AUDIT;\n this.state = {\n keyword: '',\n date: {\n from: 0,\n to: 0,\n },\n sort: {\n key: 'Timestamp',\n desc: true,\n },\n contextFilter: [1, 2, 3],\n typeFilter: [1, 2, 3],\n page: 1,\n limit: 10,\n totalItems: 0,\n logs: null,\n };\n\n this.today = moment().endOf('day');\n this.minValidDate = moment().subtract(7, 'd').startOf('day');\n\n this.onChangeDate = this.onChangeDate.bind(this);\n this.onChangeKeyword = this.onChangeKeyword.bind(this);\n this.onChangeSort = this.onChangeSort.bind(this);\n this.onChangeContextFilter = this.onChangeContextFilter.bind(this);\n this.onChangeTypeFilter = this.onChangeTypeFilter.bind(this);\n this.loadLogs = this.loadLogs.bind(this);\n this.onChangePage = this.onChangePage.bind(this);\n this.onChangeLimit = this.onChangeLimit.bind(this);\n }\n\n onChangePage(page) {\n this.state.page = page;\n this.loadLogs();\n }\n\n onChangeLimit(limit) {\n this.state.page = 1;\n this.state.limit = limit;\n this.loadLogs();\n }\n\n onChangeSort(sort) {\n this.state.page = 1;\n this.state.sort = sort;\n this.loadLogs();\n }\n\n onChangeContextFilter(filterKey, filterState) {\n this.state.contextFilter = filterState;\n this.loadLogs();\n }\n\n onChangeTypeFilter(filterKey, filterState) {\n this.state.typeFilter = filterState;\n this.loadLogs();\n }\n\n onChangeKeyword(keyword) {\n return this.$scope.$evalAsync(() => {\n this.state.page = 1;\n this.state.keyword = keyword;\n this.loadLogs();\n });\n }\n\n onChangeDate({ startDate, endDate }) {\n this.state.page = 1;\n this.state.date = { to: endDate, from: startDate };\n this.loadLogs();\n }\n\n async export() {\n return this.$async(async () => {\n try {\n await this.UserActivityService.saveAuthLogsAsCSV(this.state.sort, this.state.keyword, this.state.date, this.state.contextFilter);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading auth activity logs csv');\n }\n });\n }\n\n async loadLogs() {\n return this.$async(async () => {\n this.state.logs = null;\n const offset = (this.state.page - 1) * this.state.limit;\n try {\n const { logs, totalCount } = await this.UserActivityService.authLogs(\n offset,\n this.state.limit,\n this.state.sort,\n this.state.keyword,\n this.state.date,\n this.state.contextFilter,\n this.state.typeFilter\n );\n this.state.logs = decorateLogs(logs);\n this.state.totalItems = totalCount;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed loading auth activity logs');\n }\n });\n }\n\n $onInit() {\n return this.$async(async () => {\n this.loadLogs();\n });\n }\n}\n\nfunction decorateLogs(logs) {\n return logs;\n}\n","const autoNgTemplateLoaderTemplate1 = require('./auth-logs-view.html');\n\nimport controller from './auth-logs-view.controller.js';\n\nexport const authLogsView = {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n};\n","import angular from 'angular';\n\nimport { authLogsView } from './auth-logs-view';\nimport { authLogsDatatable } from './auth-logs-datatable';\n\nexport default angular.module('portainer.app.user-activity.auth-logs-view', []).component('authLogsView', authLogsView).component('authLogsDatatable', authLogsDatatable).name;\n","import angular from 'angular';\n\nimport authLogsViewModule from './auth-logs-view';\nimport activityLogsViewModule from './activity-logs-view';\n\nimport { UserActivity } from './user-activity.rest';\nimport { UserActivityService } from './user-activity.service';\n\nexport default angular\n .module('portainer.app.user-activity', [authLogsViewModule, activityLogsViewModule])\n .service('UserActivity', UserActivity)\n .service('UserActivityService', UserActivityService)\n\n .config(config).name;\n\n/* @ngInject */\nfunction config($stateRegistryProvider) {\n $stateRegistryProvider.register({\n name: 'portainer.authLogs',\n url: '/auth-logs',\n views: {\n 'content@': {\n component: 'authLogsView',\n },\n },\n });\n\n $stateRegistryProvider.register({\n name: 'portainer.activityLogs',\n url: '/activity-logs',\n views: {\n 'content@': {\n component: 'activityLogsView',\n },\n },\n });\n}\n","import { baseHref } from '@/portainer/helpers/pathHelper';\n\n/* @ngInject */\nexport function UserActivity($resource, $http) {\n const BASE_URL = baseHref() + 'api/useractivity';\n\n const resource = $resource(\n `${BASE_URL}/:action`,\n {},\n {\n authLogs: { method: 'GET', params: { action: 'authlogs' } },\n logs: { method: 'GET', params: { action: 'logs' } },\n }\n );\n\n return { authLogsAsCSV, logsAsCSV, ...resource };\n\n async function authLogsAsCSV(params) {\n return $http({\n method: 'GET',\n url: `${BASE_URL}/authlogs.csv`,\n params,\n responseType: 'blob',\n headers: {\n 'Content-type': 'text/csv',\n },\n });\n }\n\n async function logsAsCSV(params) {\n return $http({\n method: 'GET',\n url: `${BASE_URL}/logs.csv`,\n params,\n responseType: 'blob',\n headers: {\n 'Content-type': 'text/csv',\n },\n });\n }\n}\n","/* @ngInject */\nexport function UserActivityService(FileSaver, UserActivity) {\n return { authLogs, saveAuthLogsAsCSV, logs, saveLogsAsCSV };\n\n function authLogs(offset, limit, sort, keyword, date, contexts, types) {\n return UserActivity.authLogs({ offset, limit, keyword, before: date.to, after: date.from, sortBy: sort.key, sortDesc: sort.desc, contexts, types }).$promise;\n }\n\n async function saveAuthLogsAsCSV(sort, keyword, date, contexts, types) {\n const response = await UserActivity.authLogsAsCSV({ keyword, before: date.to, after: date.from, sortBy: sort.key, sortDesc: sort.desc, limit: 2000, contexts, types });\n return FileSaver.saveAs(response.data, 'logs.csv');\n }\n\n function logs(offset, limit, sort, keyword, date) {\n return UserActivity.logs({ offset, limit, keyword, before: date.to, after: date.from, sortBy: sort.key, sortDesc: sort.desc }).$promise;\n }\n\n async function saveLogsAsCSV(sort, keyword, date) {\n const response = await UserActivity.logsAsCSV({ keyword, before: date.to, after: date.from, sortBy: sort.key, sortDesc: sort.desc, limit: 2000 });\n return FileSaver.saveAs(response.data, 'logs.csv');\n }\n}\n","angular.module('portainer.app').controller('AccountController', [\n '$scope',\n '$state',\n 'Authentication',\n 'UserService',\n 'Notifications',\n 'SettingsService',\n 'ModalService',\n 'StateManager',\n function ($scope, $state, Authentication, UserService, Notifications, SettingsService, ModalService, StateManager) {\n $scope.formValues = {\n currentPassword: '',\n newPassword: '',\n confirmPassword: '',\n };\n\n $scope.updatePassword = async function () {\n const confirmed = await ModalService.confirmChangePassword();\n if (confirmed) {\n try {\n await UserService.updateUserPassword($scope.userID, $scope.formValues.currentPassword, $scope.formValues.newPassword);\n Notifications.success('Success', 'Password successfully updated');\n StateManager.resetPasswordChangeSkips($scope.userID.toString());\n $scope.forceChangePassword = false;\n $state.go('portainer.logout');\n } catch (err) {\n Notifications.error('Failure', err, err.msg);\n }\n }\n };\n\n $scope.skipPasswordChange = async function () {\n try {\n if ($scope.userCanSkip()) {\n StateManager.setPasswordChangeSkipped($scope.userID.toString());\n $scope.forceChangePassword = false;\n $state.go('portainer.home');\n }\n } catch (err) {\n Notifications.error('Failure', err, err.msg);\n }\n };\n\n $scope.userCanSkip = function () {\n return $scope.timesPasswordChangeSkipped < 2;\n };\n\n this.uiCanExit = (newTransition) => {\n if (newTransition) {\n if ($scope.userRole === 1 && newTransition.to().name === 'portainer.settings.authentication') {\n return true;\n }\n if (newTransition.to().name === 'portainer.logout') {\n return true;\n }\n }\n if ($scope.forceChangePassword) {\n ModalService.confirmForceChangePassword();\n }\n return !$scope.forceChangePassword;\n };\n\n $scope.uiCanExit = () => {\n return this.uiCanExit();\n };\n\n $scope.removeAction = (selectedTokens) => {\n const msg = 'Do you want to remove the selected access token(s)? Any script or application using these tokens will no longer be able to invoke the Portainer API.';\n\n ModalService.confirmDeletion(msg, (confirmed) => {\n if (!confirmed) {\n return;\n }\n let actionCount = selectedTokens.length;\n selectedTokens.forEach((token) => {\n UserService.deleteAccessToken($scope.userID, token.id)\n .then(() => {\n Notifications.success('Success', 'Token successfully removed');\n var index = $scope.tokens.indexOf(token);\n $scope.tokens.splice(index, 1);\n })\n .catch((err) => {\n Notifications.error('Failure', err, 'Unable to remove token');\n })\n .finally(() => {\n --actionCount;\n if (actionCount === 0) {\n $state.reload();\n }\n });\n });\n });\n };\n\n function initView() {\n const state = StateManager.getState();\n const userDetails = Authentication.getUserDetails();\n $scope.userID = userDetails.ID;\n $scope.userRole = Authentication.getUserDetails().role;\n $scope.forceChangePassword = userDetails.forceChangePassword;\n $scope.isInitialAdmin = userDetails.ID === 1;\n\n if (state.application.demoEnvironment.enabled) {\n $scope.isDemoUser = state.application.demoEnvironment.users.includes($scope.userID);\n }\n\n SettingsService.publicSettings()\n .then(function success(data) {\n $scope.AuthenticationMethod = data.AuthenticationMethod;\n\n if (state.UI.requiredPasswordLength && state.UI.requiredPasswordLength !== data.RequiredPasswordLength) {\n StateManager.clearPasswordChangeSkips();\n }\n\n $scope.timesPasswordChangeSkipped =\n state.UI.timesPasswordChangeSkipped && state.UI.timesPasswordChangeSkipped[$scope.userID.toString()]\n ? state.UI.timesPasswordChangeSkipped[$scope.userID.toString()]\n : 0;\n\n $scope.requiredPasswordLength = data.RequiredPasswordLength;\n StateManager.setRequiredPasswordLength(data.RequiredPasswordLength);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n });\n UserService.getAccessTokens($scope.userID)\n .then(function success(data) {\n $scope.tokens = data;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve user tokens');\n });\n }\n\n initView();\n },\n]);\n","export default class CreateUserAccessTokenController {\n /* @ngInject */\n constructor($async, $analytics, Authentication, UserService, Notifications) {\n this.$async = $async;\n this.$analytics = $analytics;\n this.Authentication = Authentication;\n this.UserService = UserService;\n this.Notifications = Notifications;\n\n this.onSubmit = this.onSubmit.bind(this);\n this.onError = this.onError.bind(this);\n }\n\n async onSubmit(description) {\n const accessToken = await this.UserService.createAccessToken(this.state.userId, description);\n // Dispatch analytics event upon success accessToken generation\n this.$analytics.eventTrack('portainer-account-access-token-create', { category: 'portainer' });\n return accessToken;\n }\n\n onError(heading, error, message) {\n this.Notifications.error(heading, error, message);\n }\n\n $onInit() {\n return this.$async(async () => {\n const userId = this.Authentication.getUserDetails().ID;\n this.state = {\n userId,\n };\n });\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./create-user-access-token.html');\n\nimport angular from 'angular';\nimport controller from './create-user-access-token.controller';\n\nangular.module('portainer.app').component('createUserAccessToken', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","import angular from 'angular';\nimport uuidv4 from 'uuid/v4';\nimport { getEnvironments } from '@/portainer/environments/environment.service';\n\nclass AuthenticationController {\n /* @ngInject */\n constructor(\n $async,\n $analytics,\n $scope,\n $state,\n $stateParams,\n $window,\n Authentication,\n UserService,\n StateManager,\n Notifications,\n SettingsService,\n URLHelper,\n LocalStorage,\n StatusService,\n LicenseService\n ) {\n this.$async = $async;\n this.$analytics = $analytics;\n this.$scope = $scope;\n this.$state = $state;\n this.$stateParams = $stateParams;\n this.$window = $window;\n this.Authentication = Authentication;\n this.UserService = UserService;\n this.StateManager = StateManager;\n this.Notifications = Notifications;\n this.SettingsService = SettingsService;\n this.URLHelper = URLHelper;\n this.LocalStorage = LocalStorage;\n this.StatusService = StatusService;\n this.LicenseService = LicenseService;\n\n this.logo = this.StateManager.getState().application.logo;\n this.formValues = {\n Username: '',\n Password: '',\n };\n this.state = {\n passwordInputType: 'password',\n showOAuthLogin: false,\n showStandardLogin: false,\n AuthenticationError: '',\n loginInProgress: true,\n OAuthProvider: '',\n };\n\n this.checkForEndpointsAsync = this.checkForEndpointsAsync.bind(this);\n this.checkForLicensesAsync = this.checkForLicensesAsync.bind(this);\n this.postLoginSteps = this.postLoginSteps.bind(this);\n\n this.oAuthLoginAsync = this.oAuthLoginAsync.bind(this);\n this.internalLoginAsync = this.internalLoginAsync.bind(this);\n\n this.authenticateUserAsync = this.authenticateUserAsync.bind(this);\n\n this.manageOauthCodeReturn = this.manageOauthCodeReturn.bind(this);\n this.authEnabledFlowAsync = this.authEnabledFlowAsync.bind(this);\n this.onInit = this.onInit.bind(this);\n }\n\n /**\n * UTILS FUNCTIONS SECTION\n */\n\n toggleShowPassword() {\n this.state.passwordInputType = this.state.passwordInputType === 'text' ? 'password' : 'text';\n }\n\n // set the password input type to password, so that browser autofills don't treat the input as text\n setPasswordInputType(inputType) {\n this.state.passwordInputType = inputType;\n document.getElementById('password').setAttribute('type', inputType);\n }\n\n logout(error) {\n this.Authentication.logout();\n this.state.loginInProgress = false;\n this.generateOAuthLoginURI();\n this.LocalStorage.storeLogoutReason(error);\n this.$window.location.reload();\n }\n\n error(err, message) {\n this.state.AuthenticationError = message;\n if (!err) {\n err = {};\n }\n this.Notifications.error('Failure', err, message);\n this.state.loginInProgress = false;\n }\n\n determineOauthProvider(LoginURI) {\n if (LoginURI.indexOf('login.microsoftonline.com') !== -1) {\n return 'Microsoft';\n } else if (LoginURI.indexOf('accounts.google.com') !== -1) {\n return 'Google';\n } else if (LoginURI.indexOf('github.com') !== -1) {\n return 'Github';\n }\n return 'OAuth';\n }\n\n generateState() {\n const uuid = uuidv4();\n this.LocalStorage.storeLoginStateUUID(uuid);\n return '&state=' + uuid;\n }\n\n generateOAuthLoginURI() {\n this.OAuthLoginURI = this.state.OAuthLoginURI + this.generateState();\n }\n\n hasValidState(state) {\n const savedUUID = this.LocalStorage.getLoginStateUUID();\n return savedUUID && state && savedUUID === state;\n }\n\n /**\n * END UTILS FUNCTIONS SECTION\n */\n\n /**\n * POST LOGIN STEPS SECTION\n */\n\n async checkForEndpointsAsync() {\n try {\n const endpoints = await getEnvironments({ limit: 1 });\n\n if (endpoints.value.length === 0) {\n return 'portainer.wizard';\n }\n } catch (err) {\n this.error(err, 'Unable to retrieve environments');\n }\n return 'portainer.home';\n }\n\n async checkForLicensesAsync() {\n try {\n const info = await this.LicenseService.info();\n\n if (!info.valid) {\n return 'portainer.init.license';\n }\n } catch (err) {\n this.error(err, 'Unable to retrieve licenses info');\n }\n }\n\n async postLoginSteps() {\n await this.StateManager.initialize();\n\n const isAdmin = this.Authentication.isAdmin();\n this.$analytics.setUserRole(isAdmin ? 'admin' : 'standard-user');\n\n let path = 'portainer.home';\n if (isAdmin) {\n this.LicenseService.resetState();\n path = await this.checkForLicensesAsync();\n if (!path) {\n path = await this.checkForEndpointsAsync();\n }\n }\n if (this.Authentication.getUserDetails().forceChangePassword && path !== 'portainer.init.license') {\n path = 'portainer.account';\n }\n\n this.$state.go(path);\n }\n /**\n * END POST LOGIN STEPS SECTION\n */\n\n /**\n * LOGIN METHODS SECTION\n */\n\n async oAuthLoginAsync(code) {\n try {\n await this.Authentication.OAuthLogin(code);\n this.URLHelper.cleanParameters();\n } catch (err) {\n if (err.status === 402) {\n // When the free subscription license is enforced\n this.error(err, err.data.message);\n this.LocalStorage.storeOAuthLoginBlockForNonAdmin(code);\n return;\n }\n this.error(err, 'Unable to login via OAuth');\n }\n }\n\n async internalLoginAsync(username, password) {\n await this.Authentication.login(username, password);\n await this.postLoginSteps();\n }\n\n /**\n * END LOGIN METHODS SECTION\n */\n\n /**\n * AUTHENTICATE USER SECTION\n */\n\n async authenticateUserAsync() {\n try {\n var username = this.formValues.Username;\n var password = this.formValues.Password;\n this.state.loginInProgress = true;\n await this.internalLoginAsync(username, password);\n } catch (err) {\n if (err.status === 402) {\n // When the free subscription license is enforced\n this.error(err, err.data.message);\n return;\n }\n this.error(err, 'Unable to login');\n }\n }\n\n authenticateUser() {\n this.setPasswordInputType('password');\n return this.$async(this.authenticateUserAsync);\n }\n\n /**\n * END AUTHENTICATE USER SECTION\n */\n\n /**\n * ON INIT SECTION\n */\n async manageOauthCodeReturn(code, state) {\n if (this.hasValidState(state)) {\n await this.oAuthLoginAsync(code);\n } else {\n if (this.LocalStorage.getOAuthLoginBlockForNonAdmin(code)) {\n this.error(null, 'Node limit exceeds the 5 node free license, please contact your administrator');\n return;\n }\n this.error(null, 'Invalid OAuth state, try again.');\n }\n }\n\n async authEnabledFlowAsync() {\n try {\n const exists = await this.UserService.administratorExists();\n if (!exists) {\n this.$state.go('portainer.init.admin');\n }\n } catch (err) {\n this.error(err, 'Unable to verify administrator account existence');\n }\n }\n\n toggleStandardLogin() {\n this.state.showStandardLogin = !this.state.showStandardLogin;\n }\n\n async onInit() {\n try {\n const settings = await this.SettingsService.publicSettings();\n this.state.hideInternalAuth = settings.OAuthHideInternalAuth;\n this.state.showOAuthLogin = settings.AuthenticationMethod === 3;\n this.state.showStandardLogin = !this.state.showOAuthLogin;\n this.state.OAuthLoginURI = settings.OAuthLoginURI;\n this.state.OAuthProvider = this.determineOauthProvider(settings.OAuthLoginURI);\n\n const code = this.URLHelper.getParameter('code');\n const state = this.URLHelper.getParameter('state');\n if (code && state) {\n await this.manageOauthCodeReturn(code, state);\n this.generateOAuthLoginURI();\n return;\n }\n if (!this.logo) {\n await this.StateManager.initialize();\n this.logo = this.StateManager.getState().application.logo;\n }\n this.generateOAuthLoginURI();\n\n if (this.$stateParams.logout || this.$stateParams.error) {\n this.logout(this.$stateParams.error);\n return;\n }\n const error = this.LocalStorage.getLogoutReason();\n if (error) {\n this.state.AuthenticationError = error;\n this.LocalStorage.cleanLogoutReason();\n }\n\n if (this.Authentication.isAuthenticated()) {\n await this.postLoginSteps();\n }\n this.state.loginInProgress = false;\n\n if (this.state.hideInternalAuth && !this.Authentication.isAuthenticated()) {\n this.$window.location.href = this.OAuthLoginURI;\n }\n\n await this.authEnabledFlowAsync();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve public settings');\n }\n }\n\n $onInit() {\n return this.$async(this.onInit);\n }\n\n /**\n * END ON INIT SECTION\n */\n}\n\nexport default AuthenticationController;\nangular.module('portainer.app').controller('AuthenticationController', AuthenticationController);\n","import _ from 'lodash';\nimport { AccessControlFormData } from 'Portainer/components/accessControlForm/porAccessControlFormModel';\nimport { TEMPLATE_NAME_VALIDATION_REGEX } from '@/constants';\nimport { getTemplateVariables, intersectVariables } from '@/react/portainer/custom-templates/components/utils';\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\n\nclass CreateCustomTemplateViewController {\n /* @ngInject */\n constructor($async, $state, $window, Authentication, ModalService, CustomTemplateService, FormValidator, Notifications, ResourceControlService, StackService, StateManager) {\n Object.assign(this, {\n $async,\n $state,\n $window,\n Authentication,\n ModalService,\n CustomTemplateService,\n FormValidator,\n Notifications,\n ResourceControlService,\n StackService,\n StateManager,\n });\n\n this.isTemplateVariablesEnabled = isBE;\n\n this.formValues = {\n Title: '',\n FileContent: '',\n File: null,\n RepositoryURL: '',\n RepositoryReferenceName: '',\n RepositoryAuthentication: false,\n RepositoryUsername: '',\n RepositoryPassword: '',\n ComposeFilePathInRepository: 'docker-compose.yml',\n Description: '',\n Note: '',\n Logo: '',\n Platform: 1,\n Type: 1,\n AccessControlData: new AccessControlFormData(),\n Variables: [],\n };\n\n this.state = {\n Method: 'editor',\n formValidationError: '',\n actionInProgress: false,\n fromStack: false,\n loading: true,\n isEditorDirty: false,\n templateNameRegex: TEMPLATE_NAME_VALIDATION_REGEX,\n isTemplateValid: true,\n };\n\n this.templates = [];\n\n this.createCustomTemplate = this.createCustomTemplate.bind(this);\n this.createCustomTemplateAsync = this.createCustomTemplateAsync.bind(this);\n this.validateForm = this.validateForm.bind(this);\n this.createCustomTemplateByMethod = this.createCustomTemplateByMethod.bind(this);\n this.createCustomTemplateFromFileContent = this.createCustomTemplateFromFileContent.bind(this);\n this.createCustomTemplateFromFileUpload = this.createCustomTemplateFromFileUpload.bind(this);\n this.createCustomTemplateFromGitRepository = this.createCustomTemplateFromGitRepository.bind(this);\n this.editorUpdate = this.editorUpdate.bind(this);\n this.onChangeMethod = this.onChangeMethod.bind(this);\n this.onVariablesChange = this.onVariablesChange.bind(this);\n this.handleChange = this.handleChange.bind(this);\n }\n\n onVariablesChange(value) {\n this.handleChange({ Variables: value });\n }\n\n handleChange(values) {\n return this.$async(async () => {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n });\n }\n\n createCustomTemplate() {\n return this.$async(this.createCustomTemplateAsync);\n }\n\n onChangeMethod() {\n this.formValues.FileContent = '';\n this.formValues.Variables = [];\n this.selectedTemplate = null;\n }\n\n async createCustomTemplateAsync() {\n let method = this.state.Method;\n\n if (method === 'template') {\n method = 'editor';\n }\n\n if (!this.validateForm(method)) {\n return;\n }\n\n this.state.actionInProgress = true;\n try {\n const customTemplate = await this.createCustomTemplateByMethod(method);\n\n const accessControlData = this.formValues.AccessControlData;\n const userDetails = this.Authentication.getUserDetails();\n const userId = userDetails.ID;\n await this.ResourceControlService.applyResourceControl(userId, accessControlData, customTemplate.ResourceControl);\n\n this.Notifications.success('Success', 'Custom template successfully created');\n this.state.isEditorDirty = false;\n this.$state.go('docker.templates.custom');\n } catch (err) {\n this.Notifications.error('Failure', err, 'A template with the same name already exists');\n } finally {\n this.state.actionInProgress = false;\n }\n }\n\n validateForm(method) {\n this.state.formValidationError = '';\n\n if (method === 'editor' && this.formValues.FileContent === '') {\n this.state.formValidationError = 'Template file content must not be empty';\n return false;\n }\n\n const title = this.formValues.Title;\n const isNotUnique = _.some(this.templates, (template) => template.Title === title);\n if (isNotUnique) {\n this.state.formValidationError = 'A template with the same name already exists';\n return false;\n }\n\n const isAdmin = this.Authentication.isAdmin();\n const accessControlData = this.formValues.AccessControlData;\n const error = this.FormValidator.validateAccessControl(accessControlData, isAdmin);\n\n if (error) {\n this.state.formValidationError = error;\n return false;\n }\n\n return true;\n }\n\n createCustomTemplateByMethod(method) {\n switch (method) {\n case 'editor':\n return this.createCustomTemplateFromFileContent();\n case 'upload':\n return this.createCustomTemplateFromFileUpload();\n case 'repository':\n return this.createCustomTemplateFromGitRepository();\n }\n }\n\n createCustomTemplateFromFileContent() {\n return this.CustomTemplateService.createCustomTemplateFromFileContent(this.formValues);\n }\n\n createCustomTemplateFromFileUpload() {\n return this.CustomTemplateService.createCustomTemplateFromFileUpload(this.formValues);\n }\n\n createCustomTemplateFromGitRepository() {\n return this.CustomTemplateService.createCustomTemplateFromGitRepository(this.formValues);\n }\n\n editorUpdate(value) {\n this.formValues.FileContent = value;\n this.state.isEditorDirty = true;\n this.parseTemplate(value);\n }\n\n parseTemplate(templateStr) {\n if (!this.isTemplateVariablesEnabled) {\n return;\n }\n\n const variables = getTemplateVariables(templateStr);\n\n const isValid = !!variables;\n\n this.state.isTemplateValid = isValid;\n\n if (isValid) {\n this.onVariablesChange(intersectVariables(this.formValues.Variables, variables));\n }\n }\n\n async $onInit() {\n const applicationState = this.StateManager.getState();\n\n this.state.endpointMode = applicationState.endpoint.mode;\n let stackType = 0;\n if (this.state.endpointMode.provider === 'DOCKER_STANDALONE') {\n stackType = 2;\n } else if (this.state.endpointMode.provider === 'DOCKER_SWARM_MODE') {\n stackType = 1;\n }\n this.formValues.Type = stackType;\n\n const { fileContent, type } = this.$state.params;\n\n this.formValues.FileContent = fileContent;\n if (type) {\n this.formValues.Type = +type;\n }\n\n try {\n this.templates = await this.CustomTemplateService.customTemplates([1, 2]);\n } catch (err) {\n this.Notifications.error('Failure loading', err, 'Failed loading custom templates');\n }\n\n this.state.loading = false;\n\n this.$window.onbeforeunload = () => {\n if (this.state.Method === 'editor' && this.formValues.FileContent && this.state.isEditorDirty) {\n return '';\n }\n };\n }\n\n $onDestroy() {\n this.state.isEditorDirty = false;\n }\n\n async uiCanExit() {\n if (this.state.Method === 'editor' && this.formValues.FileContent && this.state.isEditorDirty) {\n return this.ModalService.confirmWebEditorDiscard();\n }\n }\n}\n\nexport default CreateCustomTemplateViewController;\n","const autoNgTemplateLoaderTemplate1 = require('./createCustomTemplateView.html');\n\nimport CreateCustomTemplateViewController from './createCustomTemplateViewController.js';\n\nangular.module('portainer.app').component('createCustomTemplateView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: CreateCustomTemplateViewController,\n});\n","import _ from 'lodash-es';\nimport { AccessControlFormData } from 'Portainer/components/accessControlForm/porAccessControlFormModel';\nimport { TEMPLATE_NAME_VALIDATION_REGEX } from '@/constants';\nimport { renderTemplate } from '@/react/portainer/custom-templates/components/utils';\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\n\nclass CustomTemplatesViewController {\n /* @ngInject */\n constructor(\n $anchorScroll,\n $async,\n $rootScope,\n $state,\n Authentication,\n CustomTemplateService,\n FormValidator,\n ModalService,\n NetworkService,\n Notifications,\n ResourceControlService,\n StackService,\n StateManager\n ) {\n this.$anchorScroll = $anchorScroll;\n this.$async = $async;\n this.$rootScope = $rootScope;\n this.$state = $state;\n this.Authentication = Authentication;\n this.CustomTemplateService = CustomTemplateService;\n this.FormValidator = FormValidator;\n this.ModalService = ModalService;\n this.NetworkService = NetworkService;\n this.Notifications = Notifications;\n this.ResourceControlService = ResourceControlService;\n this.StateManager = StateManager;\n this.StackService = StackService;\n\n this.isTemplateVariablesEnabled = isBE;\n\n this.DOCKER_STANDALONE = 'DOCKER_STANDALONE';\n this.DOCKER_SWARM_MODE = 'DOCKER_SWARM_MODE';\n\n this.state = {\n selectedTemplate: null,\n showAdvancedOptions: false,\n formValidationError: '',\n actionInProgress: false,\n isEditorVisible: false,\n deployable: false,\n templateNameRegex: TEMPLATE_NAME_VALIDATION_REGEX,\n templateContent: '',\n };\n\n this.currentUser = {\n isAdmin: false,\n id: null,\n };\n\n this.formValues = {\n network: '',\n name: '',\n fileContent: '',\n AccessControlData: new AccessControlFormData(),\n variables: [],\n };\n\n this.getTemplates = this.getTemplates.bind(this);\n this.getTemplatesAsync = this.getTemplatesAsync.bind(this);\n this.removeTemplates = this.removeTemplates.bind(this);\n this.removeTemplatesAsync = this.removeTemplatesAsync.bind(this);\n this.validateForm = this.validateForm.bind(this);\n this.createStack = this.createStack.bind(this);\n this.createStackAsync = this.createStackAsync.bind(this);\n this.selectTemplate = this.selectTemplate.bind(this);\n this.selectTemplateAsync = this.selectTemplateAsync.bind(this);\n this.unselectTemplate = this.unselectTemplate.bind(this);\n this.unselectTemplateAsync = this.unselectTemplateAsync.bind(this);\n this.getNetworks = this.getNetworks.bind(this);\n this.getNetworksAsync = this.getNetworksAsync.bind(this);\n this.confirmDelete = this.confirmDelete.bind(this);\n this.confirmDeleteAsync = this.confirmDeleteAsync.bind(this);\n this.editorUpdate = this.editorUpdate.bind(this);\n this.isEditAllowed = this.isEditAllowed.bind(this);\n this.onChangeFormValues = this.onChangeFormValues.bind(this);\n this.onChangeTemplateVariables = this.onChangeTemplateVariables.bind(this);\n }\n\n isEditAllowed(template) {\n return this.currentUser.isAdmin || this.currentUser.id === template.CreatedByUserId;\n }\n\n getTemplates() {\n return this.$async(this.getTemplatesAsync);\n }\n async getTemplatesAsync() {\n try {\n this.templates = await this.CustomTemplateService.customTemplates([1, 2]);\n } catch (err) {\n this.Notifications.error('Failed loading templates', err, 'Unable to load custom templates');\n }\n }\n\n removeTemplates(templates) {\n return this.$async(this.removeTemplatesAsync, templates);\n }\n async removeTemplatesAsync(templates) {\n for (let template of templates) {\n try {\n await this.CustomTemplateService.remove(template.id);\n this.Notifications.success('Success', 'Removed template successfully');\n _.remove(this.templates, template);\n } catch (err) {\n this.Notifications.error('Failed removing template', err, 'Unable to remove custom template');\n }\n }\n }\n\n onChangeTemplateVariables(variables) {\n this.onChangeFormValues({ variables });\n\n this.renderTemplate();\n }\n\n renderTemplate() {\n if (!this.isTemplateVariablesEnabled) {\n return;\n }\n\n const fileContent = renderTemplate(this.state.templateContent, this.formValues.variables, this.state.selectedTemplate.Variables);\n this.onChangeFormValues({ fileContent });\n }\n\n onChangeFormValues(values) {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n }\n\n validateForm(accessControlData, isAdmin) {\n this.state.formValidationError = '';\n const error = this.FormValidator.validateAccessControl(accessControlData, isAdmin);\n\n if (error) {\n this.state.formValidationError = error;\n return false;\n }\n return true;\n }\n\n createStack() {\n return this.$async(this.createStackAsync);\n }\n async createStackAsync() {\n const userId = this.currentUser.id;\n const accessControlData = this.formValues.AccessControlData;\n\n if (!this.validateForm(accessControlData, this.currentUser.isAdmin)) {\n return;\n }\n const stackName = this.formValues.name;\n\n const endpointId = this.endpoint.Id;\n\n this.state.actionInProgress = true;\n\n try {\n const file = this.formValues.fileContent;\n const createAction = this.state.selectedTemplate.Type === 1 ? this.StackService.createSwarmStackFromFileContent : this.StackService.createComposeStackFromFileContent;\n const { ResourceControl: resourceControl } = await createAction(stackName, file, [], endpointId);\n await this.ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl);\n this.Notifications.success('Success', 'Stack successfully deployed');\n this.$state.go('docker.stacks');\n } catch (err) {\n this.Notifications.error('Deployment error', err, 'Failed to deploy stack');\n } finally {\n this.state.actionInProgress = false;\n }\n }\n\n unselectTemplate(template) {\n // wrapping unselect with async to make a digest cycle run between unselect to select\n return this.$async(this.unselectTemplateAsync, template);\n }\n async unselectTemplateAsync(template) {\n template.Selected = false;\n this.state.selectedTemplate = null;\n\n this.formValues = {\n network: '',\n name: '',\n fileContent: '',\n AccessControlData: new AccessControlFormData(),\n variables: [],\n };\n }\n\n selectTemplate(template) {\n return this.$async(this.selectTemplateAsync, template);\n }\n async selectTemplateAsync(template) {\n if (!this.Authentication.isAdmin() && !this.Authentication.hasAuthorizations(['DockerContainerCreate', 'PortainerStackCreate'])) {\n return;\n }\n\n if (this.state.selectedTemplate) {\n await this.unselectTemplate(this.state.selectedTemplate);\n }\n\n template.Selected = true;\n\n this.formValues.network = _.find(this.availableNetworks, function (o) {\n return o.Name === 'bridge';\n });\n\n this.formValues.name = template.Title ? template.Title : '';\n this.state.selectedTemplate = template;\n const applicationState = this.StateManager.getState();\n this.state.deployable = this.isDeployable(applicationState.endpoint, template.Type);\n this.$anchorScroll('view-top');\n\n const file = await this.CustomTemplateService.customTemplateFile(template.Id);\n this.state.templateContent = file;\n this.formValues.fileContent = file;\n\n if (template.Variables && template.Variables.length > 0) {\n const variables = Object.fromEntries(template.Variables.map((variable) => [variable.name, '']));\n this.onChangeTemplateVariables(variables);\n }\n }\n\n isDeployable(endpoint, templateType) {\n let deployable = false;\n switch (templateType) {\n case 1:\n deployable = endpoint.mode.provider === this.DOCKER_SWARM_MODE;\n break;\n case 2:\n deployable = endpoint.mode.provider === this.DOCKER_STANDALONE;\n break;\n }\n\n return deployable;\n }\n\n getNetworks(provider, apiVersion) {\n return this.$async(this.getNetworksAsync, provider, apiVersion);\n }\n async getNetworksAsync(provider, apiVersion) {\n try {\n const networks = await this.NetworkService.networks(\n provider === 'DOCKER_STANDALONE' || provider === 'DOCKER_SWARM_MODE',\n false,\n provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25\n );\n this.availableNetworks = networks;\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed to load networks.');\n }\n }\n\n confirmDelete(templateId) {\n return this.$async(this.confirmDeleteAsync, templateId);\n }\n async confirmDeleteAsync(templateId) {\n const confirmed = await this.ModalService.confirmDeletionAsync('Are you sure that you want to delete this template?');\n if (!confirmed) {\n return;\n }\n\n try {\n var template = _.find(this.templates, { Id: templateId });\n await this.CustomTemplateService.remove(templateId);\n _.remove(this.templates, { Id: templateId });\n this.Notifications.success('Template successfully deleted', template && template.Title);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed to delete template');\n }\n }\n\n editorUpdate(value) {\n this.formValues.fileContent = value;\n }\n\n $onInit() {\n const applicationState = this.StateManager.getState();\n\n const {\n endpoint: { mode: endpointMode },\n apiVersion,\n } = applicationState;\n\n this.getTemplates();\n this.getNetworks(endpointMode.provider, apiVersion);\n\n this.currentUser.isAdmin = this.Authentication.isAdmin();\n const user = this.Authentication.getUserDetails();\n this.currentUser.id = user.ID;\n }\n}\n\nexport default CustomTemplatesViewController;\n","const autoNgTemplateLoaderTemplate1 = require('./customTemplatesView.html');\n\nimport CustomTemplatesViewController from './customTemplatesViewController.js';\n\nangular.module('portainer.app').component('customTemplatesView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: CustomTemplatesViewController,\n bindings: {\n endpoint: '<',\n },\n});\n","import _ from 'lodash';\nimport { ResourceControlViewModel } from '@/portainer/access-control/models/ResourceControlViewModel';\n\nimport { AccessControlFormData } from 'Portainer/components/accessControlForm/porAccessControlFormModel';\nimport { getTemplateVariables, intersectVariables } from '@/react/portainer/custom-templates/components/utils';\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\n\nclass EditCustomTemplateViewController {\n /* @ngInject */\n constructor($async, $state, $window, ModalService, Authentication, CustomTemplateService, FormValidator, Notifications, ResourceControlService) {\n Object.assign(this, { $async, $state, $window, ModalService, Authentication, CustomTemplateService, FormValidator, Notifications, ResourceControlService });\n\n this.isTemplateVariablesEnabled = isBE;\n\n this.formValues = null;\n this.state = {\n formValidationError: '',\n isEditorDirty: false,\n isTemplateValid: true,\n };\n this.templates = [];\n\n this.getTemplate = this.getTemplate.bind(this);\n this.getTemplateAsync = this.getTemplateAsync.bind(this);\n this.submitAction = this.submitAction.bind(this);\n this.submitActionAsync = this.submitActionAsync.bind(this);\n this.editorUpdate = this.editorUpdate.bind(this);\n this.onVariablesChange = this.onVariablesChange.bind(this);\n this.handleChange = this.handleChange.bind(this);\n }\n\n getTemplate() {\n return this.$async(this.getTemplateAsync);\n }\n async getTemplateAsync() {\n try {\n const [template, file] = await Promise.all([\n this.CustomTemplateService.customTemplate(this.$state.params.id),\n this.CustomTemplateService.customTemplateFile(this.$state.params.id),\n ]);\n template.FileContent = file;\n template.Variables = template.Variables || [];\n this.formValues = template;\n this.parseTemplate(template.FileContent);\n\n this.oldFileContent = this.formValues.FileContent;\n if (template.ResourceControl) {\n this.formValues.ResourceControl = new ResourceControlViewModel(template.ResourceControl);\n }\n this.formValues.AccessControlData = new AccessControlFormData();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve custom template data');\n }\n }\n\n onVariablesChange(value) {\n this.handleChange({ Variables: value });\n }\n\n handleChange(values) {\n return this.$async(async () => {\n this.formValues = {\n ...this.formValues,\n ...values,\n };\n });\n }\n\n validateForm() {\n this.state.formValidationError = '';\n\n if (!this.formValues.FileContent) {\n this.state.formValidationError = 'Template file content must not be empty';\n return false;\n }\n\n const title = this.formValues.Title;\n const id = this.$state.params.id;\n const isNotUnique = _.some(this.templates, (template) => template.Title === title && template.Id != id);\n if (isNotUnique) {\n this.state.formValidationError = `A template with the name ${title} already exists`;\n return false;\n }\n\n const isAdmin = this.Authentication.isAdmin();\n const accessControlData = this.formValues.AccessControlData;\n const error = this.FormValidator.validateAccessControl(accessControlData, isAdmin);\n\n if (error) {\n this.state.formValidationError = error;\n return false;\n }\n\n return true;\n }\n\n submitAction() {\n return this.$async(this.submitActionAsync);\n }\n async submitActionAsync() {\n if (!this.validateForm()) {\n return;\n }\n\n this.actionInProgress = true;\n try {\n await this.CustomTemplateService.updateCustomTemplate(this.formValues.Id, this.formValues);\n\n const userDetails = this.Authentication.getUserDetails();\n const userId = userDetails.ID;\n await this.ResourceControlService.applyResourceControl(userId, this.formValues.AccessControlData, this.formValues.ResourceControl);\n\n this.Notifications.success('Success', 'Custom template successfully updated');\n this.state.isEditorDirty = false;\n this.$state.go('docker.templates.custom');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to update custom template');\n } finally {\n this.actionInProgress = false;\n }\n }\n\n editorUpdate(value) {\n if (this.formValues.FileContent.replace(/(\\r\\n|\\n|\\r)/gm, '') !== value.replace(/(\\r\\n|\\n|\\r)/gm, '')) {\n this.formValues.FileContent = value;\n this.parseTemplate(value);\n this.state.isEditorDirty = true;\n }\n }\n\n parseTemplate(templateStr) {\n if (!this.isTemplateVariablesEnabled) {\n return;\n }\n\n const variables = getTemplateVariables(templateStr);\n\n const isValid = !!variables;\n\n this.state.isTemplateValid = isValid;\n\n if (isValid) {\n this.onVariablesChange(intersectVariables(this.formValues.Variables, variables));\n }\n }\n\n async uiCanExit() {\n if (this.formValues.FileContent !== this.oldFileContent && this.state.isEditorDirty) {\n return this.ModalService.confirmWebEditorDiscard();\n }\n }\n\n async $onInit() {\n this.getTemplate();\n\n try {\n this.templates = await this.CustomTemplateService.customTemplates([1, 2]);\n } catch (err) {\n this.Notifications.error('Failure loading', err, 'Failed loading custom templates');\n }\n\n this.$window.onbeforeunload = () => {\n if (this.formValues.FileContent !== this.oldFileContent && this.state.isEditorDirty) {\n return '';\n }\n };\n }\n\n $onDestroy() {\n this.state.isEditorDirty = false;\n }\n}\n\nexport default EditCustomTemplateViewController;\n","const autoNgTemplateLoaderTemplate1 = require('./editCustomTemplateView.html');\n\nimport EditCustomTemplateViewController from './editCustomTemplateViewController.js';\n\nangular.module('portainer.app').component('editCustomTemplateView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: EditCustomTemplateViewController,\n});\n","import uuidv4 from 'uuid/v4';\n\nimport { PortainerEndpointCreationTypes } from 'Portainer/models/endpoint/models';\nimport { configureDevice, getProfiles } from 'Portainer/hostmanagement/fdo/fdo.service';\n\nangular\n .module('portainer.app')\n .controller(\n 'ImportDeviceController',\n function ImportDeviceController($async, $q, $scope, $state, EndpointService, GroupService, TagService, Notifications, Authentication, FileUploadService) {\n $scope.state = {\n actionInProgress: false,\n vouchersUploading: false,\n vouchersUploaded: false,\n deviceIDs: [],\n allowCreateTag: Authentication.isAdmin(),\n };\n\n $scope.formValues = {\n DeviceName: '',\n DeviceProfile: '',\n GroupId: 1,\n TagIds: [],\n VoucherFiles: [],\n PortainerURL: '',\n Suffix: 1,\n };\n\n $scope.profiles = [];\n\n $scope.onChangeTags = function onChangeTags(value) {\n return $scope.$evalAsync(() => {\n $scope.formValues.TagIds = value;\n });\n };\n\n $scope.onVoucherFilesChange = function () {\n if ($scope.formValues.VoucherFiles.length < 1) {\n return;\n }\n\n $scope.state.vouchersUploading = true;\n\n let uploads = $scope.formValues.VoucherFiles.map((f) => FileUploadService.uploadOwnershipVoucher(f));\n\n $q.all(uploads)\n .then(function success(responses) {\n $scope.state.vouchersUploading = false;\n $scope.state.vouchersUploaded = true;\n $scope.state.deviceIDs = responses.map((r) => r.data.guid);\n })\n .catch(function error(err) {\n $scope.state.vouchersUploading = false;\n if ($scope.formValues.VoucherFiles.length === 1) {\n Notifications.error('Failure', err, 'Unable to upload the Ownership Voucher');\n } else {\n Notifications.error('Failure', null, 'Unable to upload the Ownership Vouchers, please check the logs');\n }\n });\n };\n\n $scope.createEndpointAndConfigureDevice = function () {\n return $async(async () => {\n $scope.state.actionInProgress = true;\n\n let suffix = $scope.formValues.Suffix;\n\n for (const deviceID of $scope.state.deviceIDs) {\n let deviceName = $scope.formValues.DeviceName + suffix;\n\n try {\n var endpoint = await EndpointService.createRemoteEndpoint(\n deviceName,\n PortainerEndpointCreationTypes.EdgeAgentEnvironment,\n $scope.formValues.PortainerURL,\n '',\n $scope.formValues.GroupId,\n $scope.formValues.TagIds,\n false,\n false,\n false,\n null,\n null,\n null,\n null,\n true\n );\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to create the environment');\n $scope.state.actionInProgress = false;\n return;\n }\n\n suffix++;\n\n const config = {\n edgeID: endpoint.EdgeID || uuidv4(),\n edgeKey: endpoint.EdgeKey,\n name: deviceName,\n profile: $scope.formValues.DeviceProfile,\n };\n\n try {\n await configureDevice(deviceID, config);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to import device');\n return;\n } finally {\n $scope.state.actionInProgress = false;\n }\n }\n\n Notifications.success('Success', 'Device(s) successfully imported');\n $state.go('edge.devices');\n });\n };\n\n async function initView() {\n try {\n $scope.profiles = await getProfiles();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to load profiles');\n return;\n }\n\n $q.all({\n groups: GroupService.groups(),\n })\n .then(function success(data) {\n $scope.groups = data.groups;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to load groups');\n });\n }\n\n initView();\n }\n );\n","import angular from 'angular';\n\nimport { createProfile } from 'Portainer/hostmanagement/fdo/fdo.service';\n\nangular.module('portainer.app').controller('AddProfileController', AddProfileController);\n\nexport default function AddProfileController($scope, $async, $state, $window, ModalService, Authentication, Notifications) {\n $scope.formValues = {\n name: '',\n profileFileContent: '',\n };\n\n $scope.state = {\n method: 'editor',\n actionInProgress: false,\n isEditorDirty: false,\n };\n\n $window.onbeforeunload = () => {\n if ($scope.state.method === 'editor' && $scope.formValues.profileFileContent && $scope.state.isEditorDirty) {\n return '';\n }\n };\n\n $scope.$on('$destroy', function () {\n $scope.state.isEditorDirty = false;\n });\n\n $scope.onChangeFormValues = onChangeFormValues;\n\n $scope.createProfileAsync = function () {\n return $async(async () => {\n const method = $scope.state.method;\n\n const name = $scope.formValues.name;\n const fileContent = $scope.formValues.profileFileContent;\n\n if (method !== 'editor' && fileContent === '') {\n $scope.state.formValidationError = 'Profile file content must not be empty';\n return;\n }\n\n $scope.state.actionInProgress = true;\n\n try {\n await createProfile(name, method, fileContent);\n Notifications.success('Success', 'Profile successfully created');\n $scope.state.isEditorDirty = false;\n $state.go('portainer.settings.edgeCompute');\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to create Profile');\n } finally {\n $scope.state.actionInProgress = false;\n }\n });\n };\n\n $scope.onChangeFileContent = function onChangeFileContent(value) {\n $scope.formValues.profileFileContent = value;\n $scope.state.isEditorDirty = true;\n };\n\n function onChangeFormValues(newValues) {\n $scope.formValues = newValues;\n }\n}\n","const autoNgTemplateLoaderTemplate1 = require('./addProfile.html');\n\nimport angular from 'angular';\n\nimport controller from './addProfileController';\n\nangular.module('portainer.app').component('addProfileView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","import angular from 'angular';\nimport { getProfile, updateProfile } from 'Portainer/hostmanagement/fdo/fdo.service';\n\nangular.module('portainer.app').controller('EditProfileController', EditProfileController);\n\nexport default function EditProfileController($scope, $async, $state, $window, ModalService, Authentication, Notifications) {\n $scope.formValues = {\n name: '',\n profileFileContent: '',\n };\n\n $scope.state = {\n profileID: $state.params.id,\n method: 'editor',\n actionInProgress: false,\n isEditorDirty: false,\n };\n\n $window.onbeforeunload = () => {\n if ($scope.state.method === 'editor' && $scope.formValues.profileFileContent && $scope.state.isEditorDirty) {\n return '';\n }\n };\n\n $scope.$on('$destroy', function () {\n $scope.state.isEditorDirty = false;\n });\n\n $scope.onChangeFormValues = onChangeFormValues;\n\n $scope.updateProfileAsync = function () {\n return $async(async () => {\n const method = $scope.state.method;\n\n const name = $scope.formValues.name;\n const fileContent = $scope.formValues.profileFileContent;\n\n if (method !== 'editor' && fileContent === '') {\n $scope.state.formValidationError = 'Profile file content must not be empty';\n return;\n }\n\n $scope.state.actionInProgress = true;\n\n try {\n await updateProfile($scope.state.profileID, name, fileContent);\n Notifications.success('Success', 'Profile successfully updated');\n $scope.state.isEditorDirty = false;\n $state.go('portainer.settings.edgeCompute');\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to update Profile');\n } finally {\n $scope.state.actionInProgress = false;\n }\n });\n };\n\n $scope.onChangeFileContent = function onChangeFileContent(value) {\n $scope.formValues.profileFileContent = value;\n $scope.state.isEditorDirty = true;\n };\n\n function onChangeFormValues(newValues) {\n $scope.formValues = newValues;\n }\n\n async function initView() {\n return $async(async () => {\n try {\n const profile = await getProfile($scope.state.profileID);\n\n $scope.formValues = {\n name: profile.name,\n profileFileContent: profile.fileContent,\n };\n $scope.state.isEditorDirty = false;\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve profile details');\n }\n });\n }\n\n initView();\n}\n","const autoNgTemplateLoaderTemplate1 = require('./editProfile.html');\n\nimport angular from 'angular';\n\nimport controller from './editProfileController';\n\nangular.module('portainer.app').component('editProfileView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","const autoNgTemplateLoaderTemplate1 = require('./registries.html');\n\nangular.module('portainer.app').component('endpointRegistriesView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: 'EndpointRegistriesController',\n bindings: {\n endpoint: '<',\n },\n});\n","import _ from 'lodash-es';\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\n\nclass EndpointRegistriesController {\n /* @ngInject */\n constructor($async, Authentication, Notifications, EndpointService) {\n this.$async = $async;\n this.Authentication = Authentication;\n this.Notifications = Notifications;\n this.EndpointService = EndpointService;\n\n this.canManageAccess = this.canManageAccess.bind(this);\n this.canBrowse = this.canBrowse.bind(this);\n }\n\n canManageAccess(item) {\n return item.Type !== RegistryTypes.ANONYMOUS && this.Authentication.hasAuthorizations(['PortainerRegistryUpdateAccess']);\n }\n\n canBrowse(item) {\n return !_.includes([RegistryTypes.ANONYMOUS, RegistryTypes.DOCKERHUB, RegistryTypes.QUAY], item.Type);\n }\n\n getRegistries() {\n return this.$async(async () => {\n try {\n this.registries = await this.EndpointService.registries(this.endpointId);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve registries');\n }\n });\n }\n\n $onInit() {\n return this.$async(async () => {\n this.state = {\n viewReady: false,\n };\n\n try {\n this.endpointType = this.endpoint.Type;\n this.endpointId = this.endpoint.Id;\n await this.getRegistries();\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve registries');\n } finally {\n this.state.viewReady = true;\n }\n });\n }\n}\n\nexport default EndpointRegistriesController;\nangular.module('portainer.app').controller('EndpointRegistriesController', EndpointRegistriesController);\n","import angular from 'angular';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\n\nclass EndpointAccessController {\n /* @ngInject */\n constructor($state, $transition$, Notifications, EndpointService, GroupService, $async) {\n this.$state = $state;\n this.$transition$ = $transition$;\n this.Notifications = Notifications;\n this.EndpointService = EndpointService;\n this.GroupService = GroupService;\n this.$async = $async;\n\n this.limitedFeature = FeatureId.RBAC_ROLES;\n\n this.updateAccess = this.updateAccess.bind(this);\n this.updateAccessAsync = this.updateAccessAsync.bind(this);\n }\n\n async $onInit() {\n this.state = { actionInProgress: false };\n try {\n this.endpoint = await this.EndpointService.endpoint(this.$transition$.params().id);\n this.group = await this.GroupService.group(this.endpoint.GroupId);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve environment information');\n }\n }\n\n updateAccess() {\n return this.$async(this.updateAccessAsync);\n }\n\n async updateAccessAsync() {\n try {\n this.state.actionInProgress = true;\n await this.EndpointService.updateEndpoint(this.$transition$.params().id, this.endpoint);\n this.Notifications.success('Success', 'Access successfully updated');\n this.$state.reload(this.$state.current);\n } catch (err) {\n this.state.actionInProgress = false;\n this.Notifications.error('Failure', err, 'Unable to update accesses');\n }\n }\n}\n\nexport default EndpointAccessController;\nangular.module('portainer.app').controller('EndpointAccessController', EndpointAccessController);\n","import _ from 'lodash-es';\nimport uuidv4 from 'uuid/v4';\n\nimport { PortainerEndpointTypes } from '@/portainer/models/endpoint/models';\nimport { EndpointSecurityFormData } from '@/portainer/components/endpointSecurity/porEndpointSecurityModel';\nimport EndpointHelper from '@/portainer/helpers/endpointHelper';\nimport { getAMTInfo } from 'Portainer/hostmanagement/open-amt/open-amt.service';\nimport { confirmDestructiveAsync } from '@/portainer/services/modal.service/confirm';\nimport { getPlatformTypeName, isAgentEnvironment, isEdgeEnvironment } from '@/portainer/environments/utils';\nimport { commandsTabs } from '@/react/edge/components/EdgeScriptForm/scripts';\nimport { GpusListAngular } from '@/react/portainer/environments/wizard/EnvironmentsCreationView/shared/Hardware/GpusList';\n\nangular.module('portainer.app').component('gpusList', GpusListAngular).controller('EndpointController', EndpointController);\n\n/* @ngInject */\nfunction EndpointController($async, $scope, $state, $transition$, $filter, clipboard, EndpointService, GroupService, Notifications, Authentication, SettingsService, ModalService) {\n $scope.onChangeCheckInInterval = onChangeCheckInInterval;\n $scope.setFieldValue = setFieldValue;\n $scope.onChangeTags = onChangeTags;\n $scope.onChangeEdgeSettings = onChangeEdgeSettings;\n\n const isBE = process.env.PORTAINER_EDITION === 'BE';\n\n $scope.state = {\n platformName: '',\n selectAll: false,\n get selectedItemCount() {\n return $scope.state.selectedItems.length || 0;\n },\n selectedItems: [],\n uploadInProgress: false,\n actionInProgress: false,\n azureEndpoint: false,\n kubernetesEndpoint: false,\n agentEndpoint: false,\n edgeEndpoint: false,\n edgeAssociated: false,\n allowCreate: Authentication.isAdmin(),\n availableEdgeAgentCheckinOptions: [\n { key: 'Use default interval', value: 0 },\n {\n key: '5 seconds',\n value: 5,\n },\n {\n key: '10 seconds',\n value: 10,\n },\n {\n key: '30 seconds',\n value: 30,\n },\n { key: '5 minutes', value: 300 },\n { key: '1 hour', value: 3600 },\n { key: '1 day', value: 86400 },\n ],\n allowSelfSignedCerts: true,\n showAMTInfo: false,\n showNomad: isBE,\n edgeScriptCommands: {\n linux: _.compact([commandsTabs.k8sLinux, commandsTabs.swarmLinux, commandsTabs.standaloneLinux, isBE && commandsTabs.nomadLinux]),\n win: [commandsTabs.swarmWindows, commandsTabs.standaloneWindow],\n },\n };\n\n $scope.selectAll = function () {\n $scope.state.firstClickedItem = null;\n for (var i = 0; i < $scope.state.filteredDataSet.length; i++) {\n var item = $scope.state.filteredDataSet[i];\n if (item.Checked !== $scope.state.selectAll) {\n // if ($scope.allowSelection(item) && item.Checked !== $scope.state.selectAll) {\n item.Checked = $scope.state.selectAll;\n $scope.selectItem(item);\n }\n }\n };\n\n function isBetween(value, a, b) {\n return (value >= a && value <= b) || (value >= b && value <= a);\n }\n\n $scope.selectItem = function (item, event) {\n // Handle range select using shift\n if (event && event.originalEvent.shiftKey && $scope.state.firstClickedItem) {\n const firstItemIndex = $scope.state.filteredDataSet.indexOf($scope.state.firstClickedItem);\n const lastItemIndex = $scope.state.filteredDataSet.indexOf(item);\n const itemsInRange = _.filter($scope.state.filteredDataSet, (item, index) => {\n return isBetween(index, firstItemIndex, lastItemIndex);\n });\n const value = $scope.state.firstClickedItem.Checked;\n\n _.forEach(itemsInRange, (i) => {\n i.Checked = value;\n });\n $scope.state.firstClickedItem = item;\n } else if (event) {\n item.Checked = !item.Checked;\n $scope.state.firstClickedItem = item;\n }\n $scope.state.selectedItems = _.uniq(_.concat($scope.state.selectedItems, $scope.state.filteredDataSet)).filter((i) => i.Checked);\n if (event && $scope.state.selectAll && $scope.state.selectedItems.length !== $scope.state.filteredDataSet.length) {\n $scope.state.selectAll = false;\n }\n };\n\n $scope.formValues = {\n SecurityFormData: new EndpointSecurityFormData(),\n };\n\n function onChangeEdgeSettings(value) {\n setFieldValue('Edge', value);\n }\n\n $scope.copyEdgeAgentKey = function () {\n clipboard.copyText($scope.endpoint.EdgeKey);\n $('#copyNotificationEdgeKey').show().fadeOut(2500);\n };\n\n $scope.onDisassociateEndpoint = async function () {\n ModalService.confirmDisassociate((confirmed) => {\n if (confirmed) {\n disassociateEndpoint();\n }\n });\n };\n\n async function disassociateEndpoint() {\n var endpoint = $scope.endpoint;\n\n try {\n $scope.state.actionInProgress = true;\n await EndpointService.disassociateEndpoint(endpoint.Id);\n Notifications.success('Environment disassociated', $scope.endpoint.Name);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to disassociate environment');\n } finally {\n $scope.state.actionInProgress = false;\n }\n }\n\n function onChangeCheckInInterval(value) {\n setFieldValue('EdgeCheckinInterval', value);\n }\n\n function onChangeTags(value) {\n setFieldValue('TagIds', value);\n }\n\n function setFieldValue(name, value) {\n return $scope.$evalAsync(() => {\n $scope.endpoint = {\n ...$scope.endpoint,\n [name]: value,\n };\n });\n }\n\n $scope.onGpusChange = onGpusChange;\n\n Array.prototype.indexOf = function (val) {\n for (var i = 0; i < this.length; i++) {\n if (this[i] == val) return i;\n }\n return -1;\n };\n Array.prototype.remove = function (val) {\n var index = this.indexOf(val);\n if (index > -1) {\n this.splice(index, 1);\n }\n };\n\n function onGpusChange(value) {\n return $async(async () => {\n $scope.endpoint.Gpus = value;\n });\n }\n\n function verifyGpus() {\n var i = ($scope.endpoint.Gpus || []).length;\n while (i--) {\n if ($scope.endpoint.Gpus[i].name === '' || $scope.endpoint.Gpus[i].name === null) {\n $scope.endpoint.Gpus.splice(i, 1);\n }\n }\n }\n\n $scope.updateEndpoint = async function () {\n var endpoint = $scope.endpoint;\n var securityData = $scope.formValues.SecurityFormData;\n var TLS = securityData.TLS;\n var TLSMode = securityData.TLSMode;\n var TLSSkipVerify = TLS && (TLSMode === 'tls_client_noca' || TLSMode === 'tls_only');\n var TLSSkipClientVerify = TLS && (TLSMode === 'tls_ca' || TLSMode === 'tls_only');\n\n if (isEdgeEnvironment(endpoint.Type) && _.difference($scope.initialTagIds, endpoint.TagIds).length > 0) {\n let confirmed = await confirmDestructiveAsync({\n title: 'Confirm action',\n message: 'Removing tags from this environment will remove the corresponding edge stacks when dynamic grouping is being used',\n buttons: {\n cancel: {\n label: 'Cancel',\n className: 'btn-default',\n },\n confirm: {\n label: 'Confirm',\n className: 'btn-primary',\n },\n },\n });\n\n if (!confirmed) {\n return;\n }\n }\n\n verifyGpus();\n var payload = {\n Name: endpoint.Name,\n PublicURL: endpoint.PublicURL,\n Gpus: endpoint.Gpus,\n GroupID: endpoint.GroupId,\n TagIds: endpoint.TagIds,\n TLS: TLS,\n TLSSkipVerify: TLSSkipVerify,\n TLSSkipClientVerify: TLSSkipClientVerify,\n TLSCACert: TLSSkipVerify || securityData.TLSCACert === endpoint.TLSConfig.TLSCACert ? null : securityData.TLSCACert,\n TLSCert: TLSSkipClientVerify || securityData.TLSCert === endpoint.TLSConfig.TLSCert ? null : securityData.TLSCert,\n TLSKey: TLSSkipClientVerify || securityData.TLSKey === endpoint.TLSConfig.TLSKey ? null : securityData.TLSKey,\n AzureApplicationID: endpoint.AzureCredentials.ApplicationID,\n AzureTenantID: endpoint.AzureCredentials.TenantID,\n AzureAuthenticationKey: endpoint.AzureCredentials.AuthenticationKey,\n EdgeCheckinInterval: endpoint.EdgeCheckinInterval,\n Edge: {\n PingInterval: endpoint.Edge.PingInterval,\n SnapshotInterval: endpoint.Edge.SnapshotInterval,\n CommandInterval: endpoint.Edge.CommandInterval,\n },\n };\n\n if (!$scope.showSecurity) {\n delete payload.TLS;\n }\n\n if (\n $scope.endpointType !== 'local' &&\n endpoint.Type !== PortainerEndpointTypes.AzureEnvironment &&\n endpoint.Type !== PortainerEndpointTypes.KubernetesLocalEnvironment &&\n endpoint.Type !== PortainerEndpointTypes.AgentOnKubernetesEnvironment\n ) {\n payload.URL = 'tcp://' + endpoint.URL;\n }\n\n if (endpoint.Type === PortainerEndpointTypes.AgentOnKubernetesEnvironment) {\n payload.URL = endpoint.URL;\n }\n\n if (endpoint.Type === PortainerEndpointTypes.KubernetesLocalEnvironment) {\n payload.URL = 'https://' + endpoint.URL;\n }\n\n $scope.state.actionInProgress = true;\n EndpointService.updateEndpoint(endpoint.Id, payload).then(\n function success() {\n Notifications.success('Environment updated', $scope.endpoint.Name);\n $state.go('portainer.endpoints', {}, { reload: true });\n },\n function error(err) {\n Notifications.error('Failure', err, 'Unable to update environment');\n $scope.state.actionInProgress = false;\n },\n function update(evt) {\n if (evt.upload) {\n $scope.state.uploadInProgress = evt.upload;\n }\n }\n );\n };\n\n function decodeEdgeKey(key) {\n let keyInformation = {};\n\n if (key === '') {\n return keyInformation;\n }\n\n let decodedKey = _.split(atob(key), '|');\n keyInformation.instanceURL = decodedKey[0];\n keyInformation.tunnelServerAddr = decodedKey[1];\n\n return keyInformation;\n }\n\n function configureState() {\n $scope.state.platformName = getPlatformTypeName($scope.endpoint.Type);\n\n if (\n $scope.endpoint.Type === PortainerEndpointTypes.KubernetesLocalEnvironment ||\n $scope.endpoint.Type === PortainerEndpointTypes.AgentOnKubernetesEnvironment ||\n $scope.endpoint.Type === PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment\n ) {\n $scope.state.kubernetesEndpoint = true;\n }\n if (isEdgeEnvironment($scope.endpoint.Type)) {\n $scope.state.edgeEndpoint = true;\n }\n if ($scope.endpoint.Type === PortainerEndpointTypes.AzureEnvironment) {\n $scope.state.azureEndpoint = true;\n }\n if (isAgentEnvironment($scope.endpoint.Type)) {\n $scope.state.agentEndpoint = true;\n }\n }\n\n async function initView() {\n return $async(async () => {\n try {\n const [endpoint, groups, settings] = await Promise.all([EndpointService.endpoint($transition$.params().id), GroupService.groups(), SettingsService.settings()]);\n\n if (endpoint.URL.indexOf('unix://') === 0 || endpoint.URL.indexOf('npipe://') === 0) {\n $scope.endpointType = 'local';\n } else {\n $scope.endpointType = 'remote';\n }\n\n endpoint.URL = $filter('stripprotocol')(endpoint.URL);\n\n if (\n endpoint.Type === PortainerEndpointTypes.EdgeAgentOnDockerEnvironment ||\n endpoint.Type === PortainerEndpointTypes.EdgeAgentOnKubernetesEnvironment ||\n endpoint.Type === PortainerEndpointTypes.EdgeAgentOnNomadEnvironment\n ) {\n $scope.edgeKeyDetails = decodeEdgeKey(endpoint.EdgeKey);\n\n $scope.state.edgeAssociated = !!endpoint.EdgeID;\n endpoint.EdgeID = endpoint.EdgeID || uuidv4();\n\n $scope.state.availableEdgeAgentCheckinOptions[0].key += ` (${settings.EdgeAgentCheckinInterval} seconds)`;\n }\n\n $scope.endpoint = endpoint;\n $scope.initialTagIds = endpoint.TagIds.slice();\n $scope.groups = groups;\n\n configureState();\n\n if (EndpointHelper.isDockerEndpoint(endpoint) && $scope.state.edgeAssociated) {\n $scope.state.showAMTInfo = settings && settings.openAMTConfiguration && settings.openAMTConfiguration.enabled;\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment details');\n }\n\n if ($scope.state.showAMTInfo) {\n try {\n $scope.endpoint.ManagementInfo = {};\n const amtInfo = await getAMTInfo($state.params.id);\n try {\n $scope.endpoint.ManagementInfo = JSON.parse(amtInfo.RawOutput);\n } catch (err) {\n clearAMTManagementInfo(amtInfo.RawOutput);\n }\n } catch (err) {\n clearAMTManagementInfo('Unable to retrieve AMT environment details');\n }\n }\n });\n }\n\n function clearAMTManagementInfo(versionValue) {\n $scope.endpoint.ManagementInfo['AMT'] = versionValue;\n $scope.endpoint.ManagementInfo['UUID'] = '-';\n $scope.endpoint.ManagementInfo['Control Mode'] = '-';\n $scope.endpoint.ManagementInfo['Build Number'] = '-';\n $scope.endpoint.ManagementInfo['DNS Suffix'] = '-';\n }\n\n initView();\n}\n","import angular from 'angular';\nimport EndpointHelper from '@/portainer/helpers/endpointHelper';\nimport { getEnvironments } from '@/portainer/environments/environment.service';\n\nangular.module('portainer.app').controller('EndpointsController', EndpointsController);\n\nfunction EndpointsController($q, $scope, $state, $async, EndpointService, GroupService, ModalService, Notifications, EndpointProvider, StateManager) {\n $scope.state = {\n loadingMessage: '',\n };\n\n $scope.setLoadingMessage = setLoadingMessage;\n function setLoadingMessage(message) {\n $scope.state.loadingMessage = message;\n }\n\n $scope.removeAction = removeAction;\n function removeAction(endpoints) {\n ModalService.confirmDeletion('This action will remove all configurations associated to your environment(s). Continue?', (confirmed) => {\n if (!confirmed) {\n return;\n }\n return $async(removeActionAsync, endpoints);\n });\n }\n\n async function removeActionAsync(endpoints) {\n for (let endpoint of endpoints) {\n try {\n await EndpointService.deleteEndpoint(endpoint.Id);\n\n Notifications.success('Environment successfully removed', endpoint.Name);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to remove environment');\n }\n }\n\n const endpointId = EndpointProvider.endpointID();\n // If the current endpoint was deleted, then clean endpoint store\n if (endpoints.some((item) => item.Id === endpointId)) {\n StateManager.cleanEndpoint();\n // trigger sidebar rerender\n $scope.applicationState.endpoint = {};\n }\n\n $state.reload();\n }\n\n $scope.getPaginatedEndpoints = getPaginatedEndpoints;\n function getPaginatedEndpoints(start, limit, search) {\n const deferred = $q.defer();\n $q.all({\n endpoints: getEnvironments({ start, limit, query: { search } }),\n groups: GroupService.groups(),\n })\n .then(function success(data) {\n var endpoints = data.endpoints.value;\n var groups = data.groups;\n EndpointHelper.mapGroupNameToEndpoint(endpoints, groups);\n deferred.resolve({ endpoints: endpoints, totalCount: data.endpoints.totalCount });\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment information');\n });\n return deferred.promise;\n }\n}\n","export function getAgentShortVersion(agentVersion) {\n const numbers = agentVersion.split('.');\n return numbers[0] + '-' + numbers[1];\n}\n","import angular from 'angular';\n\nimport { enableDeviceFeatures } from 'Portainer/hostmanagement/open-amt/open-amt.service';\n\nclass EndpointKVMController {\n /* @ngInject */\n constructor($state, $scope, $async, $transition$, EndpointService, Notifications) {\n this.$state = $state;\n this.$scope = $scope;\n this.$async = $async;\n this.$transition$ = $transition$;\n this.Notifications = Notifications;\n this.EndpointService = EndpointService;\n\n this.$state.maximized = false;\n this.$state.endpointId = $transition$.params().id;\n this.$state.deviceId = $transition$.params().deviceId;\n this.$state.deviceName = $transition$.params().deviceName;\n\n $scope.maximize = function () {\n this.$state.maximized = true;\n };\n\n $scope.minimize = function () {\n this.$state.maximized = false;\n };\n }\n\n async $onInit() {\n this.$async(async () => {\n try {\n this.$state.endpoint = await this.EndpointService.endpoint(this.$state.endpointId);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve environment information');\n }\n\n try {\n const features = {\n ider: true,\n kvm: true,\n sol: true,\n redirection: true,\n userConsent: 'none',\n };\n const mpsAuthorization = await enableDeviceFeatures(this.$state.endpointId, this.$state.deviceId, features);\n\n this.$state.mpsServer = mpsAuthorization.Server;\n this.$state.mpsToken = mpsAuthorization.Token;\n } catch (e) {\n this.Notifications.error('Failure', e, `Failed to load kvm for device`);\n }\n });\n }\n}\n\nexport default EndpointKVMController;\nangular.module('portainer.app').controller('EndpointKVMController', EndpointKVMController);\n","import { KVM } from '@open-amt-cloud-toolkit/ui-toolkit-react/reactjs/src/kvm.bundle';\n\nimport { react2angular } from '@/react-tools/react2angular';\n\nimport './KVMControl.css';\n\nexport interface KVMControlProps {\n deviceId: string;\n server: string;\n token: string;\n}\n\nexport function KVMControl({ deviceId, server, token }: KVMControlProps) {\n if (!deviceId || !server || !token) return
    Loading...
    ;\n\n return (\n \n );\n}\n\nexport const KVMControlAngular = react2angular(KVMControl, [\n 'deviceId',\n 'server',\n 'token',\n]);\n","import angular from 'angular';\n\nimport { KVMControlAngular } from '@/portainer/views/endpoints/kvm/KVMControl';\n\nangular.module('portainer.app').component('kvmControl', KVMControlAngular).name;\n","import { FeatureId } from '@/portainer/feature-flags/enums';\n\nangular.module('portainer.app').controller('GroupAccessController', [\n '$scope',\n '$state',\n '$transition$',\n 'GroupService',\n 'Notifications',\n function ($scope, $state, $transition$, GroupService, Notifications) {\n $scope.limitedFeature = FeatureId.RBAC_ROLES;\n\n $scope.updateAccess = function () {\n $scope.state.actionInProgress = true;\n GroupService.updateGroup($scope.group, $scope.group.AssociatedEndpoints)\n .then(() => {\n Notifications.success('Success', 'Access successfully updated');\n $state.reload();\n })\n .catch((err) => {\n $scope.state.actionInProgress = false;\n Notifications.error('Failure', err, 'Unable to update accesses');\n });\n };\n\n function initView() {\n var groupId = $transition$.params().id;\n\n $scope.state = { actionInProgress: false };\n GroupService.group(groupId)\n .then(function success(data) {\n $scope.group = data;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to load view');\n });\n }\n\n initView();\n },\n]);\n","import { EndpointGroupDefaultModel } from '../../../models/group';\n\nangular.module('portainer.app').controller('CreateGroupController', function CreateGroupController($async, $scope, $state, GroupService, Notifications) {\n $scope.state = {\n actionInProgress: false,\n };\n\n $scope.create = function () {\n var model = $scope.model;\n\n var associatedEndpoints = [];\n for (var i = 0; i < $scope.associatedEndpoints.length; i++) {\n var endpoint = $scope.associatedEndpoints[i];\n associatedEndpoints.push(endpoint.Id);\n }\n\n $scope.state.actionInProgress = true;\n GroupService.createGroup(model, associatedEndpoints)\n .then(function success() {\n Notifications.success('Success', 'Group successfully created');\n $state.go('portainer.groups', {}, { reload: true });\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to create group');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n function initView() {\n $scope.associatedEndpoints = [];\n $scope.model = new EndpointGroupDefaultModel();\n $scope.loaded = true;\n }\n\n initView();\n});\n","angular.module('portainer.app').controller('GroupController', function GroupController($q, $scope, $state, $transition$, GroupService, Notifications) {\n $scope.state = {\n actionInProgress: false,\n };\n\n $scope.update = function () {\n var model = $scope.group;\n\n $scope.state.actionInProgress = true;\n GroupService.updateGroup(model)\n .then(function success() {\n Notifications.success('Success', 'Group successfully updated');\n $state.go('portainer.groups', {}, { reload: true });\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update group');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n function initView() {\n var groupId = $transition$.params().id;\n\n $q.all({\n group: GroupService.group(groupId),\n })\n .then(function success(data) {\n $scope.group = data.group;\n $scope.loaded = true;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to load group details');\n });\n }\n\n initView();\n});\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nangular.module('portainer.app').controller('GroupsController', GroupsController);\n\nfunction GroupsController($scope, $state, $async, GroupService, Notifications) {\n $scope.removeAction = removeAction;\n\n function removeAction(selectedItems) {\n return $async(removeActionAsync, selectedItems);\n }\n\n async function removeActionAsync(selectedItems) {\n for (let group of selectedItems) {\n try {\n await GroupService.deleteGroup(group.Id);\n\n Notifications.success('Environment group successfully removed', group.Name);\n _.remove($scope.groups, group);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to remove group');\n }\n }\n\n $state.reload();\n }\n\n function initView() {\n GroupService.groups()\n .then(function success(data) {\n $scope.groups = data;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve environment groups');\n $scope.groups = [];\n });\n }\n\n initView();\n}\n","angular.module('portainer.app').controller('InitAdminController', [\n '$scope',\n '$state',\n 'Notifications',\n 'Authentication',\n 'StateManager',\n 'SettingsService',\n 'UserService',\n 'BackupService',\n 'StatusService',\n function ($scope, $state, Notifications, Authentication, StateManager, SettingsService, UserService, BackupService, StatusService) {\n $scope.uploadBackup = uploadBackup;\n $scope.restoreFromS3 = restoreFromS3;\n $scope.logo = StateManager.getState().application.logo;\n $scope.RESTORE_FORM_TYPES = { S3: 's3', FILE: 'file' };\n $scope.formValues = {\n Username: 'admin',\n Password: '',\n ConfirmPassword: '',\n enableTelemetry: process.env.NODE_ENV === 'production',\n restoreFormType: $scope.RESTORE_FORM_TYPES.FILE,\n };\n\n $scope.state = {\n actionInProgress: false,\n showInitPassword: true,\n showRestorePortainer: false,\n };\n\n createAdministratorFlow();\n\n $scope.togglePanel = function () {\n $scope.state.showInitPassword = !$scope.state.showInitPassword;\n $scope.state.showRestorePortainer = !$scope.state.showRestorePortainer;\n };\n\n $scope.createAdminUser = function () {\n var username = $scope.formValues.Username;\n var password = $scope.formValues.Password;\n\n $scope.state.actionInProgress = true;\n UserService.initAdministrator(username, password)\n .then(function success() {\n return Authentication.login(username, password);\n })\n .then(function success() {\n return SettingsService.update({ enableTelemetry: $scope.formValues.enableTelemetry });\n })\n .then(() => {\n return StateManager.initialize();\n })\n .then(function () {\n return $state.go('portainer.init.license');\n })\n .catch(function error(err) {\n handleError(err);\n Notifications.error('Failure', err, 'Unable to create administrator user');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n function handleError(err) {\n if (err.status === 303) {\n const headers = err.headers();\n const REDIRECT_REASON_TIMEOUT = 'AdminInitTimeout';\n if (headers && headers['redirect-reason'] === REDIRECT_REASON_TIMEOUT) {\n window.location.href = '/timeout.html';\n }\n }\n }\n\n function createAdministratorFlow() {\n SettingsService.publicSettings()\n .then(function success(data) {\n $scope.requiredPasswordLength = data.RequiredPasswordLength;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n });\n\n UserService.administratorExists()\n .then(function success(exists) {\n if (exists) {\n $state.go('portainer.wizard');\n }\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to verify administrator account existence');\n });\n }\n\n async function uploadBackup() {\n $scope.state.backupInProgress = true;\n const file = $scope.formValues.BackupFile;\n const password = $scope.formValues.Password;\n\n restoreAndRefresh(() => BackupService.uploadBackup(file, password));\n }\n\n async function restoreFromS3() {\n $scope.state.backupInProgress = true;\n\n const payload = {\n AccessKeyID: $scope.formValues.AccessKeyId,\n CronRule: $scope.formValues.CronRule,\n Password: $scope.formValues.Password,\n SecretAccessKey: $scope.formValues.SecretAccessKey,\n Region: $scope.formValues.Region,\n BucketName: $scope.formValues.BucketName,\n Filename: $scope.formValues.Filename,\n };\n\n restoreAndRefresh(() => BackupService.restoreFromS3(payload));\n }\n\n async function restoreAndRefresh(restoreAsyncFn) {\n $scope.state.backupInProgress = true;\n\n try {\n await restoreAsyncFn();\n } catch (err) {\n handleError(err);\n Notifications.error('Failure', err, 'Unable to restore the backup');\n $scope.state.backupInProgress = false;\n\n return;\n }\n\n try {\n await waitPortainerRestart();\n Notifications.success('Success', 'The backup has successfully been restored');\n $state.go('portainer.auth');\n } catch (err) {\n handleError(err);\n Notifications.error('Failure', err, 'Unable to check for status');\n await wait(2);\n location.reload();\n }\n\n $scope.state.backupInProgress = false;\n }\n\n async function waitPortainerRestart() {\n for (let i = 0; i < 10; i++) {\n await wait(5);\n try {\n const status = await StatusService.status();\n if (status && status.Version) {\n return;\n }\n } catch (e) {\n // pass\n }\n }\n throw new Error('Timeout to wait for Portainer restarting');\n }\n },\n]);\n\nfunction wait(seconds = 0) {\n return new Promise((resolve) => setTimeout(resolve, seconds * 1000));\n}\n","import _ from 'lodash-es';\nimport angular from 'angular';\nimport { PortainerEndpointInitFormValueEndpointSections, PortainerEndpointInitFormValues } from 'Portainer/models/endpoint/formValues';\nimport { PortainerEndpointConnectionTypes, PortainerEndpointCreationTypes, PortainerEndpointTypes } from 'Portainer/models/endpoint/models';\n\nrequire('./includes/localDocker.html');\nrequire('./includes/localKubernetes.html');\nrequire('./includes/agent.html');\n\nclass InitEndpointController {\n /* @ngInject */\n constructor($async, $scope, $state, EndpointService, StateManager, Notifications) {\n this.$async = $async;\n this.$scope = $scope;\n this.$state = $state;\n this.EndpointService = EndpointService;\n this.StateManager = StateManager;\n this.Notifications = Notifications;\n\n this.createLocalEndpointAsync = this.createLocalEndpointAsync.bind(this);\n this.createLocalKubernetesEndpointAsync = this.createLocalKubernetesEndpointAsync.bind(this);\n this.createAgentEndpointAsync = this.createAgentEndpointAsync.bind(this);\n }\n\n $onInit() {\n if (!_.isEmpty(this.$scope.applicationState.endpoint)) {\n this.$state.go('portainer.home');\n }\n this.logo = this.StateManager.getState().application.logo;\n\n this.state = {\n uploadInProgress: false,\n actionInProgress: false,\n };\n\n this.formValues = new PortainerEndpointInitFormValues();\n this.endpointSections = PortainerEndpointInitFormValueEndpointSections;\n this.PortainerEndpointConnectionTypes = PortainerEndpointConnectionTypes;\n }\n\n isConnectButtonDisabled() {\n switch (this.formValues.ConnectionType) {\n case PortainerEndpointConnectionTypes.DOCKER_LOCAL:\n return this.state.actionInProgress;\n case PortainerEndpointConnectionTypes.KUBERNETES_LOCAL:\n return this.state.actionInProgress;\n case PortainerEndpointConnectionTypes.AGENT:\n return this.state.actionInProgress || !this.formValues.Name || !this.formValues.URL;\n default:\n break;\n }\n }\n\n createEndpoint() {\n switch (this.formValues.ConnectionType) {\n case PortainerEndpointConnectionTypes.DOCKER_LOCAL:\n return this.createLocalEndpoint();\n case PortainerEndpointConnectionTypes.KUBERNETES_LOCAL:\n return this.createLocalKubernetesEndpoint();\n case PortainerEndpointConnectionTypes.AGENT:\n return this.createAgentEndpoint();\n default:\n this.Notifications.error('Failure', null, 'Unable to determine which action to do to create environment');\n }\n }\n\n skipEndpointCreation() {\n this.$state.go('portainer.home');\n }\n\n /**\n * DOCKER_LOCAL (1)\n */\n async createLocalEndpointAsync() {\n try {\n this.state.actionInProgress = true;\n await this.EndpointService.createLocalEndpoint();\n this.$state.go('portainer.home');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to connect to the Docker environment');\n } finally {\n this.state.actionInProgress = false;\n }\n }\n\n createLocalEndpoint() {\n return this.$async(this.createLocalEndpointAsync);\n }\n\n /**\n * KUBERNETES_LOCAL (5)\n */\n async createLocalKubernetesEndpointAsync() {\n try {\n this.state.actionInProgress = true;\n const endpoint = await this.EndpointService.createLocalKubernetesEndpoint();\n this.$state.go('kubernetes.cluster.setup', { endpointId: endpoint.Id });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to connect to the Kubernetes environment');\n } finally {\n this.state.actionInProgress = false;\n }\n }\n\n createLocalKubernetesEndpoint() {\n return this.$async(this.createLocalKubernetesEndpointAsync);\n }\n\n /**\n * DOCKER / KUBERNETES AGENT (2 / 6)\n */\n async createAgentEndpointAsync() {\n try {\n this.state.actionInProgress = true;\n const name = this.formValues.Name;\n const URL = this.formValues.URL;\n const PublicURL = URL.split(':')[0];\n\n const endpoint = await this.EndpointService.createRemoteEndpoint(\n name,\n PortainerEndpointCreationTypes.AgentEnvironment,\n URL,\n PublicURL,\n 1,\n [],\n true,\n true,\n true,\n null,\n null,\n null\n );\n const routeName = endpoint.Type === PortainerEndpointTypes.AgentOnKubernetesEnvironment ? 'kubernetes.cluster.setup' : 'portainer.home';\n this.$state.go(routeName, { endpointId: endpoint.Id });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to connect to the Docker environment');\n } finally {\n this.state.actionInProgress = false;\n }\n }\n\n createAgentEndpoint() {\n return this.$async(this.createAgentEndpointAsync);\n }\n}\n\nexport default InitEndpointController;\nangular.module('portainer.app').controller('InitEndpointController', InitEndpointController);\n","const autoNgTemplateLoaderTemplate1 = require('./init-license.view.html');\n\nimport controller from './init-license.view.controller.js';\n\nangular.module('portainer.app').component('initLicenseView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","export default class InitLicenseViewController {\n /* @ngInject */\n constructor($async, $state, LicenseService, Notifications, Authentication) {\n this.$async = $async;\n this.$state = $state;\n this.LicenseService = LicenseService;\n this.Notifications = Notifications;\n this.Authentication = Authentication;\n\n this.license = '';\n this.state = {\n actionInProgress: false,\n formError: '',\n };\n\n this.submit = this.submit.bind(this);\n }\n\n isFormValid() {\n return !!this.license;\n }\n\n async submit() {\n return this.$async(async () => {\n this.state.formError = '';\n if (!this.isFormValid()) {\n this.state.formError = 'Form is invalid';\n return;\n }\n\n this.state.actionInProgress = true;\n\n try {\n const { failedKeys } = await this.LicenseService.attach([this.license]);\n\n if (failedKeys[this.license]) {\n throw new Error(failedKeys[this.license]);\n }\n\n let path = 'portainer.wizard';\n if (this.Authentication.getUserDetails().forceChangePassword) {\n path = 'portainer.account';\n }\n this.$state.go(path);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Failed validating licenses');\n } finally {\n this.state.actionInProgress = false;\n }\n });\n }\n}\n","import angular from 'angular';\nimport { getEnvironments } from '@/portainer/environments/environment.service';\n\nclass InternalAuthenticationController {\n /* @ngInject */\n constructor($async, $analytics, $scope, $state, $stateParams, $window, Authentication, UserService, StateManager, Notifications, LocalStorage, StatusService, LicenseService) {\n this.$async = $async;\n this.$analytics = $analytics;\n this.$scope = $scope;\n this.$state = $state;\n this.$stateParams = $stateParams;\n this.$window = $window;\n this.Authentication = Authentication;\n this.UserService = UserService;\n this.StateManager = StateManager;\n this.Notifications = Notifications;\n this.LocalStorage = LocalStorage;\n this.StatusService = StatusService;\n this.LicenseService = LicenseService;\n this.logo = this.StateManager.getState().application.logo;\n this.formValues = {\n Username: '',\n Password: '',\n };\n this.state = {\n AuthenticationError: '',\n loginInProgress: true,\n };\n\n this.checkForEndpointsAsync = this.checkForEndpointsAsync.bind(this);\n this.checkForLicensesAsync = this.checkForLicensesAsync.bind(this);\n this.postLoginSteps = this.postLoginSteps.bind(this);\n this.internalLoginAsync = this.internalLoginAsync.bind(this);\n this.authenticateUserAsync = this.authenticateUserAsync.bind(this);\n this.authEnabledFlowAsync = this.authEnabledFlowAsync.bind(this);\n this.onInit = this.onInit.bind(this);\n }\n\n /**\n * UTILS FUNCTIONS SECTION\n */\n\n logout(error) {\n this.Authentication.logout();\n this.state.loginInProgress = false;\n this.LocalStorage.storeLogoutReason(error);\n this.$window.location.reload();\n }\n\n error(err, message) {\n this.state.AuthenticationError = message;\n if (!err) {\n err = {};\n }\n this.Notifications.error('Failure', err, message);\n this.state.loginInProgress = false;\n }\n\n /**\n * END UTILS FUNCTIONS SECTION\n */\n\n /**\n * POST LOGIN STEPS SECTION\n */\n\n async checkForEndpointsAsync() {\n try {\n const endpoints = await getEnvironments({ limit: 1 });\n\n if (endpoints.value.length === 0) {\n return 'portainer.init.endpoint';\n }\n } catch (err) {\n this.error(err, 'Unable to retrieve environments');\n }\n return 'portainer.home';\n }\n\n async checkForLicensesAsync() {\n try {\n const info = await this.LicenseService.info();\n\n if (!info.valid) {\n return 'portainer.init.license';\n }\n } catch (err) {\n this.error(err, 'Unable to retrieve licenses info');\n }\n }\n\n async postLoginSteps() {\n await this.StateManager.initialize();\n\n const isAdmin = this.Authentication.isAdmin();\n this.$analytics.setUserRole(isAdmin ? 'admin' : 'standard-user');\n\n let path = 'portainer.home';\n if (this.Authentication.getUserDetails().forceChangePassword) {\n path = 'portainer.account';\n }\n if (isAdmin) {\n path = await this.checkForLicensesAsync();\n if (!path) {\n path = await this.checkForEndpointsAsync();\n }\n }\n this.$state.go(path);\n }\n /**\n * END POST LOGIN STEPS SECTION\n */\n\n /**\n * LOGIN METHODS SECTION\n */\n\n async internalLoginAsync(username, password) {\n await this.Authentication.login(username, password);\n await this.postLoginSteps();\n }\n\n /**\n * END LOGIN METHODS SECTION\n */\n\n /**\n * AUTHENTICATE USER SECTION\n */\n\n async authenticateUserAsync() {\n try {\n var username = this.formValues.Username;\n var password = this.formValues.Password;\n this.state.loginInProgress = true;\n await this.internalLoginAsync(username, password);\n } catch (err) {\n if (err.status === 402) {\n // When the free subscription license is enforced\n this.error(err, err.data.message);\n return;\n }\n this.error(err, 'Unable to login');\n }\n }\n\n authenticateUser() {\n return this.$async(this.authenticateUserAsync);\n }\n\n /**\n * END AUTHENTICATE USER SECTION\n */\n\n /**\n * ON INIT SECTION\n */\n\n async authEnabledFlowAsync() {\n try {\n const exists = await this.UserService.administratorExists();\n if (!exists) {\n this.$state.go('portainer.init.admin');\n }\n } catch (err) {\n this.error(err, 'Unable to verify administrator account existence');\n }\n }\n\n async onInit() {\n if (this.$stateParams.logout || this.$stateParams.error) {\n this.logout(this.$stateParams.error);\n return;\n }\n\n const error = this.LocalStorage.getLogoutReason();\n if (error) {\n this.state.AuthenticationError = error;\n this.LocalStorage.cleanLogoutReason();\n }\n\n this.state.loginInProgress = false;\n\n await this.authEnabledFlowAsync();\n }\n\n $onInit() {\n return this.$async(this.onInit);\n }\n\n /**\n * END ON INIT SECTION\n */\n}\n\nexport default InternalAuthenticationController;\nangular.module('portainer.app').controller('InternalAuthenticationController', InternalAuthenticationController);\n","import angular from 'angular';\n\nclass LogoutController {\n /* @ngInject */\n constructor($async, $state, $transition$, $window, Authentication, StateManager, Notifications, LocalStorage, SettingsService) {\n this.$async = $async;\n this.$state = $state;\n this.$transition$ = $transition$;\n this.$window = $window;\n\n this.Authentication = Authentication;\n this.StateManager = StateManager;\n this.Notifications = Notifications;\n this.LocalStorage = LocalStorage;\n this.SettingsService = SettingsService;\n\n this.logo = this.StateManager.getState().application.logo;\n this.logoutAsync = this.logoutAsync.bind(this);\n\n this.onInit = this.onInit.bind(this);\n }\n\n /**\n * UTILS FUNCTIONS SECTION\n */\n async logoutAsync() {\n const error = this.$transition$.params().error;\n const performApiLogout = this.$transition$.params().performApiLogout;\n const settings = await this.SettingsService.publicSettings();\n\n try {\n await this.Authentication.logout(performApiLogout);\n } finally {\n this.LocalStorage.storeLogoutReason(error);\n if (settings.OAuthLogoutURI && this.Authentication.getUserDetails().ID !== 1) {\n this.$window.location.href = settings.OAuthLogoutURI;\n } else {\n this.$state.go('portainer.auth', { reload: true });\n }\n }\n }\n\n logout() {\n return this.$async(this.logoutAsync);\n }\n\n /**\n * END UTILS FUNCTIONS SECTION\n */\n\n async onInit() {\n try {\n await this.logout();\n } catch (err) {\n this.Notifications.error('Failure', err, 'An error occured during logout');\n }\n }\n\n $onInit() {\n return this.$async(this.onInit);\n }\n\n /**\n * END ON INIT SECTION\n */\n}\n\nexport default LogoutController;\nangular.module('portainer.app').controller('LogoutController', LogoutController);\n","angular.module('portainer.app').controller('MainController', MainController);\n\n/* @ngInject */\nfunction MainController($scope, StateManager, ThemeManager, SidebarService) {\n /**\n * Sidebar Toggle & Cookie Control\n */\n\n $scope.applicationState = StateManager.getState();\n\n $scope.isSidebarOpen = SidebarService.isSidebarOpen;\n\n ThemeManager.autoTheme();\n}\n","const autoNgTemplateLoaderTemplate1 = require('./createRegistry.html');\n\nimport angular from 'angular';\nimport CreateRegistryController from './createRegistryController';\n\nangular.module('portainer.app').component('createRegistry', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller: CreateRegistryController,\n bindings: {\n $transition$: '<',\n },\n});\n","import { Edit } from 'react-feather';\n\nimport Docker from '@/assets/ico/vendor/docker.svg?c';\nimport Ecr from '@/assets/ico/vendor/ecr.svg?c';\nimport Quay from '@/assets/ico/vendor/quay.svg?c';\nimport Proget from '@/assets/ico/vendor/proget.svg?c';\nimport Azure from '@/assets/ico/vendor/azure.svg?c';\nimport Gitlab from '@/assets/ico/vendor/gitlab.svg?c';\n\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nexport const options = [\n {\n id: 'registry_dockerhub',\n icon: Docker,\n label: 'DockerHub',\n description: 'DockerHub authenticated account',\n value: '6',\n },\n {\n id: 'registry_aws_ecr',\n icon: Ecr,\n label: 'AWS ECR',\n description: 'Amazon elastic container registry',\n value: '7',\n },\n {\n id: 'registry_quay',\n icon: Quay,\n label: 'Quay.io',\n description: 'Quay container registry',\n value: '1',\n },\n {\n id: 'registry_proget',\n icon: Proget,\n label: 'ProGet',\n description: 'ProGet container registry',\n value: '5',\n },\n {\n id: 'registry_azure',\n icon: Azure,\n label: 'Azure',\n description: 'Azure container registry',\n value: '2',\n },\n {\n id: 'registry_gitlab',\n icon: Gitlab,\n label: 'Gitlab',\n description: 'Gitlab container registry',\n value: '4',\n },\n {\n id: 'registry_custom',\n icon: ,\n label: 'Custom registry',\n description: 'Define your own registry',\n value: '3',\n },\n];\n","import _ from 'lodash';\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\nimport { RegistryCreateFormValues } from 'Portainer/models/registry';\nimport { options } from './options';\n\nclass CreateRegistryController {\n /* @ngInject */\n constructor($async, $state, Notifications, RegistryService, RegistryGitlabService) {\n Object.assign(this, { $async, $state, Notifications, RegistryService, RegistryGitlabService });\n\n this.RegistryTypes = RegistryTypes;\n this.state = {\n actionInProgress: false,\n overrideConfiguration: false,\n gitlab: {\n get selectedItemCount() {\n return this.selectedItems.length || 0;\n },\n selectedItems: [],\n },\n originViewReference: 'portainer.registries',\n originalEndpointId: null,\n };\n\n this.createRegistry = this.createRegistry.bind(this);\n this.getRegistries = this.getRegistries.bind(this);\n this.nameIsUsed = this.nameIsUsed.bind(this);\n this.retrieveGitlabRegistries = this.retrieveGitlabRegistries.bind(this);\n this.createGitlabRegistries = this.createGitlabRegistries.bind(this);\n\n this.selectDockerHub = this.selectDockerHub.bind(this);\n this.selectEcr = this.selectEcr.bind(this);\n this.selectQuayRegistry = this.selectQuayRegistry.bind(this);\n this.selectProGetRegistry = this.selectProGetRegistry.bind(this);\n this.selectAzureRegistry = this.selectAzureRegistry.bind(this);\n this.selectGitlabRegistry = this.selectGitlabRegistry.bind(this);\n this.selectCustomRegistry = this.selectCustomRegistry.bind(this);\n\n this.setRegistry = this.setRegistry.bind(this);\n }\n\n useDefaultQuayConfiguration() {\n this.model.Quay.useOrganisation = false;\n this.model.Quay.organisationName = '';\n }\n\n selectQuayRegistry() {\n this.model.Name = 'Quay';\n this.model.URL = 'quay.io';\n this.model.Authentication = true;\n this.model.Quay = {};\n this.useDefaultQuayConfiguration();\n this.model.Type = RegistryTypes.QUAY;\n }\n\n useDefaultGitlabConfiguration() {\n this.model.URL = 'https://registry.gitlab.com';\n this.model.Gitlab.InstanceURL = 'https://gitlab.com';\n }\n\n selectGitlabRegistry() {\n this.model.Name = '';\n this.model.Authentication = true;\n this.model.Gitlab = {};\n this.useDefaultGitlabConfiguration();\n this.model.Type = RegistryTypes.GITLAB;\n }\n\n selectAzureRegistry() {\n this.model.Name = '';\n this.model.URL = '';\n this.model.Authentication = true;\n this.model.Type = RegistryTypes.AZURE;\n }\n\n selectProGetRegistry() {\n this.model.Name = '';\n this.model.URL = '';\n this.model.BaseURL = '';\n this.model.Authentication = true;\n this.model.Type = RegistryTypes.PROGET;\n }\n\n selectDockerHub() {\n this.model.Name = '';\n this.model.URL = 'docker.io';\n this.model.Authentication = true;\n this.model.Type = RegistryTypes.DOCKERHUB;\n }\n\n selectCustomRegistry() {\n this.model.Name = '';\n this.model.URL = '';\n this.model.Authentication = false;\n this.model.Type = RegistryTypes.CUSTOM;\n }\n\n useDefaultEcrConfiguration() {\n this.model.Ecr.Region = '';\n }\n\n selectEcr() {\n this.model.Name = '';\n this.model.URL = '';\n this.model.Authentication = false;\n this.model.Ecr = {};\n this.useDefaultEcrConfiguration();\n this.model.Type = RegistryTypes.ECR;\n }\n\n retrieveGitlabRegistries() {\n return this.$async(async () => {\n this.state.actionInProgress = true;\n try {\n this.gitlabProjects = await this.RegistryGitlabService.projects(this.model.Gitlab.InstanceURL, this.model.Token);\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve projects');\n } finally {\n this.state.actionInProgress = false;\n }\n });\n }\n\n createGitlabRegistries() {\n return this.$async(async () => {\n try {\n this.state.actionInProgress = true;\n await this.RegistryService.createGitlabRegistries(this.model, this.state.gitlab.selectedItems);\n this.Notifications.success('Success', 'Registries successfully created');\n this.$state.go(this.state.originViewReference, { endpointId: this.state.originalEndpointId });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to create registries');\n this.state.actionInProgress = false;\n }\n });\n }\n\n createRegistry() {\n return this.$async(async () => {\n try {\n this.state.actionInProgress = true;\n await this.RegistryService.createRegistry(this.model);\n this.Notifications.success('Success', 'Registry successfully created');\n this.$state.go(this.state.originViewReference, { endpointId: this.state.originalEndpointId });\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to create registry');\n this.state.actionInProgress = false;\n }\n });\n }\n\n nameIsUsed(name) {\n return _.includes(this.registriesNames, name);\n }\n\n getRegistries() {\n return this.$async(async () => {\n try {\n const registries = await this.RegistryService.registries();\n this.registriesNames = _.map(registries, 'Name');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to fetch existing registries');\n }\n });\n }\n\n setRegistry(registry) {\n this.state.registryValue = registry;\n\n switch (registry) {\n case '6':\n this.selectDockerHub();\n break;\n case '7':\n this.selectEcr();\n break;\n case '1':\n this.selectQuayRegistry();\n break;\n case '5':\n this.selectProGetRegistry();\n break;\n case '2':\n this.selectAzureRegistry();\n break;\n case '4':\n this.selectGitlabRegistry();\n break;\n case '3':\n this.selectCustomRegistry();\n break;\n }\n }\n\n $onInit() {\n return this.$async(async () => {\n this.model = new RegistryCreateFormValues();\n this.model.Type = RegistryTypes.DOCKERHUB;\n this.selectDockerHub();\n this.state.availableRegistry = options;\n // Default registryValue is DockerHub, which is 6\n this.state.registryValue = '6';\n\n const from = this.$transition$.from();\n const params = this.$transition$.params('from');\n\n if (from.name && /^[a-z]+\\.registries$/.test(from.name)) {\n this.state.originViewReference = from;\n this.state.originalEndpointId = params.endpointId || null;\n }\n await this.getRegistries();\n });\n }\n}\n\nexport default CreateRegistryController;\n","const autoNgTemplateLoaderTemplate1 = require('./registry.html');\n\nimport angular from 'angular';\nimport controller from './registryController';\n\nangular.module('portainer.app').component('editRegistry', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n bindings: {\n $transition$: '<',\n },\n});\n","import _ from 'lodash';\nimport { RegistryTypes } from '@/portainer/models/registryTypes';\n\nexport default class RegistryController {\n /* @ngInject */\n constructor($scope, $async, $state, RegistryService, Notifications) {\n this.$scope = $scope;\n Object.assign(this, { $async, $state, RegistryService, Notifications });\n\n this.RegistryTypes = RegistryTypes;\n\n this.state = {\n actionInProgress: false,\n loading: false,\n };\n\n this.Password = '';\n\n this.toggleAuthentication = this.toggleAuthentication.bind(this);\n this.toggleQuayUseOrganisation = this.toggleQuayUseOrganisation.bind(this);\n }\n\n toggleAuthentication(newValue) {\n this.$scope.$evalAsync(() => {\n this.registry.Authentication = newValue;\n });\n }\n\n toggleQuayUseOrganisation(newValue) {\n this.$scope.$evalAsync(() => {\n this.registry.Quay.UseOrganisation = newValue;\n });\n }\n\n passwordLabel() {\n const type = this.registry.Type;\n switch (type) {\n case RegistryTypes.ECR:\n return 'AWS Secret Access Key';\n case RegistryTypes.DOCKERHUB:\n return 'Access token';\n case RegistryTypes.GITLAB:\n return 'Personal Access Token';\n default:\n return 'Password';\n }\n }\n\n updateRegistry() {\n return this.$async(async () => {\n try {\n this.state.actionInProgress = true;\n const registry = this.registry;\n registry.Password = this.Password;\n\n await this.RegistryService.updateRegistry(registry);\n this.Notifications.success('Success', 'Registry successfully updated');\n this.$state.go('portainer.registries');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to update registry');\n } finally {\n this.state.actionInProgress = false;\n }\n });\n }\n\n onChangeName() {\n this.state.nameAlreadyExists = _.includes(this.registriesNames, this.registry.Name);\n }\n\n isUpdateButtonDisabled() {\n return (\n this.state.actionInProgress ||\n this.state.nameAlreadyExists ||\n !this.registry.Name ||\n !this.registry.URL ||\n (this.registry.Type == this.RegistryTypes.QUAY && this.registry.Quay.UseOrganisation && !this.registry.Quay.OrganisationName)\n );\n }\n\n getRegistryProvider(registryType) {\n switch (registryType) {\n case RegistryTypes.QUAY:\n return 'Quay.io';\n case RegistryTypes.AZURE:\n return 'Azure';\n case RegistryTypes.CUSTOM:\n return 'Custom';\n case RegistryTypes.GITLAB:\n return 'Gitlab';\n case RegistryTypes.PROGET:\n return 'ProGet';\n case RegistryTypes.DOCKERHUB:\n return 'Docker Hub';\n case RegistryTypes.ECR:\n return 'AWS ECR';\n default:\n return '';\n }\n }\n async $onInit() {\n try {\n this.state.loading = true;\n\n const registryId = this.$state.params.id;\n const registry = await this.RegistryService.registry(registryId);\n this.registry = registry;\n this.provider = this.getRegistryProvider(registry.Type);\n\n const registries = await this.RegistryService.registries();\n _.pullAllBy(registries, [registry], 'Id');\n this.registriesNames = _.map(registries, 'Name');\n } catch (err) {\n this.Notifications.error('Failure', err, 'Unable to retrieve registry details');\n } finally {\n this.state.loading = false;\n }\n }\n}\n","import _ from 'lodash-es';\nimport { RegistryTypes } from 'Portainer/models/registryTypes';\n\nangular.module('portainer.app').controller('RegistriesController', [\n '$q',\n '$scope',\n '$state',\n 'RegistryService',\n 'ModalService',\n 'Notifications',\n function ($q, $scope, $state, RegistryService, ModalService, Notifications) {\n $scope.state = {\n actionInProgress: false,\n };\n\n const nonBrowsableTypes = [RegistryTypes.ANONYMOUS, RegistryTypes.DOCKERHUB, RegistryTypes.QUAY];\n\n $scope.canBrowse = function (item) {\n return !_.includes(nonBrowsableTypes, item.Type);\n };\n\n $scope.removeAction = function (selectedItems) {\n const regAttrMsg = selectedItems.length > 1 ? 'hese' : 'his';\n const registriesMsg = selectedItems.length > 1 ? 'registries' : 'registry';\n const msg = `T${regAttrMsg} ${registriesMsg} might be used by applications inside one or more environments. Removing the ${registriesMsg} could lead to a service interruption for the applications using t${regAttrMsg} ${registriesMsg}. Do you want to remove the selected ${registriesMsg}?`;\n\n ModalService.confirmDeletion(msg, function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteSelectedRegistries(selectedItems);\n });\n };\n\n function deleteSelectedRegistries(selectedItems) {\n var actionCount = selectedItems.length;\n angular.forEach(selectedItems, function (registry) {\n RegistryService.deleteRegistry(registry.Id)\n .then(function success() {\n Notifications.success('Registry successfully removed', registry.Name);\n var index = $scope.registries.indexOf(registry);\n $scope.registries.splice(index, 1);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove registry');\n })\n .finally(function final() {\n --actionCount;\n if (actionCount === 0) {\n $state.reload();\n }\n });\n });\n }\n\n function initView() {\n $q.all({\n registries: RegistryService.registries(),\n })\n .then(function success(data) {\n $scope.registries = data.registries;\n })\n .catch(function error(err) {\n $scope.registries = [];\n Notifications.error('Failure', err, 'Unable to retrieve registries');\n });\n }\n\n initView();\n },\n]);\n","var _path, _path2;\n\nfunction _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nimport * as React from \"react\";\n\nvar SvgOauth = function SvgOauth(props) {\n return /*#__PURE__*/React.createElement(\"svg\", _extends({\n width: \"1em\",\n height: \"1em\",\n viewBox: \"0 0 36 40\",\n fill: \"none\",\n xmlns: \"http://www.w3.org/2000/svg\"\n }, props), _path || (_path = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m22.975 15.318-2.522-7.789H3.773l-2.522 7.789s-2.98 7.886 3.98 12.735c6.34 4.42 6.882 4.956 6.882 4.956s.542-.538 6.882-4.956c6.96-4.849 3.98-12.735 3.98-12.735Z\",\n fill: \"#F4552A\"\n })), _path2 || (_path2 = /*#__PURE__*/React.createElement(\"path\", {\n d: \"m12.115 7.605 2.688 7.678 8.185.166-6.524 4.91 2.371 7.78-6.72-4.642-6.72 4.642 2.371-7.78-6.524-4.91 8.185-.166 2.688-7.678Z\",\n fill: \"#fff\"\n })));\n};\n\nexport default SvgOauth;","import { ArrowDownCircle } from 'react-feather';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport Microsoft from '@/assets/ico/vendor/microsoft.svg?c';\nimport Ldap from '@/assets/ico/ldap.svg?c';\nimport OAuth from '@/assets/ico/oauth.svg?c';\n\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nexport const options = [\n {\n id: 'auth_internal',\n icon: ,\n label: 'Internal',\n description: 'Internal authentication mechanism',\n value: 1,\n },\n {\n id: 'auth_ldap',\n icon: Ldap,\n label: 'LDAP',\n description: 'LDAP authentication',\n value: 2,\n },\n {\n id: 'auth_ad',\n icon: Microsoft,\n label: 'Microsoft Active Directory',\n description: 'AD authentication',\n value: 4,\n feature: FeatureId.HIDE_INTERNAL_AUTH,\n },\n {\n id: 'auth_oauth',\n icon: OAuth,\n label: 'OAuth',\n description: 'OAuth authentication',\n value: 3,\n },\n];\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nimport { buildLdapSettingsModel, buildAdSettingsModel } from '@/portainer/settings/authentication/ldap/ldap-settings.model';\nimport { options } from './options';\n\nangular.module('portainer.app').controller('SettingsAuthenticationController', SettingsAuthenticationController);\n\nfunction SettingsAuthenticationController($q, $scope, $state, Notifications, SettingsService, FileUploadService, TeamService, LDAPService) {\n $scope.authMethod = 1;\n\n $scope.state = {\n uploadInProgress: false,\n actionInProgress: false,\n availableUserSessionTimeoutOptions: [\n {\n key: '1 hour',\n value: '1h',\n },\n {\n key: '4 hours',\n value: '4h',\n },\n {\n key: '8 hours',\n value: '8h',\n },\n {\n key: '24 hours',\n value: '24h',\n },\n { key: '1 week', value: `${24 * 7}h` },\n { key: '1 month', value: `${24 * 30}h` },\n { key: '6 months', value: `${24 * 30 * 6}h` },\n { key: '1 year', value: `${24 * 30 * 12}h` },\n ],\n };\n\n $scope.formValues = {\n UserSessionTimeout: $scope.state.availableUserSessionTimeoutOptions[0],\n TLSCACert: '',\n ldap: {\n serverType: 0,\n adSettings: buildAdSettingsModel(),\n ldapSettings: buildLdapSettingsModel(),\n },\n selectedAdminGroups: [],\n };\n\n $scope.authOptions = options;\n\n $scope.onChangeAuthMethod = function onChangeAuthMethod(value) {\n $scope.authMethod = value;\n\n if (value === 4) {\n $scope.settings.AuthenticationMethod = 2;\n $scope.formValues.ldap.serverType = 2;\n return;\n }\n\n if (value === 2) {\n $scope.settings.AuthenticationMethod = 2;\n $scope.formValues.ldap.serverType = $scope.formValues.ldap.ldapSettings.ServerType;\n return;\n }\n\n $scope.settings.AuthenticationMethod = value;\n };\n\n $scope.onChangePasswordLength = function onChangePasswordLength(value) {\n $scope.$evalAsync(() => {\n $scope.settings.InternalAuthSettings = { RequiredPasswordLength: value };\n });\n };\n\n $scope.authenticationMethodSelected = function authenticationMethodSelected(value) {\n if (!$scope.settings) {\n return false;\n }\n\n if (value === 4) {\n return $scope.settings.AuthenticationMethod === 2 && $scope.formValues.ldap.serverType === 2;\n }\n\n if (value === 2) {\n return $scope.settings.AuthenticationMethod === 2 && $scope.formValues.ldap.serverType !== 2;\n }\n\n return $scope.settings.AuthenticationMethod === value;\n };\n\n $scope.isOauthEnabled = function isOauthEnabled() {\n return $scope.settings && $scope.settings.AuthenticationMethod === 3;\n };\n\n $scope.LDAPConnectivityCheck = LDAPConnectivityCheck;\n function LDAPConnectivityCheck() {\n const settings = angular.copy($scope.settings);\n\n const { settings: ldapSettings, uploadRequired, tlscaFile } = prepareLDAPSettings();\n settings.LDAPSettings = ldapSettings;\n $scope.state.uploadInProgress = uploadRequired;\n\n $scope.state.connectivityCheckInProgress = true;\n\n $q.when(!uploadRequired || FileUploadService.uploadLDAPTLSFiles(tlscaFile, null, null))\n .then(function success() {\n return LDAPService.check(settings.LDAPSettings);\n })\n .then(function success() {\n $scope.state.failedConnectivityCheck = false;\n $scope.state.successfulConnectivityCheck = true;\n Notifications.success('Success', 'Connection to LDAP successful');\n })\n .catch(function error(err) {\n $scope.state.failedConnectivityCheck = true;\n $scope.state.successfulConnectivityCheck = false;\n Notifications.error('Failure', err, 'Connection to LDAP failed');\n })\n .finally(function final() {\n $scope.state.uploadInProgress = false;\n $scope.state.connectivityCheckInProgress = false;\n });\n }\n\n $scope.saveSettings = function () {\n const settings = angular.copy($scope.settings);\n\n if (!settings.OAuthSettings.AdminAutoPopulate) {\n delete settings.OAuthSettings.AdminGroupClaimsRegexList;\n }\n\n const { settings: ldapSettings, uploadRequired, tlscaFile } = prepareLDAPSettings();\n settings.LDAPSettings = ldapSettings;\n $scope.state.uploadInProgress = uploadRequired;\n\n $scope.state.actionInProgress = true;\n\n $q.when(!uploadRequired || FileUploadService.uploadLDAPTLSFiles(tlscaFile, null, null))\n .then(function success() {\n return SettingsService.update(settings);\n })\n .then(function success() {\n Notifications.success('Success', 'Authentication settings updated');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update authentication settings');\n })\n .finally(function final() {\n $scope.state.uploadInProgress = false;\n $scope.state.actionInProgress = false;\n });\n };\n\n function prepareLDAPSettings() {\n const tlscaCert = $scope.formValues.TLSCACert;\n\n const tlscaFile = tlscaCert !== $scope.settings.LDAPSettings.TLSConfig.TLSCACert ? tlscaCert : null;\n\n const isADServer = $scope.formValues.ldap.serverType === 2;\n\n const settings = isADServer ? $scope.formValues.ldap.adSettings : $scope.formValues.ldap.ldapSettings;\n\n if (settings.AnonymousMode && !isADServer) {\n settings.ReaderDN = '';\n settings.Password = '';\n }\n\n if (isADServer) {\n settings.AnonymousMode = false;\n }\n\n settings.URLs = settings.URLs.map((url) => {\n if (url.includes(':')) {\n return url;\n }\n return url + (settings.TLSConfig.TLS ? ':636' : ':389');\n });\n\n const uploadRequired = (settings.TLSConfig.TLS || settings.StartTLS) && !settings.TLSConfig.TLSSkipVerify;\n\n if (settings.AdminAutoPopulate && $scope.formValues.selectedAdminGroups.length > 0) {\n settings.AdminGroups = _.map($scope.formValues.selectedAdminGroups, (team) => team.name);\n } else {\n settings.AdminGroups = [];\n }\n\n if ($scope.formValues.selectedAdminGroups.length === 0) {\n settings.AdminAutoPopulate = false;\n }\n\n return { settings, uploadRequired, tlscaFile };\n }\n\n $scope.isLDAPFormValid = isLDAPFormValid;\n function isLDAPFormValid() {\n const ldapSettings = $scope.formValues.ldap.serverType === 2 ? $scope.formValues.ldap.adSettings : $scope.formValues.ldap.ldapSettings;\n const isTLSMode = ldapSettings.TLSConfig.TLS || ldapSettings.StartTLS;\n\n return (\n _.compact(ldapSettings.URLs).length &&\n (ldapSettings.AnonymousMode || (ldapSettings.ReaderDN && ldapSettings.Password)) &&\n (!isTLSMode || (isTLSMode && $scope.formValues.TLSCACert) || ldapSettings.TLSConfig.TLSSkipVerify) &&\n (!$scope.settings.LDAPSettings.AdminAutoPopulate || ($scope.settings.LDAPSettings.AdminAutoPopulate && $scope.formValues.selectedAdminGroups.length > 0))\n );\n }\n\n $scope.isOAuthTeamMembershipFormValid = isOAuthTeamMembershipFormValid;\n function isOAuthTeamMembershipFormValid() {\n if ($scope.settings && $scope.settings.OAuthSettings.OAuthAutoMapTeamMemberships && $scope.settings.OAuthSettings.TeamMemberships) {\n if (!$scope.settings.OAuthSettings.TeamMemberships.OAuthClaimName) {\n return false;\n }\n\n const hasInvalidMapping = $scope.settings.OAuthSettings.TeamMemberships.OAuthClaimMappings.some((m) => !(m.ClaimValRegex && m.Team));\n if (hasInvalidMapping) {\n return false;\n }\n }\n return true;\n }\n\n $scope.isOAuthAdminMappingFormValid = isOAuthAdminMappingFormValid;\n function isOAuthAdminMappingFormValid() {\n if ($scope.settings && $scope.settings.OAuthSettings.AdminAutoPopulate && $scope.settings.OAuthSettings.AdminGroupClaimsRegexList) {\n const hasInvalidMapping =\n $scope.settings.OAuthSettings.AdminGroupClaimsRegexList.length === 0 || $scope.settings.OAuthSettings.AdminGroupClaimsRegexList.some((e) => e === '');\n if (hasInvalidMapping) {\n return false;\n }\n }\n\n return true;\n }\n\n function initView() {\n $q.all({\n settings: SettingsService.settings(),\n teams: TeamService.teams(),\n })\n .then(function success(data) {\n var settings = data.settings;\n $scope.teams = data.teams;\n $scope.settings = settings;\n\n $scope.OAuthSettings = settings.OAuthSettings;\n $scope.authMethod = settings.AuthenticationMethod;\n if (settings.AuthenticationMethod === 2 && settings.LDAPSettings.ServerType === 2) {\n $scope.authMethod = 4;\n }\n\n $scope.formValues.ldap.serverType = settings.LDAPSettings.ServerType;\n if (settings.LDAPSettings.ServerType === 2) {\n $scope.formValues.ldap.adSettings = settings.LDAPSettings;\n } else {\n $scope.formValues.ldap.ldapSettings = settings.LDAPSettings;\n }\n\n if (!settings.LDAPSettings.URLs.length) {\n settings.LDAPSettings.URLs.push('');\n }\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n });\n }\n\n initView();\n}\n","const autoNgTemplateLoaderTemplate1 = require('./settingsEdgeCompute.html');\n\nimport angular from 'angular';\nimport controller from './settingsEdgeComputeController';\n\nangular.module('portainer.app').component('settingsEdgeComputeView', {\n templateUrl: autoNgTemplateLoaderTemplate1,\n controller,\n});\n","import angular from 'angular';\n\nimport { configureFDO } from '@/portainer/hostmanagement/fdo/fdo.service';\nimport { configureAMT } from 'Portainer/hostmanagement/open-amt/open-amt.service';\n\nangular.module('portainer.app').controller('SettingsEdgeComputeController', SettingsEdgeComputeController);\n\n/* @ngInject */\nexport default function SettingsEdgeComputeController($q, $async, $state, Notifications, SettingsService, StateManager) {\n var ctrl = this;\n\n this.onSubmitEdgeCompute = async function (settings) {\n try {\n await SettingsService.update(settings);\n Notifications.success('Success', 'Settings updated');\n StateManager.updateEnableEdgeComputeFeatures(settings.EnableEdgeComputeFeatures);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to update settings');\n }\n };\n\n this.onSubmitOpenAMT = async function (formValues) {\n try {\n await configureAMT(formValues);\n Notifications.success('Success', `OpenAMT successfully ${formValues.enabled ? 'enabled' : 'disabled'}`);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Failed applying changes');\n }\n };\n\n this.onSubmitFDO = async function (formValues) {\n try {\n await configureFDO(formValues);\n Notifications.success('Success', `FDO successfully ${formValues.enabled ? 'enabled' : 'disabled'}`);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Failed applying changes');\n }\n };\n\n function initView() {\n $async(async () => {\n try {\n ctrl.settings = await SettingsService.settings();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n }\n });\n }\n\n initView();\n}\n","import { DownloadCloud, UploadCloud } from 'react-feather';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\n\nimport { BadgeIcon } from '@@/BoxSelector/BadgeIcon';\n\nexport const options = [\n {\n id: 'backup_file',\n icon: ,\n featherIcon: true,\n label: 'Download backup file',\n value: 'file',\n },\n {\n id: 'backup_s3',\n icon: ,\n featherIcon: true,\n label: 'Store in S3',\n description: 'Define a cron schedule',\n value: 's3',\n feature: FeatureId.S3_BACKUP_SETTING,\n },\n];\n","import angular from 'angular';\n\nimport { FeatureId } from '@/portainer/feature-flags/enums';\nimport { options } from './options';\n\nangular.module('portainer.app').controller('SettingsController', [\n '$scope',\n '$state',\n 'Notifications',\n 'SettingsService',\n 'StateManager',\n 'BackupService',\n 'FileSaver',\n function ($scope, $state, Notifications, SettingsService, StateManager, BackupService, FileSaver) {\n $scope.s3BackupFeatureId = FeatureId.S3_BACKUP_SETTING;\n\n $scope.backupOptions = options;\n\n $scope.state = {\n isDemo: false,\n actionInProgress: false,\n availableKubeconfigExpiryOptions: [\n {\n key: '1 day',\n value: '24h',\n },\n {\n key: '7 days',\n value: `${24 * 7}h`,\n },\n {\n key: '30 days',\n value: `${24 * 30}h`,\n },\n {\n key: '1 year',\n value: `${24 * 30 * 12}h`,\n },\n {\n key: 'No expiry',\n value: '0',\n },\n ],\n backupInProgress: false,\n featureLimited: false,\n };\n\n $scope.BACKUP_FORM_TYPES = { S3: 's3', FILE: 'file' };\n\n $scope.formValues = {\n customLogo: false,\n labelName: '',\n labelValue: '',\n enableTelemetry: false,\n passwordProtect: false,\n password: '',\n scheduleAutomaticBackups: true,\n cronRule: '',\n accessKeyId: '',\n secretAccessKey: '',\n region: '',\n bucketName: '',\n backupFormType: $scope.BACKUP_FORM_TYPES.FILE,\n };\n\n $scope.onToggleEnableTelemetry = function onToggleEnableTelemetry(checked) {\n $scope.$evalAsync(() => {\n $scope.formValues.enableTelemetry = checked;\n });\n };\n\n $scope.onToggleCustomLogo = function onToggleCustomLogo(checked) {\n $scope.$evalAsync(() => {\n $scope.formValues.customLogo = checked;\n });\n };\n\n $scope.onToggleAutoBackups = function onToggleAutoBackups(checked) {\n $scope.$evalAsync(() => {\n $scope.formValues.scheduleAutomaticBackups = checked;\n });\n };\n\n $scope.onBackupOptionsChange = function (type, limited) {\n $scope.formValues.backupFormType = type;\n $scope.state.featureLimited = limited;\n };\n\n $scope.removeFilteredContainerLabel = function (index) {\n var settings = $scope.settings;\n settings.BlackListedLabels.splice(index, 1);\n\n updateSettings(settings);\n };\n\n $scope.addFilteredContainerLabel = function () {\n var settings = $scope.settings;\n var label = {\n name: $scope.formValues.labelName,\n value: $scope.formValues.labelValue,\n };\n settings.BlackListedLabels.push(label);\n\n updateSettings(settings);\n };\n\n $scope.downloadBackup = function () {\n const payload = {};\n if ($scope.formValues.passwordProtect) {\n payload.password = $scope.formValues.password;\n }\n\n $scope.state.backupInProgress = true;\n\n BackupService.downloadBackup(payload)\n .then(function success(data) {\n const downloadData = new Blob([data.file], { type: 'application/gzip' });\n FileSaver.saveAs(downloadData, data.name);\n Notifications.success('Success', 'Backup successfully downloaded');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to download backup');\n })\n .finally(function final() {\n $scope.state.backupInProgress = false;\n });\n };\n\n $scope.saveApplicationSettings = function () {\n var settings = $scope.settings;\n\n if (!$scope.formValues.customLogo) {\n settings.LogoURL = '';\n }\n\n settings.EnableTelemetry = $scope.formValues.enableTelemetry;\n\n $scope.state.actionInProgress = true;\n updateSettings(settings);\n };\n\n $scope.saveS3BackupSettings = function () {\n const payload = getS3SettingsPayload();\n BackupService.saveS3Settings(payload)\n .then(function success() {\n Notifications.success('Success', 'S3 Backup settings successfully saved');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to save S3 backup settings');\n })\n .finally(function final() {\n $scope.state.backupInProgress = false;\n });\n };\n\n $scope.exportBackup = function () {\n const payload = getS3SettingsPayload();\n BackupService.exportBackup(payload)\n .then(function success() {\n Notifications.success('Success', 'Exported backup to S3 successfully');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to export backup to S3');\n })\n .finally(function final() {\n $scope.state.backupInProgress = false;\n });\n };\n\n function getS3SettingsPayload() {\n return {\n Password: $scope.formValues.passwordProtectS3 ? $scope.formValues.passwordS3 : '',\n CronRule: $scope.formValues.scheduleAutomaticBackups ? $scope.formValues.cronRule : '',\n AccessKeyID: $scope.formValues.accessKeyId,\n SecretAccessKey: $scope.formValues.secretAccessKey,\n Region: $scope.formValues.region,\n BucketName: $scope.formValues.bucketName,\n };\n }\n\n function updateSettings(settings) {\n // ignore CloudApiKeys to avoid overriding them\n //\n // it is not ideal solution as API still accepts CloudAPIKeys\n // which may override the cloud provider API keys\n settings.CloudApiKeys = undefined;\n SettingsService.update(settings)\n .then(function success() {\n Notifications.success('Success', 'Settings updated');\n StateManager.updateLogo(settings.LogoURL);\n StateManager.updateSnapshotInterval(settings.SnapshotInterval);\n StateManager.updateEnableTelemetry(settings.EnableTelemetry);\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update settings');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n }\n\n function initView() {\n const state = StateManager.getState();\n $scope.state.isDemo = state.application.demoEnvironment.enabled;\n\n BackupService.getS3Settings()\n .then(function success(data) {\n $scope.formValues.passwordS3 = data.Password;\n $scope.formValues.cronRule = data.CronRule;\n $scope.formValues.accessKeyId = data.AccessKeyID;\n $scope.formValues.secretAccessKey = data.SecretAccessKey;\n $scope.formValues.region = data.Region;\n $scope.formValues.bucketName = data.BucketName;\n\n $scope.formValues.scheduleAutomaticBackups = $scope.formValues.cronRule ? true : false;\n $scope.formValues.passwordProtectS3 = $scope.formValues.passwordS3 ? true : false;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve S3 backup settings');\n });\n\n SettingsService.settings()\n .then(function success(data) {\n var settings = data;\n $scope.settings = settings;\n\n if (settings.LogoURL !== '') {\n $scope.formValues.customLogo = true;\n }\n $scope.formValues.enableTelemetry = settings.EnableTelemetry;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve application settings');\n });\n }\n\n initView();\n },\n]);\n","import angular from 'angular';\nimport uuidv4 from 'uuid/v4';\n\nimport { AccessControlFormData } from '@/portainer/components/accessControlForm/porAccessControlFormModel';\nimport { STACK_NAME_VALIDATION_REGEX } from '@/constants';\nimport { RepositoryMechanismTypes } from '@/kubernetes/models/deploy';\nimport { isBE } from '@/portainer/feature-flags/feature-flags.service';\nimport { renderTemplate } from '@/react/portainer/custom-templates/components/utils';\n\nangular\n .module('portainer.app')\n .controller(\n 'CreateStackController',\n function (\n $scope,\n $state,\n $async,\n $window,\n ModalService,\n StackService,\n Authentication,\n Notifications,\n FormValidator,\n ResourceControlService,\n FormHelper,\n StackHelper,\n ContainerHelper,\n CustomTemplateService,\n ContainerService,\n endpoint,\n WebhookHelper,\n clipboard\n ) {\n $scope.onChangeTemplateId = onChangeTemplateId;\n $scope.onChangeTemplateVariables = onChangeTemplateVariables;\n $scope.isTemplateVariablesEnabled = isBE;\n $scope.buildAnalyticsProperties = buildAnalyticsProperties;\n\n $scope.STACK_NAME_VALIDATION_REGEX = STACK_NAME_VALIDATION_REGEX;\n $scope.isAdmin = Authentication.isAdmin();\n\n $scope.formValues = {\n Name: '',\n StackFileContent: '',\n StackFile: null,\n RepositoryURL: '',\n RepositoryReferenceName: '',\n RepositoryAuthentication: false,\n RepositoryUsername: '',\n RepositoryPassword: '',\n Env: [],\n AdditionalFiles: [],\n ComposeFilePathInRepository: 'docker-compose.yml',\n AccessControlData: new AccessControlFormData(),\n RepositoryAutomaticUpdates: false,\n RepositoryAutomaticUpdatesForce: false,\n RepositoryMechanism: RepositoryMechanismTypes.INTERVAL,\n RepositoryFetchInterval: '5m',\n RepositoryWebhookURL: WebhookHelper.returnStackWebhookUrl(uuidv4()),\n ForcePullImage: false,\n EnableWebhook: false,\n Variables: {},\n };\n\n $scope.state = {\n Method: 'editor',\n formValidationError: '',\n actionInProgress: false,\n StackType: null,\n editorYamlValidationError: '',\n uploadYamlValidationError: '',\n isEditorDirty: false,\n selectedTemplate: null,\n selectedTemplateId: null,\n };\n\n $window.onbeforeunload = () => {\n if ($scope.state.Method === 'editor' && $scope.formValues.StackFileContent && $scope.state.isEditorDirty) {\n return '';\n }\n };\n\n $scope.$on('$destroy', function () {\n $scope.state.isEditorDirty = false;\n });\n\n $scope.onChangeFormValues = onChangeFormValues;\n\n $scope.onEnableWebhookChange = function (enable) {\n $scope.$evalAsync(() => {\n $scope.formValues.EnableWebhook = enable;\n });\n };\n\n $scope.addAdditionalFiles = function () {\n $scope.formValues.AdditionalFiles.push('');\n };\n\n $scope.removeAdditionalFiles = function (index) {\n $scope.formValues.AdditionalFiles.splice(index, 1);\n };\n\n $scope.hasAuthorizations = function (authorizations) {\n return $scope.isAdmin || Authentication.hasAuthorizations(authorizations);\n };\n\n function buildAnalyticsProperties() {\n const metadata = { type: methodLabel($scope.state.Method) };\n\n if ($scope.state.Method === 'repository') {\n metadata.automaticUpdates = 'off';\n if ($scope.formValues.RepositoryAutomaticUpdates) {\n metadata.automaticUpdates = autoSyncLabel($scope.formValues.RepositoryMechanism);\n }\n metadata.auth = $scope.formValues.RepositoryAuthentication;\n }\n\n if ($scope.state.Method === 'template') {\n metadata.templateName = $scope.state.selectedTemplate.Title;\n }\n\n return { metadata };\n\n function methodLabel(method) {\n switch (method) {\n case 'editor':\n return 'web-editor';\n case 'repository':\n return 'git';\n case 'upload':\n return 'file-upload';\n case 'template':\n return 'custom-template';\n }\n }\n\n function autoSyncLabel(type) {\n switch (type) {\n case RepositoryMechanismTypes.INTERVAL:\n return 'polling';\n case RepositoryMechanismTypes.WEBHOOK:\n return 'webhook';\n }\n return 'off';\n }\n }\n\n function validateForm(accessControlData, isAdmin) {\n $scope.state.formValidationError = '';\n var error = '';\n error = FormValidator.validateAccessControl(accessControlData, isAdmin);\n\n if (error) {\n $scope.state.formValidationError = error;\n return false;\n }\n return true;\n }\n\n function createSwarmStack(name, method) {\n var env = FormHelper.removeInvalidEnvVars($scope.formValues.Env);\n const endpointId = +$state.params.endpointId;\n const webhook = $scope.formValues.EnableWebhook ? $scope.formValues.RepositoryWebhookURL.split('/').reverse()[0] : '';\n if (method === 'template' || method === 'editor') {\n var stackFileContent = $scope.formValues.StackFileContent;\n return StackService.createSwarmStackFromFileContent(name, stackFileContent, env, endpointId, webhook);\n }\n\n if (method === 'upload') {\n var stackFile = $scope.formValues.StackFile;\n return StackService.createSwarmStackFromFileUpload(name, stackFile, env, endpointId, webhook);\n }\n\n if (method === 'repository') {\n var repositoryOptions = {\n AdditionalFiles: $scope.formValues.AdditionalFiles,\n RepositoryURL: $scope.formValues.RepositoryURL,\n RepositoryReferenceName: $scope.formValues.RepositoryReferenceName,\n ComposeFilePathInRepository: $scope.formValues.ComposeFilePathInRepository,\n RepositoryAuthentication: $scope.formValues.RepositoryAuthentication,\n RepositoryUsername: $scope.formValues.RepositoryUsername,\n RepositoryPassword: $scope.formValues.RepositoryPassword,\n ForcePullImage: $scope.formValues.ForcePullImage,\n };\n\n getAutoUpdatesProperty(repositoryOptions);\n\n return StackService.createSwarmStackFromGitRepository(name, repositoryOptions, env, endpointId);\n }\n }\n\n function getAutoUpdatesProperty(repositoryOptions) {\n if ($scope.formValues.RepositoryAutomaticUpdates) {\n repositoryOptions.AutoUpdate = {\n ForceUpdate: $scope.formValues.RepositoryAutomaticUpdatesForce,\n ForcePullImage: $scope.formValues.ForcePullImage,\n };\n if ($scope.formValues.RepositoryMechanism === RepositoryMechanismTypes.INTERVAL) {\n repositoryOptions.AutoUpdate.Interval = $scope.formValues.RepositoryFetchInterval;\n } else if ($scope.formValues.RepositoryMechanism === RepositoryMechanismTypes.WEBHOOK) {\n repositoryOptions.AutoUpdate.Webhook = $scope.formValues.RepositoryWebhookURL.split('/').reverse()[0];\n }\n }\n }\n\n function createComposeStack(name, method) {\n var env = FormHelper.removeInvalidEnvVars($scope.formValues.Env);\n const endpointId = +$state.params.endpointId;\n const webhook = $scope.formValues.EnableWebhook ? $scope.formValues.RepositoryWebhookURL.split('/').reverse()[0] : '';\n\n if (method === 'editor' || method === 'template') {\n var stackFileContent = $scope.formValues.StackFileContent;\n return StackService.createComposeStackFromFileContent(name, stackFileContent, env, endpointId, webhook);\n } else if (method === 'upload') {\n var stackFile = $scope.formValues.StackFile;\n return StackService.createComposeStackFromFileUpload(name, stackFile, env, endpointId, webhook);\n } else if (method === 'repository') {\n var repositoryOptions = {\n AdditionalFiles: $scope.formValues.AdditionalFiles,\n RepositoryURL: $scope.formValues.RepositoryURL,\n RepositoryReferenceName: $scope.formValues.RepositoryReferenceName,\n ComposeFilePathInRepository: $scope.formValues.ComposeFilePathInRepository,\n RepositoryAuthentication: $scope.formValues.RepositoryAuthentication,\n RepositoryUsername: $scope.formValues.RepositoryUsername,\n RepositoryPassword: $scope.formValues.RepositoryPassword,\n ForcePullImage: $scope.formValues.ForcePullImage,\n };\n\n getAutoUpdatesProperty(repositoryOptions);\n\n return StackService.createComposeStackFromGitRepository(name, repositoryOptions, env, endpointId);\n }\n }\n\n $scope.copyWebhook = function () {\n clipboard.copyText($scope.formValues.RepositoryWebhookURL);\n $('#copyNotification').show();\n $('#copyNotification').fadeOut(2000);\n };\n $scope.handleEnvVarChange = handleEnvVarChange;\n function handleEnvVarChange(value) {\n $scope.formValues.Env = value;\n }\n\n $scope.deployStack = function () {\n var name = $scope.formValues.Name;\n var method = $scope.state.Method;\n\n var accessControlData = $scope.formValues.AccessControlData;\n var userDetails = Authentication.getUserDetails();\n var isAdmin = Authentication.isAdmin();\n\n if (method === 'editor' && $scope.formValues.StackFileContent === '') {\n $scope.state.formValidationError = 'Stack file content must not be empty';\n return;\n }\n\n if (!validateForm(accessControlData, isAdmin)) {\n return;\n }\n\n var type = $scope.state.StackType;\n var action = createSwarmStack;\n if (type === 2) {\n action = createComposeStack;\n }\n $scope.state.actionInProgress = true;\n action(name, method)\n .then(function success(data) {\n if (data.data) {\n data = data.data;\n }\n const userId = userDetails.ID;\n const resourceControl = data.ResourceControl;\n return ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl);\n })\n .then(function success() {\n Notifications.success('Success', 'Stack successfully deployed');\n $scope.state.isEditorDirty = false;\n $state.go('docker.stacks');\n })\n .catch(function error(err) {\n Notifications.error('Deployment error', err, 'Unable to deploy stack');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n $scope.onChangeFileContent = onChangeFileContent;\n function onChangeFileContent(value) {\n $scope.formValues.StackFileContent = value;\n $scope.state.editorYamlValidationError = StackHelper.validateYAML($scope.formValues.StackFileContent, $scope.containerNames);\n $scope.state.isEditorDirty = true;\n }\n\n async function onFileLoadAsync(event) {\n $scope.state.uploadYamlValidationError = StackHelper.validateYAML(event.target.result, $scope.containerNames);\n }\n\n function onFileLoad(event) {\n return $async(onFileLoadAsync, event);\n }\n\n $scope.uploadFile = function (file) {\n $scope.formValues.StackFile = file;\n\n if (file) {\n const temporaryFileReader = new FileReader();\n temporaryFileReader.fileName = file.name;\n temporaryFileReader.onload = onFileLoad;\n temporaryFileReader.readAsText(file);\n }\n };\n\n function onChangeTemplateId(templateId, template) {\n return $async(async () => {\n if (!template || ($scope.state.selectedTemplateId === templateId && $scope.state.selectedTemplate === template)) {\n return;\n }\n\n try {\n $scope.state.selectedTemplateId = templateId;\n $scope.state.selectedTemplate = template;\n\n const fileContent = await CustomTemplateService.customTemplateFile(templateId);\n $scope.state.templateContent = fileContent;\n onChangeFileContent(fileContent);\n\n if (template.Variables && template.Variables.length > 0) {\n const variables = Object.fromEntries(template.Variables.map((variable) => [variable.name, '']));\n onChangeTemplateVariables(variables);\n }\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve Custom Template file');\n }\n });\n }\n\n function onChangeTemplateVariables(value) {\n onChangeFormValues({ Variables: value });\n\n if (!$scope.isTemplateVariablesEnabled) {\n return;\n }\n const rendered = renderTemplate($scope.state.templateContent, $scope.formValues.Variables, $scope.state.selectedTemplate.Variables);\n onChangeFormValues({ StackFileContent: rendered });\n }\n\n async function initView() {\n var endpointMode = $scope.applicationState.endpoint.mode;\n $scope.state.StackType = 2;\n if (endpointMode.provider === 'DOCKER_SWARM_MODE' && endpointMode.role === 'MANAGER') {\n $scope.state.StackType = 1;\n }\n\n $scope.composeSyntaxMaxVersion = endpoint.ComposeSyntaxMaxVersion;\n try {\n const containers = await ContainerService.containers(true);\n $scope.containerNames = ContainerHelper.getContainerNames(containers);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve Containers');\n }\n }\n\n this.uiCanExit = async function () {\n if ($scope.state.Method === 'editor' && $scope.formValues.StackFileContent && $scope.state.isEditorDirty) {\n return ModalService.confirmWebEditorDiscard();\n }\n };\n\n initView();\n\n function onChangeFormValues(values) {\n $scope.formValues = {\n ...$scope.formValues,\n ...values,\n };\n }\n }\n );\n","export enum StackType {\n /**\n * Represents a stack managed via docker stack\n */\n DockerSwarm = 1,\n /**\n * Represents a stack managed via docker-compose\n */\n DockerCompose,\n /**\n * Represents a stack managed via kubectl\n */\n Kubernetes,\n /**\n * Represents a stack managed via Nomad\n */\n Nomad,\n}\n\nexport enum StackStatus {\n Active = 1,\n Inactive,\n}\n","import uuidv4 from 'uuid/v4';\nimport { ResourceControlType } from '@/portainer/access-control/types';\nimport { AccessControlFormData } from 'Portainer/components/accessControlForm/porAccessControlFormModel';\nimport { getEnvironments } from '@/portainer/environments/environment.service';\nimport { StackStatus, StackType } from '@/react/docker/stacks/types';\n\nangular.module('portainer.app').controller('StackController', [\n '$async',\n '$q',\n '$scope',\n '$state',\n '$window',\n '$transition$',\n 'clipboard',\n 'StackService',\n 'NodeService',\n 'ServiceService',\n 'TaskService',\n 'ContainerService',\n 'ServiceHelper',\n 'TaskHelper',\n 'Notifications',\n 'FormHelper',\n 'EndpointProvider',\n 'GroupService',\n 'ModalService',\n 'StackHelper',\n 'endpoint',\n 'Authentication',\n 'ContainerHelper',\n 'ResourceControlService',\n 'WebhookHelper',\n function (\n $async,\n $q,\n $scope,\n $state,\n $window,\n $transition$,\n clipboard,\n StackService,\n NodeService,\n ServiceService,\n TaskService,\n ContainerService,\n ServiceHelper,\n TaskHelper,\n Notifications,\n FormHelper,\n EndpointProvider,\n GroupService,\n ModalService,\n StackHelper,\n endpoint,\n Authentication,\n ContainerHelper,\n ResourceControlService,\n WebhookHelper\n ) {\n $scope.STACK_TYPES = StackType;\n\n $scope.resourceType = ResourceControlType.Stack;\n\n $scope.onUpdateResourceControlSuccess = function () {\n $state.reload();\n };\n\n $scope.endpoint = endpoint;\n $scope.isAdmin = Authentication.isAdmin();\n $scope.state = {\n actionInProgress: false,\n migrationInProgress: false,\n showEditorTab: false,\n yamlError: false,\n isEditorDirty: false,\n };\n\n $scope.formValues = {\n Prune: false,\n Endpoint: null,\n Env: [],\n AccessControlData: new AccessControlFormData(),\n WebhookURL: WebhookHelper.returnStackWebhookUrl(uuidv4()),\n EnableWebhook: false,\n };\n\n $scope.handleEnvVarChange = handleEnvVarChange;\n function handleEnvVarChange(value) {\n $scope.formValues.Env = value;\n }\n\n $scope.onEnableWebhookChange = function (enable) {\n $scope.$evalAsync(() => {\n $scope.formValues.EnableWebhook = enable;\n });\n };\n\n $scope.onPruneChange = function (enable) {\n $scope.$evalAsync(() => {\n $scope.formValues.Prune = enable;\n });\n };\n\n $window.onbeforeunload = () => {\n if ($scope.stackFileContent && $scope.state.isEditorDirty) {\n return '';\n }\n };\n\n $scope.$on('$destroy', function () {\n $scope.state.isEditorDirty = false;\n });\n\n $scope.duplicateStack = function duplicateStack(name, targetEndpointId) {\n var stack = $scope.stack;\n var env = FormHelper.removeInvalidEnvVars($scope.formValues.Env);\n // sets the targetEndpointID as global for interceptors\n EndpointProvider.setEndpointID(targetEndpointId);\n\n return StackService.duplicateStack(name, $scope.stackFileContent, env, targetEndpointId, stack.Type).then(onDuplicationSuccess).catch(notifyOnError);\n\n function onDuplicationSuccess() {\n Notifications.success('Success', 'Stack successfully duplicated');\n $scope.state.isEditorDirty = false;\n $state.go('docker.stacks', {}, { reload: true });\n // sets back the original endpointID as global for interceptors\n EndpointProvider.setEndpointID(stack.EndpointId);\n }\n\n function notifyOnError(err) {\n Notifications.error('Failure', err, 'Unable to duplicate stack');\n }\n };\n\n $scope.showEditor = function () {\n $scope.state.showEditorTab = true;\n };\n\n $scope.migrateStack = function (name, endpointId) {\n return $q(function (resolve) {\n ModalService.confirmWarn({\n title: 'Are you sure?',\n message:\n 'This action will deploy a new instance of this stack on the target environment, please note that this does NOT relocate the content of any persistent volumes that may be attached to this stack.',\n buttons: {\n confirm: {\n label: 'Migrate',\n className: 'btn-danger',\n },\n },\n callback: function onConfirm(confirmed) {\n if (!confirmed) {\n return resolve();\n }\n return resolve(migrateStack(name, endpointId));\n },\n });\n });\n };\n\n $scope.removeStack = function () {\n ModalService.confirmDeletion('Do you want to remove the stack? Associated services will be removed as well.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteStack();\n });\n };\n $scope.detachStackFromGit = function () {\n ModalService.confirmDetachment('Do you want to detach the stack from Git?', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n $scope.deployStack();\n });\n };\n\n function migrateStack(name, targetEndpointId) {\n const stack = $scope.stack;\n\n let migrateRequest = StackService.migrateSwarmStack;\n if (stack.Type === 2) {\n migrateRequest = StackService.migrateComposeStack;\n }\n\n // TODO: this is a work-around for stacks created with Portainer version >= 1.17.1\n // The EndpointID property is not available for these stacks, we can pass\n // the current endpoint identifier as a part of the migrate request. It will be used if\n // the EndpointID property is not defined on the stack.\n if (stack.EndpointId === 0) {\n stack.EndpointId = endpoint.Id;\n }\n\n $scope.state.migrationInProgress = true;\n return migrateRequest(stack, targetEndpointId, name)\n .then(function success() {\n Notifications.success('Stack successfully migrated', stack.Name);\n $state.go('docker.stacks', {}, { reload: true });\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to migrate stack');\n })\n .finally(function final() {\n $scope.state.migrationInProgress = false;\n });\n }\n\n function deleteStack() {\n var endpointId = +$state.params.endpointId;\n var stack = $scope.stack;\n\n StackService.remove(stack, $transition$.params().external, endpointId)\n .then(function success() {\n Notifications.success('Stack successfully removed', stack.Name);\n $state.go('docker.stacks');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove stack ' + stack.Name);\n });\n }\n\n $scope.associateStack = function () {\n var endpointId = +$state.params.endpointId;\n var stack = $scope.stack;\n var accessControlData = $scope.formValues.AccessControlData;\n $scope.state.actionInProgress = true;\n\n StackService.associate(stack, endpointId, $scope.orphanedRunning)\n .then(function success(data) {\n const resourceControl = data.ResourceControl;\n const userDetails = Authentication.getUserDetails();\n const userId = userDetails.ID;\n return ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl);\n })\n .then(function success() {\n Notifications.success('Stack successfully associated', stack.Name);\n $state.go('docker.stacks');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to associate stack ' + stack.Name);\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n $scope.hasAuthorizations = function (authorizations) {\n return $scope.isAdmin || Authentication.hasAuthorizations(authorizations);\n };\n\n $scope.disabledWebhookButton = function (webhookExists) {\n if (webhookExists) {\n return !$scope.hasAuthorizations(['PortainerWebhookDelete']);\n }\n return !$scope.hasAuthorizations(['PortainerWebhookCreate']);\n };\n\n $scope.deployStack = function () {\n const stack = $scope.stack;\n const isSwarmStack = stack.Type === 1;\n ModalService.confirmStackUpdate('Do you want to force an update of the stack?', isSwarmStack, null, function (result) {\n if (!result) {\n return;\n }\n\n var stackFile = $scope.stackFileContent;\n var env = FormHelper.removeInvalidEnvVars($scope.formValues.Env);\n var prune = $scope.formValues.Prune;\n\n const webhook = $scope.formValues.EnableWebhook ? $scope.formValues.WebhookURL.split('/').reverse()[0] : null;\n // TODO: this is a work-around for stacks created with Portainer version >= 1.17.1\n // The EndpointID property is not available for these stacks, we can pass\n // the current endpoint identifier as a part of the update request. It will be used if\n // the EndpointID property is not defined on the stack.\n if (stack.EndpointId === 0) {\n stack.EndpointId = endpoint.Id;\n }\n\n $scope.state.actionInProgress = true;\n StackService.updateStack(stack, stackFile, env, prune, webhook, !!result[0])\n .then(function success() {\n Notifications.success('Success', 'Stack successfully deployed');\n $scope.state.isEditorDirty = false;\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to create stack');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n });\n };\n\n $scope.copyWebhook = function () {\n clipboard.copyText($scope.formValues.WebhookURL);\n $('#copyNotification').show();\n $('#copyNotification').fadeOut(2000);\n };\n $scope.editorUpdate = function (cm) {\n if ($scope.stackFileContent.replace(/(\\r\\n|\\n|\\r)/gm, '') !== cm.getValue().replace(/(\\r\\n|\\n|\\r)/gm, '')) {\n $scope.state.isEditorDirty = true;\n $scope.stackFileContent = cm.getValue();\n $scope.state.yamlError = StackHelper.validateYAML($scope.stackFileContent, $scope.containerNames);\n }\n };\n\n $scope.stopStack = stopStack;\n function stopStack() {\n return $async(stopStackAsync);\n }\n async function stopStackAsync() {\n const confirmed = await ModalService.confirmAsync({\n title: 'Are you sure?',\n message: 'Are you sure you want to stop this stack?',\n buttons: { confirm: { label: 'Stop', className: 'btn-danger' } },\n });\n if (!confirmed) {\n return;\n }\n\n $scope.state.actionInProgress = true;\n try {\n const endpointId = +$state.params.endpointId;\n await StackService.stop($scope.stack.Id, endpointId);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to stop stack');\n }\n $scope.state.actionInProgress = false;\n }\n\n $scope.startStack = startStack;\n function startStack() {\n return $async(startStackAsync);\n }\n async function startStackAsync() {\n $scope.state.actionInProgress = true;\n const id = $scope.stack.Id;\n try {\n await StackService.start(id);\n $state.reload();\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to start stack');\n }\n $scope.state.actionInProgress = false;\n }\n\n function loadStack(id) {\n return $async(async () => {\n var agentProxy = $scope.applicationState.endpoint.mode.agentProxy;\n\n getEnvironments()\n .then(function success(data) {\n $scope.endpoints = data.value;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve environments');\n });\n\n $q.all({\n stack: StackService.stack(id),\n groups: GroupService.groups(),\n containers: ContainerService.containers(true),\n })\n .then(function success(data) {\n var stack = data.stack;\n $scope.groups = data.groups;\n $scope.stack = stack;\n $scope.containerNames = ContainerHelper.getContainerNames(data.containers);\n\n $scope.formValues.Env = $scope.stack.Env;\n $scope.formValues.EnableWebhook = !!$scope.stack.Webhook;\n if ($scope.formValues.EnableWebhook) {\n $scope.formValues.WebhookURL = WebhookHelper.returnStackWebhookUrl($scope.stack.Webhook);\n }\n\n let resourcesPromise = Promise.resolve({});\n if (!stack.Status || stack.Status === 1) {\n resourcesPromise = stack.Type === 1 ? retrieveSwarmStackResources(stack.Name, agentProxy) : retrieveComposeStackResources(stack.Name);\n }\n\n return $q.all({\n stackFile: StackService.getStackFile(id),\n resources: resourcesPromise,\n });\n })\n .then(function success(data) {\n const isSwarm = $scope.stack.Type === StackType.DockerSwarm;\n $scope.stackFileContent = data.stackFile;\n // workaround for missing status, if stack has resources, set the status to 1 (active), otherwise to 2 (inactive) (https://github.com/portainer/portainer/issues/4422)\n if (!$scope.stack.Status) {\n $scope.stack.Status = data.resources && ((isSwarm && data.resources.services.length) || data.resources.containers.length) ? 1 : 2;\n }\n\n if (isSwarm && $scope.stack.Status === StackStatus.Active) {\n assignSwarmStackResources(data.resources, agentProxy);\n }\n $scope.state.yamlError = StackHelper.validateYAML($scope.stackFileContent, $scope.containerNames);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve stack details');\n });\n });\n }\n\n function retrieveSwarmStackResources(stackName, agentProxy) {\n var stackFilter = {\n label: ['com.docker.stack.namespace=' + stackName],\n };\n\n return $q.all({\n services: ServiceService.services(stackFilter),\n tasks: TaskService.tasks(stackFilter),\n containers: agentProxy ? ContainerService.containers(1) : [],\n nodes: NodeService.nodes(),\n });\n }\n\n function assignSwarmStackResources(resources, agentProxy) {\n var services = resources.services;\n var tasks = resources.tasks;\n\n if (agentProxy) {\n var containers = resources.containers;\n for (var j = 0; j < tasks.length; j++) {\n var task = tasks[j];\n TaskHelper.associateContainerToTask(task, containers);\n }\n }\n\n for (var i = 0; i < services.length; i++) {\n var service = services[i];\n ServiceHelper.associateTasksToService(service, tasks);\n }\n\n $scope.nodes = resources.nodes;\n $scope.tasks = tasks;\n $scope.services = services;\n }\n\n function retrieveComposeStackResources(stackName) {\n var stackFilter = {\n label: ['com.docker.compose.project=' + stackName],\n };\n\n return $q.all({\n containers: ContainerService.containers(1, stackFilter),\n });\n }\n\n function loadExternalStack(name) {\n const stackType = $scope.stackType;\n if (!stackType || (stackType !== StackType.DockerSwarm && stackType !== StackType.DockerCompose)) {\n Notifications.error('Failure', null, 'Invalid type URL parameter.');\n return;\n }\n\n if (stackType === StackType.DockerSwarm) {\n loadExternalSwarmStack(name);\n }\n }\n\n function loadExternalSwarmStack(name) {\n var agentProxy = $scope.applicationState.endpoint.mode.agentProxy;\n\n retrieveSwarmStackResources(name, agentProxy)\n .then(function success(data) {\n assignSwarmStackResources(data, agentProxy);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve stack details');\n });\n }\n\n this.uiCanExit = async function () {\n if ($scope.stackFileContent && $scope.state.isEditorDirty) {\n return ModalService.confirmWebEditorDiscard();\n }\n };\n\n async function canManageStacks() {\n return endpoint.SecuritySettings.allowStackManagementForRegularUsers || Authentication.isAdmin();\n }\n\n async function initView() {\n // if the user is not an admin, and stack management is disabled for non admins, then take the user to the dashboard\n $scope.createEnabled = await canManageStacks();\n if (!$scope.createEnabled) {\n $state.go('docker.dashboard');\n }\n\n var stackName = $transition$.params().name;\n $scope.stackName = stackName;\n\n const regular = $transition$.params().regular == 'true';\n $scope.regular = regular;\n\n var external = $transition$.params().external == 'true';\n $scope.external = external;\n\n const orphaned = $transition$.params().orphaned == 'true';\n $scope.orphaned = orphaned;\n\n const orphanedRunning = $transition$.params().orphanedRunning == 'true';\n $scope.orphanedRunning = orphanedRunning;\n\n $scope.stackType = parseInt($transition$.params().type, 10);\n\n if (external || (orphaned && orphanedRunning)) {\n loadExternalStack(stackName);\n }\n\n if (regular || orphaned) {\n const stackId = $transition$.params().id;\n loadStack(stackId);\n }\n\n $scope.composeSyntaxMaxVersion = endpoint.ComposeSyntaxMaxVersion;\n\n $scope.editorReadOnly = !Authentication.hasAuthorizations(['PortainerStackUpdate']);\n }\n\n initView();\n },\n]);\n","import { isOfflineEndpoint } from '@/portainer/helpers/endpointHelper';\n\nangular.module('portainer.app').controller('StacksController', StacksController);\n\n/* @ngInject */\nfunction StacksController($scope, $state, Notifications, StackService, ModalService, Authentication, endpoint) {\n $scope.removeAction = function (selectedItems) {\n ModalService.confirmDeletion('Do you want to remove the selected stack(s)? Associated services will be removed as well.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteSelectedStacks(selectedItems);\n });\n };\n\n function deleteSelectedStacks(stacks) {\n const endpointId = endpoint.Id;\n let actionCount = stacks.length;\n angular.forEach(stacks, function (stack) {\n StackService.remove(stack, stack.External, endpointId)\n .then(function success() {\n Notifications.success('Stack successfully removed', stack.Name);\n var index = $scope.stacks.indexOf(stack);\n $scope.stacks.splice(index, 1);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove stack ' + stack.Name);\n })\n .finally(function final() {\n --actionCount;\n if (actionCount === 0) {\n $state.reload();\n }\n });\n });\n }\n\n $scope.offlineMode = false;\n $scope.createEnabled = false;\n\n $scope.getStacks = getStacks;\n\n function getStacks() {\n const endpointMode = $scope.applicationState.endpoint.mode;\n const endpointId = endpoint.Id;\n\n const includeOrphanedStacks = Authentication.isAdmin() || Authentication.hasAuthorizations(['EndpointResourcesAccess']);\n StackService.stacks(true, endpointMode.provider === 'DOCKER_SWARM_MODE' && endpointMode.role === 'MANAGER', endpointId, includeOrphanedStacks)\n .then(function success(stacks) {\n $scope.stacks = stacks;\n $scope.offlineMode = isOfflineEndpoint(endpoint);\n })\n .catch(function error(err) {\n $scope.stacks = [];\n Notifications.error('Failure', err, 'Unable to retrieve stacks');\n });\n }\n\n async function canManageStacks() {\n return endpoint.SecuritySettings.allowStackManagementForRegularUsers || Authentication.isAdmin() || Authentication.hasAuthorizations(['EndpointResourcesAccess']);\n }\n\n async function initView() {\n $scope.createEnabled = await canManageStacks();\n if (!$scope.createEnabled) {\n $state.go('docker.dashboard');\n }\n getStacks();\n }\n\n initView();\n}\n","import angular from 'angular';\nimport _ from 'lodash-es';\n\nangular.module('portainer.app').controller('TagsController', TagsController);\n\nfunction TagsController($scope, $state, $async, TagService, Notifications) {\n $scope.state = {\n actionInProgress: false,\n };\n\n $scope.formValues = {\n Name: '',\n };\n\n $scope.checkNameValidity = function (form) {\n var valid = true;\n for (var i = 0; i < $scope.tags.length; i++) {\n if ($scope.formValues.Name === $scope.tags[i].Name) {\n valid = false;\n break;\n }\n }\n form.name.$setValidity('validName', valid);\n };\n\n $scope.removeAction = removeAction;\n\n function removeAction(tags) {\n return $async(removeActionAsync, tags);\n }\n\n async function removeActionAsync(tags) {\n for (let tag of tags) {\n try {\n await TagService.deleteTag(tag.Id);\n\n Notifications.success('Tag successfully removed', tag.Name);\n _.remove($scope.tags, tag);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to remove tag');\n }\n }\n\n $state.reload();\n }\n\n $scope.createTag = function () {\n var tagName = $scope.formValues.Name;\n TagService.createTag(tagName)\n .then(function success() {\n Notifications.success('Tag successfully created', tagName);\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to create tag');\n });\n };\n\n function initView() {\n TagService.tags()\n .then(function success(data) {\n $scope.tags = data;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve tags');\n $scope.tags = [];\n });\n }\n\n initView();\n}\n","angular.module('portainer.app').controller('TeamController', [\n '$q',\n '$scope',\n '$state',\n '$transition$',\n 'TeamService',\n 'UserService',\n 'TeamMembershipService',\n 'ModalService',\n 'Notifications',\n 'PaginationService',\n 'Authentication',\n 'SettingsService',\n function ($q, $scope, $state, $transition$, TeamService, UserService, TeamMembershipService, ModalService, Notifications, PaginationService, Authentication, SettingsService) {\n $scope.state = {\n pagination_count_users: PaginationService.getPaginationLimit('team_available_users'),\n pagination_count_members: PaginationService.getPaginationLimit('team_members'),\n };\n\n $scope.sortTypeUsers = 'Username';\n $scope.sortReverseUsers = true;\n $scope.users = [];\n $scope.teamMembers = [];\n $scope.leaderCount = 0;\n\n $scope.orderUsers = function (sortType) {\n $scope.sortReverseUsers = $scope.sortTypeUsers === sortType ? !$scope.sortReverseUsers : false;\n $scope.sortTypeUsers = sortType;\n };\n\n $scope.changePaginationCountUsers = function () {\n PaginationService.setPaginationLimit('team_available_users', $scope.state.pagination_count_users);\n };\n\n $scope.sortTypeGroupMembers = 'TeamRole';\n $scope.sortReverseGroupMembers = false;\n\n $scope.orderGroupMembers = function (sortType) {\n $scope.sortReverseGroupMembers = $scope.sortTypeGroupMembers === sortType ? !$scope.sortReverseGroupMembers : false;\n $scope.sortTypeGroupMembers = sortType;\n };\n\n $scope.changePaginationCountGroupMembers = function () {\n PaginationService.setPaginationLimit('team_members', $scope.state.pagination_count_members);\n };\n\n $scope.deleteTeam = function () {\n ModalService.confirmDeletion('Do you want to delete this team? Users in this team will not be deleted.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteTeam();\n });\n };\n\n $scope.promoteToLeader = function (user) {\n TeamMembershipService.updateMembership(user.MembershipId, user.Id, $scope.team.Id, 1)\n .then(function success() {\n $scope.leaderCount++;\n user.TeamRole = 'Leader';\n Notifications.success('User is now team leader', user.Username);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update user role');\n });\n };\n\n $scope.demoteToMember = function (user) {\n TeamMembershipService.updateMembership(user.MembershipId, user.Id, $scope.team.Id, 2)\n .then(function success() {\n user.TeamRole = 'Member';\n $scope.leaderCount--;\n Notifications.success('User is now team member', user.Username);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update user role');\n });\n };\n\n $scope.addAllUsers = function () {\n var teamMembershipQueries = [];\n angular.forEach($scope.users, function (user) {\n teamMembershipQueries.push(TeamMembershipService.createMembership(user.Id, $scope.team.Id, 2));\n });\n $q.all(teamMembershipQueries)\n .then(function success(data) {\n var users = $scope.users;\n for (var i = 0; i < users.length; i++) {\n var user = users[i];\n user.MembershipId = data[i].Id;\n user.TeamRole = 'Member';\n }\n $scope.teamMembers = $scope.teamMembers.concat(users);\n $scope.users = [];\n Notifications.success('Success', 'All users successfully added');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update team members');\n });\n };\n\n $scope.addUser = function (user) {\n TeamMembershipService.createMembership(user.Id, $scope.team.Id, 2)\n .then(function success(data) {\n removeUserFromArray(user.Id, $scope.users);\n user.TeamRole = 'Member';\n user.MembershipId = data.Id;\n $scope.teamMembers.push(user);\n Notifications.success('User added to team', user.Username);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update team members');\n });\n };\n\n $scope.removeAllUsers = function () {\n var teamMembershipQueries = [];\n angular.forEach($scope.teamMembers, function (user) {\n teamMembershipQueries.push(TeamMembershipService.deleteMembership(user.MembershipId));\n });\n $q.all(teamMembershipQueries)\n .then(function success() {\n $scope.users = $scope.users.concat($scope.teamMembers);\n $scope.teamMembers = [];\n $scope.leaderCount = 0;\n Notifications.success('Success', 'All users successfully removed');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update team members');\n });\n };\n\n $scope.removeUser = function (user) {\n TeamMembershipService.deleteMembership(user.MembershipId)\n .then(function success() {\n removeUserFromArray(user.Id, $scope.teamMembers);\n if (user.TeamRole === 'Leader') {\n $scope.leaderCount--;\n }\n $scope.users.push(user);\n Notifications.success('User removed from team', user.Username);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update team members');\n });\n };\n\n function deleteTeam() {\n TeamService.deleteTeam($scope.team.Id)\n .then(function success() {\n Notifications.success('Team successfully deleted', $scope.team.Name);\n $state.go('portainer.teams');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove team');\n });\n }\n\n function removeUserFromArray(id, users) {\n for (var i = 0, l = users.length; i < l; i++) {\n if (users[i].Id === id) {\n users.splice(i, 1);\n return;\n }\n }\n }\n\n function assignUsersAndMembers(users, memberships) {\n for (var i = 0; i < users.length; i++) {\n var user = users[i];\n var member = false;\n for (var j = 0; j < memberships.length; j++) {\n var membership = memberships[j];\n if (user.Id === membership.UserId) {\n member = true;\n if (membership.Role === 1) {\n user.TeamRole = 'Leader';\n $scope.leaderCount++;\n } else {\n user.TeamRole = 'Member';\n }\n user.MembershipId = membership.Id;\n $scope.teamMembers.push(user);\n break;\n }\n }\n if (!member) {\n $scope.users.push(user);\n }\n }\n }\n\n async function initView() {\n $scope.isAdmin = Authentication.isAdmin();\n\n try {\n $scope.settings = await SettingsService.publicSettings();\n\n const data = await $q.all({\n team: TeamService.team($transition$.params().id),\n users: UserService.users($scope.isAdmin && $scope.settings.TeamSync),\n memberships: TeamService.userMemberships($transition$.params().id),\n });\n\n $scope.team = data.team;\n assignUsersAndMembers(data.users, data.memberships);\n } catch (err) {\n Notifications.error('Failure', err, 'Unable to retrieve team details');\n }\n }\n\n initView();\n },\n]);\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('TeamsController', [\n '$q',\n '$scope',\n '$state',\n 'TeamService',\n 'UserService',\n 'ModalService',\n 'Notifications',\n 'Authentication',\n function ($q, $scope, $state, TeamService, UserService, ModalService, Notifications, Authentication) {\n $scope.state = {\n actionInProgress: false,\n };\n\n $scope.formValues = {\n Name: '',\n Leaders: [],\n };\n\n $scope.checkNameValidity = function (form) {\n var valid = true;\n for (var i = 0; i < $scope.teams.length; i++) {\n if ($scope.formValues.Name === $scope.teams[i].Name) {\n valid = false;\n break;\n }\n }\n form.team_name.$setValidity('validName', valid);\n };\n\n $scope.addTeam = function (formValues) {\n const teamName = formValues.name;\n\n $scope.state.actionInProgress = true;\n TeamService.createTeam(teamName, formValues.leaders)\n .then(function success() {\n Notifications.success('Team successfully created', teamName);\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to create team');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n $scope.removeAction = function (selectedItems) {\n ModalService.confirmDeletion('Do you want to delete the selected team(s)? Users in the team(s) will not be deleted.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteSelectedTeams(selectedItems);\n });\n };\n\n function deleteSelectedTeams(selectedItems) {\n var actionCount = selectedItems.length;\n angular.forEach(selectedItems, function (team) {\n TeamService.deleteTeam(team.Id)\n .then(function success() {\n Notifications.success('Team successfully removed', team.Name);\n var index = $scope.teams.indexOf(team);\n $scope.teams.splice(index, 1);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove team');\n })\n .finally(function final() {\n --actionCount;\n if (actionCount === 0) {\n $state.reload();\n }\n });\n });\n }\n\n function initView() {\n var userDetails = Authentication.getUserDetails();\n var isAdmin = Authentication.isAdmin();\n $scope.isAdmin = isAdmin;\n $q.all({\n users: UserService.users(false),\n teams: isAdmin ? TeamService.teams() : UserService.userLeadingTeams(userDetails.ID),\n })\n .then(function success(data) {\n var teams = data.teams;\n $scope.teams = teams;\n $scope.users = _.orderBy(data.users, 'Username', 'asc');\n $scope.isTeamLeader = !!teams.length;\n })\n .catch(function error(err) {\n $scope.teams = [];\n $scope.users = [];\n Notifications.error('Failure', err, 'Unable to retrieve teams');\n });\n }\n\n initView();\n },\n]);\n","import _ from 'lodash-es';\nimport { AccessControlFormData } from '../../components/accessControlForm/porAccessControlFormModel';\n\nangular.module('portainer.app').controller('TemplatesController', [\n '$scope',\n '$q',\n '$state',\n '$anchorScroll',\n 'ContainerService',\n 'ImageService',\n 'NetworkService',\n 'TemplateService',\n 'TemplateHelper',\n 'VolumeService',\n 'Notifications',\n 'ResourceControlService',\n 'Authentication',\n 'FormValidator',\n 'StackService',\n 'endpoint',\n function (\n $scope,\n $q,\n $state,\n $anchorScroll,\n ContainerService,\n ImageService,\n NetworkService,\n TemplateService,\n TemplateHelper,\n VolumeService,\n Notifications,\n ResourceControlService,\n Authentication,\n FormValidator,\n StackService,\n endpoint\n ) {\n const DOCKER_STANDALONE = 'DOCKER_STANDALONE';\n const DOCKER_SWARM_MODE = 'DOCKER_SWARM_MODE';\n\n $scope.state = {\n selectedTemplate: null,\n showAdvancedOptions: false,\n formValidationError: '',\n actionInProgress: false,\n };\n\n $scope.formValues = {\n network: '',\n name: '',\n AccessControlData: new AccessControlFormData(),\n };\n\n $scope.addVolume = function () {\n $scope.state.selectedTemplate.Volumes.push({ containerPath: '', bind: '', readonly: false, type: 'auto' });\n };\n\n $scope.removeVolume = function (index) {\n $scope.state.selectedTemplate.Volumes.splice(index, 1);\n };\n\n $scope.addPortBinding = function () {\n $scope.state.selectedTemplate.Ports.push({ hostPort: '', containerPort: '', protocol: 'tcp' });\n };\n\n $scope.removePortBinding = function (index) {\n $scope.state.selectedTemplate.Ports.splice(index, 1);\n };\n\n $scope.addExtraHost = function () {\n $scope.state.selectedTemplate.Hosts.push('');\n };\n\n $scope.removeExtraHost = function (index) {\n $scope.state.selectedTemplate.Hosts.splice(index, 1);\n };\n\n $scope.addLabel = function () {\n $scope.state.selectedTemplate.Labels.push({ name: '', value: '' });\n };\n\n $scope.removeLabel = function (index) {\n $scope.state.selectedTemplate.Labels.splice(index, 1);\n };\n\n function validateForm(accessControlData, isAdmin) {\n $scope.state.formValidationError = '';\n var error = '';\n error = FormValidator.validateAccessControl(accessControlData, isAdmin);\n\n if (error) {\n $scope.state.formValidationError = error;\n return false;\n }\n return true;\n }\n\n function createContainerFromTemplate(template, userId, accessControlData) {\n var templateConfiguration = createTemplateConfiguration(template);\n var generatedVolumeCount = TemplateHelper.determineRequiredGeneratedVolumeCount(template.Volumes);\n var generatedVolumeIds = [];\n VolumeService.createXAutoGeneratedLocalVolumes(generatedVolumeCount)\n .then(function success(data) {\n angular.forEach(data, function (volume) {\n var volumeId = volume.Id;\n generatedVolumeIds.push(volumeId);\n });\n TemplateService.updateContainerConfigurationWithVolumes(templateConfiguration, template, data);\n return ImageService.pullImage(template.RegistryModel, true);\n })\n .then(function success() {\n return ContainerService.createAndStartContainer(templateConfiguration);\n })\n .then(function success(data) {\n const resourceControl = data.Portainer.ResourceControl;\n return ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl, generatedVolumeIds);\n })\n .then(function success() {\n Notifications.success('Success', 'Container successfully created');\n $state.go('docker.containers', {}, { reload: true });\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, err.msg);\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n }\n\n function createComposeStackFromTemplate(template, userId, accessControlData) {\n var stackName = $scope.formValues.name;\n\n for (var i = 0; i < template.Env.length; i++) {\n var envvar = template.Env[i];\n if (envvar.preset) {\n envvar.value = envvar.default;\n }\n }\n\n var repositoryOptions = {\n RepositoryURL: template.Repository.url,\n ComposeFilePathInRepository: template.Repository.stackfile,\n FromAppTemplate: true,\n };\n\n const endpointId = +$state.params.endpointId;\n StackService.createComposeStackFromGitRepository(stackName, repositoryOptions, template.Env, endpointId)\n .then(function success(data) {\n const resourceControl = data.ResourceControl;\n return ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl);\n })\n .then(function success() {\n Notifications.success('Success', 'Stack successfully deployed');\n $state.go('docker.stacks');\n })\n .catch(function error(err) {\n Notifications.error('Deployment error', err);\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n }\n\n function createStackFromTemplate(template, userId, accessControlData) {\n var stackName = $scope.formValues.name;\n var env = _.filter(\n _.map(template.Env, function transformEnvVar(envvar) {\n return {\n name: envvar.name,\n value: envvar.preset || !envvar.value ? envvar.default : envvar.value,\n };\n }),\n function removeUndefinedVars(envvar) {\n return envvar.value && envvar.name;\n }\n );\n\n var repositoryOptions = {\n RepositoryURL: template.Repository.url,\n ComposeFilePathInRepository: template.Repository.stackfile,\n FromAppTemplate: true,\n };\n\n const endpointId = +$state.params.endpointId;\n\n StackService.createSwarmStackFromGitRepository(stackName, repositoryOptions, env, endpointId)\n .then(function success(data) {\n const resourceControl = data.ResourceControl;\n return ResourceControlService.applyResourceControl(userId, accessControlData, resourceControl);\n })\n .then(function success() {\n Notifications.success('Success', 'Stack successfully deployed');\n $state.go('docker.stacks');\n })\n .catch(function error(err) {\n Notifications.error('Deployment error', err);\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n }\n\n $scope.createTemplate = function () {\n var userDetails = Authentication.getUserDetails();\n var userId = userDetails.ID;\n var accessControlData = $scope.formValues.AccessControlData;\n\n if (!validateForm(accessControlData, $scope.isAdmin)) {\n return;\n }\n\n var template = $scope.state.selectedTemplate;\n\n $scope.state.actionInProgress = true;\n if (template.Type === 2) {\n createStackFromTemplate(template, userId, accessControlData);\n } else if (template.Type === 3) {\n createComposeStackFromTemplate(template, userId, accessControlData);\n } else {\n createContainerFromTemplate(template, userId, accessControlData);\n }\n };\n\n $scope.unselectTemplate = function (template) {\n template.Selected = false;\n $scope.state.selectedTemplate = null;\n };\n\n $scope.selectTemplate = function (template) {\n if (!Authentication.isAdmin() && !Authentication.hasAuthorizations(['DockerContainerCreate', 'PortainerStackCreate'])) {\n return;\n }\n\n if ($scope.state.selectedTemplate) {\n $scope.unselectTemplate($scope.state.selectedTemplate);\n }\n\n template.Selected = true;\n if (template.Network) {\n $scope.formValues.network = _.find($scope.availableNetworks, function (o) {\n return o.Name === template.Network;\n });\n } else {\n $scope.formValues.network = _.find($scope.availableNetworks, function (o) {\n return o.Name === 'bridge';\n });\n }\n\n $scope.formValues.name = template.Name ? template.Name : '';\n $scope.state.selectedTemplate = template;\n $scope.state.deployable = isDeployable($scope.applicationState.endpoint, template.Type);\n $anchorScroll('view-top');\n };\n\n function isDeployable(endpoint, templateType) {\n let deployable = false;\n switch (templateType) {\n case 1:\n deployable = endpoint.mode.provider === DOCKER_SWARM_MODE || endpoint.mode.provider === DOCKER_STANDALONE;\n break;\n case 2:\n deployable = endpoint.mode.provider === DOCKER_SWARM_MODE;\n break;\n case 3:\n deployable = endpoint.mode.provider === DOCKER_SWARM_MODE || endpoint.mode.provider === DOCKER_STANDALONE;\n break;\n }\n\n return deployable;\n }\n\n function createTemplateConfiguration(template) {\n var network = $scope.formValues.network;\n var name = $scope.formValues.name;\n return TemplateService.createTemplateConfiguration(template, name, network);\n }\n\n function initView() {\n $scope.isAdmin = Authentication.isAdmin();\n\n var endpointMode = $scope.applicationState.endpoint.mode;\n var apiVersion = $scope.applicationState.endpoint.apiVersion;\n const endpointId = +$state.params.endpointId;\n\n $q.all({\n templates: TemplateService.templates(endpointId),\n volumes: VolumeService.getVolumes(),\n networks: NetworkService.networks(\n endpointMode.provider === 'DOCKER_STANDALONE' || endpointMode.provider === 'DOCKER_SWARM_MODE',\n false,\n endpointMode.provider === 'DOCKER_SWARM_MODE' && apiVersion >= 1.25\n ),\n })\n .then(function success(data) {\n var templates = data.templates;\n $scope.templates = templates;\n $scope.availableVolumes = _.orderBy(data.volumes.Volumes, [(volume) => volume.Name.toLowerCase()], ['asc']);\n var networks = data.networks;\n $scope.availableNetworks = networks;\n $scope.allowBindMounts = endpoint.SecuritySettings.allowBindMountsForRegularUsers;\n })\n .catch(function error(err) {\n $scope.templates = [];\n Notifications.error('Failure', err, 'An error occurred during apps initialization.');\n });\n }\n\n initView();\n },\n]);\n","angular.module('portainer.app').controller('UserController', [\n '$q',\n '$scope',\n '$state',\n '$transition$',\n 'UserService',\n 'ModalService',\n 'Notifications',\n 'SettingsService',\n 'Authentication',\n function ($q, $scope, $state, $transition$, UserService, ModalService, Notifications, SettingsService, Authentication) {\n $scope.state = {\n updatePasswordError: '',\n };\n\n $scope.formValues = {\n username: '',\n newPassword: '',\n confirmPassword: '',\n Administrator: false,\n };\n\n $scope.handleAdministratorChange = function (checked) {\n return $scope.$evalAsync(() => {\n $scope.formValues.Administrator = checked;\n });\n };\n\n $scope.deleteUser = function () {\n ModalService.confirmDeletion('Do you want to remove this user? This user will not be able to login into Portainer anymore.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteUser();\n });\n };\n\n $scope.updateUser = async function () {\n const role = $scope.formValues.Administrator ? 1 : 2;\n const oldUsername = $scope.user.Username;\n const username = $scope.formValues.username;\n let promise = Promise.resolve(true);\n if (username != oldUsername) {\n promise = new Promise((resolve) =>\n ModalService.confirmWarn({\n title: 'Are you sure?',\n message: `Are you sure you want to rename the user ${oldUsername} to ${username}?`,\n buttons: {\n confirm: {\n label: 'Update',\n className: 'btn-primary',\n },\n },\n callback: resolve,\n })\n );\n }\n const confirmed = await promise;\n if (!confirmed) {\n return;\n }\n UserService.updateUser($scope.user.Id, { role, username })\n .then(function success() {\n Notifications.success('Success', 'User successfully updated');\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update user permissions');\n });\n };\n\n $scope.updatePassword = async function () {\n const isCurrentUser = Authentication.getUserDetails().ID === $scope.user.Id;\n const confirmed = !isCurrentUser || (await ModalService.confirmChangePassword());\n if (!confirmed) {\n return;\n }\n UserService.updateUser($scope.user.Id, { password: $scope.formValues.newPassword })\n .then(function success() {\n Notifications.success('Success', 'Password successfully updated');\n if (isCurrentUser) {\n $state.go('portainer.logout');\n } else {\n $state.reload();\n }\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to update user password');\n });\n };\n\n function deleteUser() {\n UserService.deleteUser($scope.user.Id)\n .then(function success() {\n Notifications.success('User successfully deleted', $scope.user.Username);\n $state.go('portainer.users');\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove user');\n });\n }\n\n $scope.isSubmitEnabled = isSubmitEnabled;\n function isSubmitEnabled() {\n const { user, formValues } = $scope;\n return user && (user.Username !== formValues.username || (formValues.Administrator && user.Role !== 1) || (!formValues.Administrator && user.Role === 1));\n }\n\n $scope.isDeleteDisabled = isDeleteDisabled;\n function isDeleteDisabled() {\n const { user } = $scope;\n return user && user.Id === 1;\n }\n\n function initView() {\n $scope.isAdmin = Authentication.isAdmin();\n\n $q.all({\n user: UserService.user($transition$.params().id),\n settings: SettingsService.publicSettings(),\n })\n .then(function success(data) {\n var user = data.user;\n $scope.user = user;\n $scope.formValues.Administrator = user.Role === 1;\n $scope.formValues.username = user.Username;\n $scope.AuthenticationMethod = data.settings.AuthenticationMethod;\n $scope.requiredPasswordLength = data.settings.RequiredPasswordLength;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve user information');\n });\n }\n\n initView();\n },\n]);\n","import _ from 'lodash-es';\n\nangular.module('portainer.app').controller('UsersController', [\n '$q',\n '$scope',\n '$state',\n 'UserService',\n 'TeamService',\n 'TeamMembershipService',\n 'ModalService',\n 'Notifications',\n 'Authentication',\n 'SettingsService',\n function ($q, $scope, $state, UserService, TeamService, TeamMembershipService, ModalService, Notifications, Authentication, SettingsService) {\n $scope.state = {\n userCreationError: '',\n validUsername: false,\n actionInProgress: false,\n };\n\n $scope.formValues = {\n Username: '',\n Password: '',\n ConfirmPassword: '',\n Administrator: false,\n Teams: [],\n };\n\n $scope.handleAdministratorChange = function (checked) {\n return $scope.$evalAsync(() => {\n $scope.formValues.Administrator = checked;\n });\n };\n\n $scope.checkUsernameValidity = function () {\n var valid = true;\n for (var i = 0; i < $scope.users.length; i++) {\n if ($scope.formValues.Username.toLocaleLowerCase() === $scope.users[i].Username.toLocaleLowerCase()) {\n valid = false;\n break;\n }\n }\n $scope.state.validUsername = valid;\n $scope.state.userCreationError = valid ? '' : 'Username already taken';\n };\n\n $scope.addUser = function () {\n $scope.state.actionInProgress = true;\n $scope.state.userCreationError = '';\n var username = $scope.formValues.Username;\n var password = $scope.formValues.Password;\n var role = $scope.formValues.Administrator ? 1 : 2;\n var teamIds = [];\n angular.forEach($scope.formValues.Teams, function (team) {\n teamIds.push(team.Id);\n });\n UserService.createUser(username, password, role, teamIds)\n .then(function success() {\n Notifications.success('User successfully created', username);\n $state.reload();\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to create user');\n })\n .finally(function final() {\n $scope.state.actionInProgress = false;\n });\n };\n\n function deleteSelectedUsers(selectedItems) {\n var actionCount = selectedItems.length;\n angular.forEach(selectedItems, function (user) {\n UserService.deleteUser(user.Id)\n .then(function success() {\n Notifications.success('User successfully removed', user.Username);\n var index = $scope.users.indexOf(user);\n $scope.users.splice(index, 1);\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to remove user');\n })\n .finally(function final() {\n --actionCount;\n if (actionCount === 0) {\n $state.reload();\n }\n });\n });\n }\n\n $scope.removeAction = function (selectedItems) {\n ModalService.confirmDeletion('Do you want to remove the selected users? They will not be able to login into Portainer anymore.', function onConfirm(confirmed) {\n if (!confirmed) {\n return;\n }\n deleteSelectedUsers(selectedItems);\n });\n };\n\n function assignTeamLeaders(users, memberships) {\n for (var i = 0; i < users.length; i++) {\n var user = users[i];\n user.isTeamLeader = false;\n for (var j = 0; j < memberships.length; j++) {\n var membership = memberships[j];\n if (user.Id === membership.UserId && membership.Role === 1) {\n user.isTeamLeader = true;\n user.RoleName = 'team leader';\n break;\n }\n }\n }\n }\n\n function initView() {\n var userDetails = Authentication.getUserDetails();\n var isAdmin = Authentication.isAdmin();\n $scope.isAdmin = isAdmin;\n $q.all({\n users: UserService.users(true),\n teams: isAdmin ? TeamService.teams() : UserService.userLeadingTeams(userDetails.ID),\n memberships: TeamMembershipService.memberships(),\n settings: SettingsService.publicSettings(),\n })\n .then(function success(data) {\n var users = data.users;\n assignTeamLeaders(users, data.memberships);\n $scope.users = users;\n $scope.teams = _.orderBy(data.teams, 'Name', 'asc');\n $scope.AuthenticationMethod = data.settings.AuthenticationMethod;\n $scope.requiredPasswordLength = data.settings.RequiredPasswordLength;\n })\n .catch(function error(err) {\n Notifications.error('Failure', err, 'Unable to retrieve users and teams');\n $scope.users = [];\n $scope.teams = [];\n });\n }\n\n initView();\n },\n]);\n","import axios from 'Portainer/services/axios';\nimport { EnvironmentId } from 'Portainer/environments/types';\n\nimport { ImageStatus } from './types';\n\nexport async function getImagesStatus(\n environmentId: EnvironmentId,\n imageName: string\n) {\n try {\n const { data } = await axios.post(\n `/docker/${environmentId}/images/status`,\n {\n ImageName: imageName,\n }\n );\n return data;\n } catch (e) {\n return {\n Status: 'unknown',\n Message: `Unable to retrieve image status for image name: ${imageName}`,\n };\n }\n}\n","import clsx from 'clsx';\nimport { useQuery } from 'react-query';\n\nimport { getImagesStatus } from '@/react/docker/images/image.service';\nimport { statusClass } from '@/react/docker/components/ImageStatus/helpers';\nimport { EnvironmentId } from '@/portainer/environments/types';\n\nexport interface Props {\n imageName: string;\n environmentId: EnvironmentId;\n}\n\nexport function ImageStatus({ imageName, environmentId }: Props) {\n const { data, isLoading } = useQuery(\n ['environments', environmentId, 'docker', 'images', imageName, 'status'],\n () => getImagesStatus(environmentId, imageName)\n );\n return ;\n}\n","import 'regenerator-runtime/runtime';\n\nexport default function setupTests() {\n // pass\n}\n","import angular from 'angular';\nimport 'moment';\nimport 'ui-select';\nimport 'angular-sanitize';\nimport 'ng-file-upload';\nimport 'angular-messages';\nimport 'angular-resource';\nimport 'angular-utils-pagination';\nimport 'angular-local-storage';\nimport 'angular-jwt';\nimport 'angular-json-tree';\nimport 'angular-loading-bar';\nimport 'angular-clipboard';\nimport 'angular-file-saver';\nimport 'angularjs-scroll-glue';\nimport 'angularjs-slider';\nimport 'bootstrap/dist/js/bootstrap.js';\nimport 'js-yaml/dist/js-yaml.js';\nimport 'angular-ui-bootstrap';\nimport 'angular-moment-picker';\nimport 'angular-multiselect/isteven-multi-select.js';\nimport 'angulartics/dist/angulartics.min.js';\n\nwindow.angular = angular;\n","var _module_exports = \"\\n\\n\";;\nvar path = 'app/agent/components/file-uploader/fileUploader.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n Actions
    \\n Go to parent\\n
    \\n \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n {{ item.Name }}\\n {{ item.Size | humansize }}\\n {{ item.ModTime | getisodatefromtimestamp }}\\n \\n \\n Download\\n \\n \\n Rename\\n \\n \\n Delete\\n \\n
    Loading...
    No files found.
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/agent/components/files-datatable/filesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\";;\nvar path = 'app/agent/components/host-browser/hostBrowser.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/agent/components/node-selector/nodeSelector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\";;\nvar path = 'app/agent/components/volume-browser/volumeBrowser.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Container capabilities
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/container-capabilities/containerCapabilities.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n Name\\n \\n \\n \\n \\n
    Maximum Retry Count\\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/container-restart-policy/container-restart-policy.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Nodes in the cluster{{ $ctrl.agentCount }}
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/dashboard-cluster-agent-info/dashboardClusterAgentInfo.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n Add config\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.CreatedAt | getisodate }}\\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = $ctrl.RCO.ADMINISTRATORS }}\\n \\n
    Loading...
    No config available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/configs-datatable/configsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n Join network\\n Joining network...\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Network\\n IP Address\\n \\n \\n \\n GatewayMAC AddressActions
    \\n \\n {{ key }}\\n {{ value.IPAddress || '-' }}{{ value.Gateway || '-' }}{{ value.MacAddress || '-' }}\\n \\n Leave network\\n Leaving network...\\n \\n
    \\n {{ value.GlobalIPv6Address }}\\n \\n {{ value.IPv6Gateway || '-' }}\\n
    Loading...
    No network available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/container-networks-datatable/containerNetworksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n {{ header }}\\n
    {{ info }}
    Loading...
    No process available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/container-processes-datatable/containerProcessesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n
    {{ item.Time | getisodatefromtimestamp }}{{ item.Type }}{{ item.Details }}
    Loading...
    No event available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/events-datatable/eventsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n Remove\\n \\n \\n \\n Toggle Dropdown\\n \\n \\n
    \\n\\n
    \\n \\n Import\\n \\n \\n \\n Export\\n Export in progress...\\n \\n
    \\n\\n \\n Build a new image\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n\\n
    \\n Filter \\n Filter \\n
    \\n
    \\n
    \\n
    Filter by usage
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{\\n item.Id | truncate: 40\\n }}\\n {{ item.Id | truncate: 40 }}\\n Unused\\n \\n {{ tag }}\\n {{ item.VirtualSize | humansize }}{{ item.Created | getisodatefromtimestamp }}{{ item.NodeName ? item.NodeName : '-' }}
    Loading...
    No image available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/images-datatable/imagesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Hostname }}\\n {{ item.Hostname }}\\n {{ item.Role }}{{ item.EngineVersion }}{{ item.Addr }}\\n {{ item.Status }}\\n
    Loading...
    No node available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/macvlan-nodes-datatable/macvlanNodesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n \\n \\n \\n\\n\\n\\n {{ item.Name | truncate: 40 }}\\n {{ item.Name | truncate: 40 }}\\n System\\n\\n{{ item.StackName ? item.StackName : '-' }}\\n{{ item.Driver }}\\n{{ item.Attachable }}\\n{{ item.IPAM.Driver }}\\n{{ item.IPAM.IPV4Configs[0].Subnet ? item.IPAM.IPV4Configs[0].Subnet : '-' }}\\n{{ item.IPAM.IPV4Configs[0].Gateway ? item.IPAM.IPV4Configs[0].Gateway : '-' }}\\n{{ item.IPAM.IPV6Configs[0].Subnet ? item.IPAM.IPV6Configs[0].Subnet : '-' }}\\n{{ item.IPAM.IPV6Configs[0].Gateway ? item.IPAM.IPV6Configs[0].Gateway : '-' }}\\n{{ item.NodeName ? item.NodeName : '-' }}\\n\\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = RCO.ADMINISTRATORS }}\\n \\n\\n\";;\nvar path = 'app/docker/components/datatables/networks-datatable/network-row-content/networkRowContent.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n Add network\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Loading...
    No network available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/networks-datatable/networksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Id }}\\n {{ item.Status.State }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    {{ item.Slot ? item.Slot : '-' }}{{ item.Spec.ContainerSpec.Image | hideshasum }}{{ item.Updated | getisodate }}
    Loading...
    No task available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/node-tasks-datatable/nodeTasksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Status }}\\n {{ item.Availability }}\\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n {{ item.Name || item.Hostname }}\\n {{ item.Name || item.Hostname }}\\n {{ item.Role }}{{ item.CPUs / 1000000000 }}{{ item.Memory | humansize }}{{ item.EngineVersion }}{{ item.Addr }}
    Loading...
    No node available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/nodes-datatable/nodesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n Add secret\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.CreatedAt | getisodate }}\\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = $ctrl.RCO.ADMINISTRATORS }}\\n \\n
    Loading...
    No secret available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/secrets-datatable/secretsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n Filter \\n Filter \\n \\n
    \\n
    \\n
    Filter by state
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    TaskActions\\n \\n \\n \\n \\n \\n
    \\n {{ item.Status.State }}\\n \\n {{ item.Id }}\\n {{\\n item.Id\\n }}\\n \\n \\n \\n {{ item.Slot ? item.Slot : '-' }}{{ item.NodeId | tasknodename: $ctrl.nodes }}{{ item.Updated | getisodate }}
    No task matching filter.
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/service-tasks-datatable/serviceTasksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n Update\\n \\n \\n Remove\\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/services-datatable/actions/servicesDatatableActions.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.StackName ? item.StackName : '-' }}\\n \\n {{ item.Image | hideshasum }}\\n \\n {{ item.Mode }}\\n {{ item.Tasks | runningtaskscount }} / {{ item.Mode === 'replicated' ? item.Replicas : ($ctrl.nodes | availablenodecount: item) }}\\n \\n \\n Scale\\n \\n \\n \\n \\n \\n \\n \\n \\n 0 && p.PublishedPort\\\"\\n ng-repeat=\\\"p in item.Ports\\\"\\n class=\\\"image-tag\\\"\\n ng-href=\\\"http://{{ $ctrl.endpointPublicUrl }}:{{ p.PublishedPort }}\\\"\\n target=\\\"_blank\\\"\\n ng-click=\\\"$event.stopPropagation();\\\"\\n >\\n {{ p.PublishedPort }}:{{ p.TargetPort }}\\n \\n -\\n {{ item.UpdatedAt | getisodate }}\\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = $ctrl.RCO.ADMINISTRATORS }}\\n \\n
    \\n \\n
    Loading...
    No service available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/services-datatable/servicesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Status.State }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n Actions\\n \\n \\n \\n \\n \\n
    \\n {{ item.ServiceName }}{{ item.Slot ? '.' + item.Slot : '' }}{{ '.' + item.Id }}\\n {{ item.ServiceName }}{{ item.Slot ? '.' + item.Slot : '' }}{{ '.' + item.Id }}\\n \\n \\n \\n {{ item.Slot ? item.Slot : '-' }}{{ item.NodeId | tasknodename: $ctrl.nodes }}{{ item.Updated | getisodate }}
    Loading...
    No task available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/tasks-datatable/tasksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n Add volume\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n Filter \\n Filter \\n
    \\n
    \\n
    Filter by usage
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{\\n item.Id | truncate: 40\\n }}\\n {{ item.Id | truncate: 40 }}\\n\\n \\n browse\\n \\n\\n Unused\\n {{ item.StackName ? item.StackName : '-' }}{{ item.Driver }}{{ item.Mountpoint | truncatelr }}{{ item.CreatedAt | getisodate }}{{ item.NodeName ? item.NodeName : '-' }}\\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = $ctrl.RCO.ADMINISTRATORS }}\\n \\n
    Loading...
    No volume available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/datatables/volumes-datatable/volumesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n\\n 1 && !$ctrl.offlineMode && $ctrl.hostFeaturesEnabled\\\"\\n browse-url=\\\"{{ $ctrl.browseUrl }}\\\"\\n>\\n\\n\\n\\n 1 && !$ctrl.offlineMode && $ctrl.hostFeaturesEnabled\\\" devices=\\\"$ctrl.devices\\\">\\n 1 && !$ctrl.offlineMode && $ctrl.hostFeaturesEnabled\\\" disks=\\\"$ctrl.disks\\\">\\n\\n\\n\";;\nvar path = 'app/docker/components/host-overview/host-overview.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NameVendor
    {{ device.Name }}{{ device.Vendor }}
    Loading...
    No device available.
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/devices-panel/devices-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    VendorSize
    {{ disk.Vendor }}{{ disk.Size | humansize }}
    Loading...
    No disks available.
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/disks-panel/disks-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n {{ $ctrl.engine.releaseVersion }} (API: {{ $ctrl.engine.apiVersion }})\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Version
    Root directory{{ $ctrl.engine.rootDirectory }}
    Storage Driver{{ $ctrl.engine.storageDriver }}
    Logging Driver{{ $ctrl.engine.loggingDriver }}
    Volume Plugins{{ $ctrl.engine.volumePlugins | arraytostr: ', ' }}
    Network Plugins{{ $ctrl.engine.networkPlugins | arraytostr: ', ' }}
    Engine Labels{{ $ctrl.engine.engineLabels | labelsToStr: ', ' }}
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/engine-details-panel/engine-details-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Hostname{{ $ctrl.host.name }}
    OS Information{{ $ctrl.host.os.type }} {{ $ctrl.host.os.arch }} {{ $ctrl.host.os.name }}
    Kernel Version{{ $ctrl.host.kernelVersion }}
    Total CPU{{ $ctrl.host.totalCPU }}
    Total memory{{ $ctrl.host.totalMemory | humansize }}
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/host-details-panel/host-details-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/node-availability-select/node-availability-select.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    There are no labels for this node.
    \\n\\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/node-labels-table/node-labels-table.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ $ctrl.details.status }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Node name{{ $ctrl.details.name }}
    Role{{ $ctrl.details.role }} {{ $ctrl.state.managerAddress }}
    Availability\\n \\n \\n
    Status
    \\n
    \\n label \\n
    \\n Node Labels\\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/host-view-panels/swarm-node-details-panel/swarm-node-details-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    0\\\" class=\\\"text-muted vertical-center\\\">\\n \\n \\n You are currently using a free account to pull images from DockerHub and will be limited to 200 pulls every 6 hours. Remaining pulls:\\n {{ $ctrl.pullRateLimits.remaining }}/{{ $ctrl.pullRateLimits.limit }}\\n \\n \\n \\n You are currently using an anonymous account to pull images from DockerHub and will be limited to 100 pulls every 6 hours. You can configure DockerHub authentication in\\n the\\n Registries View. Remaining pulls:\\n {{ $ctrl.pullRateLimits.remaining }}/{{ $ctrl.pullRateLimits.limit }}\\n \\n \\n You are currently using an anonymous account to pull images from DockerHub and will be limited to 100 pulls every 6 hours. Contact your administrator to configure\\n DockerHub authentication. Remaining pulls: {{ $ctrl.pullRateLimits.remaining }}/{{ $ctrl.pullRateLimits.limit }}\\n \\n \\n
    \\n
    \\n \\n \\n Your authorized pull count quota as a free user is now exceeded.\\n You will not be able to pull any image from the DockerHub registry.\\n \\n \\n Your authorized pull count quota as an anonymous user is now exceeded.\\n You will not be able to pull any image from the DockerHub registry.\\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/imageRegistry/por-image-registry-rate-limits.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n {{ $ctrl.displayedRegistryURL() }}\\n \\n \\n \\n Search\\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n

    When using advanced mode, image and repository must be publicly available.

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

    \\n Image name is required.\\n Tag must be specified otherwise Portainer will pull all tags associated to the image.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n\\n
    \\n\\n \\n \\n
    \\n\";;\nvar path = 'app/docker/components/imageRegistry/por-image-registry.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n      

    -1 }\\\">{{ span.text }}

    \\n

    No log line matching the '{{ $ctrl.state.search }}' filter

    \\n

    No logs available

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/log-viewer/logViewer.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Macvlan configuration
    \\n \\n
    \\n \\n \\n To create a MACVLAN network you need to create a configuration, then create the network from this configuration.\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    Parent network card must be specified.

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n = 1.25\\\"\\n access-to-node-details=\\\"$ctrl.isAdmin\\\"\\n name=\\\"node_selector\\\"\\n ng-model=\\\"tmp\\\"\\n ng-required=\\\"$ctrl.requiredNodeSelection()\\\"\\n >\\n
    \\n
    \\n
    \\n
    \\n
    \\n

    At least one node must be selected.

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

    Select a configuration network.

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/components/network-macvlan-form/networkMacvlanForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n \\n
    CIFS Settings
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

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

    This field is required.

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

    This field is required.

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

    This field is required.

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

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/docker/components/volumesCIFSForm/volumesCifsForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n \\n
    NFS Settings
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

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

    This field is required.

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

    This field is required.

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

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/docker/components/volumesNFSForm/volumesnfsForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/configs/configs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add label\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ ctrl.state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/configs/create/createconfig.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name{{ config.Name }}
    ID\\n {{ config.Id }}\\n
    Created{{ config.CreatedAt | getisodate }}
    Last updated{{ config.UpdatedAt | getisodate }}
    Labels\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/configs/edit/config.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n

    \\n \\n The interactive-flag is not set. You might not be able to use the console properly.\\n

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

    \\n \\n The TTY-flag is not set. You might not be able to use the console properly.\\n

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

    \\n \\n The container is not running.\\n

    \\n
    \\n\\n \\n Attach to Container\\n Detach\\n Attaching...\\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/console/attach.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n The container is not running.\\n \\n
    \\n
    \\n
    \\n
    \\n Exec into container as {{ ::formValues.user || 'default user' }} using command\\n {{ formValues.isCustomCommand ? formValues.customCommand : formValues.command }}\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/console/exec.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n \\n

    \\n \\n The new container may fail to start if the image is changed, and settings from the previous container aren't compatible. Common causes include entrypoint, cmd or\\n other settings set by an image.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Image configuration
    \\n
    \\n \\n \\n The Docker registry for the {{ config.Image }} image is not registered inside Portainer, you will not be able to create a container. Please register that\\n registry first.\\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n\\n \\n
    \\n
    Webhooks
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n\\n
    Network ports configuration
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n publish a new network port\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n host\\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n container\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    Deployment
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n
    Actions
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n Deploy the container\\n Deployment in progress...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n\\n
    Logging
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n

    \\n Logging driver that will override the default docker daemon driver. Select Default logging driver if you don't want to override it. Supported logging drivers\\n can be found in the Docker documentation.\\n

    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add logging driver option\\n \\n
    \\n \\n
    \\n
    \\n
    \\n option\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n map additional volume\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n container\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n \\n
    \\n volume\\n \\n
    \\n \\n \\n
    \\n host\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n You don't have any shared networks. Head over to the networks view to create one.\\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add additional entry\\n \\n
    \\n \\n
    \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n add label\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Runtime
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    = 1.37\\\">\\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n add device\\n \\n
    \\n \\n
    \\n
    \\n
    \\n host\\n \\n
    \\n
    \\n container\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add sysctl\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    GPU
    \\n\\n = 1.4\\\"\\n values=\\\"formValues.GPU\\\"\\n on-change=\\\"(onGpuChange)\\\"\\n gpus=\\\"endpoint.Gpus\\\"\\n used-gpus=\\\"gpuUseList\\\"\\n used-all-gpus=\\\"gpuUseAll\\\"\\n >\\n \\n\\n \\n
    \\n
    Resources
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n Value must be between 0 and {{ state.sliderMaxMemory }}.\\n

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

    \\n Value must be between 0 and {{ state.sliderMaxMemory }}.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n \\n Update Limits\\n Update in progress...\\n \\n
    \\n
    \\n

    \\n Updating any resource value to ‘unlimited' will redeploy this container.\\n

    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/create/createcontainer.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n Recreate\\n Recreation in progress...\\n \\n Duplicate/Edit\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ID{{ container.Id }}
    Name\\n {{ container.Name | trimcontainername }}\\n \\n \\n
    \\n \\n \\n \\n
    \\n
    IP address{{ container.NetworkSettings.IPAddress }}
    Status\\n \\n \\n {{ container.State | getstatetext }} for {{ activityTime\\n }} with exit code {{ container.State.ExitCode }}\\n
    Created{{ container.Created | getisodate }}
    Start time{{ container.State.StartedAt | getisodate }}
    Finished{{ container.State.FinishedAt | getisodate }}
    \\n \\n \\n {{ WebhookURL | truncatelr }}\\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Status\\n \\n {{ container.State.Health.Status }}\\n
    Failure count{{ container.State.Health.FailingStreak }}
    Last output{{ container.State.Health.Log[container.State.Health.Log.length - 1].Output }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n You can create an image from this container, this allows you to backup important data or save helpful configurations. You'll be able to spin up another container\\n based on this image afterward.\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n Note: if you don't specify the tag in the image name, latest will be used.\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Create\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n {{ container.Config.Image }}@{{ container.Image }}\\n \\n 0\\\">\\n \\n \\n \\n \\n \\n {{ container.Config.Cmd | command }}\\n \\n \\n \\n {{ container.Config.Entrypoint ? (container.Config.Entrypoint | command) : 'null' }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Image
    Port configuration\\n
    {{ portMapping.host }} {{ portMapping.container }}
    \\n
    CMD
    ENTRYPOINT
    ENV\\n \\n \\n \\n \\n \\n
    {{ var|key: '=' }}{{ var|value: '=' }}
    \\n
    Labels\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    Restart policies\\n \\n \\n
    Sysctls\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    GPUS{{ computeDockerGPUCommand() }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    0\\\">\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Host/volumePath in container
    {{ vol.Source }}{{ vol.Name }}\\n {{ vol.Destination }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/edit/container.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n
    {{ containerInfo | json: 4 }}
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/inspect/containerinspect.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\";;\nvar path = 'app/docker/views/containers/logs/containerlogs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n This view displays real-time statistics about the container {{ container.Name | trimcontainername }} as well as a list of the running processes inside this\\n container.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n Network stats are unavailable for this container. \\n
    \\n
    \\n
    \\n
    \\n I/O stats are unavailable for this container. \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/containers/stats/containerstats.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n\\n \\n

    \\n \\n Portainer is connected to a node that is part of a Swarm cluster. Some resources located on other nodes in the cluster might not be available for management, have a look at\\n our agent setup for more details.\\n

    \\n

    \\n \\n Portainer is connected to a worker node. Swarm management features will not be available.\\n

    \\n
    \\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Environment\\n {{ endpoint.Name }}\\n \\n {{ endpoint.Snapshots[0].TotalCPU }} \\n {{ endpoint.Snapshots[0].TotalMemory | humansize }}\\n \\n \\n - {{ info.Swarm && info.Swarm.NodeID !== '' ? 'Swarm' : 'Standalone' }} {{ info.ServerVersion }}\\n + Agent\\n
    URL{{ endpoint.URL | stripprotocol }}
    {{ endpoint.Gpus.length <= 1 ? 'GPU' : 'GPUs' }}{{ gpuInfoStr }}
    Tags{{ endpointTags }}
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n\\n
    \\n \\n \\n \\n
    \\n\\n \\n \\n \\n\\n \\n \\n \\n\\n \\n \\n \\n\\n \\n \\n \\n\\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/dashboard/dashboard.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n
    Host and Filesystem
    \\n
    \\n \\n \\n These features are only available for an Agent enabled Environment.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n \\n
    Change Window Settings
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\\n \\n\\n \\n
    Docker Security Settings
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n \\n Note: The recreate/duplicate/edit feature is currently disabled (for non-admin users) by one or more security settings.\\n \\n
    \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/docker-features-configuration/docker-features-configuration.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/events/events.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/host/host-browser-view/host-browser-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\";;\nvar path = 'app/docker/views/host/host-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n Builder \\n
    \\n
    Naming
    \\n \\n
    \\n You can specify multiple names to your image. \\n
    \\n
    \\n
    \\n \\n \\n add additional name\\n \\n
    \\n
    \\n \\n
    \\n \\n

    \\n You must specify at least one name for the image.\\n

    \\n
    \\n
    \\n \\n
    0\\\">\\n
    \\n \\n A name must be specified in one of the following formats: name:tag, repository/name:tag or\\n registryfqdn:port/repository/name:tag format. If you omit the tag the default latest value is assumed.\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n name\\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n The image name must be unique\\n The image name must consist of between 2 and 255 lowercase alphanumeric characters, '_' or '-' (e.g. 'my-name', or 'abc-123').\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    Build method
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Web editor
    \\n
    \\n \\n You can get more information about Dockerfile format in the\\n official documentation.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Upload
    \\n
    \\n \\n You can upload a Dockerfile or a tar archive containing a Dockerfile from your computer. When using a tarball, the root folder will be used as the build\\n context.\\n \\n
    \\n
    \\n
    \\n \\n \\n {{ formValues.UploadFile.name }}\\n \\n \\n
    \\n
    \\n
    \\n
    \\n Indicate the path to the Dockerfile within the tarball. \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    URL
    \\n
    \\n \\n Specify the URL to a Dockerfile, a tarball or a public Git repository (suffixed by .git). When using a tarball or a Git repository URL, the root folder\\n will be used as the build context.\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n Indicate the path to the Dockerfile within the tarball/repository (ignored when using a Dockerfile). \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    Deployment
    \\n \\n \\n \\n
    \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Build the image\\n Image building in progress...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Output \\n
    \\n              

    {{ line }}

    \\n

    No build output available.

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/images/build/buildimage.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    0\\\">\\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n {{\\n tag\\n }}\\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n Note: you can click on the upload icon to push an image or on the download icon\\n to pull an image or on the trash icon to delete a tag.\\n \\n
    \\n
    \\n \\n Download in progress...\\n \\n \\n \\n Upload in progress...\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n Note: if you don't specify the tag in the image name, latest will be used.\\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ image.Parent }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ID\\n {{ image.Id }}\\n \\n \\n \\n Export this image\\n Export in progress...\\n \\n
    Parent
    Size{{ image.VirtualSize | humansize }}
    Created{{ image.Created | getisodate }}
    BuildDocker {{ image.DockerVersion }} on {{ image.Os }}, {{ image.Architecture }}
    Labels\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    Author{{ image.Author }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n {{ image.Command | command }}\\n \\n \\n \\n {{ image.Entrypoint | command }}\\n \\n 0\\\">\\n \\n \\n \\n 0\\\">\\n \\n \\n \\n 0\\\">\\n \\n \\n \\n \\n
    CMD
    ENTRYPOINT
    EXPOSE\\n \\n {{ port }}\\n \\n
    VOLUME\\n \\n {{ volume }}\\n \\n
    ENV\\n \\n \\n \\n \\n \\n
    {{ var|key: '=' }}{{ var|value: '=' }}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    0\\\">\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n {{ layer.Order }}\\n \\n {{ layer.Size | humansize }}\\n \\n
    130\\\">\\n \\n {{ layer.CreatedBy | imagelayercommand }}\\n \\n \\n {{ layer.CreatedBy | imagelayercommand | truncate: 130 }}\\n 130\\\" class=\\\"ml-1\\\">\\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n {{ layer.CreatedBy | imagelayercommand }}\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/images/edit/image.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    Deployment
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n Pull the image\\n Download in progress...\\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/images/images.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    Upload
    \\n
    \\n You can upload a tar archive containing your images. \\n
    \\n
    \\n
    \\n \\n \\n {{ formValues.UploadFile.name }}\\n \\n \\n
    \\n
    \\n \\n
    \\n
    Deployment
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Upload\\n Images uploading in progress...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/images/import/importimage.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Driver configuration
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n Add driver option\\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    IPV4 Network configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n

    Exclude ip cannot be the same as gateway.

    \\n
    \\n
    \\n \\n
    \\n
    \\n Add excluded IP\\n
    \\n
    \\n
    \\n
    \\n
    IPV6 Network configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n

    Exclude ip cannot be the same as gateway.

    \\n
    \\n
    \\n \\n
    \\n
    \\n Add excluded IP\\n
    \\n
    \\n
    \\n
    Advanced configuration
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n
    \\n Add label\\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    Deployment
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create the network\\n Creating network...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n \\n \\n \\n
    \\n\\n\";;\nvar path = 'app/docker/views/networks/create/createnetwork.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/networks/networks.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/nodes/node-browser/node-browser.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n\\n\";;\nvar path = 'app/docker/views/nodes/node-details/node-details-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n\\n \\n\\n \\n \\n
    \\n\";;\nvar path = 'app/docker/views/registries/access/registryAccess.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n add label \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create the secret\\n Creating secret...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/secrets/create/createsecret.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name{{ secret.Name }}
    ID\\n {{ secret.Id }}\\n
    Created{{ secret.CreatedAt | getisodate }}
    Last updated{{ secret.UpdatedAt | getisodate }}
    Labels\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\";;\nvar path = 'app/docker/views/secrets/edit/secret.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/secrets/secrets.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Image configuration
    \\n \\n \\n \\n \\n
    Scheduling
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    Ports configuration
    \\n \\n
    \\n
    \\n \\n \\n map additional port\\n \\n
    \\n
    \\n
    \\n \\n
    \\n host\\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n container\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    Webhooks
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create the service\\n Creating service...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    Command
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Logging
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n

    \\n Logging driver for service that will override the default docker daemon driver. Select Default logging driver if you don't want to override it. Supported\\n logging drivers can be found\\n in the Docker documentation.\\n

    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add logging driver option\\n \\n
    \\n \\n
    \\n
    \\n
    \\n option\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n map additional volume\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n container\\n \\n
    \\n
    \\n Target is required.\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n volume\\n \\n \\n \\n
    \\n
    \\n Source is required.\\n
    \\n
    \\n \\n \\n
    \\n
    \\n host\\n \\n
    \\n
    \\n Source is required.\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add extra network\\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    = 1.25\\\">\\n
    \\n \\n \\n add additional entry\\n \\n
    \\n \\n
    \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n add service label\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add container label\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n \\n
    = 1.25\\\" ng-include=\\\"'app/docker/views/services/create/includes/secret.html'\\\">
    \\n \\n \\n
    = 1.3\\\" ng-include=\\\"'app/docker/views/services/create/includes/config.html'\\\">
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/create/createservice.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n \\n \\n add a config\\n \\n
    \\n \\n
    \\n
    \\n {{ formValues.Configs.$error }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n config\\n \\n
    \\n
    \\n Path in container\\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/create/includes/config.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Resources
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n

    Minimum memory available on a node to run a task (MB)

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

    Maximum memory usage per task (MB)

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

    Minimum CPU available on a node to run a task

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

    Maximum CPU usage per task

    \\n
    \\n
    \\n \\n
    Placement
    \\n \\n
    \\n
    \\n \\n \\n placement constraint\\n \\n
    \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    = 1.3\\\">\\n
    \\n \\n \\n placement preference\\n \\n
    \\n
    \\n
    \\n
    \\n strategy\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/docker/views/services/create/includes/resources-placement.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n By default, secrets will be available under /run/secrets/$SECRET_NAME in containers (Linux) or\\n C:\\\\ProgramData\\\\Docker\\\\secrets\\\\$SECRET_NAME (Windows).\\n
    \\n
    \\n
    \\n \\n \\n add a secret\\n \\n
    \\n \\n
    \\n
    \\n {{ formValues.Secrets.$error }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n secret\\n \\n
    \\n
    = 1.3 && secret.overrideTarget\\\">\\n target\\n \\n
    \\n
    \\n
    = 1.3\\\">\\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n\";;\nvar path = 'app/docker/views/services/create/includes/secret.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Update config
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n

    Maximum number of tasks to be updated simultaneously (0 to update all at once).

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

    Amount of time between updates expressed by a number followed by unit (ns|us|ms|s|m|h). Default value is 0s, 0 seconds.

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

    Action taken on failure to start after update.

    \\n
    \\n
    \\n \\n \\n
    = 1.29\\\">\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n

    Operation order on failure.

    \\n
    \\n
    \\n \\n\\n
    Restart policy
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n

    Restart when condition is met (default condition \\\"any\\\").

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

    Delay between restart attempts expressed by a number followed by unit (ns|us|ms|s|m|h). Default value is 5s, 5 seconds.

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

    Maximum attempts to restart a given task before giving up (default value is 0, which means unlimited).

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

    \\n Time window to evaluate restart attempts expressed by a number followed by unit (ns|us|ms|s|m|h). Default value is 0 seconds, which is unbounded.\\n

    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/docker/views/services/create/includes/update-restart.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    = 1.3\\\" id=\\\"service-configs\\\" ng-submit=\\\"updateService(service)\\\">\\n \\n \\n \\n
    \\n Add a config:\\n \\n add config \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ config.Name }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NamePath in containerUIDGIDMode
    \\n \\n {{ config.Uid }}{{ config.Gid }}{{ config.Mode }}\\n \\n
    No configs associated to this service.
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/configs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    There are no placement constraints for this service.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NameOperatorValue
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/constraints.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n {{ service.Command | command }}\\n \\n \\n \\n \\n {{ service.Arguments }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    CMD\\n

    Command to execute.

    \\n
    Args\\n

    Arguments passed to command in container.

    \\n
    User{{ service.User }}\\n

    Username or UID.

    \\n
    Working directory{{ service.Dir }}\\n

    Working directory inside the container.

    \\n
    Stop grace period{{ service.StopGracePeriod }}\\n

    Time to wait before force killing a container (default none).

    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/container-specs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    There are no container labels for this service.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    LabelValue
    \\n
    \\n name\\n \\n
    \\n
    \\n
    \\n value\\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/containerlabels.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n \\n \\n \\n

    There are no environment variables for this service.

    \\n
    \\n 0\\\">\\n \\n \\n \\n
    \\n
    \\n \\n Apply changes\\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/environmentvariables.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    The Hosts file has no extra entries.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    HostnameIP
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/hosts.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n \\n

    Image modification is disabled while service is updating.

    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/image.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n Driver:\\n \\n \\n add logging driver option\\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    OptionValue
    \\n
    \\n name\\n \\n
    \\n
    \\n
    \\n value\\n \\n \\n \\n \\n
    \\n
    No options associated to this logging driver.
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/logging.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    There are no mounts for this service.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    TypeSourceTargetRead onlyActions
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n Source is required.\\n
    \\n
    \\n \\n
    \\n Target is required.\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/mounts.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    This service is not connected to any networks.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NameIDIP addressActions
    \\n \\n \\n \\n {{ network.Name }}\\n \\n {{ network.Id }}\\n \\n {{ network.Addr }}\\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/networks.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    There are no placement preferences for this service.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    StrategyValue
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/placementPreferences.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    This service has no ports published.

    \\n
    \\n 0\\\" classes=\\\"no-padding\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Host portContainer portProtocolPublish modeActions
    \\n
    \\n host\\n \\n
    \\n
    \\n
    \\n container\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/ports.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Memory reservation (MB) \\n \\n \\n

    Minimum memory available on a node to run a task (set to 0 for unlimited)

    \\n
    Memory limit (MB) \\n \\n \\n

    Maximum memory usage per task (set to 0 for unlimited)

    \\n
    \\n
    CPU reservation
    \\n
    \\n \\n \\n

    Minimum CPU available on a node to run a task

    \\n
    \\n
    CPU limit
    \\n
    \\n \\n \\n

    Maximum CPU usage per task

    \\n
    \\n
    \\n \\n
    \\n
    \\n Apply changes\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/resources.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Restart condition\\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n

    Condition for restart.

    \\n
    Restart delay\\n \\n \\n

    \\n Delay between restart attempts expressed by a number followed by unit (ns|us|ms|s|m|h). Default value is 5s, 5 seconds.\\n

    \\n
    Restart max attempts\\n \\n \\n

    Maximum attempts to restart a given task before giving up (default value is 0, which means unlimited).

    \\n
    Restart window\\n \\n \\n

    \\n Time window to evaluate restart attempts expressed by a number followed by unit (ns|us|ms|s|m|h). Default value is 0 seconds, which is unbounded.\\n

    \\n
    \\n
    \\n \\n
    \\n
    \\n Apply changes\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/restart.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    = 1.25\\\" id=\\\"service-secrets\\\">\\n \\n \\n \\n
    \\n Add a secret:\\n \\n
    = 1.3 && state.addSecret.override\\\">\\n Target:\\n \\n
    \\n
    = 1.3\\\">\\n \\n \\n
    \\n add secret \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ secret.Name }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NameFile nameUIDGIDMode
    {{ secret.FileName }}{{ secret.Uid }}{{ secret.Gid }}{{ secret.Mode }}\\n \\n
    No secrets associated to this service.
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/secrets.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n

    There are no labels for this service.

    \\n
    \\n 0\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Label Value
    \\n
    \\n name\\n \\n
    \\n
    \\n
    \\n value\\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/servicelabels.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    0 && nodes\\\" id=\\\"service-tasks\\\">\\n = 1.30\\\"\\n agent-proxy=\\\"applicationState.endpoint.mode.agentProxy\\\"\\n >\\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/tasks.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n = 1.29\\\">\\n \\n \\n \\n \\n \\n
    Update Parallelism\\n \\n \\n

    Maximum number of tasks to be updated simultaneously (0 to update all at once).

    \\n
    Update Delay\\n \\n \\n

    Amount of time between updates expressed by a number followed by unit (ns|us|ms|s|m|h). Example: 1m.

    \\n
    Update Failure Action\\n
    \\n \\n \\n
    \\n
    \\n

    Action taken on failure to start after update.

    \\n
    Order\\n
    \\n \\n \\n
    \\n
    \\n

    Operation order on failure.

    \\n
    \\n
    \\n \\n
    \\n
    \\n Apply changes\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/includes/updateconfig.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n
    \\n

    This service is being updated. Editing this service is currently disabled.

    \\n Refresh to see if this service has finished updated.\\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n \\n = 1.25\\\">\\n {{ service.Name }}\\n
    ID\\n {{ service.Id }}\\n
    Created at{{ service.CreatedAt | getisodate }}
    Last updated at{{ service.UpdatedAt | getisodate }}
    Version{{ service.Version }}
    Scheduling mode{{ service.Mode }}
    Replicas\\n \\n \\n \\n
    Image{{ service.Image }}
    \\n \\n \\n {{ webhookURL | truncatelr }}\\n \\n \\n \\n \\n
    \\n

    \\n Note: you can only rollback one level of changes. Clicking the rollback button without making a new change will undo your previous rollback

    \\n = 1.3\\\"\\n class=\\\"btn btn-primary btn-sm\\\"\\n type=\\\"button\\\"\\n ui-sref=\\\"docker.services.service.logs({id: service.Id})\\\"\\n >Service logs\\n = 1.25\\\"\\n >\\n Update the service\\n Update in progress...\\n \\n = 1.25\\\"\\n >\\n Rollback the service\\n Rollback in progress...\\n \\n \\n Delete the service\\n Deletion in progress...\\n \\n

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

    \\n Do you need help? View the Docker Service documentation here.\\n

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

    Container specification

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

    Networks & ports

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

    Service specification

    \\n
    \\n
    \\n = 1.3\\\"\\n class=\\\"padding-top\\\"\\n ng-include=\\\"'app/docker/views/services/edit/includes/placementPreferences.html'\\\"\\n >
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    = 1.25\\\" class=\\\"padding-top\\\" ng-include=\\\"'app/docker/views/services/edit/includes/secrets.html'\\\">
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/edit/service.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\";;\nvar path = 'app/docker/views/services/logs/servicelogs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n = 1.25\\\"\\n show-task-logs-button=\\\"applicationState.endpoint.apiVersion >= 1.30\\\"\\n show-add-action=\\\"true\\\"\\n show-stack-column=\\\"true\\\"\\n refresh-callback=\\\"getServices\\\"\\n endpoint-public-url=\\\"endpoint.PublicURL\\\"\\n endpoint-id=\\\"endpoint.Id\\\"\\n >\\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/services/services.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Nodes{{ info.Swarm.Nodes }}
    Docker API version{{ docker.ApiVersion }}
    Total CPU{{ totalCPU }}
    Total memory{{ totalMemory | humansize: 2 }}
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n = 1.25\\\"\\n access-to-node-details=\\\"isAdmin\\\"\\n refresh-callback=\\\"getNodes\\\"\\n >\\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/swarm/swarm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Nodes{{ nodes.length }}
    Services{{ services.length }}
    Tasks{{ tasks.length }}
    \\n
    \\n
    Options
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    Refresh
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n {{ node.Name || node.Hostname }}\\n \\n \\n \\n \\n
    \\n
    \\n
    {{ node.Role }}
    \\n
    CPU: {{ node.CPUs / 1000000000 }}
    \\n
    Memory: {{ node.Memory | humansize: 2 }}
    \\n {{ node.Status }}\\n
    0 && state.DisplayNodeLabels\\\">\\n
    Labels
    \\n
    \\n \\n {{ label.key }}\\n \\n = {{ label.value }} \\n
    \\n
    \\n
    \\n
    \\n \\n
    {{ task.ServiceName }}
    \\n
    Image: {{ task.Spec.ContainerSpec.Image | hideshasum }}
    \\n
    Status: {{ task.Status.State }}
    \\n
    Update: {{ task.Updated | getisodate }}
    \\n
    Memory limit: {{ task.Spec.Resources.Limits.MemoryBytes | humansize: 2:2 }}
    \\n
    CPU limit: {{ task.Spec.Resources.Limits.NanoCPUs / 1000000000 }}
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n\\n\";;\nvar path = 'app/docker/views/swarm/visualizer/swarmvisualizer.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ task.Status.State }}\\n \\n \\n \\n \\n \\n \\n \\n {{ task.Status.Err }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n = 1.3 && task.Status.State | taskhaslogs\\\">\\n \\n \\n
    ID{{ task.Id }}
    State
    State Message{{ task.Status.Message }}
    Error message
    Image{{ task.Spec.ContainerSpec.Image | hideshasum }}
    Slot{{ task.Slot }}
    Created{{ task.Created | getisodate }}
    Container ID{{ task.Status.ContainerStatus.ContainerID }}
    Task logs\\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/tasks/edit/task.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\";;\nvar path = 'app/docker/views/tasks/logs/tasklogs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n 1\\\" endpoint-id=\\\"endpointId\\\">\\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/volumes/browse/browsevolume.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Driver configuration
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add driver option\\n \\n
    \\n \\n
    \\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    Ensure nfs-utils are installed on your hosts.
    \\n
    \\n \\n \\n \\n
    \\n \\n
    Ensure cifs-utils are installed on your hosts.
    \\n
    \\n \\n \\n
    \\n
    Deployment
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create the volume\\n Creating volume...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/volumes/create/createvolume.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ID\\n {{ volume.Id }}\\n
    Created{{ volume.CreatedAt | getisodate }}
    Mount path{{ volume.Mountpoint }}
    Driver{{ volume.Driver }}
    Labels\\n \\n \\n \\n \\n \\n
    {{ k }}{{ v }}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    {{ key }}{{ value }}
    \\n
    \\n
    \\n
    \\n
    \\n
    0\\\">\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ container | containername }}\\n \\n \\n \\n \\n
    Container NameMounted AtRead-only
    {{ container.volumeData.Destination }}{{ !container.volumeData.RW }}
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/volumes/edit/volume.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/docker/views/volumes/volumes.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n Name\\n \\n \\n \\n \\n \\n Group\\n \\n \\n \\n
    \\n {{ item.Name }}\\n {{ item.GroupName }}
    Loading...
    No environment available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/associated-endpoints-datatable/associatedEndpointsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n \\n \\n {{ $item.Name }}\\n \\n \\n \\n \\n {{ item.Name }}\\n \\n \\n\\n\";;\nvar path = 'app/edge/components/edge-groups-selector/edgeGroupsSelector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Edge job configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n This field is required.\\n

    \\n

    \\n Allowed characters are: [a-zA-Z0-9_.-]\\n

    \\n
    \\n
    \\n
    \\n \\n \\n \\n
    Edge job configuration
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    Time should be set according to the chosen environments' timezone.
    \\n
    \\n
    \\n
    \\n

    \\n This field is required.\\n

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

    \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    Time should be set according to the chosen environments' timezone.
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n This field is required.\\n

    \\n

    \\n This field format is invalid.\\n

    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n
    Job content
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Web editor
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Upload
    \\n
    \\n You can upload a script file from your computer. \\n
    \\n
    \\n
    \\n \\n \\n {{ $ctrl.model.File.name }}\\n \\n \\n
    \\n
    \\n
    \\n \\n
    Target environments
    \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n\\n\";;\nvar path = 'app/edge/components/edge-job-form/edgeJobForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n Environment\\n \\n \\n \\n Actions
    \\n {{ item.Endpoint.Name }}\\n \\n \\n \\n \\n Logs marked for collection, please wait until the logs are available. \\n
    Loading...
    No result available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/edge-job-results-datatable/edgeJobResultsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n {{ item.CronExpression }}\\n {{ item.Created | getisodatefromtimestamp }}
    Loading...
    No Edge job available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/edge-jobs-datatable/edgeJobsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n ActionsAction Status
    {{ item.Name }}{{ $ctrl.endpointStatusLabel(item.Id) }}{{ $ctrl.endpointStatusError(item.Id) }}
    Loading...
    No environment available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/edge-stack-endpoints-datatable/edgeStackEndpointsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"{{ $ctrl.status.acknowledged || 0 }}\\n{{ $ctrl.status.ok || 0 }}\\n{{ $ctrl.status.error || 0 }}\\n\";;\nvar path = 'app/edge/components/edge-stack-status/edgeStackStatus.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    Edge Stacks
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n Status \\n \\n
    \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n {{ item.CreationDate | getisodatefromtimestamp }}
    Loading...
    No stack available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/edge-stacks-datatable/edgeStacksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Edge Groups
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n One or more of the selected Edge group contains Edge Docker endpoints that cannot be used with a Kubernetes Edge stack.\\n
    \\n
    \\n
    \\n\\n \\n\\n
    \\n
    \\n
    \\n \\n Portainer uses Kompose to convert your Compose manifest to a Kubernetes compliant manifest. Be wary that not all the\\n Compose format options are supported by Kompose at the moment.\\n
    \\n
    \\n
    \\n\\n \\n \\n
    \\n You can get more information about Compose file format in the\\n official documentation \\n .\\n
    \\n
    \\n \\n\\n \\n \\n

    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n

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

    \\n You can get more information about Nomad file format in the\\n official documentation.\\n

    \\n
    \\n \\n\\n \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Update the stack\\n Update in progress...\\n \\n
    \\n
    \\n \\n\\n\";;\nvar path = 'app/edge/components/edit-edge-stack-form/editEdgeStackForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n\\n
    Group type
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n \\n
    Associated environments
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n No Edge environments are available. Head over to the Environments view to add environments.\\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n
    Tags
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n \\n\\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/group-form/groupForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    Edge Groups
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n in use\\n {{ item.Endpoints.length }}{{ item.Dynamic ? 'Dynamic' : 'Static' }}
    Loading...
    No Edge group available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/components/groups-datatable/groupsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-groups/createEdgeGroupView/createEdgeGroupView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-groups/edgeGroupsView/edgeGroupsView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-groups/editEdgeGroupView/editEdgeGroupView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-jobs/createEdgeJobView/createEdgeJobView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n Configuration\\n \\n\\n \\n \\n\\n \\n \\n Results\\n \\n\\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-jobs/edgeJob/edgeJob.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n \\n

    Edge Jobs requires Docker Standalone and a cron implementation that reads jobs from /etc/cron.d

    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-jobs/edgeJobsView/edgeJobsView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    Name is required.

    \\n
    \\n
    \\n
    \\n \\n\\n
    Edge Groups
    \\n
    \\n
    \\n \\n
    \\n
    \\n No Edge groups are available. Head over to the Edge groups view to create one.\\n
    \\n
    \\n\\n \\n\\n
    \\n
    \\n
    \\n \\n Portainer uses Kompose to convert your Compose manifest to a Kubernetes compliant manifest. Be wary that not all\\n the Compose format options are supported by Kompose at the moment.\\n
    \\n
    \\n
    \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Deploy the stack\\n Deployment in progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-stacks/createEdgeStackView/create-edge-stack-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Build method
    \\n\\n\\n\\n \\n You can get more information about Compose file format in the\\n official documentation \\n .\\n \\n\\n\\n\\n You can upload a Compose file from your computer. \\n\\n\\n\\n\\n\\n
    \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    Information
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n \\n\\n \\n
    \\n\";;\nvar path = 'app/edge/views/edge-stacks/createEdgeStackView/docker-compose-form/docker-compose-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Templates allow deploying any kind of Kubernetes resource (Deployment, Secret, ConfigMap...)
    \\n
    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n
    \\n\";;\nvar path = 'app/edge/views/edge-stacks/createEdgeStackView/kube-deploy-description/kube-deploy-description.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Build method
    \\n\\n\\n\\n \\n \\n \\n\\n\\n\\n \\n \\n \\n\\n\\n\\n\";;\nvar path = 'app/edge/views/edge-stacks/createEdgeStackView/kube-manifest-form/kube-manifest-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Build method
    \\n\\n\\n\\n \\n \\n \\n\\n\\n\\n \\n \\n \\n\\n\\n\\n\";;\nvar path = 'app/edge/views/edge-stacks/createEdgeStackView/nomad-hcl-form/nomad-hcl-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-stacks/edgeStacksView/edgeStacksView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n Stack\\n \\n\\n
    \\n \\n
    \\n
    \\n \\n \\n Environments\\n \\n\\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/edge/views/edge-stacks/editEdgeStackView/editEdgeStackView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.titleText }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Status }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n Actions
    {{ item.PodName }}{{ item.Name }}{{ item.Image | truncate: 64 }}{{ item.ImagePullPolicy }}\\n \\n \\n {{ item.Node }}\\n \\n \\n -\\n {{ item.PodIP }}{{ item.CreationDate | getisodate }}\\n \\n Stats\\n \\n \\n Logs\\n \\n \\n Console\\n \\n
    Loading...
    No pod available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/application/containers-datatable/containersDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Secrets
    \\n\\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/applications-datatable-details/applications-datatable-details.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Published URL
    \\n \\n \\n {{ $ctrl.publishedUrl }}\\n \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/applications-datatable-url/applications-datatable-url.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n Applications\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n \\n Add with form\\n \\n \\n Create from manifest\\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n System resources are hidden, this can be changed in the table settings.\\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n Filters\\n \\n \\n
    \\n
    \\n
    \\n
    Filter by application type
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n {{ item.Name }}\\n \\n {{ item.Name }}\\n \\n system\\n external\\n {{ item.StackName || '-' }}\\n {{ item.ResourcePool }}\\n {{ item.Image | truncate: 64 }} 1\\\">+ {{ item.Containers.length - 1 }}\\n {{ item.ApplicationType | kubernetesApplicationTypeText }}\\n 0 && item.TotalPodsCount === item.RunningPodsCount) || item.Status === 'Ready'\\\">\\n Replicated\\n Global\\n = 0 && item.TotalPodsCount >= 0\\\"\\n >{{ item.RunningPodsCount }} / {{ item.TotalPodsCount }}\\n {{ item.Status }}\\n \\n {{ item.Pods[0].Status }}\\n \\n \\n {{ item.Services.length === 0 ? 'No' : 'Yes' }}\\n \\n {{ item.CreationDate | getisodate }} {{ item.ApplicationOwner ? 'by ' + item.ApplicationOwner : '' }}
    \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Loading...
    No application available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/applications-datatable/applicationsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n *]:mr-0.5'\\\">\\n
    \\n Port mappings\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n System resources are hidden, this can be changed in the table settings.\\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n {{ item.Name }}\\n system\\n external\\n \\n \\n \\n LoadBalancer \\n \\n {{ item.LoadBalancerIPAddress }}\\n pending\\n \\n \\n \\n ClusterIP \\n \\n NodePort \\n \\n \\n {{ item.Ports[0].Port }}\\n \\n access\\n \\n \\n \\n {{ item.Ports[0].TargetPort }}/{{ item.Ports[0].Protocol }} \\n \\n \\n -\\n \\n pending\\n \\n \\n \\n {{ $ctrl.buildIngressRuleURL(item.Ports[0].IngressRules[0]) | stripprotocol }}\\n \\n \\n \\n \\n
    --\\n {{ port.Port }}\\n \\n access\\n \\n {{ port.TargetPort }}/{{ port.Protocol }}-
    --\\n {{ port.Port }}\\n \\n access\\n \\n {{ port.TargetPort }}/{{ port.Protocol }}\\n pending\\n \\n \\n \\n {{ $ctrl.buildIngressRuleURL(rule) | stripprotocol }}\\n \\n \\n
    Loading...
    No application port mapping available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/applications-ports-datatable/applicationsPortsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n Stacks\\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n System resources are hidden, this can be changed in the table settings.\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n {{ item.Name }}\\n \\n {{ item.ResourcePool }}\\n system\\n {{ item.Applications.length }}\\n \\n Logs\\n \\n
    \\n {{ app.Name }}\\n external\\n
    Loading...
    No stack available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/applications-stacks-datatable/applicationsStacksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n ConfigMaps & Secrets\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n Remove\\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    System resources are hidden, this can be changed in the table settings.
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n external\\n unused\\n system\\n \\n {{ item.Namespace }}\\n {{ item.Type | kubernetesConfigurationTypeText }}{{ item.CreationDate | getisodate }} {{ item.ConfigurationOwner ? 'by ' + item.ConfigurationOwner : '' }}
    Loading...
    No configuration available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/configurations-datatable/configurationsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Type }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    {{ item.Date | getisodate }}{{ item.Involved.kind }}{{ item.Message }}
    Loading...
    No event available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/events-datatable/eventsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n
    {{ item.StackName || '-' }}{{ item.Image | truncate: 64 }}
    Loading...
    No application available.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/integrated-applications-datatable/integratedApplicationsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.titleText }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n {{ item.Name }}\\n system\\n external\\n {{ item.StackName || '-' }}\\n {{ item.ResourcePool }}\\n {{ item.Image | truncate: 64 }} 1\\\">+ {{ item.Containers.length - 1 }}\\n {{ item.CPU | kubernetesApplicationCPUValue }}{{ item.Memory | humansize }}
    Loading...
    No stack available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/node-applications-datatable/nodeApplicationsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.titleText }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Status }}\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n {{ item.Name }}\\n \\n {{ item.Name }}\\n api\\n {{ item.Role }}{{ item.CPU }}{{ item.Memory | humansize }}{{ item.Version }}{{ item.IPAddress }}\\n Stats \\n
    Loading...
    No node available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/nodes-datatable/nodesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n {{ item.Name }}\\n external\\n {{ item.StackName || '-' }}{{ item.Image | truncate: 64 }} 1\\\">+ {{ item.Containers.length - 1 }}\\n {{ item.CPU | kubernetesApplicationCPUValue }}{{ item.Memory | humansize }}
    Loading...
    No application available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/resource-pool-applications-datatable/resourcePoolApplicationsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n Namespaces\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n
    System resources are hidden, this can be changed in the table settings.
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Namespace.Name }}\\n system\\n \\n {{ item.Namespace.Status }}\\n \\n Enabled\\n -\\n {{ item.Namespace.CreationDate | getisodate }} {{ item.Namespace.ResourcePoolOwner ? 'by ' + item.Namespace.ResourcePoolOwner : '' }}\\n \\n \\n Manage access\\n \\n -\\n
    Loading...
    No namespace available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/resource-pools-datatable/resourcePoolsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n Volumes\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n System resources are hidden, this can be changed in the table settings. \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.PersistentVolumeClaim.Name }}\\n system\\n external\\n unused\\n \\n {{ item.ResourcePool.Namespace.Name }}\\n \\n {{\\n item.Applications[0].Name\\n }}\\n 1\\\"> + {{ item.Applications.length - 1 }}\\n -\\n \\n {{ item.PersistentVolumeClaim.StorageClass.Name }}\\n \\n {{ item.PersistentVolumeClaim.Storage }}\\n \\n {{ item.PersistentVolumeClaim.CreationDate | getisodate }}\\n {{ item.PersistentVolumeClaim.ApplicationOwner ? 'by ' + item.PersistentVolumeClaim.ApplicationOwner : '' }}\\n
    Loading...
    No volume available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/datatables/volumes-datatable/volumesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n
    \\n \\n
    \\n Additional repositories\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n Add a Helm repository. All Helm charts in the repository will be added to the list. \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n

    A valid URL beginning with http(s) is required.\\n

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

    Helm repository already exists.

    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n Add repository\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/helm/helm-templates/helm-add-repository/helm-add-repository.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n \\n \\n *]:!h-8 [&>*]:!w-auto'\\\"\\n fallback-mode=\\\"'primary'\\\"\\n size=\\\"'xl'\\\"\\n >\\n \\n\\n
    \\n \\n
    \\n\\n \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.model.name }}\\n \\n \\n \\n \\n \\n Helm \\n \\n \\n
    \\n \\n \\n \\n
    \\n \\n {{ $ctrl.model.description }}\\n \\n \\n {{ $ctrl.model.annotations.category }}\\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list-item/helm-templates-list-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n {{ $ctrl.titleText }}\\n
    \\n\\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n {{ $select.selected }}\\n \\n \\n {{ category }}\\n \\n \\n
    \\n
    \\n\\n
    \\n \\n \\n
    \\n Loading...\\n
    Initial download of Helm Charts can take a few minutes
    \\n
    \\n
    No helm charts available.
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/helm/helm-templates/helm-templates-list/helm-templates-list.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n \\n

    \\n \\n This is a first version for Helm charts, for more information see this blog post.\\n

    \\n \\n The Global Helm Repository is not configured.\\n Configure Global Helm Repository in Settings.\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n \\n {{ $ctrl.state.chart.name }}\\n
    \\n \\n
    \\n \\n
    \\n
    Description
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    Configuration
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n You do not have access to any namespace. Contact your administrator to get access to a namespace.\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n This field must consist of lower case alphanumeric characters or '-', start with an alphabetic character, and end with an alphanumeric character (e.g.\\n 'my-name', or 'abc-123').\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n Show custom values\\n \\n \\n \\n Loading values.yaml...\\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n You can get more information about Helm values file format in the\\n official documentation.\\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Install\\n Helm installing in progress\\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/kubernetes/components/helm/helm-templates/helm-templates.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n

    \\n No Load balancer is available in this cluster, click\\n here to configure load balancer.\\n

    \\n
    \\n
    \\n

    No Load balancer is available in this cluster, contact your administrator.\\n

    \\n
    \\n\\n \\n
    \\n \\n \\n publish a new port\\n \\n
    \\n
    \\n
    \\n
    \\n Container port\\n \\n
    \\n \\n
    \\n This container port is already used.\\n
    \\n
    \\n

    Container port number is required.

    \\n

    Container port number must be inside the range 1-65535.\\n

    Container port number must be inside the range 1-65535.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n Service port\\n \\n
    \\n \\n
    \\n This service port is already used.\\n
    \\n
    \\n
    \\n

    Service port number is required.

    \\n

    Service port number must be inside the range 1-65535.\\n

    Service port number must be inside the range 1-65535.\\n

    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n Nodeport\\n \\n
    \\n
    \\n \\n
    \\n
    \\n

    Nodeport is required.

    \\n

    Nodeport number must be inside the range 30000-32767 or blank for system\\n allocated.\\n

    Nodeport number must be inside the range 30000-32767 or blank for system\\n allocated.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n Loadbalancer port\\n \\n
    \\n
    \\n\\n
    \\n
    \\n Ingress\\n \\n \\n \\n
    \\n \\n
    \\n
    \\n

    Ingress selection is required.

    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n Hostname\\n \\n \\n \\n
    \\n \\n
    \\n
    \\n

    Host is required.

    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n Route\\n \\n
    \\n \\n
    \\n
    \\n

    Route is required.

    \\n

    This field must consist of alphanumeric characters or the special characters: '-', '_'\\n or '/'. It must start and end with an alphanumeric character (e.g. 'my-route', or 'route-123').\\n

    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n TCP\\n UDP\\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/kubernetes/components/kube-services/kube-services-item/kube-services-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Publishing the application
    \\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n {{ $ctrl.serviceType(service.Type) }}\\n
    \\n \\n \\n Remove\\n \\n
    \\n\\n
    \\n
    \\n \\n Ingress\\n
    \\n
    \\n

    \\n Ingress is not configured in this namespace, select another namespace or click\\n here to configure ingress.\\n

    \\n
    \\n
    \\n

    \\n Ingress is not configured in this namespace, select another namespace or contact your\\n administrator.\\n

    \\n
    \\n \\n Remove\\n \\n
    \\n\\n
    \\n
    \\n \\n Ingress\\n
    \\n \\n \\n Remove\\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/kube-services/kube-services.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    Data
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Switch to advanced mode to copy and paste multiple key/values\\n
    \\n
    \\n \\n Generate a configuration entry per line, use YAML format\\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n \\n \\n \\n

    \\n This field is required.\\n

    \\n
    \\n
    \\n

    \\n This key is already defined.\\n

    \\n
    \\n

    \\n This key is invalid. A valid key must\\n consist of alphanumeric characters, '-', '_' or '.'\\n

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

    This field is required.\\n \\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    Binary data
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n Remove entry\\n \\n \\n \\n This key is currently used by one or more applications\\n \\n
    \\n
    \\n \\n\\n
    \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/kubernetes-configuration-data/kubernetesConfigurationData.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Resource reservation
    \\n
    \\n \\n \\n {{ $ctrl.description }}\\n \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.memoryReservation }} / {{ $ctrl.memoryLimit }} MB - {{ $ctrl.memoryReservationPercent }}% \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.memoryUsage }} / {{ $ctrl.memoryLimit }} MB - {{ $ctrl.memoryUsagePercent }}% \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.cpuReservation | kubernetesApplicationCPUValue }} / {{ $ctrl.cpuLimit }} - {{ $ctrl.cpuReservationPercent }}% \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.cpuUsage | kubernetesApplicationCPUValue }} / {{ $ctrl.cpuLimit }} - {{ $ctrl.cpuUsagePercent }}% \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/resource-reservation/resourceReservation.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/view-loading/viewLoading.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n \\n \\n Copy to clipboard\\n \\n \\n \\n \\n {{ $ctrl.expanded ? 'Collapse' : 'Expand' }}\\n \\n \\n copied\\n \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/components/yaml-inspector/yamlInspector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n\\n \\n
    Build method
    \\n \\n\\n
    \\n \\n \\n

    Templates allow deploying any kind of Kubernetes resource (Deployment, Secret, ConfigMap...)

    \\n

    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n

    \\n
    \\n \\n
    \\n\\n \\n You can upload a Manifest file from your computer. \\n \\n\\n \\n\\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create custom template\\n Creation in progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/custom-templates/kube-create-custom-template-view/kube-create-custom-template-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/custom-templates/kube-custom-templates-view/kube-custom-templates-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n\\n \\n \\n

    Templates allow deploying any kind of Kubernetes resource (Deployment, Secret, ConfigMap...)

    \\n

    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n

    \\n
    \\n \\n\\n \\n\\n \\n\\n
    Actions
    \\n
    \\n
    \\n \\n Update the template\\n Update in progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/custom-templates/kube-edit-custom-template-view/kube-edit-custom-template-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n No namespaces available. \\n \\n \\n
    \\n
    \\n \\n Adding this registry will expose the registry credentials to all users of this namespace.\\n
    \\n
    \\n\\n \\n
    \\n
    \\n \\n Create access\\n Creating access...\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/registries/kube-registry-access-view/kube-registry-access-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n Applications \\n \\n \\n \\n \\n Port mappings \\n \\n \\n \\n \\n Stacks \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/applications.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Console
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n Connect\\n Connection in progress...\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/console/console.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    Namespace
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n This namespace has exhausted its resource capacity and you will not be able to deploy the application. Contact your administrator to expand the capacity of the\\n namespace.\\n
    \\n
    \\n
    \\n
    \\n \\n You do not have access to any namespace. Contact your administrator to get access to a namespace.\\n
    \\n
    \\n \\n\\n \\n \\n \\n\\n \\n \\n \\n \\n

    \\n \\n \\n Portainer uses Kompose to convert your Compose manifest to a Kubernetes compliant manifest. Be wary that\\n not all the Compose format options are supported by Kompose at the moment.\\n \\n

    \\n

    \\n You can get more information about Compose file format in the\\n official documentation.\\n

    \\n
    \\n \\n

    \\n \\n This feature allows you to deploy any kind of Kubernetes resource in this environment (Deployment, Secret, ConfigMap...).\\n

    \\n

    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n

    \\n
    \\n
    \\n \\n \\n
    \\n
    Application
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
     
    \\n
    \\n

    This field is required.\\n

    \\n \\n This field must consist of lower case alphanumeric characters or '-', contain at most 63 characters, start with an alphabetic character, and end with an\\n alphanumeric character (e.g. 'my-name', or 'abc-123').\\n

    \\n
    \\n
    \\n

    \\n \\n An application with the same name already exists inside the selected namespace.\\n

    \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n\\n
    \\n
    Stack
    \\n \\n
    \\n
    \\n \\n Portainer can automatically bundle multiple applications inside a stack. Enter a name of a new stack or select an existing stack in the list. Leave empty to\\n use the application name.\\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n
    Environment
    \\n \\n
    \\n
    \\n \\n \\n add environment variable\\n \\n
    \\n\\n
    \\n
    \\n
    \\n
    \\n
    \\n name\\n 1\\\"\\n data-cy=\\\"k8sAppCreate-envVarName_{{ $index }}\\\"\\n required\\n />\\n
    \\n
    \\n\\n
    \\n value\\n 1\\\"\\n data-cy=\\\"k8sAppCreate-envVarValue_{{ $index }}\\\"\\n />\\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n

    Environment variable name is required.\\n

    This field must consist of alphabetic characters, digits, '_', '-',\\n or '.', and must not start with a digit (e.g. 'my.env-name', or 'MY_ENV.NAME', or 'MyEnvName1'.\\n \\n

    This environment variable is already defined.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n
    Configurations
    \\n \\n
    \\n
    \\n \\n \\n add configuration\\n \\n
    \\n
    \\n \\n Portainer will automatically expose all the keys of a configuration as environment variables. This behavior can be overridden to filesystem mounts for each\\n key via the override button.\\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n 1\\\"\\n data-cy=\\\"k8sAppCreate-addConfigSelect_{{ $index }}\\\"\\n >\\n
    \\n
    \\n 1\\\"\\n data-cy=\\\"k8sAppCreate-configOverrideButton_{{ $index }}\\\"\\n >\\n Override\\n \\n 1\\\"\\n data-cy=\\\"k8sAppCreate-configAutoButton_{{ $index }}\\\"\\n >\\n Auto\\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n The following keys will be loaded from the {{ config.SelectedConfiguration.Name }} configuration as environment variables:\\n \\n {{ key }}{{ $last ? '' : ', ' }}\\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n
    \\n
     
    \\n
    \\n
    \\n configuration key\\n \\n
    \\n
    \\n\\n
    \\n
    \\n path on disk\\n 1\\\"\\n required\\n ng-change=\\\"ctrl.onChangeConfigurationPath()\\\"\\n data-cy=\\\"k8sAppCreate-pathOnDiskInput\\\"\\n />\\n
    \\n \\n
    \\n \\n \\n

    Path is required.\\n \\n

    This path is already used.\\n

    \\n
    \\n \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n\\n
    Persisting data
    \\n \\n
    \\n
    \\n \\n No storage option is available to persist data, contact your administrator to enable a storage option.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n add persisted folder\\n \\n
    \\n\\n
    \\n \\n \\n This namespace has exhausted its storage capacity. Contact your administrator to expand the capacity of the namespace.\\n \\n
    \\n\\n
    \\n
    \\n
    \\n path in container\\n 1\\\"\\n placeholder=\\\"/data\\\"\\n required\\n data-cy=\\\"k8sAppCreate-containerPathInput_{{ $index }}\\\"\\n />\\n
    \\n\\n
    \\n \\n New volume\\n Existing volume\\n \\n
    \\n\\n
    \\n requested size\\n 1\\\"\\n ng-change=\\\"ctrl.onChangeVolumeRequestedSize()\\\"\\n />\\n \\n 1\\\"\\n ng-change=\\\"ctrl.onChangeVolumeRequestedSize()\\\"\\n >\\n \\n
    \\n\\n
    \\n storage\\n 1\\\"\\n data-cy=\\\"k8sAppCreate-storageSelect_{{ $index }}\\\"\\n >\\n \\n
    \\n\\n
    \\n volume\\n 1\\\"\\n required\\n >\\n \\n \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n\\n \\n
    \\n \\n \\n

    Path is required.

    \\n
    \\n

    This path is already defined.\\n

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

    Size is required.

    \\n

    This value must be greater than zero.\\n \\n

    \\n \\n You can only request up to\\n {{ ctrl.state.storages.availabilities[persistedFolder.StorageClass.Name] | kubernetesAppStorageRequestSizeHumanReadable }} for\\n {{ persistedFolder.StorageClass.Name }}\\n

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

    Volume is required.

    \\n
    \\n

    This volume is already used.\\n

    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n \\n\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    Specify how the data will be used across instances.
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n \\n Isolated\\n
    \\n

    Application will be deployed as a StatefulSet with each instantiating their own data

    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n Shared\\n
    \\n

    Application will be deployed as a Deployment with a shared storage access

    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n\\n
    Resource reservations
    \\n \\n
    \\n
    \\n \\n Resource reservations are applied per instance of the application.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n A resource quota is set on this namespace, you must specify resource reservations. Resource reservations are applied per instance of the application. Maximums\\n are inherited from the namespace quota.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n This namespace has exhausted its resource capacity and you will not be able to deploy the application. Contact your administrator to expand the capacity of\\n the namespace.\\n
    \\n
    \\n\\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n

    Value must be between {{ ctrl.state.sliders.memory.min }} and\\n {{ ctrl.state.sliders.memory.max }}\\n

    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n
    \\n \\n\\n
    \\n
    \\n
    \\n \\n These reservations would exceed the resources currently available in the cluster.\\n
    \\n
    \\n \\n \\n\\n
    Deployment
    \\n \\n
    \\n
    Select how you want to deploy your application inside the cluster.
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n Global\\n
    \\n

    Application will be deployed as a DaemonSet with an instance on each node of the cluster

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

    Instance count is required.

    \\n

    Instance count must be greater than 0.\\n \\n

    \\n
    \\n \\n\\n 1 && (ctrl.formValues.CpuLimit !== 0 || ctrl.formValues.MemoryLimit !== 0)\\\"\\n >\\n
    \\n \\n
    \\n This application will reserve the following resources:\\n {{ ctrl.formValues.CpuLimit * ctrl.formValues.ReplicaCount | kubernetesApplicationCPUValue }} CPU and\\n {{ ctrl.formValues.MemoryLimit * ctrl.formValues.ReplicaCount }} MB of memory.\\n
    \\n
    \\n \\n\\n
    \\n
    \\n \\n This application would exceed available resources. Please review resource reservations or the instance count.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n This application would exceed available storage. Please review the persisted folders or the instance count.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n The following storage option(s) do not support concurrent access from multiples instances: {{ ctrl.getNonScalableStorage() }}. You will not be able to scale that application.\\n
    \\n
    \\n
    \\n \\n\\n \\n
    Auto-scaling
    \\n\\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n

    This feature is currently disabled and must be enabled by an administrator user.

    \\n

    \\n Server metrics features must be enabled in the\\n environment configuration view.\\n

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

    \\n Minimum instances is required.\\n

    \\n

    \\n Minimum instances must be greater than 0.\\n

    \\n

    \\n Minimum instances must be smaller than maximum instances.\\n

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

    \\n Maximum instances is required.\\n

    \\n

    \\n Maximum instances must be greater than minimum instances.\\n

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

    \\n Target CPU usage is required.\\n

    \\n

    \\n Target CPU usage must be greater than 0.\\n

    \\n

    \\n Target CPU usage must be smaller than 100.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n This application would exceed available resources. Please review resource reservations or the maximum instance count of the auto-scaling policy.\\n
    \\n
    \\n
    \\n \\n\\n
    \\n
    Placement preferences and constraints
    \\n\\n \\n
    \\n
    \\n \\n \\n add rule\\n \\n
    \\n\\n
    0\\\" style=\\\"margin-top: 10px\\\">\\n \\n
    Deploy this application on nodes that respect ALL of the following placement rules. Placement rules are based on node labels.
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n This label is already defined.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    Specify the policy associated to the placement rules.
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n\\n \\n \\n \\n\\n \\n \\n \\n \\n \\n
    \\n
    Namespace
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n This namespace has exhausted its resource capacity and you will not be able to deploy the application. Contact your administrator to expand the capacity of the\\n namespace.\\n
    \\n
    \\n
    \\n
    \\n \\n You do not have access to any namespace. Contact your administrator to get access to a namespace.\\n
    \\n
    \\n \\n \\n \\n
    \\n\\n \\n \\n \\n
    Actions
    \\n \\n
    \\n
    \\n \\n Deploy application\\n Deployment in progress...\\n Update application\\n Update in progress...\\n \\n \\n Cancel\\n \\n \\n \\n Update the application\\n Update in progress...\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n\\n\";;\nvar path = 'app/kubernetes/views/applications/create/createApplication.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n Application \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.application.Name }}\\n external\\n
    Stack{{ ctrl.application.StackName || '-' }}
    Namespace\\n {{ ctrl.application.ResourcePool }}\\n system\\n
    Application Type\\n {{ ctrl.application.ApplicationType | kubernetesApplicationTypeText }}\\n
    Status\\n Replicated\\n Global\\n {{ ctrl.application.RunningPodsCount }} /\\n {{ ctrl.application.TotalPodsCount }}\\n \\n {{ ctrl.application.Pods[0].Status }}\\n
    \\n
    Resource reservations
    \\n
    per instance
    \\n
    \\n
    CPU {{ ctrl.application.Requests.Cpu | kubernetesApplicationCPUValue }}\\n
    Memory {{ ctrl.application.Requests.Memory | humansize }}
    \\n
    Creation\\n \\n {{ ctrl.application.ApplicationOwner }}\\n \\n {{ ctrl.application.CreationDate | getisodate }} \\n \\n Deployed from {{ ctrl.state.appType }}\\n \\n
    \\n
    \\n
    \\n
    \\n Note\\n {{ ctrl.state.expandedNote ? 'Collapse' : 'Expand' }}\\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n {{ ctrl.application.Note ? 'Update' : 'Save' }} note\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n \\n Placement\\n
    \\n \\n warning\\n
    \\n
    \\n
    \\n \\n The placement component helps you understand whether or not this application can be deployed on a specific node.\\n
    \\n \\n
    \\n\\n \\n \\n Events\\n
    \\n \\n {{ ctrl.state.eventWarningCount }} warning(s)\\n
    \\n
    \\n \\n
    \\n\\n \\n YAML \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n Edit this application\\n \\n \\n Edit External application\\n \\n \\n Redeploy\\n \\n \\n Rollback to previous configuration\\n \\n \\n Create template from application\\n \\n
    \\n\\n \\n
    Accessing the application
    \\n\\n
    \\n This application is not exposing any port.\\n
    \\n\\n
    \\n \\n
    \\n
    \\n

    This application is exposed through service(s) as below:

    \\n
    \\n
    \\n\\n \\n \\n \\n\\n \\n \\n \\n
    \\n \\n \\n
    Auto-scaling
    \\n\\n
    \\n \\n This application does not have an autoscaling policy defined.\\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Minimum instancesMaximum instances\\n Target CPU usage\\n \\n \\n
    {{ ctrl.application.AutoScaler.MinReplicas }}{{ ctrl.application.AutoScaler.MaxReplicas }}{{ ctrl.application.AutoScaler.TargetCPUUtilization }}%
    \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n Configuration\\n
    \\n\\n
    0 && !ctrl.hasVolumeConfiguration()\\\" style=\\\"margin-bottom: 15px\\\">\\n \\n This application is not using any environment variable or configuration.\\n
    \\n\\n 0\\\">\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ContainerEnvironment variableValueConfiguration
    \\n {{ container.Name }}\\n {{ envvar.valueFrom.fieldRef.fieldPath }} (init container)\\n {{ envvar.name }}\\n {{ envvar.value }}\\n {{ envvar.valueFrom.configMapKeyRef.key }}\\n {{ envvar.valueFrom.secretKeyRef.key }}\\n {{ envvar.valueFrom.fieldRef.fieldPath }} (downward API)\\n -\\n \\n -\\n {{ envvar.valueFrom.configMapKeyRef.name }}\\n {{ envvar.valueFrom.secretKeyRef.name }}\\n
    \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ContainerConfiguration pathValueConfiguration
    \\n {{ container.Name }}\\n {{ envvar.valueFrom.fieldRef.fieldPath }} (init container)\\n \\n {{ volume.fileMountPath }}\\n \\n \\n {{ volume.configurationKey ? volume.configurationKey : '-' }}\\n \\n {{ volume.configurationName }}\\n
    \\n \\n\\n \\n
    \\n \\n Data persistence\\n
    \\n\\n
    \\n \\n This application has no persisted folders.\\n
    \\n\\n
    \\n
    \\n Data access policy:\\n \\n {{ ctrl.application.DataAccessPolicy | kubernetesApplicationDataAccessPolicyText }}\\n \\n
    \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Persisted folderPersistence
    \\n {{ volume.MountPath }}\\n \\n {{ volume.PersistentVolumeClaimName }}\\n {{ volume.HostPath }} on host filesystem
    \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Container namePod namePersisted folderPersistence
    \\n {{ container.Name }}\\n {{ envvar.valueFrom.fieldRef.fieldPath }} (init container)\\n {{ container.PodName }}\\n {{ volume.MountPath }}\\n \\n \\n {{ volume.PersistentVolumeClaimName + '-' + container.PodName }}\\n {{ volume.HostPath }} on host filesystem
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/edit/application.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ ingress.Host }}{{ ingress.Path }}\\n \\n \\n
    Ingress nameService nameHostPortPathHTTP Route
    {{ ingress.IngressName }}{{ ingress.ServiceName }}{{ ingress.Host }}{{ ingress.Port }}{{ ingress.Path }}
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/edit/components/ingress-table/ingress-table.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n {{ $ctrl.titleText }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n
    \\n This application is missing a toleration for the taint {{ taint.Key }}{{ taint.Value ? '=' + taint.Value : '' }}:{{ taint.Effect }}\\n
    Placement constraint not respected for that node.
    \\n This application can only be scheduled on a node where the label {{ label.key }} is set to {{ label.value }}\\n
    Placement label not respected for that node.
    This application can only be scheduled on nodes respecting one of the following labels combination:
    \\n \\n {{ term.key }} {{ term.operator }} {{ term.values | kubernetesApplicationConstraintNodeAffinityValue: term.operator }}\\n \\n {{ $last ? '' : ' + ' }}\\n
    Loading...
    No node available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/edit/components/placements-datatable/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n
    Service nameTypeCluster IPExternal IPContainer portService port(s)
    {{ service.metadata.name }}{{ service.spec.type }}{{ service.spec.clusterIP }}\\n \\n
    \\n {{ service.spec.externalIP ? service.spec.externalIP : 'pending...' }}\\n
    \\n
    {{ service.spec.externalIP ? service.spec.externalIP : '-' }}\\n
    {{ port.targetPort }}
    \\n
    \\n
    \\n \\n \\n \\n {{ port.port }}\\n \\n {{ port.nodePort ? ':' : '' }}\\n {{ port.nodePort }}/{{ port.protocol }} \\n \\n\\n
    \\n \\n {{ port.port }}\\n \\n {{ port.nodePort ? ':' : '' }}\\n {{ port.nodePort }}/{{ port.protocol }} \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/edit/components/services-table/services-table.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n Release\\n
    \\n
    \\n
    \\n \\n This is a first version for Helm charts, for more information see this \\n blog post.\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ $ctrl.state.release.name }}\\n
    Chart\\n {{ $ctrl.state.release.chart }}\\n
    App version\\n {{ $ctrl.state.release.app_version }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/helm/helm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Actions
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n

    {{ line }}

    No log line matching the '{{ ctrl.state.search }}' filter

    No logs available

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/logs/logs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n \\n \\n \\n Portainer was unable to retrieve any metrics associated to that container. Please contact your administrator to ensure that the Kubernetes metrics feature is properly\\n configured.\\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n About statistics \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n This view displays real-time statistics about the container {{ ctrl.state.transition.containerName | trimcontainername }}.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n Network stats are unavailable for this container.\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Memory usage \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n CPU usage \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/applications/stats/stats.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n\\n \\n
    0\\\">\\n
    Leader status
    \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ComponentLeader node
    \\n {{ ep.Name }}\\n \\n {{ ep.HolderIdentity }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/cluster/cluster.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n Node \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Hostname\\n {{ ctrl.node.Name }}\\n api\\n
    Kubernetes API {{ ctrl.node.IPAddress }}:{{ ctrl.node.Port }}
    Role{{ ctrl.node.Role }}
    Kubelet version{{ ctrl.node.Version }}
    Creation date{{ ctrl.node.CreationDate | getisodate }}
    Status\\n \\n {{ ctrl.node.Status }}\\n \\n \\n {{ ctrl.node.Conditions | kubernetesNodeConditionsMessage }}\\n \\n
    Availability \\n
    \\n \\n
    \\n \\n Cannot use this action while another node is currently being drained.\\n
    \\n
    \\n \\n Cannot drain a node where this Portainer instance is running.\\n
    \\n
    \\n
    \\n {{ ctrl.formValues.Availability }}\\n
    \\n\\n
    \\n \\n \\n
    \\n\\n
    \\n \\n
    Labels
    \\n\\n
    \\n add label \\n
    \\n\\n
    \\n
    \\n Key\\n \\n
    \\n
    \\n Value\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n Restore\\n used\\n system\\n
    \\n
    \\n
    \\n \\n

    Label key is required.

    \\n
    \\n

    \\n This label key is already defined.\\n

    \\n
    \\n
    \\n\\n \\n\\n \\n\\n 0)\\\"\\n >\\n Taints\\n
    \\n\\n
    \\n add taint \\n
    \\n\\n
    \\n
    \\n Key\\n \\n
    \\n
    \\n Value\\n \\n
    \\n
    \\n Effect\\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n

    Taint key is required.

    \\n
    \\n

    \\n This taint key is already defined.\\n

    \\n
    \\n
    \\n\\n \\n\\n \\n\\n
    Actions
    \\n\\n
    \\n
    \\n \\n Update node\\n \\n \\n
    \\n
    \\n\\n \\n
    \\n \\n \\n \\n \\n
    Events
    \\n
    \\n \\n {{ ctrl.state.eventWarningCount }} warning(s)\\n
    \\n
    \\n \\n \\n
    \\n \\n \\n
    YAML
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n\\n
    0\\\">\\n
    \\n \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/kubernetes/views/cluster/node/node.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n \\n \\n \\n Portainer was unable to retrieve any metrics associated to that node. Please contact your administrator to ensure that the Kubernetes metrics feature is properly configured.\\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n About statistics \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n This view displays real-time statistics about the node {{ ctrl.state.transition.nodeName }}.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Memory usage \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n CPU usage \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/cluster/node/stats/stats.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/configurations/configurations.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n

    This field must consist of lower case alphanumeric\\n characters, '-' or '.', and contain at most 63 characters, and must start and end with an alphanumeric character.\\n

    \\n

    A configuration with the same name already exists inside the selected namespace.\\n

    \\n
    \\n \\n\\n
    Namespace
    \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n This namespace has exhausted its resource capacity and you will not be able to deploy the configuration. Contact your administrator to expand the capacity of the\\n namespace.\\n
    \\n
    \\n
    \\n
    \\n \\n You do not have access to any namespace. Contact your administrator to get access to a namespace.\\n
    \\n
    \\n \\n\\n
    \\n
    Configuration type
    \\n\\n
    \\n
    Select the type of data that you want to save in the configuration.
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n
    Information
    \\n
    \\n
    \\n Creating a sensitive configuration will create a Kubernetes Secret of type Opaque. You can find more information about this in the\\n official documentation.\\n
    \\n
    \\n\\n \\n
    \\n\\n \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create {{ ctrl.formValues.Type | kubernetesConfigurationTypeText }}\\n Creation in progress...\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/configurations/create/createConfiguration.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n Configuration\\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.configuration.Name }}\\n system\\n
    Namespace\\n {{ ctrl.configuration.Namespace }}\\n system\\n
    Configuration type\\n {{ ctrl.configuration.Type | kubernetesConfigurationTypeText }}\\n
    \\n
    \\n
    \\n \\n \\n \\n Events\\n
    \\n \\n {{ ctrl.state.eventWarningCount }} warning(s)\\n
    \\n
    \\n \\n \\n
    \\n \\n \\n \\n YAML\\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n\\n \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Update {{ ctrl.configuration.Type | kubernetesConfigurationTypeText }}\\n Update in progress...\\n \\n
    \\n
    \\n \\n \\n
    \\n
    Data
    \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n
    KeyValue
    {{ item.Key }}\\n
    {{ item.Value }}
    \\n
    \\n \\n Copy\\n \\n \\n copied\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/configurations/edit/configuration.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Networking
    \\n\\n
    \\n
    \\n

    Enabling the load balancer feature will allow users to expose application they deploy over an external IP address assigned by cloud provider.

    \\n

    \\n \\n Ensure that your cloud provider allows you to create load balancers if you want to use this feature. Might incur costs.\\n

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

    Configuring ingress controllers will allow users to expose application they deploy over a HTTP route.

    \\n

    \\n \\n Ingress classes must be manually specified for each controller you want to use in the cluster. Make sure that each controller is running inside your cluster.\\n

    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n configure ingress controller\\n \\n
    \\n\\n
    \\n
    \\n
    \\n Ingress class\\n \\n
    \\n
    \\n Type\\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n

    Ingress class name is required.\\n

    This field must consist of lower case alphanumeric characters or '-', start\\n with an alphabetic character, and end with an alphanumeric character (e.g. 'my-name', or 'abc-123').\\n

    \\n

    \\n This ingress class is already defined.\\n

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

    Ingress class type is required.\\n

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

    \\n \\n Traefik support is experimental.\\n

    \\n
    \\n
    \\n\\n \\n
    Change Window Settings
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\\n \\n\\n \\n
    Security
    \\n\\n
    \\n \\n By default, all the users have access to the default namespace. Enable this option to set accesses on the default namespace.\\n \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n\\n
    Resources and Metrics
    \\n\\n
    \\n
    \\n

    \\n By ENABLING resource over-commit, you are able to assign more resources to namespaces than is physically available in the cluster. This may lead to unexpected\\n deployment failures if there is insufficient resource to service demand.\\n

    \\n

    \\n \\n By DISABLING resource over-commit (highly recommended), you are only able to assign resources to namespaces that are less (in aggregate) than the cluster total\\n minus any system resource reservation.\\n

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

    System resource reservation is required.

    \\n

    System resource reservation must be greater than 0.

    \\n

    System resource reservation must be smaller than 100.

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

    Enabling this feature will allow users to use specific features like autoscaling and to see container and node resource usage.

    \\n

    \\n \\n Ensure that metrics server or\\n prometheus is running inside your cluster.\\n

    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n Checking metrics API... \\n
    \\n \\n Successfully reached metrics API\\n
    \\n \\n Unable to reach metrics API, make sure metrics server is properly deployed inside that cluster.\\n
    \\n \\n\\n
    Available storage options
    \\n\\n
    \\n
    \\n \\n Unable to detect any storage class available to persist data. Users won't be able to persist application data inside this cluster.\\n
    \\n
    \\n\\n
    \\n \\n

    \\n Select which storage options will be available for use when deploying applications. Have a look at your storage driver documentation to figure out which access\\n policy to configure and if the volume expansion capability is supported.\\n

    \\n

    \\n You can find more information about access modes\\n in the official Kubernetes documentation.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    StorageShared access policyVolume expansion
    \\n
    \\n \\n {{ class.Name }}\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n Shared access policy configuration required\\n \\n
    \\n
    \\n\\n
    Actions
    \\n \\n
    \\n
    \\n \\n Save configuration\\n Saving configuration...\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n\\n\";;\nvar path = 'app/kubernetes/views/configure/configure.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n Environment info\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Environment\\n {{ ctrl.endpoint.Name }}\\n
    URL{{ ctrl.endpoint.URL | stripprotocol }}
    Tags{{ ctrl.endpointTags }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n\\n
    \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/dashboard/dashboard.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n \\n\\n
    \\n
    \\n \\n \\n \\n \\n Deploy \\n
    Namespace
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n\\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n You do not have access to any namespace. Contact your administrator to get access to a namespace.\\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    Build method
    \\n \\n\\n
    \\n
    Deployment type
    \\n \\n
    \\n\\n \\n \\n \\n\\n
    \\n \\n\\n \\n
    \\n\\n \\n
    \\n \\n \\n
    \\n

    \\n \\n \\n Portainer uses Kompose to convert your Compose manifest to a Kubernetes compliant manifest. Be wary\\n that not all the Compose format options are supported by Kompose at the moment.\\n \\n

    \\n

    \\n You can get more information about Compose file format in the\\n official documentation.\\n

    \\n
    \\n
    \\n

    \\n \\n This feature allows you to deploy any kind of Kubernetes resource in this environment (Deployment, Secret, ConfigMap...).\\n

    \\n

    \\n You can get more information about Kubernetes file format in the\\n official documentation.\\n

    \\n
    \\n
    \\n \\n
    \\n \\n\\n \\n
    \\n
    URL
    \\n
    \\n Indicate the URL to the manifest. \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Deploy\\n Deployment in progress...\\n \\n
    \\n
    \\n \\n \\n
    \\n\\n \\n Logs \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/deploy/deploy.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.pool.Namespace.Name }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n

    \\n \\n Adding user access will require the affected user(s) to logout and login for the changes to be taken into account.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n No user nor team access has been set on the environment. Head over to the\\n Environments view to manage them.\\n \\n 0\\\"\\n input-model=\\\"ctrl.availableUsersAndTeams\\\"\\n output-model=\\\"ctrl.formValues.multiselectOutput\\\"\\n button-label=\\\"icon Name | Role.Name\\\"\\n item-label=\\\"icon Name | Role.Name\\\"\\n tick-property=\\\"ticked\\\"\\n helper-elements=\\\"filter\\\"\\n search-property=\\\"Name\\\"\\n translation=\\\"{nothingSelected: 'Select one or more users and/or teams', search: 'Search...'}\\\"\\n >\\n \\n
    \\n
    \\n\\n \\n
    \\n
    \\n \\n Create access\\n Creating access...\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/resource-pools/access/resourcePoolAccess.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/resource-pools/components/storage-class-switch/storage-class-switch.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n

    \\n \\n This field must consist of lower case alphanumeric characters or '-', and contain at most 63 characters, and must start and end with an alphanumeric\\n character.\\n

    \\n
    \\n

    Prefix \\\"kube-\\\" is reserved for Kubernetes system namespaces.\\n

    A namespace with the same name already exists.\\n

    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n\\n
    Resource quota
    \\n \\n \\n
    \\n
    \\n \\n \\n A namespace is a logical abstraction of a Kubernetes cluster, to provide for more flexible management of resources. Best practice is to set a quota assignment as\\n this ensures greatest security/stability; alternatively, you can disable assigning a quota for unrestricted access (not recommended).\\n \\n
    \\n
    \\n \\n \\n A namespace is a logical abstraction of a Kubernetes cluster, to provide for more flexible management of resources. Resource over-commit is disabled, please\\n assign a capped limit of resources to this namespace.\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n Not enough resources available in the cluster to apply a resource reservation.\\n
    \\n
    \\n\\n \\n \\n\\n
    \\n
    Resource limits
    \\n
    \\n
    \\n \\n

    At least a single limit must be set for the quota to be\\n valid.\\n

    \\n

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

    Value must be between\\n {{ $ctrl.defaults.MemoryLimit }} and\\n {{ $ctrl.state.sliderMaxMemory }}\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    Load balancers
    \\n\\n
    \\n
    \\n

    \\n \\n You can set a quota on the amount of external load balancers that can be created inside this namespace. Set this quota to 0 to effectively disable the use of\\n load balancers in this namespace.\\n

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

    Max load balancers value is required.\\n

    \\n

    Max load balancers value must be a positive number.\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n
    \\n
    Ingresses
    \\n \\n
    \\n
    \\n The ingress feature must be enabled in the\\n environment configuration view to be able to register ingresses inside this namespace.\\n
    \\n
    \\n\\n
    0\\\">\\n
    \\n

    \\n \\n Enable and configure ingresses available to users when deploying applications.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n {{ ic.IngressClass.Name }}\\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n \\n add hostname\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n Hostname\\n \\n
    \\n
    0\\\">\\n \\n
    \\n
    \\n \\n \\n

    Hostname is required.

    \\n

    \\n \\n This field must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g. 'example.com').\\n

    \\n
    \\n

    \\n This hostname is already used.\\n

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

    \\n \\n You can specify a list of annotations that will be associated to the ingress.\\n

    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Key\\n \\n
    \\n
    \\n Value\\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\\n \\n
    Registries
    \\n
    \\n
    \\n

    \\n \\n Define which registries can be used by users who have access to this namespace.\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n No registries available. Head over to the registry view to define a container registry.\\n \\n \\n No registries available. Contact your administrator to create a container registry.\\n \\n \\n \\n
    \\n
    \\n \\n\\n
    \\n
    Storage
    \\n
    \\n
    \\n

    \\n \\n Quotas can be set on each storage option to prevent users from exceeding a specific threshold when deploying applications. You can set a quota to 0 to\\n effectively prevent the usage of a specific storage option inside this namespace.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n {{ sc.Name }}\\n
    \\n
    \\n \\n
    \\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n

    Size is required.

    \\n

    Invalid number.

    \\n

    This value must be greater than zero.\\n

    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n \\n \\n\\n
    Actions
    \\n \\n
    \\n
    \\n \\n Create namespace\\n Creation in progress...\\n \\n
    \\n
    \\n\\n \\n \\n \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/kubernetes/views/resource-pools/create/createResourcePool.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    {{ item.Name }}{{ item.Size }}
    \\n \\n {{ path.Host ? path.Host : path.IP }}{{ path.Path }}\\n \\n \\n \\n {{ path.ApplicationName }}\\n \\n unused\\n
    Loading...
    No ingresses available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/resource-pools/edit/components/ingresses-datatable/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n Namespace \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.pool.Namespace.Name }}\\n system\\n
    \\n
    \\n
    \\n \\n
    Resource quota
    \\n \\n
    \\n
    \\n \\n \\n A namespace is a logical abstraction of a Kubernetes cluster, to provide for more flexible management of resources. Best practice is to set a quota assignment\\n as this ensures greatest security/stability; alternatively, you can disable assigning a quota for unrestricted access (not recommended).\\n \\n
    \\n
    \\n \\n \\n A namespace is a logical abstraction of a Kubernetes cluster, to provide for more flexible management of resources. Resource over-commit is disabled, please\\n assign a capped limit of resources to this pool.\\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n Not enough resources available in the cluster to apply a resource reservation.\\n

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

    \\n \\n At least a single limit must be set for the quota to be valid.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    Resource limits
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n Value must be between {{ ctrl.ResourceQuotaDefaults.MemoryLimit }} and\\n {{ ctrl.state.sliderMaxMemory }}.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    0))\\\">\\n
    Load balancers
    \\n\\n
    \\n
    \\n
    \\n

    \\n \\n You can set a quota on the amount of external load balancers that can be created inside this namespace. Set this quota to 0 to effectively disable the use\\n of load balancers in this namespace.\\n

    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    ctrl.formValues.LoadBalancers\\\">\\n
    \\n
    \\n

    \\n \\n Max load balancers value is required.\\n

    \\n

    \\n \\n Max load balancers value must be a positive number.\\n

    \\n

    ctrl.formValues.LoadBalancers && ctrl.formValues.LoadBalancers >= 0\\\">\\n \\n Max load balancers value must be greater than the existing number of load balancers inside this namespace.\\n

    \\n
    \\n
    \\n
    \\n
    \\n\\n
    0\\\">\\n \\n
    \\n \\n {{ ctrl.state.loadBalancersUsed }} / {{ ctrl.oldQuota.LoadBalancers }} - {{ ctrl.state.loadBalancersUsage }}% \\n
    \\n
    \\n
    \\n \\n
    \\n
    Ingresses
    \\n \\n
    \\n
    \\n The ingress feature must be enabled in the\\n environment configuration view to be able to register ingresses inside this namespace.\\n
    \\n
    \\n\\n
    0\\\">\\n
    \\n

    \\n \\n Enable and configure ingresses available to users when deploying applications.\\n

    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n {{ ic.IngressClass.Name }}\\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n \\n \\n add hostname\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n Hostname\\n \\n
    \\n
    0\\\">\\n \\n \\n
    \\n
    \\n \\n \\n

    \\n \\n Hostname is required.\\n

    \\n

    \\n \\n This field must consist of lower case alphanumeric characters, '-' or '.', and must start and end with an alphanumeric character (e.g.\\n 'example.com').\\n

    \\n
    \\n

    \\n \\n This hostname is already used.\\n

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

    \\n \\n You can specify a list of annotations that will be associated to the ingress.\\n

    \\n
    \\n\\n
    \\n \\n \\n add annotation\\n \\n \\n \\n \\n add rewrite annotation\\n \\n \\n \\n \\n add regular expression annotation\\n \\n \\n \\n
    \\n\\n
    \\n
    \\n
    \\n Key\\n \\n
    \\n
    \\n Value\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    Registries
    \\n\\n
    \\n \\n
    \\n {{ ctrl.selectedRegistries ? ctrl.selectedRegistries : 'None' }}\\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n

    \\n \\n Define which registries can be used by users who have access to this namespace.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n No registries available. Head over to the registry view to define a container registry.\\n \\n \\n No registries available. Contact your administrator to create a container registry.\\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n
    \\n
    Storage
    \\n
    \\n
    \\n

    \\n \\n Quotas can be set on each storage option to prevent users from exceeding a specific threshold when deploying applications. You can set a quota to 0 to\\n effectively prevent the usage of a specific storage option inside this namespace.\\n

    \\n
    \\n
    \\n\\n
    \\n
    {{ sc.Name }}
    \\n
    \\n
    \\n\\n \\n\\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n

    Size is required.

    \\n

    Invalid number.

    \\n

    This value must be greater than zero.\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n {{ sc.Used.Size }} {{ sc.Used.SizeUnit }} / {{ sc.Size }} {{ sc.SizeUnit }} - {{ sc.Usage }}% \\n
    \\n
    \\n
    \\n
    \\n\\n \\n \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Update namespace\\n Update in progress...\\n \\n \\n Unmark as system\\n Mark as system\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n Events\\n
    \\n \\n {{ ctrl.state.eventWarningCount }} warning(s)\\n
    \\n
    \\n \\n
    \\n \\n YAML \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n\\n
    0\\\">\\n
    \\n \\n \\n
    \\n
    \\n\\n
    0\\\">\\n
    \\n \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/kubernetes/views/resource-pools/edit/resourcePool.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/resource-pools/resourcePools.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    Constraints
    \\n\\n \\n
    \\n
    Controls whether any container in a pod can enable privileged mode
    \\n \\n \\n
    \\n\\n \\n
    \\n
    Controls whether the pod containers can share the process ID namespace and host IPC namespace
    \\n \\n \\n
    \\n\\n \\n
    \\n
    Controls whether the pod may use networking ports
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    Range of allowable ports in the host network namespace
    \\n \\n
    \\n
    \\n
    \\n min\\n \\n
    \\n
    \\n

    Min port number is required.

    \\n

    Min port number cannot be greater than max port number.\\n

    Min port number needs to be a positive integer number.\\n

    \\n
    \\n
    \\n
    \\n max\\n \\n
    \\n
    \\n

    Max port number is required.

    \\n

    Max port number range is 0-65535.

    \\n

    Max port number cannot be less than min port number.\\n

    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls which volume sources may be used
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Examples of volume types are configMap, downwardAPI, emptyDir, persistentVolumeClaim, secret, projected, hostPath, flexVolume\\n
    \\n
    \\n \\n \\n add type\\n \\n
    \\n \\n
    \\n
    \\n
    \\n type\\n \\n
    \\n \\n
    \\n
    \\n Allowed volume types cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the host paths that are allowed when using hostPath volumes
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n add path\\n \\n
    \\n \\n
    \\n
    \\n
    \\n path\\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n
    \\n Allowed host paths cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the FlexVolume drivers that are allowed
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n add driver\\n \\n
    \\n \\n
    \\n
    \\n
    \\n driver\\n \\n
    \\n \\n
    \\n
    \\n Allowed FlexVolume drivers cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls that containers must run with a read-only root filesystem
    \\n
    \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n
    Controls which user ID or group ID the containers are run with or which group IDs get added
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n Add range\\n \\n
    \\n \\n
    \\n
    \\n min id\\n \\n
    \\n \\n

    Min id number is required.

    \\n

    Min id number needs to be a positive integer number.

    \\n

    Min id number cannot be greater than max id number.

    \\n
    \\n
    \\n
    \\n
    \\n max id\\n \\n
    \\n \\n

    Max id number is required.

    \\n

    Max id number cannot be less than min id number.

    \\n
    \\n
    \\n 1\\\"\\n ng-click=\\\"removeItem(formValues.users.runAsUser.idrange, $index)\\\"\\n >\\n \\n \\n
    \\n\\n \\n
    \\n \\n \\n \\n Add range\\n \\n
    \\n \\n
    \\n
    \\n min id\\n \\n
    \\n \\n

    Min id number is required.

    \\n

    Min id number needs to be a positive integer number.

    \\n

    Min id number cannot be greater than max id number.

    \\n
    \\n
    \\n
    \\n
    \\n max id\\n \\n
    \\n \\n

    Max id number is required.

    \\n

    Max id number cannot be less than min id number.

    \\n
    \\n
    \\n 1 || formValues.users.runAsGroup.type === 'MayRunAs'\\\"\\n class=\\\"btn btn-dangerlight btn-sm btn-only-icon\\\"\\n ng-click=\\\"removeItem(formValues.users.runAsGroup.idrange, $index)\\\"\\n >\\n \\n \\n
    \\n\\n \\n
    \\n \\n \\n \\n Add range\\n \\n
    \\n \\n
    \\n
    \\n min id\\n \\n
    \\n \\n

    Min id number is required.

    \\n

    Min id number needs to be a positive integer number.

    \\n

    Min id number cannot be greater than max id number.

    \\n
    \\n \\n
    \\n
    \\n max id\\n \\n
    \\n \\n

    Max id number is required.

    \\n

    Max id number cannot be less than min id number.

    \\n
    \\n \\n 1\\\"\\n class=\\\"btn btn-dangerlight btn-sm btn-only-icon\\\"\\n ng-click=\\\"removeItem(formValues.users.supplementalGroups.idrange, $index)\\\"\\n >\\n \\n \\n \\n\\n \\n
    \\n \\n \\n \\n Add range\\n \\n
    \\n \\n
    \\n
    \\n min id\\n \\n
    \\n \\n

    Min id number is required.

    \\n

    Min id number needs to be a positive integer number.

    \\n

    Min id number cannot be greater than max id number.

    \\n
    \\n \\n
    \\n
    \\n max id\\n \\n
    \\n \\n

    Max id number is required.

    \\n

    Max id number cannot be less than min id number.

    \\n
    \\n \\n 1\\\"\\n class=\\\"btn btn-dangerlight btn-sm btn-only-icon\\\"\\n ng-click=\\\"removeItem(formValues.users.fsGroups.idrange, $index)\\\"\\n >\\n \\n \\n \\n \\n \\n\\n \\n
    \\n
    Controls the user privileges and prevents files from enabling extra capabilities
    \\n
    \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the permission checks on Linux processes
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n add capability\\n \\n
    \\n
    \\n
    \\n capability\\n \\n
    \\n \\n
    \\n
    \\n Allowed capabilities cannot be duplicated.\\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n add capability\\n \\n
    \\n
    \\n
    \\n capability\\n \\n
    \\n \\n
    \\n
    \\n Required drop capabilities cannot be duplicated.\\n
    \\n
    \\n Required drop capabilities must not be included in allowed capabilities\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the SELinux context of the container
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add option\\n \\n \\n
    \\n
    \\n
    \\n level\\n \\n
    \\n
    \\n role\\n \\n
    \\n
    \\n type\\n \\n
    \\n
    \\n user\\n \\n
    \\n \\n
    \\n
    \\n Allowed options cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the type of proc mount to use for containers
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n {{ formValues.allowProcMount.procMountType.$error }}\\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the AppArmor profile used by containers
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add profile\\n \\n \\n
    \\n
    \\n
    \\n profile\\n \\n
    \\n \\n
    \\n
    \\n Allowed profiles cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the seccomp profile used by containers or pods
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add profile\\n \\n \\n
    \\n
    \\n
    \\n profile\\n \\n
    \\n \\n
    \\n
    \\n Allowed profiles cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    Controls the sysctl profile used by containers
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n add sysctl\\n \\n \\n
    \\n
    \\n
    \\n sysctl\\n \\n
    \\n \\n
    \\n
    \\n Forbidden sysctls cannot be duplicated.\\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Save settings\\n Saving settings...\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n\\n\";;\nvar path = 'app/kubernetes/views/security-constraint/constraint.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Actions
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n

    {{ line.AppName }} {{ line.Line }}

    No log line matching the '{{ ctrl.state.search }}' filter

    No logs available

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/stacks/logs/logs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    0\\\">\\n \\n Summary\\n
    \\n\\n
    \\n
    \\n \\n Portainer will execute the following Kubernetes actions.\\n
    \\n\\n
    0\\\">\\n
      \\n
    • \\n {{ summary.action }}\\n {{ $ctrl.getArticle(summary.kind, summary.action) }}\\n {{ summary.kind }} named {{ summary.name }}\\n \\n of type {{ summary.type }}\\n
    • \\n
    • \\n Set the memory resources limits and requests to {{ $ctrl.state.limits.memory }}M\\n
    • \\n
    • \\n Set the CPU resources limits and requests to {{ $ctrl.state.limits.cpu }}\\n
    • \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/summary/summary.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n Storage\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    {{ item.Name }}{{ item.Size }}
    \\n \\n {{ vol.PersistentVolumeClaim.Name }}\\n \\n \\n {{ vol.PersistentVolumeClaim.Storage }}\\n
    Loading...
    No storage available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/volumes/components/volumes-storages-datatable/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n Volume\\n \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.volume.PersistentVolumeClaim.Name }}\\n external\\n unused\\n
    Namespace\\n {{\\n ctrl.volume.ResourcePool.Namespace.Name\\n }}\\n system\\n
    Storage{{ ctrl.volume.PersistentVolumeClaim.StorageClass.Name }}
    Shared Access Policy{{ ctrl.state.volumeSharedAccessPolicy }}\\n
    Provisioner{{\\n ctrl.volume.PersistentVolumeClaim.StorageClass.Provisioner ? ctrl.volume.PersistentVolumeClaim.StorageClass.Provisioner : '-'\\n }}
    Creation date{{ ctrl.volume.PersistentVolumeClaim.CreationDate | getisodate }}
    Size\\n {{ ctrl.volume.PersistentVolumeClaim.Storage }}\\n Increase size\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n Update size\\n \\n \\n
    \\n\\n
    \\n \\n
    \\n

    This field is required.

    \\n
    \\n

    The new size must be greater than the actual size.\\n

    The new volume size cannot exceed\\n {{ ctrl.state.quota.maxSize | kubernetesAppStorageRequestSizeHumanReadable }}\\n

    \\n \\n
    \\n
    \\n
    \\n
    \\n\\n \\n \\n Events\\n
    \\n \\n {{ ctrl.state.eventWarningCount }} warning(s)\\n
    \\n
    \\n \\n \\n
    \\n\\n \\n YAML \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/volumes/edit/volume.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n Volumes\\n \\n \\n \\n \\n \\n \\n \\n Storage\\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/kubernetes/views/volumes/volumes.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n\";;\nvar path = 'app/nomad/Logs/logs.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n Copy\\n Copy selected lines\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n
    \\n      

    No logs available

    \\n

    -1 }\\\">{{ span.text }}

    \\n

    No log line matching the '{{ $ctrl.state.search }}' filter

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

    No logs available

    \\n

    -1 }\\\">{{ span.text }}

    \\n

    No log line matching the '{{ $ctrl.state.search }}' filter

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/nomad/Logs/nomad-log-viewer/nomadLogViewer.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n Business Edition Feature\\n\\n\";;\nvar path = 'app/portainer/components/BEFeatureIndicator/BEFeatureIndicator.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n
    \\n \\n {{ $ctrl.titleText }}\\n \\n \\n dismiss\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/InformationPanel/InformationPanelAngular.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n\\n
    \\n \\n \\n
    \\n\\n
    \\n \\n \\n Remove\\n \\n
    \\n\\n
    \\n \\n \\n Update\\n \\n
    \\n
    \\n\\n
    \\n
    \\n Access tagged as inherited are inherited from the group access. They cannot be removed or modified at the environment level but they can be overridden.\\n
    \\n
    Access tagged as override are overriding the group access for the related users/teams.
    \\n
    \\n \\n Updating user access will require the affected user(s) to logout and login for the changes to be taken into account.\\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n inherited\\n override\\n {{ item.Type }}\\n \\n {{ item.Role.Name }}\\n \\n \\n Edit\\n \\n \\n \\n \\n \\n \\n \\n \\n
    Loading...
    No authorized users or teams.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/access-datatable/accessDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n Name\\n \\n \\n \\n \\n \\n Type\\n \\n \\n \\n
    \\n {{ item.Name }}\\n \\n inherited\\n \\n \\n {{ item.Type }}\\n
    Loading...
    {{ $ctrl.emptyDatasetMessage }}
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/access-table/accessTable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Access control
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    0\\\">\\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n 1))\\\"\\n >\\n
    \\n \\n \\n You have not yet created any teams. Head over to the Teams view to manage teams.\\n \\n 0) || (!$ctrl.isAdmin && $ctrl.availableTeams.length > 1)\\\"\\n class=\\\"col-sm-9 col-lg-10\\\"\\n input-model=\\\"$ctrl.availableTeams\\\"\\n output-model=\\\"$ctrl.formData.AuthorizedTeams\\\"\\n button-label=\\\"Name\\\"\\n item-label=\\\"Name\\\"\\n tick-property=\\\"selected\\\"\\n helper-elements=\\\"filter\\\"\\n search-property=\\\"Name\\\"\\n translation=\\\"{nothingSelected: 'Select one or more teams', search: 'Search...'}\\\"\\n data-cy=\\\"portainer-selectTeamAccess\\\"\\n >\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n \\n You have not yet created any users. Head over to the Users view to manage users.\\n \\n 0\\\"\\n class=\\\"col-sm-9 col-lg-10\\\"\\n input-model=\\\"$ctrl.availableUsers\\\"\\n output-model=\\\"$ctrl.formData.AuthorizedUsers\\\"\\n button-label=\\\"Username\\\"\\n item-label=\\\"Username\\\"\\n tick-property=\\\"selected\\\"\\n helper-elements=\\\"filter\\\"\\n search-property=\\\"Username\\\"\\n translation=\\\"{nothingSelected: 'Select one or more users', search: 'Search...'}\\\"\\n data-cy=\\\"portainer-selectUserAccess\\\"\\n >\\n
    \\n
    \\n \\n \\n\\n\";;\nvar path = 'app/portainer/components/accessControlForm/porAccessControlForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n No users or teams available. \\n 0\\\"\\n input-model=\\\"$ctrl.options\\\"\\n output-model=\\\"$ctrl.value\\\"\\n button-label=\\\"icon Name\\\"\\n item-label=\\\"icon Name\\\"\\n tick-property=\\\"ticked\\\"\\n helper-elements=\\\"filter\\\"\\n search-property=\\\"Name\\\"\\n translation=\\\"{nothingSelected: 'Select one or more users and/or teams', search: 'Search...'}\\\"\\n data-cy=\\\"component-selectUser\\\"\\n >\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/accessManagement/por-access-management-users-selector/por-access-management-users-selector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n

    \\n \\n Adding user access will require the affected user(s) to logout and login for the changes to be taken into account.\\n

    \\n
    \\n
    \\n\\n \\n\\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n \\n \\n \\n Create access\\n \\n Creating access...\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/accessManagement/porAccessManagement.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n You can select which environment should be part of this group by moving them to the associated environments table. Simply click on any environment entry to move it from one table\\n to the other.\\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/associated-endpoints-selector/associatedEndpointsSelector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n

    \\n \\n This is a beta feature.\\n

    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/beta-panel/betaPanel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\";;\nvar path = 'app/portainer/components/code-editor/codeEditor.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n \\n copied\\n \\n\\n\";;\nvar path = 'app/portainer/components/copy-button/copy-button.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n

    Title is required.

    \\n

    \\n \\n This field must consist of lower case alphanumeric characters, '_' or '-' (e.g. 'my-name', or 'abc-123').\\n

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

    Description is required.

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/custom-template-common-fields/customTemplateCommonFields.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n No custom templates are available. Head over to the custom template view to create one.\\n \\n
    \\n
    \\n\\n \\n
    \\n
    Information
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/custom-template-selector/custom-template-selector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n Custom Templates\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n \\n
    \\n \\n \\n Edit\\n \\n \\n
    \\n
    \\n \\n
    Loading...
    \\n
    No templates available.
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/custom-templates-list/customTemplatesList.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.description }}\\n \\n {{ item.prefix }}\\n \\n {{ item.dateCreated | getisodatefromtimestamp }}\\n \\n 0\\\">{{ item.lastUsed | getisodatefromtimestamp }}\\n
    Loading...
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/access-tokens-datatable/access-tokens-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n \\n
    \\n
    \\n
    Show / Hide Columns
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/datatable-columns-visibility/datatable-columns-visibility.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n \\n \\n Add environment\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.Name }}\\n \\n \\n \\n {{ item.Type | endpointtypename }}\\n \\n \\n {{ item.URL | stripprotocol }}\\n -\\n \\n \\n {{ item.StatusMessage.Summary }}\\n \\n \\n \\n \\n {{ item.StatusMessage.Summary }}\\n \\n \\n {{ item.GroupName }}\\n \\n \\n Manage access\\n \\n 2\\\">-\\n
    Loading...
    No environment available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/endpoints-datatable/endpointsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n Filter\\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/filter/datatable-filter.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n \\n
    Loading...
    No group available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/groups-datatable/groupsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/pagination/pagination.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.Name }}\\n authentication-enabled\\n \\n {{ item.URL }}\\n \\n \\n Manage access\\n \\n \\n Browse\\n \\n - \\n
    Loading...
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/registries-datatable/registriesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n\";;\nvar path = 'app/portainer/components/datatables/sort-icon/datatable-sort-icon.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n \\n Add stack\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    Table settings
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n Filter\\n \\n \\n \\n
    \\n
    \\n
    \\n
    Filter by activity
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n Close\\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n {{ item.Name }}\\n \\n {{ item.Name }}\\n Inactive\\n {{ item.Type === 1 ? 'Swarm' : 'Compose' }}\\n \\n \\n \\n Orphaned\\n \\n \\n \\n Limited\\n \\n \\n Total\\n \\n {{ item.CreationDate | getisodatefromtimestamp }} {{ item.CreatedBy ? 'by ' + item.CreatedBy : '' }}\\n - \\n \\n {{ item.UpdateDate | getisodatefromtimestamp }} {{ item.UpdatedBy ? 'by ' + item.UpdatedBy : '' }}\\n - \\n \\n \\n \\n {{ item.ResourceControl.Ownership ? item.ResourceControl.Ownership : item.ResourceControl.Ownership = $ctrl.RCO.ADMINISTRATORS }}\\n \\n
    Loading...
    No stack available.
    \\n
    \\n
    \\n
    \\n {{ $ctrl.state.selectedItemCount }}\\n item(s) selected\\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/stacks-datatable/stacksDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.value }}\\n
    {{ $ctrl.emptyDatasetMessage }}
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/strings-datatable/strings-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n
    Loading...
    No tag available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/tags-datatable/tagsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n Remove\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n
    Loading...
    No team available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/teams-datatable/teamsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n {{ $ctrl.title }}\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/titlebar/datatable-titlebar.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n\\n
    \\n \\n \\n
    \\n\\n
    \\n \\n Remove\\n \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Username }}\\n {{ item.Username }}\\n \\n \\n \\n \\n \\n {{ item.RoleName ? item.RoleName : '-' }}\\n \\n \\n Internal\\n LDAP\\n OAuth\\n
    Loading...
    No user available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/datatables/users-datatable/usersDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\";;\nvar path = 'app/portainer/components/date-range-picker/date-range-picker.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n {{ $ctrl.content }}\\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/demo-feature-indicator/demo-feature-indicator.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n {{ $select.selected.Name }}\\n \\n \\n {{ endpoint.Name }}\\n \\n\\n\";;\nvar path = 'app/portainer/components/endpoint-selector/endpointSelector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    TLS mode
    \\n \\n
    \\n
    \\n \\n You can find out more information about how to protect a Docker environment with TLS in the\\n Docker documentation.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    Required TLS files
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.formData.TLSCACert.name }}\\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.formData.TLSCert.name }}\\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.formData.TLSKey.name }}\\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/endpointSecurity/porEndpointSecurity.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    Environment variables
    \\n
    \\n {{::$ctrl.explanation}}\\n
    \\n\\n \\n\\n
    \\n \\n
    \\n \\n Switch to simple mode to define variables line by line, or load from .env file\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Environment changes will not take effect until redeployment occurs manually or via webhook.\\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/environment-variables-panel/environment-variables-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n name\\n \\n
    \\n
    \\n
    \\n
    \\n

    Name is required.

    \\n

    \\n \\n This field must consist alphanumeric characters, '-' or '_', start with an alphabetic character, and end with an alphanumeric character (e.g. 'my-var', or 'MY_VAR123').\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n

    Value is required.

    \\n

    Value is invalid.

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode-item/environment-variables-simple-mode-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n Switch to advanced mode to copy & paste multiple variables\\n
    \\n
    \\n \\n \\n Load variables from .env file\\n \\n \\n \\n File too large! Try uploading a file smaller than 1MB\\n \\n
    \\n
    \\n \\n
    \\n
    0 && $ctrl.showHelpMessage\\\">\\n \\n Environment changes will not take effect until redeployment occurs manually or via webhook.\\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/environment-variables-panel/environment-variables-simple-mode/environment-variables-simple-mode.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    Upload
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/form-components/file-upload-form/file-upload-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    Web editor\\n
    \\n Ctrl+F for search\\n Cmd+F for search\\n \\n Ctrl+G - Find next
    \\n Ctrl+Shift+G - Find previous
    \\n Ctrl+Shift+F - Replace
    \\n Ctrl+Shift+R - Replace all
    \\n Alt+G - Jump to line
    \\n Alt+F - Persistent search:
    \\n         Enter - Find next
    \\n         Shift+Enter - Find previous
    '\\\"\\n class-name=\\\"'[&>span]:!text-left'\\\"\\n >\\n \\n \\n Cmd+G - Find next
    \\n Cmd+Shift+G - Find previous
    \\n Cmd+Option+F - Replace
    \\n Cmd+Option+R - Replace all
    \\n Option+G - Jump to line
    \\n Option+F - Persistent search:
    \\n         Enter - Find next
    \\n         Shift+Enter - Find previous
    '\\\"\\n class-name=\\\"'[&>span]:!text-left'\\\"\\n >\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/form-components/web-editor-form/web-editor-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n
    \\n path\\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n

    Path is required.

    \\n

    \\n File path must include yaml, yml, json, or hcl extension\\n

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-file-item/git-form-additional-file-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n add file\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-additional-files-panel/git-form-additional-files-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n Enabling authentication will store the credentials and it is advisable to use a git service account\\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-auth-fieldset/git-form-auth-fieldset.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n Any changes to this stack or application made locally in Portainer will be overridden, which may cause service interruption.\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n {{ $ctrl.model.RepositoryWebhookURL | truncatelr }} \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n

    Please enter a valid time interval.

    \\n

    Minimum interval is 1m

    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n When enabled, enforces automatic deployment at each interval or webhook invocation.\\n
    \\n
    \\n \\n When enabled, updates from the git repository will occur automatically at an interval or webhook.\\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-auto-update-fieldset/git-form-auto-update-fieldset.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n \\n Indicate the path to the {{ $ctrl.deployMethod == 'compose' ? 'Compose' : 'Manifest' }} file from the root\\n of your repository (requires a yaml, yml, json, or hcl file extension)\\n \\n
    \\n
    \\n \\n
    \\n \\n

    \\n File path must include yaml, yml, json, or hcl extension\\n

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-compose-path-field/git-form-compose-path-field.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n

    \\n This {{ $ctrl.type }} was deployed from the git repository {{ $ctrl.url }}\\n .\\n

    \\n

    \\n Update\\n {{ $ctrl.configFilePath }} 0\\\">, {{ $ctrl.additionalFiles.join(',') }}\\n in git and pull from here to update the {{ $ctrl.type }}.\\n

    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-info-panel/git-form-info-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n Specify a reference of the repository using the following syntax: branches with refs/heads/branch_name or tags with refs/tags/tag_name. If not\\n specified, will use the default HEAD reference normally the master branch.\\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-ref-field/git-form-ref-field.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n You can use the URL of a git repository. \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form-url-field/git-form-url-field.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    Git repository
    \\n \\n \\n \\n\\n \\n\\n \\n\\n \\n\\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/git-form/git-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Metadata
    \\n\\n \\n\\n \\n
    \\n
    Associated environments
    \\n
    \\n
    \\n You can select which environment should be part of this group by moving them to the associated environments table. Simply click on any environment entry to move it from one\\n table to the other.\\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/group-form/groupForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Redeploy from git repository
    \\n
    \\n
    \\n

    Pull the latest manifest from git and redeploy the application.

    \\n
    \\n
    \\n\\n \\n \\n \\n\\n
    Actions
    \\n \\n \\n Pull and update application \\n In progress...\\n \\n \\n Save settings \\n In progress...\\n \\n\\n\";;\nvar path = 'app/portainer/components/forms/kubernetes-app-git-form/kubernetes-app-git-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Redeploy from git repository
    \\n
    \\n
    \\n

    Pull the latest manifest from git and redeploy the application.

    \\n
    \\n
    \\n \\n \\n\\n \\n \\n \\n\\n
    Actions
    \\n \\n \\n Pull and update application \\n In progress...\\n \\n \\n Save settings \\n In progress...\\n \\n\\n\";;\nvar path = 'app/portainer/components/forms/kubernetes-redeploy-app-git-form/kubernetes-redeploy-app-git-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Important notice
    \\n
    \\n \\n For information on how to generate an Access Key, follow the\\n AWS guide.\\n \\n
    \\n\\n
    ECR connection details
    \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-aws-ecr/registry-form-ecr.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Azure registry details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-azure/registry-form-azure.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Important notice
    \\n
    \\n \\n Docker requires you to connect to a secure registry. You can find more\\n information about how to connect to an insecure registry in the Docker documentation.\\n \\n
    \\n
    Custom registry details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-custom/registry-form-custom.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Important notice
    \\n
    \\n \\n

    \\n For information on how to generate a DockerHub Access Token, follow the\\n dockerhub guide.\\n

    \\n
    \\n
    \\n
    DockerHub account details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-dockerhub/registry-form-dockerhub.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Namespace }}\\n \\n {{ item.Name }}\\n \\n {{ item.PathWithNamespace }}\\n \\n {{ item.Description }}\\n
    No projects available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-gitlab/gitlab-projects-datatable/gitlabProjectsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Important notice
    \\n
    \\n \\n

    \\n For information on how to generate a Gitlab Personal Access Token, follow the\\n gitlab guide.\\n

    \\n
    \\n
    \\n
    Gitlab registry connection details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n\\n
    \\n
    \\n \\n \\n Override default configuration\\n \\n \\n \\n Use default configuration\\n \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    Gitlab projects
    \\n
    \\n Select the project's registries you want to manage. Portainer will create one registry for each selected project. \\n \\n \\n If you can't select a project, make sure that registry feature is activated on it.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n Create registries\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-gitlab/registry-form-gitlab.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Important notice
    \\n
    \\n
    \\n Any Portainer user that has access to this registry will be able to use the Registry Manager features against the content of any Feed in the ProGet registry that the ProGet\\n user has access to.\\n
    \\n
    \\n
    ProGet registry details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-proget/registry-form-proget.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Quay account details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n {{ $ctrl.formActionLabel }}\\n In progress...\\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/registry-form-quay/registry-form-quay.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n \\n
    \\n
    Information
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    Configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field must consist of lower case alphanumeric characters, '_' or '-' (e.g. 'my-name', or 'abc-123').\\n

    \\n

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n\\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Deploy the stack\\n Deployment in progress...\\n \\n \\n
    {{ $ctrl.state.formValidationError }}
    \\n
    This template type cannot be deployed on this environment.
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/forms/stack-from-template-form/stackFromTemplateForm.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Redeploy from git repository
    \\n \\n \\n \\n\\n \\n \\n \\n \\n = 1.27\\\" ng-model=\\\"$ctrl.formValues.Option\\\" on-change=\\\"($ctrl.onChangeOption)\\\">\\n \\n Pull and redeploy \\n In progress...\\n \\n \\n Save settings \\n In progress...\\n \\n\\n\";;\nvar path = 'app/portainer/components/forms/stack-redeploy-git-form/stack-redeploy-git-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    {{ $ctrl.title }}
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n
    Name Group Tags
    \\n {{ item.Name | truncate: 64 }}\\n \\n {{ $ctrl.groupIdToGroupName(item.GroupId) | truncate: 64 }}\\n \\n {{ $ctrl.tagIdsToTagNames(item.TagIds) | arraytostr | truncate: 64 }}\\n
    \\n {{ item.Name | truncate: 64 }}\\n \\n {{ $ctrl.groupIdToGroupName(item.GroupId) | truncate: 64 }}\\n \\n {{ $ctrl.tagIdsToTagNames(item.TagIds) | truncate: 64 }}\\n
    Loading...
    {{ $ctrl.emptyDatasetMessage }}
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/group-association-table/groupAssociationTable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n

    \\n \\n This environment is currently offline (read-only). Data shown is based on the latest available snapshot.\\n

    \\n

    \\n \\n Last snapshot: {{ $ctrl.snapshotTime | getisodatefromtimestamp }}\\n

    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/information-panel-offline/informationPanelOffline.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    Options
    \\n\\n \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/option-panel/option-panel.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n {{ $ctrl.model.Name }}\\n \\n \\n
    \\n \\n \\n
    \\n \\n \\n {{ $ctrl.model.ShortDescription }}\\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/product-list/product-item/productItem.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    {{ $ctrl.titleText }}
    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/product-list/productList.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ $ctrl.registry.Name }}\\n
    URL\\n {{ $ctrl.registry.URL }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/registry-details/registry-details.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    {{ $ctrl.key }}
    \\n \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/sensitive-details/sensitive-details.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n ********\\n {{ $ctrl.value }}\\n
    \\n\\n\\n\";;\nvar path = 'app/portainer/components/show-hide/show-hide.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/slider/slider.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Stack duplication / migration
    \\n \\n \\n
    \\n
    \\n \\n

    This feature allows you to duplicate or migrate this stack.

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

    \\n \\n This field must consist of lower case alphanumeric characters, '_' or '-' (e.g. 'my-name', or 'abc-123').\\n

    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n\\n
    \\n \\n Migrate \\n Migration in progress...\\n \\n \\n Duplicate \\n Duplication in progress...\\n \\n
    \\n\\n
    \\n
    \\n {{ $ctrl.yamlError }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/stack-duplication-form/stack-duplication-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\";;\nvar path = 'app/portainer/components/status-indicator/status-indicator.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n \\n
    \\n *]:!h-8 [&>*]:!w-auto icon-nested-blue'\\\"\\n fallback-mode=\\\"'primary'\\\"\\n >\\n
    \\n \\n \\n
    \\n \\n
    \\n \\n {{ $ctrl.model.Title }}\\n \\n
    \\n
    \\n \\n & \\n *]:flex [&>*]:items-center'\\\"\\n size=\\\"'lg'\\\"\\n >\\n
    \\n
    \\n *]:flex [&>*]:items-center'\\\">\\n
    \\n {{ $ctrl.typeLabel }}\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n {{ $ctrl.model.Description }}\\n \\n 0\\\">\\n {{ $ctrl.model.Categories.join(', ') }}\\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/template-list/template-item/templateItem.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    Loading...
    \\n \\n No templates available.\\n
    \\n
    \\n \\n \\n\\n\";;\nvar path = 'app/portainer/components/template-list/templateList.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n
    \\n \\n
    \\n

    \\n \\n Dark and High-contrast theme are experimental. Some UI components might not display properly.\\n

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/components/theme/theme-settings.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n A change window is enabled, automatic updates will not occur outside of\\n {{ $ctrl.state.startTimeUtc | date: 'shortTime' }} - {{ $ctrl.state.endTimeUtc | date: 'shortTime' }} UTC ({{ $ctrl.state.startTimeUser | date: 'shortTime' }} -\\n {{ $ctrl.state.endTimeUser | date: 'shortTime' }} {{ $ctrl.state.dst ? 'DST' : '' }} {{ $ctrl.state.timezone }}).\\n \\n
    \\n\";;\nvar path = 'app/portainer/components/time-window-display/time-window-display.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n
    \\n
    to
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n Automatic updates to stacks or applications outside the defined change window will not\\n occur.\\n
    \\n \\n The chosen time configuration is invalid\\n
    \\n
    \\n \\n\\n
    \\n Automatic updates to stacks or applications outside\\n \\n {{ $ctrl.state.utcStartTime | date: 'shortTime' }} - {{ $ctrl.state.utcEndTime | date: 'shortTime' }} UTC ({{ $ctrl.state.setStartTime | date: 'shortTime' }} -\\n {{ $ctrl.state.setEndTime | date: 'shortTime' }} {{ $ctrl.state.dst ? 'DST' : '' }} {{ $ctrl.state.timeZoneSelected }})\\n \\n will not occur.\\n \\n \\n
    \\n\";;\nvar path = 'app/portainer/components/time-window-picker/time-window-picker.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Azure configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/environments/azure-endpoint-config/azureEndpointConfig.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/license-management/add-license.view/add-license.view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.keyValidation.message }}\\n\\n \\n \\n license is required.\\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/license-management/add-license.view/licenses-form/license-item/license-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n
    \\n
    License registration
    \\n
    \\n

    Please input your license keys.

    \\n
    \\n \\n Your license key should start with “2-”.\\n
    \\n
    \\n
    \\n\\n \\n\\n
    \\n
    \\n \\n Submit\\n In progress...\\n \\n {{ $ctrl.state.formError }}\\n
    \\n
    \\n \\n \\n\\n\";;\nvar path = 'app/portainer/license-management/add-license.view/licenses-form/licenses-form.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    \\n

    \\n Portainer {{ $ctrl.productEdition() }} licensed to {{ $ctrl.info.company }}\\n for up to {{ $ctrl.info.nodes }} {{ $ctrl.info.nodes !== 1 ? 'Nodes' : 'Node' }}\\n

    \\n

    \\n Current Usage:\\n {{ $ctrl.usedNodes }}/{{ $ctrl.info.nodes }}\\n

    \\n

    \\n One or more of your licenses will expire on {{ $ctrl.expiresAt() }}\\n

    \\n
    \\n

    Your license has expired. Please contact your administrator to renew your license.

    \\n\\n \\n
    \\n\";;\nvar path = 'app/portainer/license-management/licenses.view/license-info/license-info.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n Licenses\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Remove\\n \\n\\n \\n
    \\n
    \\n\\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.company }}\\n {{ item.type === 1 ? 'Trial' : 'Subscription' }}{{ item.nodes ? item.nodes : '-' }}{{ item.showExpiresAt }}\\n \\n \\n \\n
    Loading...
    No licenses available.
    \\n
    \\n
    \\n
    \\n {{ $ctrl.state.selectedItemCount }}\\n item(s) selected\\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/license-management/licenses.view/licenses-datatable/licenses-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/license-management/licenses.view/licenses.view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Provider
    \\n\\n\\n\";;\nvar path = 'app/portainer/oauth/components/oauth-providers-selector/oauth-providers-selector.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n
    Single Sign-On
    \\n\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n \\n With automatic user provisioning enabled, Portainer will create user(s) automatically with the standard user role. If disabled, users must be created beforehand in Portainer\\n in order to login.\\n \\n \\n\\n
    \\n
    \\n \\n

    The users created by the automatic provisioning feature can be added to a default team on creation.

    \\n

    \\n By assigning newly created users to a team, they will be able to access the environments associated to that team. This setting is optional and if not set, newly created\\n users won't be able to access any environments.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n You have not yet created any teams. Head over to the Teams view to manage teams.\\n \\n\\n
    0\\\">\\n
    \\n

    \\n \\n The default team option will be disabled when automatic team membership is enabled\\n

    \\n
    \\n
    \\n \\n \\n \\n 0\\\"\\n >\\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    Team membership
    \\n
    \\n
    Automatic team membership synchronizes the team membership based on a custom claim in the token from the OAuth provider.
    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n \\n add team mapping\\n \\n\\n
    \\n
    \\n claim value regex\\n \\n
    \\n maps to\\n
    \\n team\\n \\n \\n \\n
    \\n \\n\\n
    \\n
    \\n \\n Claim value regex is required.\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    The default team will be assigned when the user does not belong to any other team
    \\n \\n \\n You have not yet created any teams. Head over to the Teams view to manage teams.\\n \\n\\n
    0\\\">\\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n \\n add admin mapping\\n \\n\\n
    \\n
    \\n claim value regex\\n \\n
    \\n \\n
    \\n
    \\n \\n Claim value regex is required.\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n\\n
    OAuth Configuration
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n \\n\\n \\n
    \\n\";;\nvar path = 'app/portainer/oauth/components/oauth-settings/oauth-settings.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n
    \\n
    \\n
    Access
    \\n
    \\n \\n Effective role for each environment will be displayed for the selected user \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n {{ item.TeamName ? 'Team' : 'User' }} {{ item.TeamName }} access defined on {{ item.AccessLocation }}\\n {{ item.GroupName }}\\n Manage access\\n \\n Manage access\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n Access origin
    {{ item.EndpointName }}{{ item.RoleName }}
    Select a user to show associated access and role
    The selected user does not have access to any environment(s)
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/rbac/components/access-viewer/access-viewer-datatable/access-viewer-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n \\n Effective access viewer\\n \\n \\n \\n \\n
    \\n
    User
    \\n
    \\n
    \\n No user available \\n 0\\\" ng-model=\\\"$ctrl.selectedUser\\\" ng-change=\\\"$ctrl.onUserSelect()\\\">\\n \\n {{ $select.selected.Username }}\\n \\n \\n {{ item.Username }}\\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/rbac/components/access-viewer/access-viewer.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    {{ item.Name }}{{ item.Description }}\\n \\n \\n \\n Default\\n
    Loading...
    No role available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/rbac/components/roles-datatable/roles-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/rbac/views/roles/roles.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n {{ item.Name }}\\n {{ item.TagsCount }}
    Loading...
    No repository available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/components/registries-repositories-datatable/registryRepositoriesDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n \\n {{ item.Name }}\\n {{ item.Os }}/{{ item.Architecture }}{{ item.ImageId | trimshasum }}{{ item.Size | humansize }}\\n \\n \\n \\n Retag\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Loading...
    No tag available.
    \\n
    \\n
    \\n
    {{ $ctrl.state.selectedItemCount }} item(s) selected
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/components/registries-repository-tags-datatable/registriesRepositoryTagsDatatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n
    \\n
    Information
    \\n
    \\n \\n The following configuration will be used to access this registry API to provide Portainer\\n management features.\\n \\n
    \\n
    Registry details
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n\\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    Required TLS files
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.model.TLSCACertFile.name }}\\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.model.TLSCertFile.name }}\\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n {{ $ctrl.model.TLSKeyFile.name }}\\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Test configuration\\n Test in progress...\\n \\n \\n Save configuration\\n Saving configuration...\\n \\n
    \\n
    \\n \\n \\n \\n
    \\n\\n\";;\nvar path = 'app/portainer/registry-management/views/configure/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n \\n

    \\n \\n {{ $ctrl.resolve.message }}\\n

    \\n
    \\n   {{ $ctrl.resolve.progressLabel }} : {{ $ctrl.resolve.context.progression }}% - {{ $ctrl.resolve.context.elapsedTime | number: 0 }}s \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/views/repositories/edit/progression-modal/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n\\n
    \\n \\n \\n

    \\n \\n Portainer needs to retrieve additional information to enable tags modifications (addition, removal, rename) and repository removal features.
    \\n As this repository contains more than {{ state.tagsRetrieval.limit }} tags, the additional retrieval wasn't started automatically.
    \\n Once started you can still navigate this page, leaving the page will cancel the retrieval process.
    \\n
    \\n Note: on very large repositories or high latency environments the retrieval process can take a few minutes.\\n

    \\n
    \\n
    \\n \\n \\n\\n \\n   Retrieval progress : {{ state.tagsRetrieval.progression }}% - {{ state.tagsRetrieval.elapsedTime | number: 0 }}s\\n \\n\\n \\n \\n Retrieval completed in {{ state.tagsRetrieval.elapsedTime | number: 0 }}s\\n \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Repository\\n {{ repository.Name }}\\n \\n \\n \\n Delete this repository\\n \\n
    Tags count{{ repository.Tags.length }}
    Images count{{ short.Images.length }}
    \\n
    \\n
    \\n
    \\n\\n
    0\\\" authorization=\\\"PortainerRegistryInternalUpdate\\\">\\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n {{ $select.selected | trimshasum }}\\n \\n \\n {{ image | trimshasum }}\\n \\n \\n
    \\n
    \\n
    \\n \\n Add tag\\n Adding tag...\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n 0 && hasAdvancedFeaturesAuth\\\"\\n pagination-action=\\\"paginationAction\\\"\\n loading=\\\"state.loading\\\"\\n >\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/views/repositories/edit/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n\\n
    0\\\">\\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n {{ tag }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    ID\\n {{ $ctrl.details.Id }}\\n
    Parent{{ $ctrl.details.Parent }}
    Created{{ $ctrl.details.Created | getisodate }}
    BuildDocker {{ $ctrl.details.DockerVersion }} on {{ $ctrl.details.Os }}, {{ $ctrl.details.Architecture }}
    Author{{ $ctrl.details.Author }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n {{ $ctrl.details.Command | command }}\\n \\n \\n \\n {{ $ctrl.details.Entrypoint | command }}\\n \\n 0\\\">\\n \\n \\n \\n 0\\\">\\n \\n \\n \\n 0\\\">\\n \\n \\n \\n \\n
    CMD
    ENTRYPOINT
    EXPOSE\\n \\n {{ port }}\\n \\n
    VOLUME\\n \\n {{ volume }}\\n \\n
    ENV\\n \\n \\n \\n \\n \\n
    {{ var|key: '=' }}{{ var|value: '=' }}
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n {{ layer.Order }}\\n \\n
    130\\\">\\n \\n {{ layer.CreatedBy }}\\n \\n \\n {{ layer.CreatedBy | truncate: 130 }}\\n 130\\\" style=\\\"margin-left: 5px\\\">\\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n {{ layer.CreatedBy }}\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/views/repositories/tag/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n\\n\\n\\n
    \\n \\n \\n

    \\n \\n Portainer was not able to use this registry management features. You might need to update the configuration used by Portainer to access this registry.\\n

    \\n

    \\n Note: Portainer registry management features are only supported with registries exposing the\\n v2 registry API.\\n

    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/registry-management/views/repositories/template.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Automatic user provisioning
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/auto-user-provision-toggle/auto-user-provision-toggle.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n\\n \\n \\n With automatic user provisioning enabled, Portainer will create user(s) automatically with standard user role and assign them to team(s) which matches to LDAP group name(s).\\n If disabled, users must be created in Portainer beforehand.\\n \\n \\n\\n
    \\n
    Information
    \\n
    \\n When using Microsoft AD authentication, Portainer will delegate user authentication to the Domain Controller(s) configured below; if there is no connectivity, Portainer will\\n fallback to internal authentication.\\n
    \\n
    \\n\\n
    AD configuration
    \\n\\n
    \\n
    \\n

    \\n \\n You can configure multiple AD Controllers for authentication fallback. Make sure all servers are using the same configuration (i.e. if TLS is enabled, they should all use\\n the same certificates).\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n \\n 0\\\"\\n class=\\\"btn btn-sm btn-danger\\\"\\n type=\\\"button\\\"\\n ng-click=\\\"$ctrl.removeLDAPUrl($index)\\\"\\n limited-feature-dir=\\\"{{::$ctrl.limitedFeatureId}}\\\"\\n limited-feature-tabindex=\\\"-1\\\"\\n >\\n \\n \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ad-settings/ad-settings.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n Test connectivity\\n Testing connectivity...\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-connectivity-check/ldap-connectivity-check.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Auto-populate team admins
    \\n\\n\\n \\n
    0\\\" style=\\\"margin-bottom: 10px\\\">\\n Extra search configuration \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Fetch Admin Group(s)\\n \\n \\n \\n No groups found\\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-custom-admin-group/ldap-custom-admin-group.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Group search configurations
    \\n\\n\\n \\n
    0\\\" style=\\\"margin-bottom: 10px\\\">\\n Extra search configuration \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Display User/Group matching\\n \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-custom-group-search/ldap-custom-group-search.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    User search configurations
    \\n\\n\\n \\n
    0\\\" style=\\\"margin-bottom: 10px\\\">\\n Extra search configuration \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n\\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n \\n Display Users\\n \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-custom-user-search/ldap-custom-user-search.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n
    0\\\" style=\\\"margin-bottom: 10px\\\">\\n Extra search configuration \\n \\n \\n \\n
    \\n\\n \\n\\n
    \\n \\n
    \\n {{ $ctrl.config.GroupBaseDN }}\\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n add another group\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n {{ $ctrl.config.GroupFilter }}\\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-group-search-item/ldap-group-search-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Group search configurations
    \\n\\n
    \\n \\n
    \\n\\n
    \\n
    \\n \\n \\n add group search configuration\\n \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-group-search/ldap-group-search.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n {{ item.Name }}\\n \\n

    {{ group }}

    \\n
    Loading...
    No groups found.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-groups-datatable/ldap-groups-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    Information
    \\n
    \\n When using LDAP authentication, Portainer will delegate user authentication to a LDAP server and fallback to internal authentication if LDAP authentication fails.\\n
    \\n
    \\n\\n
    LDAP configuration
    \\n\\n
    \\n
    \\n

    \\n \\n You can configure multiple LDAP Servers for authentication fallback. Make sure all servers are using the same configuration (i.e. if TLS is enabled, they should all use the\\n same certificates).\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n\\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n\\n
    \\n \\n \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-custom/ldap-settings-custom.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n add another entry\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-dn-builder/ldap-settings-dn-builder.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n\\n\\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-group-dn-builder/ldap-settings-group-dn-builder.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n\\n
    \\n
    Information
    \\n
    \\n When using LDAP authentication, Portainer will delegate user authentication to a LDAP server and fallback to internal authentication if LDAP authentication fails.\\n
    \\n
    \\n\\n
    LDAP configuration
    \\n\\n
    \\n
    \\n

    \\n \\n You can configure multiple LDAP Servers for authentication fallback. Make sure all servers are using the same configuration (i.e. if TLS is enabled, they should all use the\\n same certificates).\\n

    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n
    \\n \\n 0\\\"\\n class=\\\"btn btn-sm btn-danger\\\"\\n type=\\\"button\\\"\\n ng-click=\\\"$ctrl.removeLDAPUrl($index)\\\"\\n limited-feature-dir=\\\"{{::$ctrl.limitedFeatureId}}\\\"\\n limited-feature-tabindex=\\\"-1\\\"\\n >\\n \\n \\n
    \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-openldap/ldap-settings-openldap.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n {{ $ctrl.title || 'LDAP security' }}\\n
    \\n\\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\\n\\n
    \\n \\n
    \\n \\n Select file\\n \\n \\n {{ $ctrl.tlscaCert.name }}\\n \\n \\n \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-security/ldap-settings-security.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Test login
    \\n
    \\n
    \\n \\n \\n
    \\n\\n
    \\n \\n \\n
    \\n\\n
    \\n
    \\n \\n Test\\n Testing...\\n \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings-test-login/ldap-settings-test-login.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n With automatic user provisioning enabled, Portainer will create user(s) automatically with standard user role and assign them to team(s) which matches to LDAP group name(s).\\n If disabled, users must be created in Portainer beforehand.\\n \\n \\n\\n
    Server Type
    \\n\\n \\n\\n \\n\\n \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-settings/ldap-settings.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n \\n
    0\\\" style=\\\"margin-bottom: 10px\\\">\\n Extra search configuration \\n 0\\\"\\n class=\\\"btn btn-sm btn-danger\\\"\\n type=\\\"button\\\"\\n ng-click=\\\"$ctrl.onRemoveClick($ctrl.index)\\\"\\n limited-feature-dir=\\\"{{::$ctrl.limitedFeatureId}}\\\"\\n limited-feature-tabindex=\\\"-1\\\"\\n >\\n \\n \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n username\\n user@domainname\\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n {{ $ctrl.config.BaseDN }}\\n
    \\n
    \\n\\n \\n\\n
    \\n
    \\n \\n \\n \\n add another group\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n\\n
    \\n \\n
    \\n {{ $ctrl.config.Filter }}\\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-user-search-item/ldap-user-search-item.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    User search configurations
    \\n\\n
    \\n \\n
    \\n\\n
    \\n
    \\n \\n \\n add user search configuration\\n \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-user-search/ldap-user-search.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n \\n {{ $ctrl.titleText }}\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n {{ item }}\\n
    Loading...
    No users found.
    \\n
    \\n
    \\n
    \\n
    \\n \\n Items per page \\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/ldap/ldap-users-datatable/ldap-users-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Actions
    \\n
    \\n
    \\n \\n Save settings\\n Saving...\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/authentication/save-auth-settings-button/save-auth-settings-button.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n
    \\n \\n \\n \\n
    \\n \\n

    \\n \\n Forcing HTTPs only will cause Portainer to stop listening on the HTTP port. Any edge agent environment that is using HTTP will no longer be available.\\n

    \\n
    \\n
    \\n \\n
    \\n\\n
    \\n Provide a new SSL Certificate to replace the existing one that is used for HTTPS connections. \\n
    \\n\\n
    \\n Upload a X.509 certificate, commonly a crt, a cer, or a pem file. \\n
    \\n\\n
    \\n
    \\n \\n \\n {{ $ctrl.formValues.certFile.name }}\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    File type is invalid.

    \\n
    \\n
    \\n
    \\n\\n
    \\n Upload a private key, commonly a key, or a pem file. \\n
    \\n\\n
    \\n
    \\n \\n \\n {{ $ctrl.formValues.keyFile.name }}\\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    File type is invalid.

    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n Apply changes\\n Saving in progress...\\n Reloading Page...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/settings/general/ssl-certificate/ssl-certificate.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n Activity Logs\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n {{ item.timestamp | getisodatefromtimestamp }}\\n {{ item.username }}{{ item.context }}\\n {{ item.action }}\\n \\n \\n -\\n
    \\n \\n
    Loading...
    No logs available.
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/user-activity/activity-logs-view/activity-logs-datatable/activity-logs-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n

    \\n \\n Portainer user activity logs have a maximum retention of 7 days.\\n

    \\n\\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/user-activity/activity-logs-view/activity-logs-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n\\n Authentication Events\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n {{ item.timestamp | getisodatefromtimestamp }}\\n {{ item.origin }}{{ $ctrl.contextType(item.context) }}{{ item.username }}\\n {{ $ctrl.activityType(item.type) }}\\n \\n
    Loading...
    No logs available.
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/user-activity/auth-logs-view/auth-logs-datatable/auth-logs-datatable.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n\\n

    \\n \\n Portainer user authentication activity logs have a maximum retention of 7 days.\\n

    \\n\\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/user-activity/auth-logs-view/auth-logs-view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Update password\\n \\n \\n \\n \\n You cannot change your password when using LDAP authentication.\\n \\n \\n \\n You cannot change your password when using OAuth authentication.\\n \\n
    \\n
    \\n
    \\n

    \\n \\n Minimum password length is set here.\\n

    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n\\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/account/account.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/account/create-user-access-token/create-user-access-token.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\\"Portainer\\\"\\n \\n
    \\n \\n\\n
    \\n

    Log in to your account

    \\n

    Welcome back! Please enter your details

    \\n
    \\n\\n \\n
    \\n
    \\n \\n
    \\n \\n\\n \\n
    \\n
    \\n
    or
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n
    Use internal authentication
    \\n
    \\n
    \\n\\n \\n
    \\n
    Username
    \\n \\n
    \\n\\n \\n
    \\n
    Password
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n Login\\n Login in progress...\\n \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n {{ ctrl.state.AuthenticationError }}\\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n Authentication in progress... \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/views/auth/auth.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n\\n \\n
    \\n
    Build method
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n You can get more information about Compose file format in the\\n official documentation \\n .\\n \\n \\n \\n \\n \\n
    \\n
    Upload
    \\n
    \\n You can upload a Compose file from your computer. \\n
    \\n
    \\n
    \\n \\n \\n {{ $ctrl.formValues.File.name }}\\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n \\n\\n
    \\n
    \\n
    \\n \\n Template is invalid.\\n
    \\n
    \\n
    \\n\\n \\n\\n \\n \\n\\n \\n
    Actions
    \\n
    \\n
    \\n \\n Create custom template\\n Creation in progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/custom-templates/create-custom-template-view/createCustomTemplateView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n \\n \\n \\n\\n \\n \\n \\n \\n \\n You can get more information about Compose file format in the\\n official documentation \\n .\\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/custom-templates/custom-templates-view/customTemplatesView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n\\n \\n \\n \\n \\n You can get more information about Compose file format in the\\n official documentation \\n .\\n \\n \\n \\n \\n\\n
    \\n
    \\n
    \\n \\n Template is invalid.\\n
    \\n
    \\n
    \\n\\n \\n\\n \\n\\n
    Actions
    \\n
    \\n
    \\n \\n Update the template\\n Update in progress...\\n \\n \\n {{ $ctrl.state.formValidationError }}\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/custom-templates/edit-custom-template-view/editCustomTemplateView.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n \\n

    \\n \\n You are setting up a Portainer Edge Agent that will initiate the communications with the Portainer instance and your FDO Devices.\\n

    \\n
    \\n \\n \\n
    Import Voucher
    \\n
    \\n
    \\n \\n

    \\n \\n Import one or more Manufacturer's Ownership Vouchers to initiate device attestation\\n

    \\n
    \\n
    \\n \\n Upload \\n Uploading Voucher...\\n \\n
    \\n
    \\n
    \\n
    \\n

    Connecting to the Owner service...

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

    Ownership Voucher Uploaded

    \\n
    \\n
    \\n
    \\n \\n \\n
    Device details
    \\n
    \\n \\n

    \\n \\n Device name will serve as your reference name in Portainer\\n

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

    This field is required.

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

    \\n \\n Suffix starting number will be appended to the end of the Device name, if initiating multiple devices this will be incrementally increased\\n

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

    This field is required.

    \\n

    This field needs to be a positive integer number.

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

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n
    Set up Tags
    \\n
    \\n \\n

    \\n \\n This is just an option if your device is under a certain group\\n

    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n\\n \\n
    \\n
    \\n \\n Save Configuration\\n Saving...\\n \\n Cancel\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/devices/import/importDevice.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    Device Profile Details
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    Profile configuration
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n \\n\\n \\n
    \\n
    \\n Cancel\\n \\n Save Profile\\n Saving...\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/devices/profiles/add/addProfile.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    Device Profile Details
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    Profile configuration
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n \\n\\n \\n
    \\n
    \\n Cancel\\n \\n Update Profile\\n Saving...\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/devices/profiles/edit/editProfile.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/endpoint-registries/registries.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ ctrl.endpoint.Name }}\\n
    URL\\n {{ ctrl.endpoint.URL | stripprotocol }}\\n
    Group\\n {{ ctrl.group.Name }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n\";;\nvar path = 'app/portainer/views/endpoints/access/endpointAccess.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n

    \\n \\n This Edge environment is associated to an Edge environment {{ state.platformName }}.\\n

    \\n

    \\n Edge key: {{ endpoint.EdgeKey }}\\n

    \\n

    \\n Edge identifier: {{ endpoint.EdgeID }}\\n

    \\n

    \\n \\n Disassociate\\n \\n

    \\n
    \\n
    \\n\\n
    \\n \\n \\n
    Deploy an agent
    \\n \\n

    \\n \\n Refer to the platform related command below to deploy the Edge agent in your remote cluster.\\n

    \\n

    \\n The agent will communicate with Portainer via {{ edgeKeyDetails.instanceURL }} and tcp://{{ edgeKeyDetails.tunnelServerAddr }}\\n

    \\n
    \\n\\n
    Edge agent deployment script
    \\n \\n\\n \\n
    Join token
    \\n

    \\n \\n For those pre-staging the edge agent, use the following join token to associate the Edge agent with this environment.\\n

    \\n

    You can read more about pre-staging in the userguide available here.

    \\n
    \\n \\n {{ endpoint.EdgeKey }}\\n \\n
    \\n \\n \\n Copy token\\n \\n \\n \\n copied\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n \\n \\n \\n You should configure the features available in this Kubernetes environment in the\\n Kubernetes configuration view.\\n \\n \\n\\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n\\n KaaS cluster details\\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Provider\\n {{ endpoint.CloudProvider.Name }}\\n Go to portal\\n
    Region\\n {{ endpoint.CloudProvider.Region }}\\n
    Node Size{{ endpoint.CloudProvider.Size }}
    Network Id{{ endpoint.CloudProvider.NetworkID }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    Configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n Use https connection on Edge agent to use private registries with credentials.\\n
    \\n
    \\n\\n
    \\n
    Check-in Intervals
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n \\n
    Metadata
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n\\n \\n
    \\n
    Security
    \\n \\n
    \\n \\n \\n
    \\n
    Open Active Management Technology
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    Hardware acceleration
    \\n \\n \\n
    \\n
    \\n \\n Update environment...\\n Updating environment...\\n \\n Cancel\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/endpoints/edit/endpoint.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/endpoints/endpoints.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    KVM Control
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/endpoints/kvm/endpointKVM.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"\\n\\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ group.Name }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\";;\nvar path = 'app/portainer/views/groups/access/groupAccess.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/groups/create/creategroup.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/groups/edit/group.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/groups/groups.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\\"Portainer\\\"\\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n\\n \\n
    \\n \\n
    \\n
    \\n Please create the initial administrator user. \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n

    \\n \\n The password must be at least {{ requiredPasswordLength }} characters long.\\n \\n

    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Create user\\n Creating user...\\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Allow collection of anonymous statistics. You can find more information about this in our\\n privacy policy.\\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n \\n \\n \\n\\n \\n
    \\n \\n
    \\n
    \\n \\n This will restore the Portainer metadata which contains information about the environments, stacks and applications, as well as the configured users.\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n You can upload a backup file from your computer. \\n
    \\n
    \\n \\n \\n
    \\n
    \\n Select file\\n \\n {{ formValues.BackupFile.name }}\\n \\n \\n
    \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n You are about to restore Portainer from this backup. \\n
    \\n
    \\n After restoring has completed, please log in as a user that was known by the Portainer that was restored. \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Restore Portainer\\n Restoring Portainer...\\n \\n \\n Restore Portainer\\n Restoring Portainer...\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/views/init/admin/initAdmin.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Information
    \\n
    \\n
    \\n \\n

    Connect directly to a Portainer agent running inside a Docker or Kubernetes environment.

    \\n
    \\n
    \\n
    \\n
    Environment
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n\";;\nvar path = 'app/portainer/views/init/endpoint/includes/agent.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Information
    \\n
    \\n
    \\n \\n

    Manage the Docker environment where Portainer is running.

    \\n

    \\n \\n Ensure that you have started the Portainer container with the following Docker flag:\\n

    \\n

    -v \\\"/var/run/docker.sock:/var/run/docker.sock\\\" (Linux).

    \\n

    or

    \\n

    -v \\\\\\\\.\\\\pipe\\\\docker_engine:\\\\\\\\.\\\\pipe\\\\docker_engine (Windows).

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/init/endpoint/includes/localDocker.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    Information
    \\n
    \\n
    \\n \\n

    Manage the Kubernetes environment where Portainer is running.

    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/init/endpoint/includes/localKubernetes.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\\"Portainer\\\"\\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n Connect Portainer to the container environment you want to manage. \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n Connect\\n Connecting...\\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/views/init/endpoint/initEndpoint.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\\"Portainer\\\"\\n
    \\n \\n\\n
    \\n
    \\n \\n
    \\n
    License registration
    \\n\\n
    \\n \\n

    Please register your Portainer license.

    \\n
    \\n
    \\n \\n Your license key should start with “2-”.\\n
    \\n
    \\n\\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n Submit\\n In progress...\\n \\n \\n {{ $ctrl.state.formError }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/init/init-license.view/init-license.view.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\\"Portainer\\\"\\n \\n
    \\n \\n\\n
    \\n

    Log in to your account

    \\n

    Welcome back! Please enter your details

    \\n
    \\n\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    Username
    \\n \\n
    \\n\\n \\n
    \\n
    Password
    \\n \\n
    \\n\\n
    \\n \\n
    \\n \\n Login\\n Login in progress...\\n \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n {{ ctrl.state.AuthenticationError }}\\n
    \\n
    \\n
    \\n\\n \\n
    \\n
    \\n
    \\n Authentication in progress... \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\";;\nvar path = 'app/portainer/views/internal-auth/internal-auth.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \"
    \\n \\n
    \\n
    \\n \\n
    \\n \\\"Portainer\\\"\\n \\n
    \\n
    \\n Logout in progress...\\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/logout/logout.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n
    Registry provider
    \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/registries/create/createRegistry.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n A registry with the same name already exists.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

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

    \\n \\n This field is required.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n Update registry\\n Updating registry...\\n \\n Cancel\\n
    \\n
    \\n \\n \\n \\n
    \\n\\n\";;\nvar path = 'app/portainer/views/registries/edit/registry.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n View registries via an environment to manage access for user(s) and/or team(s) \\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/registries/registries.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    Configuration
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n Changing from default is only recommended if you have additional layers of authentication in front of Portainer.\\n \\n
    \\n\\n
    Authentication method
    \\n\\n \\n\\n \\n\\n \\n\\n \\n\\n \\n \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/settings/authentication/settingsAuthentication.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/settings/edge-compute/settingsEdgeCompute.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n You cannot use this feature in the demo version of Portainer.\\n
    \\n
    \\n\\n
    \\n
    \\n You can specify the URL to your logo here. For an optimal display, logo dimensions should be 155px by 55px. \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n\\n
    \\n \\n
    \\n You cannot use this feature in the demo version of Portainer.\\n
    \\n
    \\n You can find more information about this in our\\n privacy policy.\\n
    \\n
    \\n\\n \\n
    App Templates
    \\n
    \\n
    \\n \\n You can specify the URL to your own template definitions file here. See\\n Portainer documentation for more details.\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    Helm Repository
    \\n
    \\n
    \\n \\n You can specify the URL to your own helm repository here. See the\\n official documentation for more details.\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    Kubernetes
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Save settings\\n Saving...\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n\\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n You can hide containers with specific labels from Portainer UI. You need to specify the label name and value. \\n
    \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    NameValue
    {{ label.name }}{{ label.value }}
    No filter available.
    Loading...
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    Backup configuration
    \\n\\n \\n\\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n

    Please enter a valid cron rule.

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

    This field is required.

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

    This field is required.

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

    This field is required.

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

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n
    Security settings
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n Export backup\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n Save backup settings\\n \\n
    \\n
    \\n
    \\n
    \\n
    Security settings
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    This field is required.

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n Download backup\\n Downloading backup\\n \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/settings/settings.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field must consist of lower case alphanumeric characters, '_' or '-' (e.g. 'my-name', or 'abc-123').\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n \\n This stack will be deployed using the equivalent of the docker stack deploy command.\\n \\n
    \\n
    \\n This stack will be deployed using the equivalent of docker compose. Only Compose file format version 2 is supported at the moment.\\n
    \\n \\n Note: Due to a limitation of libcompose, the name of the stack will be standardized to remove all special characters and uppercase letters.\\n
    \\n 2\\\">\\n This stack will be deployed using docker compose.\\n \\n
    \\n \\n
    Build method
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n
    Upload
    \\n
    \\n You can upload a Compose file from your computer. \\n
    {{ state.uploadYamlValidationError }}\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n\\n
    \\n \\n\\n \\n
    \\n\\n \\n \\n \\n You can get more information about Compose file format in the official documentation.\\n \\n
    \\n {{ state.editorYamlValidationError }}\\n
    \\n
    \\n \\n\\n
    \\n
    \\n Webhooks\\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Deploy the stack\\n Deployment in progress...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n \\n \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/stacks/create/createstack.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n Stack \\n
    \\n \\n
    \\n
    Information
    \\n
    \\n \\n

    \\n \\n This stack was created outside of Portainer. Control over this stack is limited.\\n This stack is orphaned. You can re-associate it with the current environment using the \\\"Associate to this environment\\\" feature.\\n

    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    Stack details
    \\n
    \\n {{ stackName }}\\n\\n \\n \\n Start this stack\\n \\n\\n \\n \\n Stop this stack\\n \\n\\n \\n\\n \\n \\n Create template from stack\\n \\n\\n \\n \\n Detach from Git\\n Detachment in progress...\\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    Associate to this environment
    \\n

    This feature allows you to re-associate this stack to the current environment.

    \\n
    \\n \\n
    \\n
    \\n \\n \\n Associate\\n Association in progress...\\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n
    \\n
    \\n \\n\\n \\n \\n 0\\\"\\n endpoints=\\\"endpoints\\\"\\n groups=\\\"groups\\\"\\n current-endpoint-id=\\\"endpoint.Id\\\"\\n on-duplicate=\\\"duplicateStack(name, endpointId)\\\"\\n on-migrate=\\\"migrateStack(name, endpointId)\\\"\\n yaml-error=\\\"state.yamlError\\\"\\n >\\n \\n
    \\n
    \\n \\n \\n \\n Editor \\n
    \\n
    \\n \\n This stack will be deployed using the equivalent of docker compose. Only Compose file format version 2 is supported at the moment.\\n \\n 2\\\">\\n This stack will be deployed using docker compose.\\n \\n \\n You can get more information about Compose file format in the official documentation.\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n Webhooks\\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n {{ formValues.WebhookURL | truncatelr }} \\n \\n \\n \\n \\n
    \\n
    \\n\\n \\n
    \\n \\n
    \\n \\n \\n
    = 1.27\\\" authorization=\\\"PortainerStackUpdate\\\">\\n
    Options
    \\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    Actions
    \\n
    \\n
    \\n \\n Update the stack\\n Deployment in progress...\\n \\n
    \\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n
    \\n
    \\n\\n\\n\\n
    \\n
    \\n = 1.25\\\"\\n show-task-logs-button=\\\"applicationState.endpoint.apiVersion >= 1.30\\\"\\n show-add-action=\\\"false\\\"\\n show-stack-column=\\\"false\\\"\\n not-auto-focus=\\\"true\\\"\\n endpoint-public-url=\\\"endpoint.PublicURL\\\"\\n endpoint-id=\\\"endpoint.Id\\\"\\n >\\n
    \\n
    \\n\\n\\n\\n\\n\\n\";;\nvar path = 'app/portainer/views/stacks/edit/stack.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/stacks/stacks.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n

    \\n \\n This field is required.\\n

    \\n

    \\n \\n This tag already exists.\\n

    \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n Create tag\\n \\n Creating tag...\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/tags/tags.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    Name\\n {{ team.Name }}\\n \\n
    Leaders\\n {{ leaderCount }}\\n
    Total users in team{{ teamMembers.length }}
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n The team leader feature is disabled as external authentication is currently enabled with team sync.\\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n Items per page:\\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n \\n {{ user.Username }}\\n \\n \\n Add\\n \\n \\n
    Loading...
    No users.
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n \\n \\n
    \\n Items per page:\\n \\n
    \\n
    \\n \\n
    \\n \\n Remove all users\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n \\n {{ user.Username }}\\n \\n \\n Remove\\n \\n \\n \\n \\n \\n \\n {{ user.TeamRole }}\\n \\n \\n Leader\\n \\n \\n Member\\n \\n \\n
    Loading...
    No team members.
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/teams/edit/team.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n\\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/teams/teams.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n
    Information
    \\n
    \\n
    \\n
    \\n
    \\n \\n
    Configuration
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n
    0\\\">\\n
    Portainer will automatically assign a port if you leave the host port empty.
    \\n
    \\n \\n
    \\n host\\n \\n
    \\n \\n \\n \\n
    \\n container\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    Add map additional port
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    0\\\">\\n
    Portainer will automatically create and map a local volume when using the auto option.
    \\n
    \\n \\n
    \\n \\n
    \\n container\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n \\n
    \\n \\n \\n
    \\n
    \\n volume\\n
    \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n host\\n \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n
    Add map additional volume
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    0\\\">\\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n
    Add additional entry
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n \\n \\n
    0\\\">\\n
    \\n
    \\n name\\n \\n
    \\n
    \\n value\\n \\n
    \\n \\n
    \\n
    \\n \\n
    Add label
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n
    \\n \\n \\n
    Actions
    \\n
    \\n
    \\n \\n Deploy the container\\n Deployment in progress...\\n \\n \\n {{ state.formValidationError }}\\n
    \\n
    \\n \\n
    \\n
    \\n
    \\n
    \\n \\n
    \\n\\n
    \\n
    \\n = 1.25\\\"\\n >\\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/templates/templates.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n
    \\n \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n
    \\n Update password\\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/users/edit/user.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;","var _module_exports = \" \\n\\n
    \\n
    \\n \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n
    \\n \\n \\n \\n \\n \\n
    \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n
    \\n \\n
    \\n
    \\n \\n\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n
    \\n \\n
    \\n \\n You don't seem to have any teams to add users into. Head over to the Teams view to create some.\\n \\n 0\\\"\\n input-model=\\\"teams\\\"\\n output-model=\\\"formValues.Teams\\\"\\n button-label=\\\"Name\\\"\\n item-label=\\\"Name\\\"\\n tick-property=\\\"ticked\\\"\\n helper-elements=\\\"filter\\\"\\n search-property=\\\"Name\\\"\\n translation=\\\"{nothingSelected: 'Select one or more teams', search: 'Search...'}\\\"\\n data-cy=\\\"user-teamSelect\\\"\\n >\\n \\n
    \\n
    \\n \\n
    \\n
    \\n \\n \\n Note: non-administrator users who aren't in a team don't have access to any environments by default. Head over to the\\n Environments view to manage their accesses.\\n \\n
    \\n
    \\n
    \\n
    \\n \\n \\n Create user\\n Creating user...\\n \\n \\n {{ state.userCreationError }}\\n \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n
    \\n\\n
    \\n
    \\n \\n
    \\n
    \\n\";;\nvar path = 'app/portainer/views/users/users.html';\nwindow.angular.module('ng').run(['$templateCache', function(c) { c.put(path, _module_exports) }]);\nmodule.exports = path;"],"names":["map","webpackContext","req","id","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","Object","resolve","module","exports","_path","_extends","assign","bind","target","i","arguments","length","source","key","prototype","hasOwnProperty","call","apply","this","props","width","height","viewBox","fill","xmlns","d","_path2","fillRule","clipRule","_style","x","y","style","enableBackground","xmlSpace","className","_path3","_path4","_defs","x1","y1","x2","y2","gradientUnits","stopColor","offset","stopOpacity","_g","clipPath","transform","_path5","_path6","_path7","preserveAspectRatio","stroke","strokeWidth","strokeLinecap","gradientTransform","opacity","strokeOpacity","DimensionConfig","categories","setPortainerStatus","instanceID","version","setCustomDimension","PortainerInstanceID","PortainerVersion","setUserRole","role","PortainerUserRole","clearUserRole","deleteCustomDimension","setUserEndpointRole","PortainerEndpointUserRole","clearUserEndpointRole","dimensionId","value","push","toString","name","window","args","_paq","useAnalytics","telemetryQuery","usePublicSettings","select","settings","EnableTelemetry","trackEvent","data","action","properties","metadata","dimensions","category","parsed","parseInt","Number","isNaN","includes","metadataString","kebabCasedMetadata","fromEntries","entries","JSON","stringify","toLowerCase","trimSHA","imageName","indexOf","substring","environmentId","axios","buildUrl","parseAxiosError","useInfo","useQuery","getInfo","useVersion","getVersion","subAction","url","EDGE_ASYNC_INTERVAL_USE_DEFAULT","options","label","isDefault","defaultFieldSettings","ping","tooltip","snapshot","command","EdgeAsyncIntervalsForm","onChange","values","isDefaultHidden","readonly","fieldSettings","pingIntervalOptions","useIntervalOptions","snapshotIntervalOptions","commandIntervalOptions","inputId","PingInterval","handleChange","disabled","SnapshotInterval","CommandInterval","intervals","option","edgeAsyncIntervalsValidation","object","number","required","oneOf","EdgeAsyncIntervalsFormAngular","r2a","checkinIntervalOptions","EdgeCheckinIntervalField","currentTarget","EdgeCheckinIntervalFieldAngular","fieldName","initialOptions","defaultValue","useState","setOptions","settingsQuery","useSettings","useEffect","slice","find","EditorType","getValidEditorTypes","endpointTypes","right","EnvironmentType","type","validationSchema","isAdmin","shape","ownership","string","ResourceControlOwnership","authorizedUsers","array","authorizedTeams","test","AccessControlPanelDetails","authorizedUserIds","authorizedTeamIds","resourceControl","inheritanceMessage","resourceType","Type","parentType","resourceId","ResourceId","ResourceControlType","InheritanceMessage","Link","to","params","truncate","removeEndpointIdFromStackResourceId","getInheritanceMessage","Ownership","UserAccesses","restrictedToUsers","TeamAccesses","restrictedToTeams","users","ra","UserId","useUsers","user","u","Id","Username","teams","TeamId","useTeams","team","Name","clsx","ownershipIcon","Tooltip","message","getOwnershipTooltip","join","stackName","firstUnderlineIndex","children","colSpan","AccessControlPanelForm","onCancelClick","onUpdateSuccess","useUser","updateAccess","useMutation","variables","applyResourceControlChange","meta","error","title","onSuccess","initialValues","accessControl","parseAccessControlFormData","onSubmit","validateOnMount","validateOnChange","setFieldValue","isSubmitting","isValid","errors","EditDetails","isPublicVisible","size","color","onClick","LoadingButton","isLoading","loadingText","confirmAccessControlUpdate","mutate","notifySuccess","confirmAsync","buttons","confirm","AccessControlPanel","disableOwnershipChange","useReducer","state","isEditMode","toggleEditMode","isInherited","inheritedVolume","inheritedContainer","inheritedFromStack","checkIfInherited","memberships","useUserMembership","isPartOfRestrictedUsers","isLeaderOfAnyRestrictedTeams","some","ua","isTeamLeader","isSuccess","userMemberships","membership","Role","ta","TeamID","useRestrictions","isEditDisabled","icon","featherIcon","Icon","feather","AccessControlPanelAngular","UsersField","FormControl","undefined","UsersSelector","TeamsSelector","dataCy","placeholder","isMulti","getOptionLabel","getOptionValue","String","filter","closeMenuOnSelect","selectedTeams","TeamsField","overrideTooltip","publicOption","description","BadgeIcon","adminOptions","buildOption","nonAdminOptions","formNamespace","useLoadState","useOptions","useCallback","partialValues","BoxSelector","radioName","withNamespace","handleChangeOwnership","FormError","formValues","ownershipParameters","parseOwnershipParameters","updateResourceControl","createResourceControl","applyResourceControl","accessControlData","subResourcesIds","resourceControlId","ResourceControlViewModel","Public","System","determineOwnership","ResourceAccessLevel","adminOnly","publicOnly","administratorsOnly","public","BoxSelectorAngular","template","bindings","require","formCtrl","controller","BoxSelectorController","$scope","limitedToBE","$evalAsync","$setValidity","feature","BoxSelectorReact","react2angular","boxSelectorModule","angular","component","getGroups","groups","useGroups","getEnvironments","query","start","limit","sort","by","order","tagIds","totalCount","response","headers","totalAvailable","getAgentVersions","getEndpoint","endpoint","snapshotEndpoints","snapshotEndpoint","endpointsByGroup","groupId","groupIds","deleteEndpoint","baseUrl","arrayToJson","arr","json2formData","json","formData","FormData","forEach","append","useAgentDetails","versionQuery","useStatus","status","Version","agentVersion","agentSecret","AgentSecret","useEdgeAsyncMode","Edge","AsyncMode","useEnvironment","withError","staleTime","enabled","ENVIRONMENTS_POLLING_INTERVAL","refetchIfAnyOffline","env","Status","EnvironmentStatus","useEnvironmentList","page","pageLimit","refetchInterval","keepPreviousData","environments","EnvironmentCreationTypes","PlatformType","EdgeTypes","EdgeAgentOnDocker","EdgeAgentOnKubernetes","EdgeAgentOnNomad","getPlatformType","envType","isDockerEnvironment","isKubernetesEnvironment","getPlatformTypeName","isNomadEnvironment","isAgentEnvironment","isEdgeEnvironment","isUnassociatedEdgeEnvironment","EdgeID","getDashboardRoute","environment","platform","PortainerError","msg","err","Edition","FeatureState","FeatureId","isBE","process","currentEdition","features","init","edition","selectShow","featureId","isLimitedToBE","promiseSequence","promises","reduce","promise","nextPromise","then","Promise","pluralize","val","word","plural","addPlural","EdgeIndicator","showLastCheckInDate","associated","LastCheckInDate","QueryDate","checkInInterval","n","Math","min","EdgeCheckinInterval","CheckinInterval","getCheckinInterval","useHasHeartbeat","isoDateFromTimestamp","Context","createContext","useUIState","context","useContext","UIStateProvider","service","useLocalStorage","Provider","useDebounce","delay","debouncedValue","setDebouncedValue","timer","setTimeout","clearTimeout","useEnvironmentId","useCurrentStateAndParams","endpointId","keyBuilder","storage","localStorage","get","setValue","set","useMemo","getItem","parse","setItem","UserContext","useAuthorizations","authorizations","forceEnvironmentId","hasAuthorizations","isEnvironmentAdmin","authorizationsArray","EndpointAuthorizations","userEndpointAuthorizations","authorization","Authorized","adminOnlyCE","UserProvider","jwt","setUser","loadUser","jwtDecode","providerState","getUser","useIsAdmin","BASE_URL","configureFDO","configureDevice","deviceId","deviceConfig","createProfile","method","profileFileContent","payload","getProfiles","profiles","getProfile","profileId","profile","deleteProfile","updateProfile","duplicateProfile","configureAMT","getAMTInfo","amtInformation","activateDevice","getDevices","devices","executeDeviceAction","deviceGUID","actionPayload","enableDeviceFeatures","featuresPayload","authorizationResponse","store","listeners","invalidated","getLicenses","axiosError","attachLicense","licenseKeys","failedKeys","getLicenseInfo","removeLicense","resetState","lastLoaded","abs","Date","now","info","listener","subscribe","unsubscribe","LicenseService","licenses","attach","remove","LicenseType","useLicenseInfo","onError","notifyError","useIntegratedLicenseInfo","getNodesCount","nodesCount","isLoadingNodes","isLoadingLicense","licenseInfo","usedNodes","nodes","getStatus","getVersionStatus","useVersionStatus","axiosOrigin","baseURL","agentInterceptor","config","newConfig","portainerAgentTargetHeader","portainerAgentManagerOperation","parseError","defaultErrorParser","resultErr","resultMsg","details","loadProgressBar","interceptors","request","use","localStorageGet","Authorization","agentTargetQueue","agentManagerOperation","agentTargetLastValue","registryAuthenticationHeader","registryAuthentication","setRegistryAuthenticationHeader","headerValue","lastValue","shift","setPortainerAgentTargetHeader","setPortainerAgentManagerOperation","resetAgentHeaders","HttpRequestHelperAngular","confirmWebEditorDiscard","buildTitle","callback","confirmed","confirmDestructiveAsync","ModalTypeIcon","box","bootbox","confirmButtons","applyBoxCSS","confirmWarn","confirmDestructive","confirmImageForceRemoval","cancelRegistryRepositoryAction","confirmDeletion","messageSanitized","sanitize","confirmWithTitle","confirmDetachment","confirmDisassociate","confirmUpdate","confirmRedeploy","cancel","confirmDeletionAsync","confirmImageExport","confirmChangePassword","confirmForceChangePassword","promptAsync","prompt","result","inputType","inputOptions","confirmContainerDeletion","text","selectRegistry","confirmContainerRecreation","cannotPullImage","prepend","css","prop","formCheck","confirmServiceForceUpdate","sanitizedMessage","customizeCheckboxPrompt","confirmStackUpdate","defaultToggle","confirmButtonClass","toggleCheckbox","showCheck","checkbox","addClass","modalType","Warn","toastr","notifyWarning","timeOut","fallbackText","pickErrorMsg","console","closeButton","progressBar","tapToDismiss","closeHtml","success","warning","Notifications","CredentialsForm","selectedProvider","routeOnSuccess","router","useRouter","Form","provider","KaasProvider","GCPCredentialsForm","AWSCredentialsForm","AzureCredentialsForm","APICredentialsForm","getForm","providerTitles","helpLink","providerHelpLinks","createCredentialMutation","useCreateCredentialMutation","credentialNames","useCloudCredentials","c","href","rel","trim","credentials","trimObject","stateService","go","createCredential","credential","deleteCredential","useUpdateCredentialMutation","queryClient","useQueryClient","updateCredential","_","invalidateQueries","useDeleteCredentialMutation","useCloudCredential","getCloudCredential","getCloudCredentials","credentialId","exampleApiKeys","civo","linode","digitalocean","defaultInitialValues","apiKey","isEditing","placeholderText","enableReinitialize","handleSubmit","dirty","noValidate","as","Input","autoComplete","noDuplicateNamesSchema","names","newName","every","accessKeyId","secretAccessKey","clientID","clientSecret","tenantID","subscriptionID","readFileAsArrayBuffer","file","reject","reader","FileReader","readAsArrayBuffer","onload","onerror","jsonKeyBase64","serviceKeyFile","setserviceKeyFile","FileUpload","accept","handleFileUpload","arrayBufferContent","base64Content","arrayBufferToBase64","buffer","binary","bytes","Uint8Array","len","byteLength","fromCharCode","btoa","gke","amazon","azure","obj","sensitiveFields","sensitiveFieldChanged","newCredentialsSensitive","sensitiveValue","getPublicSettings","PublicSettingsViewModel","getSettings","updateSettings","defaultRegistry","subResource","useUpdateSettingsMutation","mutationOptions","withInvalidate","useUpdateDefaultRegistrySettingsMutation","updateDefaultRegistry","getTeams","userId","getUserMemberships","useIsTeamLeader","TeamRole","includeAdministrator","getUsers","filterNonAdministratorUsers","Admin","includeAdministrators","entity","fallbackMessage","queryKeysToInvalidate","all","mergeOptions","acc","createQueryClient","QueryClient","defaultOptions","queries","mutationCache","MutationCache","variable","mutation","handleError","queryCache","QueryCache","errorMeta","RootProvider","StrictMode","QueryClientProvider","client","Component","propNames","Controller","displayName","$element","$q","el","$onChanges","toProps","ReactDOM","Suspense","fallback","$onDestroy","BEFeatureIndicator","showIcon","getFeatureDetails","editor","Edit","upload","Upload","git","FileText","Globe","kubernetes","Kubernetes","compose","DockerCompose","LimitedToBeIndicator","tooltipId","place","delayHide","BoxOption","selectedValue","checked","htmlFor","BoxSelectorItem","beIndicatorTooltipId","business","limited","hide","Code","showCopyButton","useCopy","handleCopy","copiedSuccessfully","DashboardGrid","DashboardItem","DetailsRow","DetailsTable","header","Row","_rect","_rect2","Placeholder","SvgIcons","agent","strokeLinejoin","api","edgeagent","cloudimport","socket","automode","darkmode","lightmode","highcontrastmode","dataflow","dataflow2","arrowsupdown","arrowright","bomb","rx","circlenotch","clockrewind","compress","cubes","custom","expand","filecode","filesignature","fileupload","flask","hacker","heartbeat","laptop","laptopcode","ldap","magic","magicwand","memory","objectgroup","palette","plug","restore","restorewindow","rocket","route","share","tachometer","tag","tag2","tools","usercircle","userlock","aws","docker","dockercompose","ecr","github","gitlab","google","googlecloud","helm","microsoft","nomad","openldap","proget","quay","internal","kubernetes2","SvgIcon","mode","classes","isValidElementType","svgIcon","replace","iconName","split","s","toUpperCase","IconComponent","featherIcons","startsWith","InformationPanel","onDismiss","wrapperStyle","bodyClassName","float","ProgressBar","current","total","percent","floor","inlineStyle","backgroundColor","progressStyle","getLicenseUpgradeURL","licenseType","detail","pluralizeTimeUnit","unit","LicenseInfoPanel","widget","contentSection","buildInfoContent","expiredAt","moment","expiresAt","expiredAtStr","format","remainingDays","diff","startOf","licenseExpiredInfo","styles","buildInfoWidget","buildAlertWidget","enforcedAt","given","currentHour","totalHours","remainingDay","remainingHour","licenseUpgradeURL","remainingTime","trunc","asHours","buildCountdownWidget","company","LicenseInfoPanelAngular","UISref","NavTabs","selectedId","onSelect","selected","active","handleSelect","onKeyDown","tabIndex","LicenseExpirationPanelContainer","setRemainingDays","parseInfo","useRemainingDays","LicenseExpirationPanel","expirationMessage","days","expiringText","Breadcrumbs","breadcrumbs","breadcrumbsArray","Array","isArray","crumb","index","Fragment","renderCrumb","link","linkParams","HeaderContainer","UserMenu","MenuLink","performApiLogout","anchorProps","useSref","HeaderTitle","useHeaderContext","ddExtension","PageHeader","reload","loading","onReload","ItemsPerPageSelector","showAll","MAX_SAFE_INTEGER","v","calculatePageNumber","position","currentPage","paginationRange","totalPages","halfWay","ceil","PageButton","onPageChange","PageInput","useFormik","max","I","step","onKeyPress","match","preventDefault","PageSelector","itemsPerPage","maxSize","directionLinks","boundaryLinks","isInputVisible","pages","collectionLength","rowsPerPage","ellipsesNeeded","pageNumber","generatePagesArray","last","PaginationControls","onPageLimitChange","isPageInputVisible","TextTip","iconClass","multiline","effect","arrowColor","selectedUsers","ViewLoading","Loading","useWidgetContext","WidgetBody","WidgetTitle","Widget","Body","Footer","Title","Taskbar","Button","ariaProps","sizeClass","getIconSize","ButtonGroup","CopyButton","copyText","fadeDelay","displayText","setCopiedSuccessfully","navigator","clipboard","writeText","inputEl","document","createElement","body","appendChild","execCommand","hidden","removeChild","fadeoutTime","buttonProps","AddButton","ColumnVisibilityMenu","columns","useTableContext","isExpanded","column","isVisible","Header","colId","visible","Datatable","titleSettings","dataset","storageKey","renderTableSettings","renderTableActions","settingsStore","disableSelect","getRowId","defaultGetRowId","isRowSelectable","titleOptions","emptyContentLabel","initialTableState","useSearchBarState","searchBarValue","setSearchBarValue","tableInstance","useTable","defaultCanFilter","filterTypes","multiple","initialState","pageSize","sortBy","globalFilter","autoResetSelectedRows","stateReducer","newState","filterValue","setSortBy","columnId","desc","setPageSize","useFilters","useGlobalFilter","useSortBy","usePagination","useRowSelect","emptyPlugin","useRowSelectColumn","selectedFlatRows","getTableProps","getTableBodyProps","headerGroups","prepareRow","gotoPage","setGlobalFilter","pageIndex","tableProps","tbodyProps","selectedItems","row","original","headerGroup","getHeaderGroupProps","rows","emptyContent","renderRow","cells","p","ID","pluginName","ExpandingCell","showExpandArrow","getToggleRowExpandedProps","DefaultFilter","setFilter","preFilteredRows","Set","add","from","MultipleSelectionFilter","filterKey","InnerDatatable","createRowContext","RowProvider","useRowContext","SearchBar","searchValue","setSearchValue","onChangeDebounces","sessionStorage","SelectedRowsCount","Table","Actions","TableActions","TitleActions","TableTitleActions","Container","TableContainer","HeaderCell","TableHeaderCell","SettingsMenu","TableSettingsMenu","TableTitle","TableRow","HeaderRow","TableHeaderRow","Content","TableContent","TableFooter","Children","TableContentOneColumn","getRowProps","TableHeaderSortIcons","sorted","descending","headerProps","canSort","render","onSortClick","isSorted","isSortedDesc","canFilter","renderFilter","SortWrapper","TableColumnHeaderAngular","colTitle","onSortChange","getHeaderProps","disableResizing","toggleSortBy","disableFilters","cell","cellProps","getCellProps","quickActions","TableSettingsMenuAutoRefresh","isCheckVisible","setIsCheckVisible","isEnabled","Checkbox","onTransitionEnd","marginTop","columnIds","hooks","getToggleRowSelectedProps","defaultGetToggleRowSelectedProps","getToggleAllRowsSelectedProps","defaultGetToggleAllRowsSelectedProps","getToggleAllPageRowsSelectedProps","defaultGetToggleAllPageRowsSelectedProps","stateReducers","reducer","useInstance","instance","manualRowSelectedKey","defaultIsRowSelectable","toggleRowSelected","cursor","isSelected","indeterminate","isSomeSelected","toggleAllRowsSelected","isAllRowsSelected","Boolean","selectedRowIds","toggleAllPageRowsSelected","isAllPageRowsSelected","_previousState","actions","setSelected","rowsById","nonGroupedRowsById","selectAll","rowId","selectSubRows","getSubRows","shouldExist","newSelectedRowIds","handleRowById","isGrouped","getHooks","plugins","dispatch","ensurePluginOrder","getRowIsSelected","getAutoResetSelectedRows","useGetLatest","useMountedLayoutEffect","getInstance","makePropGetter","subRows","allChildrenSelected","someSelected","subRow","TableSettingsContext","useTableSettings","getContextType","TableSettingsProvider","defaults","setStorage","setTableSettings","newTableSettings","Function","contextValue","ButtonSelector","readOnly","OptionItem","forwardRef","ref","defaultRef","useRef","resolvedRef","FileUploadField","fileRef","createRef","event","files","click","sizeClassLabel","sizeClassChildren","FormSection","isFoldable","setIsExpanded","FormSectionTitle","Select","item","useInputGroupContext","InputGroup","Addon","ButtonWrapper","InputList","itemBuilder","defaultItemBuilder","renderItem","renderDefaultItem","Item","addLabel","itemKeyGetter","movable","textTip","isAddButtonHidden","newItem","handleChangeItem","handleMove","handleMoveUp","handleMoveDown","handleRemoveItem","checkValidIndex","targetIndex","arrayMove","fromIndex","newItemValue","newItems","DefaultItem","classNamePrefix","Creatable","Switch","SwitchField","labelClass","fieldClass","switchClass","toggleName","statusClass","created","accessor","Cell","canHide","Filter","host","NodeName","sortType","ip","IP","Names","container","linkProps","containerId","nodeName","truncateContainerName","shortName","isOfflineEndpoint","ports","publicUrl","PublicURL","port","private","disableSortBy","hasHealthCheck","ContainerStatus","statusClassName","getClassName","interactive","TRUNCATE_LENGTH","createStore","create","persist","sortableSettings","paginationSettings","hiddenColumns","setHiddenColumns","hiddenColumnsSettings","autoRefreshRate","setAutoRefreshRate","refreshableSettings","setTruncateContainerName","hiddenQuickActions","setHiddenQuickActions","startContainer","urlBuilder","transformResponse","genericHandler","stopContainer","restartContainer","killContainer","pauseContainer","resumeContainer","renameContainer","removeContainer","removeVolumes","force","parseViewModel","Portainer","ResourceControl","Agent","NetworkSettings","Networks","IPAddress","labels","Labels","createStatus","Ports","PublicPort","PrivatePort","StackName","StatusText","Gpus","queryKeys","root","containers","containersQuery","buildDockerSnapshotContainersUrl","buildDockerUrl","buildDockerSnapshotUrl","OsSelector","os","ScriptTabs","edgeKey","edgeId","commands","hideAsyncMode","onPlatformChange","agentDetails","cmd","NomadTokenField","useFormikContext","authEnabled","nomadToken","EdgeScriptSettingsFieldset","isNomadTokenVisible","hideIdGetter","edgeIdGenerator","tlsEnabled","allowSelfSignedCertificates","edgePropertiesFormInitialValues","envVars","EdgeScriptForm","edgeInfo","showOsSelector","boolean","when","is","default","commandsTabs","k8sLinux","useAsyncMode","agentShortVersion","getAgentShortVersion","envVarsTrimmed","idEnvVar","edgeIdVar","selfSigned","swarmLinux","buildDockerEnvVars","buildDefaultEnvVars","standaloneLinux","nomadLinux","buildLinuxNomadCommand","swarmWindows","standaloneWindow","defaultVars","concat","allowSelfSignedCerts","getTemplateVariables","templateStr","Mustache","validateAndParse","intersectVariables","oldVariables","newVariables","oldVariablesWithLabel","renderTemplate","definitions","definition","def","escape","t","GpusList","gpusListValidation","gpuShape","of","GpusListAngular","ReactComponent","FileUploaderController","constructor","$async","uploadInProgress","onFileSelected","onFileSelectedAsync","uploadFile","autoNgTemplateLoaderTemplate1","templateUrl","titleText","titleIcon","tableKey","orderBy","reverseOrder","isRoot","goToParent","browse","rename","download","delete","isUploadAllowed","onFileSelectedForUpload","ROOT_PATH","HostBrowserController","HostBrowserService","FileSaver","ModalService","path","confirmDeleteFile","getRelativePath","getFilesForPath","getFilesForPathAsync","downloadFile","downloadFileAsync","renameFile","renameFileAsync","deleteFile","deleteFileAsync","onFileSelectedForUploadAsync","rootPathRegex","RegExp","parentPath","folder","buildPath","ls","filePath","newFilePath","fileName","downloadData","Blob","saveAs","$onInit","parent","lastIndexOf","onFileUploaded","refreshList","NodeSelectorController","model","AgentService","agents","VolumeBrowserController","volumeId","isUploadEnabled","HttpRequestHelper","VolumeBrowserService","renameAsync","confirmDelete","downloadAsync","up","parentFolder","AgentViewModel","NodeRole","AgentFactory","$resource","API_ENDPOINT_ENDPOINTS","EndpointProvider","StateManager","endpointID","getAgentApiVersion","factory","BrowseFactory","browseGetResponse","responseType","AgentDockerhub","limits","HostFactory","AgentPingFactory","interceptor","resource","responseError","AgentServiceFactory","AgentVersion1","Host","async","getState","agentApiVersion","$promise","hostInfo","HostBrowserServiceFactory","Browse","newPath","CurrentFilePath","NewFilePath","Path","onProgress","AgentPingService","AgentPing","VolumeBrowserServiceFactory","BrowseVersion1","getBrowseService","volumeID","$analyticsProvider","$windowProvider","$window","$get","pageTracking","trackRelativePath","setCustomVariable","varIndex","varName","scope","deleteCustomVariable","trackSiteSearch","keyword","searchCount","trackGoal","goalID","revenue","trackLink","linkType","registerSetUsername","username","registerPageTrack","registerEventTrack","registerExceptionTrack","stack","onStartupAngular","$rootScope","$state","$interval","LocalStorage","SystemService","cfpLoadingBar","$transitions","initialize","defaultTitle","onEnter","currentEndpoint","originalSet","onBefore","PortainerEndpointTypes","$","ajaxSend","jqXhr","jqOpts","hasNoContentType","contentType","setRequestHeader","getJWT","element","innerHTML","colors","hex","head","configApp","$urlRouterProvider","$httpProvider","localStorageServiceProvider","jwtOptionsProvider","$uibTooltipProvider","$compileProvider","cfpLoadingBarProvider","setPrefix","tokenGetter","post","put","patch","Terminal","fit","setTriggers","mouseenter","focus","outsideClick","includeSpinner","parentSelector","latencyThreshold","otherwise","API_ENDPOINT_AUTH","API_ENDPOINT_BACKUP","API_ENDPOINT_CUSTOM_TEMPLATES","API_ENDPOINT_EDGE_GROUPS","API_ENDPOINT_EDGE_JOBS","API_ENDPOINT_EDGE_STACKS","API_ENDPOINT_EDGE_TEMPLATES","API_ENDPOINT_ENDPOINT_GROUPS","API_ENDPOINT_KUBERNETES","API_ENDPOINT_MOTD","API_ENDPOINT_REGISTRIES","API_ENDPOINT_RESOURCE_CONTROLS","API_ENDPOINT_SETTINGS","API_ENDPOINT_STACKS","API_ENDPOINT_STATUS","API_ENDPOINT_SUPPORT","API_ENDPOINT_USERS","API_ENDPOINT_TAGS","API_ENDPOINT_TEAMS","API_ENDPOINT_TEAM_MEMBERSHIPS","API_ENDPOINT_TEMPLATES","API_ENDPOINT_WEBHOOKS","DEFAULT_TEMPLATES_URL","PAGINATION_MAX_ITEMS","APPLICATION_CACHE_VALIDITY","CONSOLE_COMMANDS_LABEL_PREFIX","PREDEFINED_NETWORKS","PORTAINER_FADEOUT","STACK_NAME_VALIDATION_REGEX","TEMPLATE_NAME_VALIDATION_REGEX","BROWSER_OS_PLATFORM","userAgent","NEW_LINE_BREAKER","constant","image","shortImageName","ImageStatus","ContainerQuickActions","taskId","TaskQuickActions","isActive","showQuickActionLogs","showQuickActionInspect","showQuickActionStats","showQuickActionExec","showQuickActionAttach","offlineMode","wrapperState","someOn","isAuthorized","list","dockerQueryKeys","filters","gpus","gpusQuery","getContainerGpus","useContainerGpus","useColumns","isHostColumnVisible","ContainersDatatableActions","isAddActionVisible","selectedItemCount","hasPausedItemsSelected","State","hasStoppedItemsSelected","hasRunningItemsSelected","executeActionOnContainerList","onStartClick","Play","onStopClick","Square","onKillClick","Slash","onRestartClick","RefreshCw","onPauseClick","Pause","onResumeClick","isOneContainerRunning","cleanVolumes","removeSelectedContainers","onRemoveClick","Trash2","Plus","successMessage","errorMessage","notifications","ContainersDatatableSettings","isRefreshVisible","QuickActionsSettings","buildAction","useContainers","getContainers","useStore","Message","TemplateListDropdown","filterOptions","isClearable","TemplateListDropdownAngular","TemplateListSortAngular","onDescending","sortByDescending","sortByButton","iconStyle","componentsModule","stackId","getStackImagesStatus","hidableColumns","col","selectedRows","columnsToHide","allColumns","colInstance","NvidiaCapabilitiesOptions","Option","MultiValueRemove","selectProps","networkId","network","Force","systemNetworks","isSystemNetwork","networkName","NetworkDetailsTable","onRemoveNetworkClicked","allowRemoveNetwork","ipv4Configs","DockerNetworkHelper","IPAM","Config","ipv6Configs","Driver","Scope","Attachable","Internal","getConfigDetails","Subnet","Gateway","IPRange","getAuxiliaryAddresses","AuxiliaryAddresses","configValue","auxiliaryAddresses","NetworkOptionsTable","networkEntries","tableHeaders","NetworkContainersTable","networkContainers","disconnectContainer","IPv4Address","IPv6Address","MacAddress","ContainersDatatable","IsPortainer","autoNgTemplateLoaderTemplate2","autoNgTemplateLoaderTemplate3","autoNgTemplateLoaderTemplate4","autoNgTemplateLoaderTemplate5","autoNgTemplateLoaderTemplate6","autoNgTemplateLoaderTemplate7","containersModule","isAgent","isSwarmManager","Swarm","NodeID","$stateRegistryProvider","register","views","viewsModule","usedGpus","usedAllGpus","gpu","unshift","onChangeValues","newValue","newValues","gpuCmd","selectedGPUs","deviceStr","caps","capabilities","gpuValue","capValue","backspaceRemovesValue","isDisabled","actionMeta","useSpecific","components","setNetworkContainers","networkQuery","getNetwork","useNetwork","deleteNetworkMutation","deleteNetwork","containerInNetworkResponse","Containers","filterContainersInNetwork","Options","reactModule","autoNgTemplateLoaderTemplate8","autoNgTemplateLoaderTemplate9","autoNgTemplateLoaderTemplate10","autoNgTemplateLoaderTemplate11","autoNgTemplateLoaderTemplate12","autoNgTemplateLoaderTemplate13","autoNgTemplateLoaderTemplate14","autoNgTemplateLoaderTemplate15","autoNgTemplateLoaderTemplate16","autoNgTemplateLoaderTemplate17","autoNgTemplateLoaderTemplate18","autoNgTemplateLoaderTemplate19","autoNgTemplateLoaderTemplate20","autoNgTemplateLoaderTemplate21","autoNgTemplateLoaderTemplate22","autoNgTemplateLoaderTemplate23","autoNgTemplateLoaderTemplate24","autoNgTemplateLoaderTemplate25","autoNgTemplateLoaderTemplate26","autoNgTemplateLoaderTemplate27","autoNgTemplateLoaderTemplate28","autoNgTemplateLoaderTemplate29","autoNgTemplateLoaderTemplate30","autoNgTemplateLoaderTemplate31","abstract","EndpointService","checkEndpointStatus","updateEndpoint","updateEndpointStatus","setEndpointID","setEndpointPublicURL","setOfflineModeFromStatus","updateEndpointState","configs","controllerAs","configCreation","dashboard","events","images","imageBuild","imageImport","networks","networkCreation","secrets","secret","secretCreation","services","serviceCreation","serviceLogs","stacks","stackContainer","stackCreation","swarm","swarmVisualizer","task","taskLogs","templates","volumes","volume","volumeBrowse","volumeCreation","fileContent","ContainerCapabilitiesController","oldCapabilities","createOnChangeHandler","capability","allowed","$doCheck","capabilitiesOnChange","cap","ctrl","editModel","save","maximumRetryCount","updateRestartPolicy","agentCount","catch","removeAction","refreshCallback","availableNetworks","joinNetworkAction","joinNetworkActionInProgress","leaveNetworkActionInProgress","leaveNetworkAction","$controller","DatatableService","extend","expandedItems","expandAll","expandItem","expanded","itemCanExpand","Expanded","Highlighted","GlobalIPv6Address","hasExpandableItems","setDefaults","prepareTableFromDataset","storedOrder","getDataTableOrder","reverse","textFilter","getDataTableTextFilters","onTextFilterChange","storedFilters","getDataTableFilters","open","storedSettings","getDataTableSettings","headerset","showHostColumn","downloadAction","forceRemoveAction","exportInProgress","showUsedImages","showUnusedImages","applyFilters","ContainerCount","onstateFilterChange","filtered","setDataTableFilters","onSettingsRepeaterChange","showIpAddressColumn","accessToNodeDetails","directive","restrict","transclude","parentCtrl","allowCheckbox","allowExpand","RCO","NetworkHelper","disableRemove","allowSelection","Subs","filteredDataSet","serviceId","agentProxy","showTaskLogsButton","showQuickActionConsole","display","onStateFilterChange","availableStateFilters","showUpdateAction","showAddAction","ServiceService","ServiceHelper","WebhookService","scaleAction","serviceToConfig","Model","Mode","Replicated","Replicas","update","Scale","ReplicaCount","actionCount","webhooks","deleteWebhook","finally","updateAction","pullImage","forceUpdateService","forceUpdateServices","showStackColumn","notAutoFocus","endpointPublicUrl","expandPreviouslyExpandedItem","storedExpandedItems","storedId","columnVisibility","updated","onColumnVisibilityChange","setColumnVisibilitySettings","splice","setDataTableExpandedItems","expandItems","expandedItemCount","onDataRefresh","getDataTableExpandedItems","storedColumnVisibility","getColumnVisibilitySettings","showSlotColumn","showLogsButton","showBrowseAction","showUsedVolumes","showUnusedVolumes","dangling","hostDetails","engineDetails","disks","refreshUrl","browseUrl","hostFeaturesEnabled","engine","isBrowseEnabled","onSave","availability","originalValue","removeLabel","onChangedLabels","updateLabel","originalKey","NodeService","LabelHelper","managerAddress","hasChanges","nodeLabels","updateNodeLabels","updateNodeAvailability","saveChanges","originalNode","Availability","fromKeyValueToLabelHash","updateNode","cancelChanges","porImageRegistryContainerController","DockerHubService","pullRateLimits","registryId","fetchRateLimits","EndpointHelper","checkRateLimits","setValidity","remaining","isDockerHubRegistry","isAuthenticated","rateLimitExceeded","porImageRegistryController","ImageHelper","RegistryService","ImageService","SettingsService","onRegistryChange","onImageChange","registries","DockerHubViewModel","$watch","Registry","Image","isKnownRegistry","registry","URL","getRegistryURL","RegistryTypes","Gitlab","ProjectPath","prepareAutocomplete","registryImages","reg","imagesWithoutKnown","imageContainsURL","availableImages","UseRegistry","displayedRegistryURL","showDefaultRegistry","namespace","a","b","localeCompare","showAdvancedMode","publicSettings","DefaultRegistry","Hide","getUniqueTagListFromImages","reloadRegistries","loadImages","pullWarning","inputClass","form","displayTimestamps","logCollectionChange","sinceTimestamp","lineCount","resourceName","availableSinceDatetime","subtract","copySupported","supported","logCollection","autoScroll","wrapLines","search","filteredLogs","selectedLines","handleLogsCollectionChange","handleLogsWrapLinesChange","handleDisplayTimestampsChange","copy","log","line","show","fadeOut","copySelection","clearSelection","selectLine","idx","downloadLogs","applicationState","NetworkService","Authentication","requiredNodeSelection","DatatableState","requiredConfigSelection","SelectedNetworkConfig","apiVersion","ConfigOnly","MacvlanFormData","ParentNetworkCard","VolumesCIFSFormData","useCIFS","serverAddress","versions","versionsNumber","password","VolumesNFSFormData","useNFS","mountPoint","includeString","str","hash","charCodeAt","strToHash","hashToHexColor","labelStyle","Dead","Ghost","Running","Paused","RepoTags","ConstraintsHelper","availableNodes","node","matchesServiceConstraints","tasks","runningTasks","DesiredState","nodeId","Hostname","createdBy","fullName","versionIdx","flattenConfig","ConfigID","ConfigName","FileName","File","Uid","UID","Gid","GID","configConfig","ConstraintModel","op","patterns","matchesConstraint","constraint","matchesLabel","extractValue","pop","extractCustomLabelKey","baseLabelKey","transformConstraints","constraints","nodeHostname","nodeRole","engineLabels","Constraints","EngineLabels","portPattern","parsePort","parsePortRange","portRange","stringPorts","intPorts","isValidPortRange","createPortRange","portRangeText","hostIp","colonIndex","substr","startPort","endPort","helper","splitargs","elem","HostConfig","NetworkMode","NetworkingConfig","EndpointsConfig","ExposedPorts","binds","Mounts","mount","Source","containerPath","Destination","RW","Binds","Volumes","portBindings","portBinding","containerPort","hostPort","containerPortRange","startHostPort","endHostPort","hostAndPort","hostPortRange","bindKey","protocol","HostIp","HostPort","portBindingKeys","portBindingKeysByProtocol","portKey","portBindingKeysByHostIp","sortedPortBindingKeys","previousHostPort","previousContainerPort","portKeySplit","bindingHostPort","binding","buildImageFullURI","imageModel","ensureTag","slash","buildImageURIForGitLab","Quay","UseOrganisation","OrganisationName","buildImageURIForQuay","buildImageURIForOtherRegistry","buildImageFullURIWithRegistry","defaultTag","isValidTag","createImageConfigForContainer","fromImage","getImagesNamesForDownload","removeDigestFromRepository","repository","ControlAvailable","fromLabelHashToKeyValue","added","labelKV","FOREGROUND_COLORS_BY_ANSI","black","x256","red","green","yellow","blue","magenta","cyan","white","brightBlack","brightRed","brightGreen","brightYellow","brightBlue","brightMagenta","brightCyan","brightWhite","BACKGROUND_COLORS_BY_ANSI","bgBlack","bgRed","bgGreen","bgYellow","bgBlue","bgMagenta","bgCyan","bgWhite","bgBrightBlack","bgBrightRed","bgBrightGreen","bgBrightYellow","bgBrightBlue","bgBrightMagenta","bgBrightCyan","bgBrightWhite","stripEscapeCodes","logs","cssColorFromRgb","rgb","r","g","extendedColorForToken","token","colorMode","formatLogs","skipHeaders","stripHeaders","tokens","tokenize","formattedLogs","foregroundColor","spans","tokenLines","getIPV4Configs","nodeToConfig","Spec","flattenSecret","SecretID","SecretName","secretConfig","Tasks","otherServicesTasks","ServiceId","ServiceName","TaskTemplate","UpdateConfig","EndpointSpec","keyValuePreferences","preferences","preference","strategy","Spread","SpreadDescriptor","keyValueConstraints","operator","operatorIndices","indexEquals","getOperator","humanDuration","nanos","matches","duration","asMilliseconds","conversionFromNano","logOptions","keyValueLogDriverOpts","ipHostEntries","entry","keyValue","hostname","ContainerId","optionArray","mounts","j","rejection","Snapshots","SnapshotRaw","Images","Info","ConfigViewModel","CreatedAt","UpdatedAt","Index","Data","decodeURIComponent","atob","b64DecodeUnicode","statusText","ContainerViewModel","Created","ImageID","Command","Checked","ContainerStatsViewModel","read","preread","memory_stats","privateworkingset","MemoryUsage","MemoryCache","NumProcs","num_procs","isWindows","stats","usage","cache","PreviousCPUTotalUsage","precpu_stats","cpu_usage","total_usage","PreviousCPUSystemUsage","system_cpu_usage","CurrentCPUTotalUsage","cpu_stats","CurrentCPUSystemUsage","CPUCores","percpu_usage","online_cpus","blkio_stats","io_service_bytes_recursive","readData","BytesRead","writeData","BytesWrite","noIOdata","ContainerDetailsViewModel","Args","capDesc","SETPCAP","MKNOD","AUDIT_WRITE","CHOWN","NET_RAW","DAC_OVERRIDE","FOWNER","FSETID","KILL","SETGID","SETUID","NET_BIND_SERVICE","SYS_CHROOT","SETFCAP","SYS_MODULE","SYS_RAWIO","SYS_PACCT","SYS_ADMIN","SYS_NICE","SYS_RESOURCE","SYS_TIME","SYS_TTY_CONFIG","AUDIT_CONTROL","MAC_ADMIN","MAC_OVERRIDE","NET_ADMIN","SYSLOG","DAC_READ_SEARCH","LINUX_IMMUTABLE","NET_BROADCAST","IPC_LOCK","IPC_OWNER","SYS_PTRACE","SYS_BOOT","LEASE","WAKE_ALARM","BLOCK_SUSPEND","ContainerCapabilities","ContainerCapability","EventViewModel","Time","time","Details","eventAttr","Actor","Attributes","Action","extra","hasColon","exitCode","createEventDetails","ImageViewModel","Tag","Repository","RepoDigests","digest","VirtualSize","ImageBuildModel","hasError","buildLogs","stream","errorDetail","ImageDetailsViewModel","Parent","DockerVersion","Os","Architecture","Author","Cmd","Entrypoint","ContainerConfig","Env","ImageLayerViewModel","Order","CreatedBy","Size","Comment","Tags","NetworkViewModel","Ingress","ConfigFrom","NodeViewModel","Description","Engine","PlatformArchitecture","Platform","PlatformOS","OS","CPUs","Resources","NanoCPUs","Memory","MemoryBytes","EngineVersion","Plugins","Addr","ManagerStatus","Leader","Reachability","ManagerAddr","PluginViewModel","Enabled","PorImageRegistryModel","SecretViewModel","ServiceViewModel","allTasks","ContainerSpec","Limits","LimitNanoCPUs","LimitMemoryBytes","Reservations","ReservationNanoCPUs","ReservationMemoryBytes","RestartPolicy","RestartCondition","Condition","RestartDelay","Delay","RestartMaxAttempts","MaxAttempts","RestartWindow","Window","LogDriver","LogDriverName","LogDriverOpts","Placement","Preferences","Platforms","containerSpec","ContainerLabels","Arguments","Dir","User","Groups","TTY","OpenStdin","ReadOnly","StopSignal","StopGracePeriod","HealthCheck","Hosts","DNSConfig","Secrets","Configs","Endpoint","Runtime","VirtualIPs","UpdateParallelism","Parallelism","UpdateDelay","UpdateFailureAction","FailureAction","UpdateOrder","RollbackConfig","EditName","SwarmViewModel","TaskViewModel","Updated","Slot","ServiceID","NodeId","ContainerID","VolumeViewModel","Mountpoint","ResourceID","buildImage","ignoreLoadingBar","jsonObjectsToArrayHandler","buildImageOverride","commitContainer","repo","ContainersInterceptor","logsHandler","top","exec","inspect","prune","resize","h","w","ImagesInterceptor","history","insert","imageGetResponse","deleteImageHandler","NetworksInterceptor","connect","disconnect","isJSON","jsonString","fromJson","rollback","InfoInterceptor","VersionInterceptor","since","until","auth","dataUsage","VolumesInterceptor","Build","FileUploadService","deferred","defer","remote","dockerfile","content","configId","ContainerServiceFactory","LogHelper","$timeout","withEndpointId","updateLimits","MemoryReservation","MemorySwap","NanoCpus","timeout","restartPolicy","maximumRetryCounts","MaximumRetryCount","configuration","createContainer","execConfig","stdout","stderr","timestamps","tail","parameters","containerStats","func","Exec","execId","ContainerService","imageId","withUsage","layers","imageLayer","registryModel","authenticationDetails","encodedCredentials","imageConfiguration","ignoreErrors","pullImageAndIgnoreErrors","pullImageAndAcknowledgeErrors","forceRemoval","Network","networkConfiguration","localNetworks","swarmNetworks","swarmAttachableNetworks","filteredNetworks","aliases","EndpointConfig","Aliases","Node","rawNode","Plugin","servicePlugins","systemOnly","pluginType","pluginVersion","system","aggregatedPlugins","systemPlugins","plugin","Interface","Types","volumePlugins","networkPlugins","loggingPlugins","Secret","secretId","Service","TaskService","ResourceControlService","serv","SystemEndpoint","Task","Volume","VolumeHelper","driver","driverOptions","DriverOpts","createDriverOptions","volumeConfiguration","volumeConfigurations","createVolumeQueries","createVolume","ConfigsController","ConfigService","removeActionAsync","getConfigs","getConfigsAsync","CreateConfigController","$transition$","FormValidator","AccessControlData","AccessControlFormData","ConfigContent","formValidationError","isEditorDirty","editorUpdate","createAsync","onbeforeunload","displayCodeEditor","labelName","labelValue","prepareLabelsConfig","prepareConfigData","configData","unescape","encodeURIComponent","prepareConfiguration","validateForm","validateAccessControl","userDetails","getUserDetails","onUpdateResourceControlSuccess","removeConfig","ContainerHelper","ExecService","SidebarService","term","states","freeze","disconnected","connecting","connected","restcall","termWidth","cols","initTerm","resizeRestCall","resizefun","WebSocket","onopen","on","send","terminal_container","getElementById","setOption","onresize","$apply","isSidebarOpen","onmessage","write","onclose","loaded","containerCommands","$on","connectAttach","attachId","location","origin","baseHref","k","resizeTTY","connectExec","isCustomCommand","customCommand","AttachStdin","AttachStdout","AttachStderr","Tty","commandStringToArray","createExec","close","dispose","autoconnectAttachView","initView","containerLabels","imageOS","handleIsCustomCommandChange","$filter","PluginService","prepareResources","MemoryLimit","memoryLimit","round","toFixed","memoryReservation","CpuLimit","oldContainer","findCurrentContainer","actionInProgress","alwaysPull","RegistryModel","stopAndRenameContainer","createNewContainer","createContainerWebhook","connectToExtraNetworks","removeOldContainer","onCreationProcessFail","EnableWebhook","registryID","createWebhook","restoreOldContainerName","restoreError","stopContainerIfNeeded","CmdMode","prepareCmd","EntrypointMode","prepareEntrypoint","NetworkContainer","containerName","networkMode","IPAMConfig","IPv4","IPv6","fromContainer","dnsServers","DnsPrimary","DnsSecondary","Dns","ExtraHosts","prepareNetworkConfig","imageConfig","prepareImageConfig","preparePortBindings","PortBindings","Console","openStdin","tty","prepareConsole","envVarsUtils","prepareEnvironmentVariables","prepareVolumes","prepareLabels","Devices","pathOnHost","pathInContainer","PathOnHost","PathInContainer","CgroupPermissions","prepareDevices","logOpts","LogConfig","opt","prepareLogDriver","notAllowed","getCapName","CapAdd","CapDrop","prepareCapabilities","sysctls","Sysctls","sysctl","prepareSysctls","gpuOptions","GPU","existingDeviceRequest","DeviceRequests","deviceRequest","Count","DeviceIDs","Capabilities","prepareGPUOptions","createAndStartContainer","newContainer","newContainerId","extraNetworks","connectionPromises","connectContainer","checkIfAdminOrEndpointAdmin","settingUnlimitedResources","pullImageValidity","onAlwaysPullChange","handlePublishAllPortsChange","PublishAllPorts","handleAutoRemoveChange","AutoRemove","handlePrivilegedChange","Privileged","handleInitChange","Init","onEnableWebhookChange","handleEnvVarChange","refreshSlider","$broadcast","onImageNameChange","setPullImageValidity","validity","addVolume","removeVolume","addPortBinding","removePortBinding","addExtraHost","removeExtraHost","addDevice","removeDevice","onGpuChange","addSysctl","removeSysctl","addLogDriverOpt","removeLogDriverOpt","fromContainerMultipleNetworks","resetNetworkConfig","handleResourceChange","showDeviceMapping","SecuritySettings","allowDeviceMappingForRegularUsers","areContainerCapabilitiesEnabled","allowContainerCapabilitiesForRegularUsers","availableVolumes","vol1","vol2","runningContainers","gpuUseAll","gpuUseList","logConfig","AccessControlEnabled","configFromContainer","commandArrayToString","sortAndCombinePorts","loadFromContainerPortBindings","loadFromContainerVolumes","netContainer","firstNetwork","extraHosts","loadFromContainerNetworkConfig","l","loadFromContainerLabels","dev","device","loadFromContainerDevices","loadFromContainerDeviceRequests","retrievePorRegistryModelFromRepository","loadFromContainerResources","hasCapability","loadFromContainerCapabilities","loadFromContainerSysctls","availableRuntimes","Runtimes","sliderMaxCpu","NCPU","sliderMaxMemory","MemTotal","allowBindMounts","allowBindMountsForRegularUsers","allowPrivilegedMode","allowPrivilegedModeForRegularUsers","allowSysctl","AllowSysctlSettingForRegularUsers","loggingDrivers","availableLoggingDrivers","Commit","WebhookHelper","activityTime","displayRecreateButton","displayWebhookButton","WebhookExists","WebhookURL","WebhookID","commitInProgress","recreateContainerInProgress","joinNetworkInProgress","leaveNetworkInProgress","disabledWebhookButton","webhookExists","onWebhookChange","updateWebhook","recreate","copyWebhook","returnWebhookUrl","Token","computeDockerGPUCommand","gpuStr","edit","newContainerName","StartedAt","utc","humanize","FinishedAt","portMapping","mapping","inSwarm","autoRemove","admin","allowHostNamespaceForRegularUsers","allowSysctlSettingForRegularUsers","settingRestrictsRegularUsers","webhook","executeContainerAction","commitContainerAsync","stop","kill","pause","unpause","restart","containerLeaveNetwork","containerJoinNetwork","commit","confirmRemove","cleanAssociatedVolumes","isRunning","networksNames","createContainerData","oldResourceControl","newResourceControl","duplicateResourceControl","recreateContainer","DisplayTextView","containerInfo","stopRepeater","repeater","isDefined","setUpdateRepeater","refreshRate","unix","changeLogCollection","logCollectionStatus","$document","ChartService","updateNetworkChart","chart","rx_bytes","tx","tx_bytes","UpdateNetworkChart","updateMemoryChart","UpdateMemoryChart","updateIOChart","noIOData","UpdateIOChart","updateCPUChart","possIntervals","parseFloat","valueOf","windowsCpuUsage","calculateCPUPercentWindows","cpuPercent","cpuDelta","systemDelta","calculateCPUPercentUnix","UpdateCPUChart","networkChart","cpuChart","memoryChart","ioChart","containerTop","processInfo","networkStatsUnavailable","ioStatsUnavailable","changeUpdateRepeater","ready","networkChartCtx","CreateNetworkChart","cpuChartCtx","CreateCPUChart","memoryChartCtx","CreateMemoryChart","ioChartCtx","CreateIOChart","startChartUpdate","initCharts","runningContainersFilter","stoppedContainersFilter","healthyContainersFilter","unhealthyContainersFilter","ImagesTotalSize","imagesTotalSize","VolumeService","StackService","TagService","dismissInformationPanel","showStacks","showEnvUrl","buildGpusStr","gpuUseSet","gpusAvailable","has","exist","gpuAvailable","_str","endpointMode","allowStackManagementForRegularUsers","shouldShowStacks","tags","containerStatusComponent","imagesTotalSizeComponent","volumeCount","networkCount","serviceCount","stackCount","gpuInfoStr","gpuFreeStr","endpointTags","TagIds","DockerFeaturesConfigurationController","$analytics","limitedFeature","enableHostManagementFeatures","allowVolumeBrowserForRegularUsers","disableBindMountsForRegularUsers","disablePrivilegedModeForRegularUsers","disableHostNamespaceForRegularUsers","disableStackManagementForRegularUsers","disableDeviceMappingForRegularUsers","disableContainerCapabilitiesForRegularUsers","disableSysctlSettingForRegularUsers","autoUpdateSettings","timeZone","onChangeField","onToggleAutoUpdate","onChangeEnableHostManagementFeatures","onChangeAllowVolumeBrowserForRegularUsers","onChangeDisableBindMountsForRegularUsers","onChangeDisablePrivilegedModeForRegularUsers","onChangeDisableHostNamespaceForRegularUsers","onChangeDisableStackManagementForRegularUsers","onChangeDisableDeviceMappingForRegularUsers","onChangeDisableContainerCapabilitiesForRegularUsers","onChangeDisableSysctlSettingForRegularUsers","field","isContainerEditDisabled","securitySettings","changeWindow","ChangeWindow","eventTrack","StartTime","EndTime","checkAgent","jobs","versionDetails","releaseVersion","ApiVersion","rootDirectory","DockerRootDir","storageDriver","loggingDriver","LoggingDriver","buildEngineDetails","arch","OSType","OperatingSystem","kernelVersion","KernelVersion","totalCPU","totalMemory","agentHostInfo","PCIDevices","PhysicalDisks","BuildImageController","BuildService","BuildType","activeTab","ImageNames","Valid","Unique","UploadFile","DockerFileContent","checkName","parts","repositoryRegExp","addImageName","removeImageName","imageNames","buildType","dockerfilePath","buildImageFromUpload","buildImageFromURL","dockerfileContent","buildImageFromDockerfileContent","buildImageBasedOnBuildType","validImageNames","cm","getValue","uiCanExit","RegistryModalService","sortReverse","toggleLayerCommand","layerId","toggleClass","toggle","tagImage","pushTag","registryModal","pushImage","pullTag","removeTag","deleteImage","removeImage","exportImage","downloadImages","loadRegistriesForDropdown","getImages","pullRateValid","confirmRemovalAction","isAuthorizedToDownload","uploadImage","imageIds","checkAuxiliaryAddress","excludedIP","gateway","prepareAuxiliaryAddresses","ipamConfig","ipFormValues","auxAddress","createNetwork","managerOperation","DriverOptions","IPV4","IPV6","Macvlan","availableNetworkDrivers","CheckDuplicate","EnableIPv6","addDriverOption","removeDriverOption","addIPV4AuxAddress","addIPV6AuxAddress","removeIPV4AuxAddress","IPV4AuxiliaryAddressesError","removeIPV6AuxAddress","IPV6AuxiliaryAddressesError","checkIPV4AuxiliaryAddress","checkIPV6AuxiliaryAddress","validIPV4","validIPV6","onChangeInternal","enable","onChangeAttachable","prepareIPAMConfiguration","prepareDriverOptions","creationContext","selectedNetworkConfig","modifyNetworkConfigurationForMacvlanConfigFrom","selectedNodes","getNetworks","nonSwarmNetworks","grouped","getRole","groupSwarmNetworksManagerNodesFirst","IPV4Configs","IPV6Configs","$stateParams","transformPlugins","pluginsList","fetchJobs","buildHostDetails","nodeDetails","buildNodeDetails","DockerRegistryAccessController","GroupService","RoleService","filterUsers","updateRegistryAccess","registryEndpointAccesses","endpointUsers","UserAccessPolicies","endpointTeams","TeamAccessPolicies","endpointGroupUsers","endpointGroup","endpointGroupTeams","userOrTeam","userAccess","UserAccessViewModel","teamAccess","TeamAccessViewModel","entityAccess","roleId","RoleId","roles","isStandardOrReadOnlyRole","Authorizations","redirectIfUnauthorized","viewReady","RegistryAccesses","group","GroupId","SecretService","encodeSecret","handleEncodeSecretChange","secretConfiguration","prepareSecretData","removeSecret","getSecrets","ConfigHelper","SecretHelper","commandToArray","EntryPoint","WorkingDir","ExtraNetworks","HostsEntries","PlacementConstraints","PlacementPreferences","CpuReservation","MemoryLimitUnit","MemoryReservationUnit","Webhook","handleWebHookChange","PublishedPort","TargetPort","Protocol","PublishMode","addExtraNetwork","removeExtraNetwork","addHostsEntry","removeHostsEntry","Target","addConfig","checkIfConfigDuplicated","addSecret","overrideTarget","checkIfSecretDuplicated","addPlacementConstraint","removePlacementConstraint","addPlacementPreference","removePlacementPreference","addContainerLabel","removeContainerLabel","$invalid","$error","volumesAreValid","input","rcPromise","webhookPromise","createNewService","Global","prepareSchedulingConfig","preparePortsConfig","prepareCommandConfig","prepareEnvConfig","volumeObject","VolumeOptions","DriverConfig","prepareNetworks","hostsEntries","host_ip","keyVal","prepareHostsEntries","translateHumanDurationToNanos","prepareUpdateConfig","prepareConfigConfig","prepareSecretConfig","translateKeyValueToPlacementConstraints","translateKeyValueToPlacementPreferences","preparePlacementConfig","prepareResourcesCpuConfig","prepareResourcesMemoryConfig","prepareRestartPolicy","prepareLogDriverConfig","checkIfAllowedBindMounts","availableSecrets","availableConfigs","maxCpus","maxMemory","initSlidersMaxValuesBasedOnNodeData","$location","$anchorScroll","TaskHelper","updateInProgress","deletionInProgress","rollbackInProgress","lastVersion","originalService","previousServiceValues","buildChanges","ServiceLabels","EnvironmentVariables","ServiceContainerLabels","Editable","ServiceSecrets","ServiceConfigs","translateHostnameIPToHostsEntries","ServiceMounts","ServiceConstraints","ServicePreferences","translateKeyValueToLogDriverOpts","isUpdating","transformResources","v1","v2","translateLogDriverOptsToKeyValue","translateConstraintsToKeyValue","translatePreferencesToKeyValue","translateHostsEntriesToHostnameIP","translateServiceArrays","translateNanosToHumanDuration","transformDurations","serviceNetworks","ingressNetwork","addr","webhookID","webhookURL","associateContainerToTask","associateTasksToService","initialRegistryID","override","updateServiceArray","goToItem","addEnvironmentVariable","onChangeEnvVars","orgEnv","orgVar","serviceConfig","updateConfig","newSecret","filename","serviceSecret","updateContainerLabel","addMount","removeMount","onChangeMountType","updateMount","addNetwork","removeNetwork","removedElement","updateNetwork","updatePlacementConstraint","updatePlacementPreference","addPublishedPort","updatePublishedPort","removePortPublishedBinding","updateLogDriverOpt","updateLogDriverName","updateHostsEntry","updateWebhookRegistryId","newRegistryID","registryChanged","updateServiceWebhook","attribute","elements","originalImage","currentImage","mountsAreValid","rollbackService","updateService","removeService","updateServiceAttribute","filterNetworks","serviceNetwork","getServices","extractNodeInfo","cpu","getNodes","CPU","processTotalCPUAndMemory","systemStatus","SystemStatus","node_count","node_offset","extractNodesInfo","extractSwarmInfo","prepareVisualizerData","visualizerData","assignServiceInfo","assignTasksToNode","ShowInformationPanel","DisplayOnlyRunningTasks","DisplayNodeLabels","handleChangeDisplayOnlyRunningTasks","changeDisplayOnlyRunningTasks","handleChangeDisplayNodeLabels","changeDisplayNodeLabels","changeShowInformationPanel","storeSwarmVisualizerSettings","showInfoPanel","getSwarmVisualizerSettings","displayOnlyRunningTasks","displayNodeLabels","loadState","BrowseVolumeController","NFSData","CIFSData","availableVolumeDrivers","onUseNFSChange","onUseCIFSChange","prepareNFSConfiguration","versionNumber","prepareCIFSConfiguration","createVolumeConfiguration","containerFilter","isCioDriver","volumeData","getVolumeDataFromContainer","containersUsingVolume","getVolumes","endpointProvider","endpointRole","attached","isVolumeUsedByAService","DataTable","integratedInfo","associateMutation","ids","associateDevice","licenseOverused","originalRow","selectColumnWidth","handleAssociateDevice","handleSortChange","WaitingRoomViewAngular","edgeDevice","edgeDeviceUntrusted","types","edgeStackId","collectLogs","deleteLogs","Accept","contentDispositionHeader","useLogsStatus","getLogsStatus","LogsActions","logsStatusQuery","collectLogsMutation","downloadLogsMutation","deleteLogsMutation","useDeleteLogsMutation","collecting","getStatusText","InternalProvider","toggleIsLoading","PowerState","PowerStateCode","connectionStatus","powerState","parsePowerState","On","SleepLight","SleepDeep","Sleep","OffHard","OffSoft","OffHardGraceful","Off","Hibernate","PowerCycle","ActionsMenuTitle","DeviceAction","ActionsMenu","kvmLinkProps","guid","deviceName","handleDeviceActionClick","PowerOn","PowerOff","Restart","AMTDevicesDatatable","isError","useAMTDevices","userMessage","DeployType","EdgeDevicesDatatableActions","isOpenAMTEnabled","isFDOEnabled","setLoadingMessage","showWaitingRoomLink","onDeleteEdgeDeviceClick","onAddNewDeviceClick","onAssociateOpenAMTClick","FDO","MANUAL","selectedEnvironment","EdgeDevicesDatatableSettings","showExpandedRow","isOpenAmtEnabled","AMTDeviceGUID","groupName","environmentRoute","browseLinkProps","snapshotLinkProps","EdgeDevicesDatatable","isFdoEnabled","mpsServer","onChangeSearch","pagination","onChangePagination","autoResetExpanded","useExpanded","columnDef","someDeviceHasAMTActivated","groupsById","EdgeDevicesDatatableContainer","Loader","setPagination","setSearch","debouncedSearchValue","prev","NetworksTable","networksList","VolumesTable","LabelsRow","labelList","StatusBadge","loadingMessage","groupsQuery","EnableEdgeComputeFeatures","fdoConfiguration","TrustOnFirstConnect","openAMTConfiguration","environmentQuery","edgeStackQuery","getEdgeStack","getEnvironmentSnapshotContainers","useDockerSnapshotContainers","containerQuery","useDockerSnapshotContainer","edgeStackModule","tab","AssociatedEndpointsDatatableController","PaginationService","extendGenericController","totalFilteredDataset","paginationChanged","changePaginationLimit","updateKey","currentValue","isFirstChange","newPageNumber","setPaginationLimit","paginatedItemLimit","setDataTableTextFilters","retrievePage","endpoints","totalFilteredDataSet","items","EdgeJobFormController","scheduleValues","displayed","cron","datetime","scheduleValue","cronMethod","cronRegex","associateEndpoint","dissociateEndpoint","onChangeModel","defaultTime","CronExpression","cronToDatetime","Recurring","FileContent","date","minutes","hours","month","formAction","Endpoints","strings","addLabelAction","removeLabelAction","formActionLabel","EdgeJobResultsDatatableController","autoRefresh","onCollectLogsClick","onDatasetChange","anyCollecting","LogsStatus","onDownloadLogsClick","onClearLogsClick","EdgeSTackDeploymentTypeSelectorAngular","hasDockerEndpoint","hasKubeEndpoint","hasNomadEndpoint","deploymentOptions","NomadIcon","EdgeStackEndpointsDatatableController","paginationChangedAsync","statusMap","getEndpointStatus","endpointsStatus","endpointStatusLabel","endpointStatusError","EdgeStackStatusController","stackStatus","aggregateStatus","ok","acknowledged","EditEdgeStackFormController","EdgeStackService","fileContents","RegistryOptions","matchRegistry","selectedRegistry","dryrunFromFileContent","clearRegistries","getRegistriesOptions","onChangeGroups","onChangeFileContent","onChangeComposeConfig","onChangeNomadHcl","onChangeKubeManifest","onChangeDeploymentType","removeLineBreaks","checkRegistries","Registries","dryrun","dryrunName","StackFileContent","DeploymentType","createStackFromFileContent","EdgeGroups","checkEndpointTypes","isFormValid","validateEndpointsForDeployment","edgeGroups","flatMap","EndpointTypes","selectValidDeploymentType","validTypes","oldValue","deploymentType","submitAction","EdgeGroupFormController","getDynamicEndpointsAsync","getDynamicEndpoints","onChangeTags","Dynamic","tagsPartialMatch","PartialMatch","pageType","EdgeGroupsDatatableController","HasEdgeStack","EdgeJobResultsFactory","logFile","clearLogs","EdgeJobsFactory","EdgeJobService","EdgeJobs","EdgeJobResults","edgeJobId","ScheduleCreateRequest","createSchedule","ScheduleUpdateRequest","EdgeStacks","createEdgeStack","repositoryOptions","RepositoryURL","RepositoryReferenceName","FilePathInRepository","RepositoryAuthentication","RepositoryUsername","RepositoryPassword","EdgeTemplateService","EdgeTemplates","edgeTemplates","fetch","stackFile","CreateEdgeGroupController","EdgeGroupService","createGroup","createGroupAsync","endpointGroups","EdgeGroupsController","EditEdgeGroupController","updateGroup","updateGroupAsync","CreateEdgeJobViewController","createEdgeJob","createEdgeJobFromFileContent","createEdgeJobFromFileUpload","EdgeJobController","showEditorTab","updateAsync","downloadLogsAsync","collectLogsAsync","clearLogsAsync","refresh","refreshAsync","showEditor","edgeJob","updateEdgeJob","logFileName","associateEndpointsToResults","results","EndpointId","jobResults","endpointIds","oldFileContent","getScriptFile","EdgeJobsViewController","deleteJobsAsync","deleteJobs","edgeJobs","CreateEdgeStackViewController","StackFile","ComposeFilePathInRepository","Method","StackType","createStack","createStackByMethod","createStackFromFileUpload","createStackFromGitRepository","buildAnalyticsProperties","methodLabel","templateName","selectedTemplate","noGroups","checkIfEndpointTypes","formIsInvalid","createEdgeStackView","DockerComposeFormController","methodOptions","onChangeFile","onChangeTemplate","onChangeMethod","onChangeFormValues","edgeTemplate","edgeStacksDockerComposeForm","PrivateRegistryViewAngular","forminvalid","setChecked","defaultChecked","kubeManifestForm","NomadHclForm","kubeDeployDescription","KubeManifestFormController","NomadHclFormController","EdgeStacksViewController","getStacks","EditEdgeStackViewController","logEnvironmentIds","deployStack","deployStackAsync","getPaginatedEndpoints","getPaginatedEndpointsAsync","stackEndpointIds","filterStackEndpoints","originalFileContent","updateStack","lastId","createModule","i18n","Backend","LanguageDetector","initReactI18next","debug","fallbackLng","interpolation","escapeValue","AccessControlForm","hideTitle","accessControlEnabled","PortsMappingField","azureErrorParser","subscriptions","subscription","subscriptionId","resourceGroups","resourceGroup","resourceGroupName","containerGroups","containerGroup","containerGroupName","getContainerInstanceProvider","resourceTypes","locations","buildSubscriptionsUrl","buildResourceGroupUrl","buildContainerGroupUrl","useResourceGroups","useQueries","queryKey","queryFn","getResourceGroups","q","useSubscriptions","getSubscriptions","getSubscriptionResourceGroups","getSubscriptionLocations","containerInstanceProviders","transformToPayload","containerGroupId","containerPorts","addressPorts","osType","resources","requests","memoryInGB","ipAddress","allocatePublicIP","CreateContainerInstanceForm","isLoadingSubscriptions","isLoadingResourceGroups","providers","useProvider","isLoadingProviders","useLoadFormState","subscriptionOptions","initSubscriptionId","getFirstValue","subscriptionResourceGroups","useFormState","mutateAsync","createContainerGroup","useCreateInstanceMutation","positive","accessControlSchema","getContainerGroups","getPorts","selectCheckboxComponent","Box","handleRemoveClick","containerIds","resourceGroupId","parseId","subscriptionQuery","getSubscription","useSubscription","resourceGroupQuery","getResourceGroup","useResourceGroup","getContainerGroup","useContainerGroup","containerInstanceData","containerInstanceProperties","aggregateContainerInstance","subscriptionName","subscriptionsQuery","useContainerGroups","deleteMutation","containerGroupIds","deleteContainerGroup","handleRemove","useRemoveMutation","resourceGroupsQuery","subscriptionsCount","resourceGroupsCount","SubscriptionsIcon","Package","azureModule","initFeatureService","UI_ROUTER_REACT_HYBRID","nomadModule","analyticsModule","run","registriesModule","customTemplateModule","KubernetesHealthService","KubernetesNamespaceService","endpointKubernetesConfiguration","templateId","showConsole","accessNode","isPod","useServerMetrics","configurations","KubernetesConfigurationTypes","publishedUrl","settingsKey","onPublishingModeClick","isPrimary","showSystem","isItemExpanded","isExpandable","KubernetesApplications","hasConfigurationSecrets","getPublishedUrl","onSettingsShowSystemChange","setDataTableSettings","isExternalApplication","KubernetesApplicationHelper","isSystemNamespace","app","KubernetesNamespaceHelper","ResourcePool","isDisplayed","ingressUrls","PublishedPorts","pp","IngressRules","Port","loadBalancerURLs","LoadBalancerIPAddress","publishedUrls","Configurations","ApplicationType","availableTypeFilters","KubernetesApplicationDeploymentTypes","KubernetesApplicationTypes","KubernetesServiceTypes","buildIngressRuleURL","rule","portHasIngressRules","ruleCanBeDisplayed","Applications","Namespace","isSystemToken","KubernetesConfigurationHelper","isSystemConfig","IsRegistrySecret","isExternalConfiguration","Used","hasK8sClusterNodeR","canManageAccess","Configuration","RestrictDefaultNamespace","namespaceStatusColor","KubernetesVolumesDatatableController","onInit","isUsed","KubernetesVolumeHelper","isExternalVolume","HelmAddRepositoryController","HelmService","doesRepoExist","repos","isAddingRepo","addHelmRepository","HelmTemplatesListController","updateCategories","annotationCategories","charts","annotations","availableCategories","clearCategory","selectedCategory","selectAction","HelmTemplatesController","KubernetesResourcePoolService","installHelmchart","getHelmValues","selectHelmChart","getHelmRepoURLs","getLatestCharts","getResourcePools","contentvalues","originalvalues","appName","Repo","Chart","Values","resourcePool","install","loadingValues","scrollTo","showCustomValues","reposLoading","GlobalRepository","UserRepositories","getHelmRepositories","globalRepository","userHelmReposUrls","uniqueHelmRepos","helmRepos","chartsLoading","promiseList","chartPromises","allSettled","latestCharts","tp","resourcePoolsLoading","nonSystemNamespaces","resourcePools","canInstallChart","KubeServicesItemViewController","KubernetesApplicationPublishingTypes","addPort","KubernetesServicePort","nodePort","targetPort","ingressType","KubernetesIngressServiceRoute","serviceName","serviceType","originalIngresses","IngressName","ingress","servicePorts","removePort","servicePort","onChangeContainerPort","duplicates","sp","KubernetesFormValidationHelper","refs","hasRefs","onChangeServicePort","onChangeNodePort","KubernetesFormValidationReferences","serviceRoutes","isEdit","multiItemDisable","serviceIndex","loadbalancerEnabled","KubeServicesViewController","addEntry","KubernetesService","Selector","getUniqName","Services","nameIndex","UniqName","sortServices","deleteService","typeName","typeValue","isCreation","KubernetesConfigurationDataController","editorUpdateAsync","onFileLoad","onFileLoadAsync","showSimpleMode","onChangeKey","duplicateKeys","Key","invalidKeys","KubernetesConfigurationFormValuesEntry","removeEntry","DataYaml","encoding","chardet","Buffer","decoder","TextDecoder","IsBinary","stringValue","decode","Value","Base64","addEntryFromFile","temporaryFileReader","IsSimple","cpuReservation","cpuUsage","cpuLimit","memoryUsage","displayUsage","KubernetesResourceReservationController","usageValues","cpuReservationPercent","memoryReservationPercent","cpuUsagePercent","memoryUsagePercent","KubernetesYamlInspectorController","copyYAML","toggleYAMLInspectorExpansion","KubernetesApplicationConverter","res","pods","ingresses","spec","initContainers","uid","Metadata","StackId","KubernetesPortainerApplicationStackIdLabel","KubernetesPortainerApplicationStackNameLabel","ApplicationKind","KubernetesPortainerApplicationKindLabel","ApplicationOwner","KubernetesPortainerApplicationOwnerLabel","ApplicationName","KubernetesPortainerApplicationNameLabel","Note","KubernetesPortainerApplicationNote","imagePullSecrets","RegistryId","CreationDate","creationTimestamp","Pods","selector","Cpu","KubernetesResourceReservationHelper","filesizeParser","base","Requests","ServiceType","ClusterIp","clusterIP","ExternalIp","externalIP","loadBalancer","portsRefs","pList","pRefs","KubernetesApplicationPort","NodePort","_apiPortsToPublishedPorts","rules","KubernetesIngressHelper","volumeClaimTemplates","vcTemplates","vc","persistentVolumeClaim","claimName","inexistingPVC","persistedFolders","hostPath","PersistedFolders","volumeMounts","matchingVolumeMount","persistedFolder","KubernetesApplicationPersistedFolder","MountPath","mountPath","PersistentVolumeClaimName","HostPath","ConfigurationVolumes","configMap","configurationName","secretName","configurationVolume","KubernetesApplicationConfigurationVolume","fileMountPath","rootMountPath","configurationKey","KubernetesApplication","applicationCommon","DataAccessPolicy","KubernetesApplicationDataAccessPolicies","RunningPodsCount","availableReplicas","replicas","unavailableReplicas","TotalPodsCount","numberAvailable","desiredNumberScheduled","numberUnavailable","readyReplicas","HeadlessServiceName","persistentVolumeClaims","nodesLabels","KubernetesApplicationFormValues","ImageModel","AutoScaler","isIngress","PublishingType","Affinity","KubernetesCommonHelper","claims","KubernetesPersistentVolumeClaimConverter","rwx","deployment","statefulSet","daemonSet","headlessService","KubernetesDeploymentConverter","KubernetesStatefulSetConverter","KubernetesDaemonSetConverter","KubernetesServiceConverter","KubernetesConfigMapConverter","KubernetesPortainerAccessConfigMap","KubernetesConfigMapCreatePayload","createAccessPayload","yaml","KubernetesConfigMap","ConfigurationOwner","KubernetesPortainerConfigurationOwnerLabel","Yaml","binaryData","configurationOwner","omission","KubernetesConfigMapUpdatePayload","KubernetesConfiguration","volumeClaims","KubernetesDaemonSet","KubernetesDaemonSetCreatePayload","matchLabels","affinity","VolumeMounts","oldDaemonSet","newDaemonSet","oldPayload","createPayload","newPayload","JsonPatch","KubernetesDeployment","KubernetesDeploymentCreatePayload","oldDeployment","newDeployment","KubernetesEvent","lastTimestamp","eventTime","Involved","involvedObject","KubernetesNamespaceConverter","KubernetesNamespace","phase","ResourcePoolName","KubernetesPortainerResourcePoolNameLabel","ResourcePoolOwner","KubernetesPortainerResourcePoolOwnerLabel","IsSystem","systemLabel","KubernetesPortainerNamespaceSystemLabel","KubernetesNamespaceCreatePayload","resourcePoolOwner","storageClasses","KubernetesPersistentVolumeClaim","Storage","StorageClass","storageClassName","NeedsDeletion","pvc","ExistingVolume","PreviousName","SizeUnit","charAt","existantPVC","PersistentVolumeClaim","ContainerPath","KubernetesPersistentVolumClaimCreatePayload","oldPVC","newPVC","KubernetesResourcePool","Owner","quota","KubernetesResourceQuotaConverter","ingMap","IngressClasses","Selected","KubernetesIngressConverter","Namespaces","KubernetesResourceQuota","hard","KubernetesPortainerResourceQuotaCPULimit","KubernetesPortainerResourceQuotaMemoryLimit","MemoryLimitUsed","used","CpuLimitUsed","LoadBalancers","KubernetesPortainerResourceQuotaLoadbalancers","KubernetesPortainerResourceQuotaStorageSuffix","StorageRequests","sr","KubernetesResourcePoolStorageClassFormValue","KubernetesResourceQuotaCreatePayload","KubernetesResourceQuotaHelper","KubernetesPortainerResourceQuotaCPURequest","KubernetesPortainerResourceQuotaMemoryRequest","oldQuota","newQuota","KubernetesResourcePoolFormValues","KubernetesResourceQuotaDefaults","UseLoadBalancersQuota","HasQuota","StorageClasses","storages","KubernetesSecretCreatePayload","annotation","stringData","KubernetesPortainerConfigurationDataAnnotation","KubernetesSecretUpdatePayload","KubernetesApplicationSecret","publishedPort","IsNew","ContainerPort","LoadBalancerPort","LoadBalancerNodePort","_publishedPortToServicePort","applicationFormValuesToService","KubernetesServiceHelper","Headless","KubernetesServiceCreatePayload","KubernetesServiceHeadlessClusterIP","oldService","newService","KubernetesStatefulSet","KubernetesStatefulSetCreatePayload","VolumeClaims","oldSFS","newSFS","KubernetesStorageClassConverter","KubernetesStorageClass","Provisioner","provisioner","AllowVolumeExpansion","allowVolumeExpansion","scs","sc","fv","storageClass","KubernetesStorageClassCreatePayload","oldStorageClass","newStorageClass","claim","pool","KubernetesVolume","kubeCustomTemplatesView","kubeEditCustomTemplateView","kubeCreateCustomTemplateView","KubeCreateCustomTemplateViewController","CustomTemplateService","isTemplateVariablesEnabled","isTemplateValid","Logo","Variables","onBeforeOnload","onVariablesChange","parseTemplate","customTemplate","createCustomTemplateByMethod","createCustomTemplateFromFileContent","createCustomTemplateFromFileUpload","customTemplates","addEventListener","removeEventListener","returnValue","KubeCustomTemplatesViewController","allowedDeployment","currentUser","isEditAllowed","getTemplates","selectTemplate","CreatedByUserId","KubeEditCustomTemplateViewController","getTemplate","onBeforeUnload","customTemplateFile","updateCustomTemplate","stripSpaces","KubernetesEndpoint","leaderAnnotation","KubernetesEndpointAnnotationLeader","parsedJson","holderIdentity","HolderIdentity","subsets","Subsets","subset","KubernetesEndpointSubset","Ips","addresses","_KubernetesEndpoint","_KubernetesEndpointSubset","KubernetesEndpointService","KubernetesEndpoints","getAllAsync","KubernetesEndpointConverter","KubernetesApplicationTypeStrings","KubernetesPodNodeAffinityNodeSelectorRequirementOperators","HelmFactory","helmUrl","templatesUrl","output","uninstall","release","listReleases","PodKubernetesInstanceLabel","PodManagedByLabel","application","pf","cv","associateContainerPersistedFoldersAndConfigurations","applications","KubernetesPortMapping","KubernetesPortMappingPort","envVariables","KubernetesApplicationEnvPayload","valueFrom","KubernetesApplicationEnvironmentVariableFormValue","NameIndex","finalRes","cfg","filterCondition","cfgEnv","cfgVol","keyEnv","keyVol","Sum","EnvCount","VolCount","overrideThreshold","KubernetesApplicationConfigurationFormValue","SelectedConfiguration","Overriden","OverridenKeys","fvKey","KubernetesApplicationConfigurationFormValueOverridenKey","KubernetesApplicationConfigurationFormValueOverridenKeyTypes","finalEnv","finalVolumes","finalMounts","isBasic","envKeys","KubernetesApplicationEnvConfigMapPayload","KubernetesApplicationEnvSecretPayload","configMapKeyRef","secretKeyRef","volKeys","groupedVolKeys","volumeName","itemsMap","KubernetesApplicationVolumeEntryPayload","KubernetesApplicationVolumeMountPayload","KubernetesApplicationVolumeConfigMapPayload","KubernetesApplicationVolumeSecretPayload","svc","svcport","Ingresses","ingressMatched","Paths","Raw","kind","publishedPorts","generatePort","KubernetesApplicationPublishedPortFormValue","IngressRoute","IngressHost","IngressHosts","autoScaler","replicasCount","KubernetesApplicationAutoScalerFormValue","IsUsed","MinReplicas","MaxReplicas","TargetCPUUtilization","KubernetesApplicationPersistedFolderFormValue","volumeMount","KubernetesApplicationVolumePersistentPayload","AccessModes","podAffinity","placements","Placements","PlacementType","nodeAffinity","requiredDuringSchedulingIgnoredDuringExecution","KubernetesApplicationPlacementTypes","nodeSelectorTerms","matchExpressions","exp","placement","KubernetesApplicationPlacementFormValue","Label","preferredDuringSchedulingIgnoredDuringExecution","KubernetesPodNodeAffinityPayload","expressions","KubernetesNodeSelectorRequirementPayload","KubernetesNodeSelectorTermPayload","KubernetesPreferredSchedulingTermPayload","KubernetesPodAffinity","helmManagedApps","namespacedHelmReleases","instanceLabel","helmAppsList","helmInstance","helmApp","HelmApplication","appsNotReady","replaceAll","helmApplications","getHelmApplications","helmAppNames","hma","nonHelmApplications","KubernetesApplicationRollbackHelper","targetRevision","_getDeploymentPayload","_getDaemonSetPayload","_getStatefulSetPayload","deploymentApp","KubernetesSystem_DefaultDeploymentUniqueLabelKey","KubernetesSystem_AnnotationsToSkip","owner","accesses","KubernetesPortainerConfigMapAccessKey","envFind","volumeFind","getUsingApplications","setConfigurationUsed","configurationsUsed","configMappedByName","configMappedByVolume","YAML","oldEntry","groupped","KubernetesDaemonSetHistoryHelper","ownerReferences","crList","sameLabelsCR","controlledCR","_isControlledBy","KubernetesDeploymentHistoryHelper","rsList","sameLabelsRS","controlledRS","rsListOriginal","revision","KubernetesSystem_RevisionAnnotation","filteredRS","KubernetesHistoryHelper","rawRevisions","currentRevision","revisionsList","_getDeploymentRevisions","_getDaemonSetRevisions","_getStatefulSetRevisions","appRS","appCR","KubernetesStatefulSetHistoryHelper","isSystem","KUBERNETES_DEFAULT_NAMESPACE","KUBERNETES_DEFAULT_SYSTEM_NAMESPACES","KubernetesPortainerResourceQuotaPrefix","decimals","base10","dm","pow","pod","parseCPU","KubernetesResourceReservation","mem","pools","resourceOverCommitEnabled","resourceOverCommitPercent","maxResources","megaBytesValue","reservedResources","Quota","KubernetesServiceHeadlessPrefix","rawApp","KubernetesStack","describe","stacksFromApplications","KubernetesStackHelper","expect","toHaveLength","matchingNames","uuidv4","KubernetesHorizontalPodAutoScalerConverter","KubernetesHorizontalPodAutoScaler","minReplicas","maxReplicas","targetCPUUtilizationPercentage","scaleTargetRef","TargetEntity","Kind","KubernetesHorizontalPodAutoScalerCreatePayload","oldScaler","newScaler","KubernetesHorizontalPodAutoScalerHelper","sList","getApplicationTypeString","_KubernetesHorizontalPodAutoScaler","_KubernetesHorizontalPodAutoScalerCreatePayload","getYaml","rawResponse","KubernetesHorizontalPodAutoScalerService","KubernetesHorizontalPodAutoScalers","getAsync","patchAsync","deleteAsync","KubernetesCommonParams","raw","horizontalPodAutoScaler","oldHorizontalPodAutoScaler","newHorizontalPodAutoScaler","KubernetesIngressClassAnnotation","KubernetesNginxRewriteTargetAnnotations","KubernetesTraefikRewriteTargetAnnotations","KubernetesNginxUseregexAnnotations","KubernetesIngressClassTypes","NGINX","TRAEFIK","PortainerIngressClassTypes","paths","http","ingRule","KubernetesIngressRule","backend","KubernetesIngress","Annotations","IngressClassName","ingressClassName","isPublishingToIngress","OriginalIngresses","originalIngress","matchedIngress","IngressClass","pairs","ics","ic","KubernetesResourcePoolIngressClassFormValue","WasSelected","hfv","KubernetesResourcePoolIngressClassHostFormValue","PreviousHost","KubernetesResourcePoolIngressClassAnnotationFormValue","AdvancedConfig","KubernetesIngressCreatePayload","hostsWithRules","updatedHost","KubernetesIngressRuleCreatePayload","KubernetesIngressRulePathCreatePayload","keptHosts","hostsWithoutRules","emptyRules","oldData","newData","KubernetesIngressClass","KubernetesCommonMetadataPayload","pathType","KubernetesIngressService","KubernetesIngresses","getOne","getAll","oldIngress","newIngress","KubernetesMetricsService","KubernetesMetrics","capabilitiesAsync","getPodAsync","getNodeAsync","getPodsAsync","getNodesAsync","getNode","podName","getPod","getPods","podUrl","IsPublishingService","NONE","ENVIRONMENT","FILESYSTEM","_KubernetesApplicationConfigurationFormValueOverridenKey","_KubernetesApplicationConfigurationFormValue","_KubernetesApplicationEnvironmentVariableFormValue","IsSecret","_KubernetesApplicationPersistedFolderFormValue","UseNewVolume","_KubernetesApplicationAutoScalerFormValue","REPLICATED","GLOBAL","SHARED","ISOLATED","DEPLOYMENT","DAEMONSET","STATEFULSET","POD","HELM","CLUSTER_IP","NODE_PORT","LOAD_BALANCER","INGRESS","PREFERRED","MANDATORY","KubernetesApplicationQuotaDefaults","_KubernetesApplication","Revisions","CurrentRevision","_KubernetesApplicationPersistedFolder","_KubernetesApplicationConfigurationVolume","_KubernetesApplicationPort","KubernetesDeploymentTypes","GIT","CONTENT","APPLICATION_FORM","_KubernetesApplicationVolumeMount","_KubernetesApplicationVolumePersistentPayload","_KubernetesApplicationVolumeConfigMapPayload","_KubernetesApplicationVolumeSecretPayload","_KubernetesApplicationVolumeEntryPayload","_KubernetesApplicationEnvPayload","_KubernetesApplicationEnvConfigMapPayload","_KubernetesApplicationEnvSecretPayload","_KubernetesCommonMetadataPayload","KubernetesPortainerConfigMapNamespace","KubernetesPortainerConfigMapConfigName","_KubernetesConfigMap","_KubernetesConfigMapCreatePayload","_KubernetesConfigMapUpdatePayload","_KubernetesConfigurationFormValues","KubernetesConfigurationFormValues","_KubernetesConfigurationFormValuesEntry","_KubernetesConfiguration","CONFIGMAP","SECRET","_KubernetesDaemonSet","VoluemMounts","_KubernetesDaemonSetCreatePayload","updateStrategy","rollingUpdate","maxUnavailable","KubernetesDeployManifestTypes","KUBERNETES","COMPOSE","KubernetesDeployBuildMethods","WEB_EDITOR","CUSTOM_TEMPLATE","KubernetesDeployRequestMethods","REPOSITORY","STRING","RepositoryMechanismTypes","WEBHOOK","INTERVAL","_KubernetesDeployment","_KubernetesDeploymentCreatePayload","maxSurge","_KubernetesEvent","KubernetesSystem_RevisionHistoryAnnotation","KubernetesSystem_ChangeCauseAnnotation","KubernetesSystem_DesiredReplicasAnnotation","KubernetesSystem_MaxReplicasAnnotation","_KubernetesNamespaceCreatePayload","KubernetesNodesLimits","nodesLimits","MaxCPU","MaxMemory","convertCPU","calculateMaxCPUMemory","nodesLimitsArray","overflowForReplica","instances","overflowForGlobal","overflow","excludesPods","_KubernetesPortMappingPort","_KubernetesPortMapping","ingressClass","RewriteTarget","KubernetesResourcePoolNginxRewriteAnnotationFormValue","KubernetesResourcePoolNginxUseregexAnnotationFormValue","KubernetesResourcePoolTraefikRewriteAnnotationFormValue","_KubernetesResourceReservation","KubernetesResourceTypes","NAMESPACE","RESOURCEQUOTA","PERSISTENT_VOLUME_CLAIM","SERVICE","HORIZONTAL_POD_AUTOSCALER","KubernetesResourceActions","CREATE","UPDATE","DELETE","_KubernetesApplicationSecret","_KubernetesSecretCreatePayload","_KubernetesSecretUpdatePayload","_KubernetesService","ClusterIP","_KubernetesIngressService","_KubernetesIngressServiceRoute","_KubernetesServicePort","_KubernetesServiceCreatePayload","_KubernetesStack","_KubernetesStatefulSet","_KubernetesStatefulSetCreatePayload","partition","_KubernetesStorageClassAccessPolicies","KubernetesStorageClassAccessPolicies","_KubernetesStorageClass","_KubernetesStorageClassCreatePayload","_KubernetesPersistentVolumeClaim","_KubernetesVolume","_KubernetesPersistentVolumClaimCreatePayload","accessModes","KubernetesNodeConverter","KubernetesNode","hostName","address","conditions","KubernetesNodeConditionTypes","READY","memoryPressure","MEMORY_PRESSURE","PIDPressure","PID_PRESSURE","diskPressure","DISK_PRESSURE","networkUnavailable","NETWORK_UNAVAILABLE","Conditions","MemoryPressure","DiskPressure","NetworkUnavailable","KubernetesNodeAvailabilities","unschedulable","KubernetesPortainerNodeDrainLabel","allocatable","nodeInfo","kubeletVersion","internalIP","Taints","taints","taint","KubernetesNodeTaint","Effect","KubernetesNodeDetails","apiToNode","architecture","operatingSystem","osImage","KubernetesNodeFormValues","KubernetesNodeTaintFormValues","KubernetesNodeLabelFormValues","filteredTaints","filteredLabels","KubernetesNodeCreatePayload","KubernetesNodeTaintPayload","oldNode","newNode","_KubernetesNodeFormValues","_KubernetesNodeTaintFormValues","IsChanged","_KubernetesNodeLabelFormValues","KubernetesNodeHelper","isSystemLabel","nodeSelectors","ns","_KubernetesNode","Api","_KubernetesNodeDetails","_KubernetesNodeTaint","ACTIVE","PAUSE","DRAIN","KubernetesNodeTaintEffects","NOSCHEDULE","PREFERNOSCHEDULE","NOEXECUTE","_KubernetesNodeCreatePayload","_KubernetesNodeTaintPayload","KubernetesNodeService","KubernetesNodes","errData","nodeFormValues","computeContainerStatus","statuses","waiting","running","KubernetesPodConverter","KubernetesPod","tolerations","containerStatuses","computeStatus","Restarts","startTime","KubernetesPodContainer","KubernetesPodContainerTypes","PodName","PodIP","podIP","ImagePullPolicy","imagePullPolicy","computeContainers","computeAffinity","NodeSelector","nodeSelector","Tolerations","KubernetesPodToleration","Operator","TolerationSeconds","tolerationSeconds","KubernetesPodEviction","oldPod","newPod","createPayloadFactory","IN","NOT_IN","EXISTS","DOES_NOT_EXIST","GREATER_THAN","LOWER_THAN","_KubernetesPod","_KubernetesPodToleration","_KubernetesPodContainer","_KubernetesPodEviction","INIT","APP","weight","KubernetesPodService","KubernetesPods","logsAsync","evictionAsync","podEvictionPayload","evict","eviction","kubernetesRegistryAccessView","KubernetesRegistryAccessController","selectedResourcePools","savedResourcePools","updateNamespaces","namespaces","removeNamespaces","nsToUpdate","getJSON","KubernetesNodesLimitsFactory","OpaFactory","KubernetesPortainerNamespacesFactory","toggleSystem","KubernetesApplicationService","KubernetesDeploymentService","KubernetesDaemonSetService","KubernetesStatefulSetService","KubernetesServiceService","KubernetesSecretService","KubernetesPersistentVolumeClaimService","KubernetesHistoryService","patchPartialAsync","rollbackAsync","_getApplicationApiService","apiService","_generateIngressPatchPromises","oldIngresses","newIngresses","newIng","oldIng","autoScalers","rootItem","converterFunc","boundService","boundServices","boundScaler","scaler","convertToApplication","servicesFound","deployments","daemonSets","statefulSets","deploymentApplications","daemonSetApplications","statefulSetApplications","boundPods","unboundPods","nakedPodsApplications","claimPromises","oldFormValues","newFormValues","oldApp","oldHeadlessService","oldServices","oldClaims","newApp","newHeadlessService","newServices","newClaims","oldApiService","newApiService","newClaim","oldClaim","deleteAll","deleteSingle","oldServiceMatched","clearIngress","newKind","newAutoScaler","oldKind","oldAutoScaler","oldAppPayload","newAppPayload","oldValues","partial","KubernetesConfigMapService","KubernetesConfigMaps","getAccess","createAccess","rawPromise","yamlPromise","KubernetesConfigurationService","KubernetesConfigurationConverter","configMaps","secretsConfigurations","configMapsConfigurations","KubernetesSecretConverter","KubernetesControllerRevisionService","KubernetesControllerRevisions","KubernetesDaemonSets","KubernetesDeployments","KubernetesEventService","KubernetesEvents","KubernetesEventConverter","KubernetesHealth","pingAsync","KubernetesReplicaSetService","KubernetesNamespaces","getJSONAsync","updateFinalizeAsync","$allSettled","hasK8sAccessSystemNamespaces","visibleNamespaces","fulfilled","KubernetesNodesLimitsService","Opa","KubernetesPersistentVolumeClaims","KubernetesReplicaSets","KubernetesResourceQuotaService","KubernetesPortainerNamespaces","KubernetesResourcePoolConverter","ingressPromises","registriesPromises","oldRegistries","newRegistries","ing","del","createPromises","delPromises","patchPromises","old","keptRegistries","removedRegistries","newRegistriesPromises","removedRegistriesPromises","namespaceName","quotaAttempt","KubernetesResourceQuotas","KubernetesSecrets","KubernetesServices","deleteSingleAsync","deleteAllAsync","formValuesServices","KubernetesStackService","KubernetesStatefulSets","headlessServiceName","oldStatefulSet","newStatefulSet","KubernetesStorageService","KubernetesStorage","KubernetesVolumeService","KubernetesVolumeConverter","pvcs","storeNamespaces","KubernetesApplicationsController","getApplications","getApplicationsAsync","removeStacksAction","removeStacksActionAsync","selectTab","storeActiveTab","configuredApplications","getActiveTab","currentName","$current","endpointType","KubernetesApplicationConsoleController","configureSocketAndTerminal","connectConsole","availableCommands","applicationName","KubernetesCreateApplicationController","ApplicationDeploymentTypes","ApplicationDataAccessPolicies","ApplicationPublishingTypes","ApplicationPlacementTypes","ApplicationTypes","ApplicationConfigurationFormValueOverridenKeyTypes","ServiceTypes","appType","updateWebEditorInProgress","useLoadBalancer","quotasComputed","allRestricted","availabilities","quotaExceeded","sliders","namespaceLimits","maxLoadBalancers","maxLoadBalancersQuota","resourcePoolHasQuota","availableSizeUnits","alreadyExists","environmentVariables","configurationPaths","existingVolumes","nodePorts","ingressRoutes","loadBalancerPorts","exceeded","persistedFoldersUseExistingVolumes","editChanges","updateApplicationAsync","deployApplicationAsync","onServicePublishChange","stackFileContent","updateKubeStack","imageValidityIsValid","onChangeName","existingApplication","unselectAutoScaler","addConfiguration","removeConfiguration","onChangeConfigurationPath","overrideConfiguration","resetConfiguration","clearConfigurations","uniqOverridenKeysPath","duplicatePaths","overridenKey","keyIndex","findPath","restoreEnvironmentVariable","removeEnvironmentVariable","envVar","onChangeEnvironmentName","addPersistedFolder","newPf","allQuotasExhaustedAndVolumesAvailable","resetDeploymentType","restorePersistedFolder","validatePersistedFolders","resetPersistedFolders","allQuotasExhaustedAndNoVolumesAvailable","removePersistedFolder","useNewVolume","useExistingVolume","onChangePersistedFolderPath","onChangeVolumeRequestedSize","onChangeExistingVolumeSelection","pfs","storagePfs","newPfs","requestedSize","sum","addPlacement","onChangePlacement","restorePlacement","removePlacement","onChangePlacementLabelValidate","onChangePlacementLabel","resetPublishedPorts","restorePublishedPort","onChangePublishedPorts","removePublishedPort","onChangePortMappingContainerPort","onChangePortMappingNodePort","onChangePortMappingIngressRoute","onChangePortMappingLoadBalancer","onChangePortProtocol","onChangePortMappingIngress","ingressHostnames","newRoutes","toDelRoutes","allRoutes","newPorts","storageClassAvailable","hasMultipleStorageClassesAvailable","showDataAccessPolicySection","supportGlobalDeployment","hasFolders","hasRWOOnly","isIsolated","isEditAndStatefulSet","supportScalableReplicaDeployment","getNonScalableStorage","storageOptions","enforceReplicaCountMinimum","resourceQuotaCapacityExceeded","nodeLimitsOverflow","effectiveInstances","nodeNumber","resourceReservationsOverflow","maxCpu","autoScalerOverflow","publishViaLoadBalancerEnabled","publishViaIngressEnabled","isEditAndNoChangesMade","changes","savedFormValues","change","isAddPersistentFolderButtonShowed","isNewVolumeButtonDisabled","isEditAndExistingPersistedFolder","isExistingVolumeButtonDisabled","hasAvailableVolumes","allQuotasExhausted","availableSize","isEditAndNotNewPublishedPort","hasNoPublishedPorts","isEditAndNotNewPlacement","isNewAndNotFirst","showPlacementPolicySection","isNonScalable","scalable","global","replica","replicated","isMaxLoadBalancerOverflow","isDeployUpdateButtonDisabled","inProgress","invalid","hasNoChanges","nonScalable","isPublishingWithoutPorts","noResourcePool","maxLoadBalancersOverflow","disableLoadBalancerEdit","isPublishingTypeEditDisabled","isEditLBWithPorts","isProtocolOptionDisabled","updateSliders","minCpu","minMemory","updateNamespaceLimits","refreshStacks","refreshConfigurations","refreshApplications","appsUsingLoadBalancers","appsUsingLoadBalancersLength","refreshVolumes","filteredVolumes","isUnused","isRWX","refreshStorageAvailabilities","available","restricted","refreshIngresses","refreshNamespaceData","resetFormValues","onResourcePoolSelectionChange","deployApplication","getApplication","UseLoadBalancer","UseServerMetrics","getStackFile","parseImageConfiguration","KubernetesApplicationController","getApplicationAsync","getEvents","getEventsAsync","updateApplicationKindText","redeployApplicationAsync","rollbackApplicationAsync","copyLoadBalancerIP","copyApplicationName","hasPersistedFolders","hasVolumeConfiguration","hasEventWarnings","eventWarningCount","isStack","rollbackApplication","redeployApplication","updateApplication","eventsLoading","KubernetesEventHelper","dataLoading","allContainers","expandedNote","SelectedRevision","useIngress","AcceptsApplication","UnmetTaints","matchKeyMatchValueMatchEffect","matchKeyAnyValueMatchEffect","matchKeyMatchValueAnyEffect","matchKeyAnyValueAnyEffect","anyKeyAnyValueAnyEffect","computeTolerations","UnmatchedNodeSelectorLabels","unmatchedTerms","unmatchedExpressions","exists","isIn","UnmatchedNodeAffinities","computeAffinities","computePlacements","placementWarning","DisplayedPanel","canAccessNode","canShowConsole","KubernetesApplicationIngressController","hasIngress","applicationIngress","KubernetesHelmApplicationController","releases","app_version","getHelmApplication","KubernetesApplicationLogsController","getApplicationLogsAsync","updateAutoRefresh","applicationLogs","KubernetesApplicationStatsController","CPUUsage","getStats","transition","timestamp","nodeCPU","getMetrics","podRaw","KubernetesClusterController","getEndpointsAsync","hasResourceUsageAccess","systemEndpoints","ep","kubernetesEndpoint","ips","getEndpoints","CPULimit","applicationsLoading","nodeNames","resourceReservation","getResourceUsage","clusterResourceUsage","resourceUsage","KubernetesNodeController","updateNodeAsync","drainNodeAsync","getNodeUsageAsync","onChangeTaintKey","duplicateTaintKeys","hasDuplicateTaintKeys","onChangeTaint","addTaint","removeTaint","restoreTaint","computeTaintsWarning","onChangeLabelKey","duplicateLabelKeys","hasDuplicateLabelKeys","onChangeLabel","restoreLabel","computeLabelsWarning","computeCordonWarning","computeDrainWarning","drainNode","isNoChangesMade","isDrainError","isDrainOperation","isContainPortainer","taintsWarning","labelsWarning","cordonWarning","drainWarning","getNodeUsage","availableEffects","KubernetesNodeStatsController","KubernetesConfigurationsController","getConfigurations","getConfigurationsAsync","refreshCallbackAsync","configurationsLoading","KubernetesCreateConfigurationController","createConfigurationAsync","filteredConfigurations","alreadyExist","uniqueCheck","isDataValid","createConfiguration","KubernetesConfigurationController","getConfigurationAsync","updateConfiguration","updateConfigurationAsync","copyConfigurationValue","configurationLoading","reason","oldDataYaml","getConfiguration","tagUsedDataKeys","configName","usedDataKeys","KubernetesConfigureController","IngressClassTypes","configureAsync","limitedFeatureAutoWindow","onChangeEnableResourceOverCommit","hasValidStorageConfiguration","valid","addIngressClass","onChangeIngressClass","restoreIngressClass","removeIngressClass","ingressClasses","onChangeIngressClassName","hasTraefikIngress","EnableResourceOverCommit","ResourceOverCommitPercentage","assignFormValuesToEndpoint","transformFormValues","ingressesToDel","oldEndpointID","allResourcePools","respons","enableMetricsServer","metrics","userClick","pending","isServerRunning","removeIngressesAcrossNamespaces","storagePromises","oldStorageClasses","modifiedEndpoint","setEndpoints","configure","restrictDefaultToggledOn","displayConfigureClassPanel","enableAutoUpdateTimeWindow","availableAccessModes","access","KubernetesDashboardController","KubernetesDeployController","DeployMethod","deployOptions","BuildMethod","tabLogsDisabled","AdditionalFiles","RepositoryAutomaticUpdates","RepositoryAutomaticUpdatesForce","RepositoryMechanism","RepositoryFetchInterval","RepositoryWebhookURL","returnStackWebhookUrl","ManifestDeployTypes","BuildMethods","onChangeTemplateId","deployAsync","getNamespacesAsync","onChangeDeployType","onChangeTemplateVariables","rendered","templateContent","EditorContent","buildMethod","buildLabel","formatLabel","isEndpointAdmin","repositoryAutomaticUpdates","repositoryMechanism","automaticUpdatesLabel","disableDeploy","isGitFormInvalid","isWebEditorInvalid","isURLFormInvalid","ManifestURL","isNamespaceInvalid","displayErrorLog","errorLog","stripAnsi","composeFormat","deployNamespace","namespace_toggle","ComposeFormat","ManifestFile","AutoUpdate","ForceUpdate","Interval","kubernetesDeploy","deploy","getNamespaces","KubernetesResourcePoolAccessController","AccessService","authorizeAccessAsync","unauthorizeAccessAsync","unauthorizeAccess","initAccessConfigMap","multiselectOutput","endpointAccesses","KubernetesConfigMapHelper","authorizedUsersAndTeams","accessConfigMap","poolAccesses","availableUsersAndTeams","RoleTypes","newAccesses","usersToAdd","teamsToAdd","updatePoolAccess","authorizeAccess","usersToRemove","teamsToRemove","storageClassSwitch","StorageClassSwitchController","KubernetesCreateResourcePoolController","LBQuotaFeatureId","onToggleStorageQuota","onToggleLoadBalancerQuota","onToggleResourceQuota","sClass","onChangeIngressHostname","ingressHosts","hosts","hostnames","hostnamesWithoutRemoved","allHosts","allIngresses","formDuplicates","count","hostFV","hostIdx","addHostname","removeHostname","addAnnotation","addRewriteAnnotation","addUseregexAnnotation","removeAnnotation","isCreateButtonDisabled","isQuotaValid","isAlreadyExist","hasPrefixKube","checkDefaults","createResourcePool","getIngresses","getRegistries","canUseIngress","resourceOverCommitPercentage","sliderMaxResources","KubernetesResourcePoolController","ResourceQuotaDefaults","StorageQuotaFeatureId","updateResourcePoolAsync","onToggleLoadBalancersQuota","otherIngresses","hostsWithoutRemoved","duplicatedHostnames","Duplicate","restoreHostname","isUpdateButtonDisabled","loadBalancersUsed","hasResourceQuotaBeenReduced","updateResourcePool","ingressesToDelete","registriesToDelete","WasChecked","warnings","messages","displayedMessage","markUnmarkAsSystem","confirmMarkUnmarkAsSystem","loadBalancersUsage","ingressesLoading","hasWriteAuthorization","canEdit","selectedRegistries","computeStorageQuotaUsage","Usage","namespaceResourceUsage","isDefaultNamespace","isEditable","vol","KubernetesResourcePoolsController","getResourcePoolsAsync","finalizers","isTerminatingNS","OpaService","checkDuplicate","duplicated","anyDuplicated","updateDuplicated","validList","checkCapabilityDuplicate","allowedCapabilities","requiredDropCapabilities","sanitizedForm","hostPorts","hostNetwork","volumeTypes","allowedTypes","hostFilesystem","allowedPaths","allowFlexVolumes","allowedVolumes","runAsUser","idrange","runAsGroup","supplementalGroups","fsGroups","selinux","appArmor","AppArmorType","secComp","secCompType","forbiddenSysctlsList","privilegedContainers","hostNamespaces","gids","allowPrivilegeEscalation","allowProcMount","procMountType","addItem","removeItem","updateItem","addHostAllowedPath","pathPrefix","checkHostAllowedPathDuplicate","removeHostAllowedPath","switchPrivilege","removeCapability","updateCapability","removeSELinuxAllowedCapabilities","checkSELinuxAllowedCapabilitiesDuplicate","level","opaData","KubernetesStackLogsController","generateLogsPromise","generateAppPromise","getStackLogsAsync","Pod","Logs","Application","filteredApplications","logsPromises","Color","Line","AppName","stackLogs","dataLogs","resourceSummary","oldAppResourceType","getApplicationResourceType","createdApplicationResourceSummary","getCreatedApplicationResources","headlessServiceUpdateResourceSummary","getServiceUpdateResourceSummary","claimSummaries","serviceUpdateResourceSummary","updateSummary","getIngressUpdateSummary","hpaUpdateSummary","getUpdatedApplicationResources","persistentVolumeClaimResources","appResourceType","summary","serviceUpdate","emptyService","serviceCreate","serviceDelete","findCreateResources","newResources","oldResources","findDeleteResources","findUpdateResources","newResource","oldResource","patches","isEqual","doGetResourcesSummary","actionFilter","getResourcesSummary","newNamespace","oldNamespace","KubernetesSummaryController","toggleSummary","generateResourceSummaryList","getArticle","resourceAction","article","expandedTemplate","storeKubernetesSummaryToggle","getConfigurationResources","getNamespaceResources","getApplicationResources","toggleValue","getKubernetesSummaryToggle","KubernetesVolumeController","getVolume","getVolumeAsync","updateVolumeAsync","onChangeSize","volumeSize","volumeSizeUnit","oldVolumeSize","hasQuota","sizeIsValid","redeploy","oldVolume","updateVolume","storageRequest","sameStorageVolumes","quotaLimitSize","increaseSize","volumeSharedAccessPolicy","volumeSharedAccessPolicyTooltip","policy","KubernetesVolumesController","getVolumesAsync","tempStorages","computeSize","buildStorages","activatedStoragesClasses","getElementsByTagName","src","parentNode","insertBefore","AbortController","splitter","logInLines","logInLine","loadLogs","logType","jobID","taskName","allocationID","signal","onDownloadProgress","progressEvent","stderrLog","stdoutLog","abort","NomadLogType","STDERR","STDOUT","onChangeLogType","RunningStatus","stopped","NomadDashboardAngular","dashboardQuery","getDashboard","RunningTaskCount","TaskCount","NodeCount","JobCount","GroupCount","taskStatus","TaskName","taskGroup","TaskGroup","AllocationID","started","momentDate","isoDate","JobID","TasksDatatable","SubmitTime","JobsDatatableSettings","JobsDatatable","onRefresh","intervalId","setIntervalId","startRepeater","refreshData","clearInterval","setInterval","job","relativeIndex","JobsViewAngular","jobsQuery","listJobs","reloadData","refetch","allocationId","jobId","ret","EventsDatatable","NomadEventsAngular","environmentID","getTaskEvents","refetchOnWindowFocus","invalidateQuery","useEvents","isFetching","BASENAME","attrs","limitedFeatureDir","limitedFeatureAttrs","attr","apiServicesModule","UserService","enlargeImage","imageUrl","imageSanitized","onEscape","CreateTeamFormAngular","leaders","usePaginationLimitState","paginationKey","paginationKeyBuilder","HomepageFilter","placeHolder","useHomePageFilter","createTag","tagKeys","useTags","getTags","FilterSearchBar","SortbySelector","downIcon","setIconStyle","EnvironmentIcon","alt","dockerEdge","kube","kubeEdge","environmentTypeIcon","AgentVersionTag","Z","Stat","EnvironmentStatsDocker","snapshots","StackCount","ServiceCount","ContainerStats","RunningContainerCount","StoppedContainerCount","healthy","HealthyContainerCount","unhealthy","UnhealthyContainerCount","VolumeCount","ImageCount","containersCount","EnvironmentStatsKubernetes","TotalCPU","TotalMemory","KubernetesVersion","EnvironmentStatsNomad","EnvironmentStats","Nomad","EnvironmentStatusBadge","environmentStatusBadge","EnvironmentItem","isEdge","snapshotTime","getSnapshotTime","useEnvironmentTagNames","stripProtocol","downloadKubeconfigFile","environmentIds","useSelection","selection","setSelection","prevSelection","newSelection","selectionSize","KubeconfigPrompt","envQueryParams","onClose","setPage","setPageLimit","expiryQuery","expiry","prefix","expiryMessage","KubeconfigExpiry","toggleSelection","isAllPageSelected","confirmKubeconfigSelection","kcService","KubeconfigButton","isOpen","setIsOpen","isKubeconfigButtonVisible","NoEnvironmentsInfoPanel","ConnectionType","sortByOptions","EnvironmentList","onClickItem","platformTypes","setPlatformTypes","debouncedTextFilter","connectionTypes","setConnectionTypes","statusFilter","setStatusFilter","tagFilter","setTagFilter","groupFilter","setGroupFilter","sortByFilter","setSortByFilter","setSortByDescending","setSortByButton","statusState","setStatusState","tagState","setTagState","groupState","setGroupState","sortByState","setSortByState","agentVersions","setAgentVersions","environmentsQueryParams","typesByPlatform","typesByConnection","API","EdgeAgent","EdgeDevice","selectedTypesByPlatform","platformType","selectedTypesByConnection","connectionType","getTypes","provisioned","tagsQuery","agentVersionsQuery","groupOptions","uniqueGroup","Map","tagOptions","uniqueTag","connectionTypeOptions","platformTypeConnectionType","connectionTypesDefaultOptions","getConnectionTypeOptions","platformTypeOptions","platformDefaultOptions","connectionTypePlatformType","getPlatformTypeOptions","filteredStatus","filteredTags","filteredGroups","renderItems","EnvironmentListAngular","EdgeLoadingSpinner","MotdPanel","motd","getMotd","uiState","setUIState","Hash","dismissedInfoHash","Style","camelCaseKeys","ContentLayout","dangerouslySetInnerHTML","__html","LicenseNodePanel","BackupFailedPanel","getBackupStatus","Failed","TimestampUTC","HomeViewAngular","connectingToEdgeEndpoint","setConnectingToEdgeEndpoint","confirmEndpointSnapshot","accessControlModule","TagSelector","allowCreate","createTagMutation","selectedTags","SelectComponent","tagId","hideSelectedOptions","handleAdd","noOptionsMessage","formatCreateLabel","inputValue","onCreateOption","fileUploadField","switchField","isNameReadonly","errorObj","VariablesFieldAngular","VariablesFieldController","checkValidity","customTemplatesModule","isVariablesNamesFromParent","passwordValid","forceChangePassword","minPasswordLength","RequiredPasswordLength","fallbackIcon","fallbackMode","fallbackClassName","setError","showReactQueryDevtools","SHOW_REACT_QUERY_DEV_TOOLS","ReactQueryDevtools","isLimited","createLocalDockerEnvironment","prefixPath","socketPath","createEnvironment","createLocalKubernetesEnvironment","tls","skipClientVerify","skipVerify","createAzureEnvironment","createKubeConfigEnvironment","kubeConfig","createRemoteEnvironment","creationType","createAgentEnvironment","environmentUrl","createEdgeAgentEnvironment","portainerUrl","isEdgeDevice","pollFrequency","edge","asyncMode","EndpointCreationType","GroupID","IsEdgeDevice","KubeConfig","TLS","TLSSkipVerify","TLSSkipClientVerify","TLSCACertFile","caCertFile","TLSCertFile","certFile","TLSKeyFile","keyFile","AzureApplicationID","applicationId","AzureTenantID","tenantId","AzureAuthenticationKey","authenticationKey","EdgePingInterval","EdgeSnapshotInterval","EdgeCommandInterval","formPayload","useConnectLocalEnvironment","localEnvironment","setLocalEnvironment","Infinity","createLocalEnvironmentMutation","createLocalEnvironment","mutationStatus","getTypeLabel","useCreateEdgeDeviceParam","edgeDeviceParam","environmentTypes","formTitle","hasEdge","EnvironmentSelector","createEdgeDevice","filterEdgeDevicesIfNeed","eType","handleClick","Stepper","currentStep","steps","useGenericCreationMutation","GroupField","useField","fieldProps","metaProps","helpers","MetadataFieldset","tagProps","tagHelpers","MoreSettingsSection","Hardware","NameField","isNameUnique","nameValidation","PortainerUrlField","EdgeAgentFieldset","metadataValidation","baseHREF","EdgeAgentForm","onCreate","showGpus","edgeSettingsQuery","createMutation","edgeSettings","EdgeAgentTab","setEdgeInfo","formKey","clearForm","EdgeKey","uuid","useFilterEdgeOptionsIfNeeded","edgeValue","EnvironmentUrlField","validation","validateAddress","AgentForm","DeploymentScripts","deployType","setDeployType","agentDetailsQuery","DeployCode","AgentTab","TLSFieldset","certValidation","fileValidation","mixed","schema","APIForm","getTlsValues","APITab","overridePath","SocketForm","OverrideSocketFieldset","SocketTab","WizardDocker","setCreationType","linux","win","getTab","WizardAzure","showAgentSecretMessage","AgentPanel","readFileContent","fileReader","base64","cert","readAsDataURL","KubeConfigForm","kubeConfigFile","setKubeConfigFile","padding","paddingLeft","WizardKubernetes","WizardNomad","WizardEndpointsList","endpointTypeName","KaaSFormType","cloudProviderOptions","Civo","Linode","Digitalocean","Googlecloud","Aws","Azure","KaasProvidersSelector","isAPIKaasInfo","kaasInfo","isAzureKaasInfo","isGKEKaasInfo","isEKSKaasInfo","providerFormType","GKE","EKS","AZURE","parseKaasInfoResponse","kubernetesVersions","regions","rg","nodeSizes","instanceTypes","amiTypes","networkRegion","region","kaasInfoResponse","isGKEKaasInfoResponse","getKaasInfo","useCloudProviderOptions","validator","kaasInfoFetcher","retry","minGKERam","maxGKERam","cpuSchema","ramSchema","hddSchema","hdd","nodeSize","integer","ram","useSetAvailableOption","valueFound","CredentialsField","credentialOptions","ActionsSection","onReloadClick","isReloading","KaaSInfoText","GKECreateClusterForm","kubernetesVersion","isOptionsForce","setIsOptionsForce","cloudOptionsQuery","cloudOptions","filteredNetworkOptions","lastHyphenIndex","shortenedRegion","nodeCount","ApiCreateClusterForm","AzureCreateClusterForm","tier","availabilityZones","resourceGroupInput","filteredNodeSizes","availabilityZoneOptions","zones","tiers","paidLabel","poolName","ReactSelect","dnsPrefix","EKSCreateClusterForm","amiType","instanceType","filteredInstanceTypes","compatibleAmiTypes","filterByAmiAndRegion","nodeVolumeSize","ProviderForm","onChangeSelectedCredential","selectedCredential","useSelectedCredentials","WizardKaaS","createKaasClusterMutation","createKaasEnvironment","cancelQueries","setProvider","setCredential","credentialsQuery","isKaasInfo","providerCredentials","credentialsFound","trackGoogleCloudProvision","trackApiProvision","teir","trackAzureProvision","trackAmazonProvision","sendKaasProvisionAnalytics","getPayloadParse","parser","gkeValidation","wizardModule","localEndpointIdParam","localEndpointId","setEnvironmentIds","envTypes","useParamEnvironmentTypes","dockerAgent","dockerApi","kubernetesAgent","kubernetesEdgeAgent","kaasAgent","aciApi","localEndpoint","nomadEdgeAgent","dockerEdgeAgent","analytics","setAnalyticsState","setAnalytics","prevState","useAnalyticsState","onFinish","currentStepIndex","setCurrentStepIndex","isFirstStep","isLastStep","onNextClick","onPreviousClick","getComponent","useStepper","setTypes","startWizard","localEnvironmentAdded","defaultRegistryMutation","hideDefaultRegistry","handleShowOrHide","translationNS","useTranslation","setDescription","errorText","setErrorText","setIsLoading","accessToken","setAccessToken","rawAPIKey","generateAccessToken","Trans","useSidebarState","SidebarProvider","storageIsOpen","setIsOpenInStorage","undoIsOpenChange","onResize","setState","undo","handleSetState","useStateWithUndo","isMobile","injector","invoke","useUpdateAngularService","AngularSidebarService","innerWidth","Wrapper","getPaths","isReactElement","child","Menu","openOnPaths","currentStateName","isOpenByState","forceOpen","toggleForceOpen","checkIfOpen","toggleOpen","useIsOpen","CollapseButtonIcon","ChevronUp","ChevronDown","stopPropagation","Head","ignorePaths","activeClassName","stateName","useUiRouterSrefActive","useSrefActive","disable","SidebarItem","childrenPath","flat","getPathsForChildren","SidebarSection","showTitleWhenOpen","ariaLabel","SidebarSectionTitle","showWhenOpen","EdgeComputeSidebar","Grid","Layers","Clock","icons","DashboardLink","platformPath","Layout","AzureSidebar","VolumesLink","Database","DockerSidebar","areStacksVisible","envInfoQuery","envVersionQuery","setupSubMenuProps","Trello","Shuffle","List","Share2","Clipboard","Lock","terminalClose","terminalResize","contentWrapperHeight","innerHeight","overflowY","pageWrapper","KubeCtlShell","terminal","minimized","shell","setShell","terminalElem","handleClose","openTerminal","writeln","onOpen","onMessage","readyState","CLOSED","wsProtocol","queryParams","onData","onKey","domEvent","ctrlKey","clear","KubectlShellButton","setOpen","createPortal","KubernetesSidebar","Helm","Server","NomadSidebar","EnvironmentSidebar","setEnvironmentId","clearEnvironment","onClear","Sidebar","SettingsSidebar","teamSyncQuery","TeamSync","showUsersSection","Users","HardDrive","Radio","Award","Settings","UpdateNotification","UpdateAvailable","LatestVersion","BuildInfoModalButton","isBuildInfoVisible","setIsBuildInfoVisible","statusQuery","BuildInfoModal","closeModal","ServerVersion","DatabaseVersion","BuildNumber","ImageTag","NodejsVersion","YarnVersion","WebpackVersion","GoVersion","BEFooter","CEFooter","FooterContent","customLogo","logo","fullLogoBE","fullLogoCE","smallLogo","getLogo","sidebarModule","LogoURL","Home","homeModule","licenseManagementModule","settingsModule","userActivityModule","featureFlagModule","teamsModule","servicesModule","authManager","loggedIn","checkAuthOnRefresh","isTransitionRequiresAuthentication","initAuthentication","account","authentication","internalAuthentication","logout","deviceImport","endpointAccess","endpointKVM","groupCreation","groupAccess","initAdmin","initEndpoint","settingsAuthentication","setCurrentEndpoint","UNAUTHENTICATED_ROUTES","nextTransition","nextTransitionName","administratorExists","licenseCheckAsync","InformationPanelAngular","dismissAction","showWarning","isUpdateEnabled","showRoles","inheritFrom","Inherited","changeOrderBy","orderField","entryClick","emptyDatasetMessage","TeamService","availableTeams","availableUsers","onAccessControlEnabledChange","ADMINISTRATORS","AuthorizedTeams","retrieveOwnershipDetails","setOwnership","setAuthorizedUsersAndTeams","onChangeEnablement","AuthorizedUsers","porAccessManagement","porAccessManagementUsersSelector","accessControlledEntity","entityType","PorAccessManagementController","oldUserAccessPolicies","oldTeamAccessPolicies","updatedUserAccesses","updatedTeamAccesses","accessPolicies","generateAccessPolicies","userAccessPolicies","teamAccessPolicies","selectedRoleId","selectedRole","selectedUserAccesses","selectedTeamAccesses","selectedAccesses","isRoleLimitedToBE","roleLabel","AssociatedEndpointsSelectorController","hasBackendPagination","onAssociate","onDissociate","AssoicatedEndpointsSelectorController","getAvailableEndpoints","getAssociatedEndpoints","loadData","getPaginationData","setTableData","noEndpoints","tableType","spinning","identifier","yml","CodeMirrorService","editorElement","applyCodeMirrorOnElement","CopyButtonController","isFading","copyValueText","$attrs","ngModel","$validators","invalidCron","modelValue","parseCronExpression","CustomTemplateCommonFieldsController","templateTypes","showPlatformField","showTypeField","nameRegex","CustomTemplateSelectorController","handleChangeTemplate","stackType","customTemplateSelector","newTemplatePath","typeLabel","onSelectClick","showSwarmStacks","onDeleteClick","createPath","editPath","AccessTokensDatatableController","onClickAdd","DatatableColumnsVisibilityController","interval","refreshSelectedItems","setReferrer","startPolling","DatatableFilterController","onChangeItem","isChecked","datatableFilter","displayTextFilter","resetSelectionState","onTextFilterChangeGeneric","setDataTableOrder","selectItem","originalEvent","shiftKey","firstClickedItem","firstItemIndex","lastItemIndex","itemsInRange","isBetween","onSelectionChanged","showTextFilter","getPaginationLimit","$onInitGeneric","datatableTitlebar","datatableSortIcon","datatablePagination","onChangeLimit","enableNoLimit","onChangePage","canBrowse","RegistriesDatatableController","enableGoToLink","goToRegistry","redirectToManageAccess","datatableSortIconController","isCurrentSortOrder","selectedSortKey","createEnabled","showActiveStacks","showUnactiveStacks","External","Orphaned","OrphanedRunning","allOrphanedStacks","onFilterChange","onSettingsAllOrphanedStacksChange","hasAccessToOrphanedStack","stringsDatatable","columnHeader","onRemove","UsersDatatableController","authenticationMethod","applyEvent","cancelEvent","hideEvent","DateRangePickerApi","startDate","endDate","maxDate","minDate","build","setMinDate","datePicker","updateView","updateCalendars","isBefore","setMaxDate","isAfter","clearInput","setStartDate","setEndDate","isSingle","singleDatePicker","onApply","ngRequired","dateRangePickerId","onCancel","clearOnCancel","onHide","destroy","off","AVAILABLE_OPTIONS","dateRangePicker","dateRangePickerOptions","compile","baseOptions","locale","inputElement","isDataFound","dpApi","currentApi","currentApiElement","destroyListener","tempOptions","daterangepicker","$watchGroup","DemoFeatureIndicatorController","isDemo","demoEnvironment","demoFeatureIndicator","sortGroups","groupEndpoints","availableGroups","onToggleTLS","TLSConfig","CACert","TLSCACert","TLSCert","TLSKey","TLSMode","EndpointSecurityFormData","EnvironmentVariablesPanelController","editorText","switchEnvMode","handleSimpleChange","convertToArrayOfStrings","parseDotEnvFile","onChangeValue","hasValue","removeValue","formName","environmentVariablesSimpleModeItem","EnvironmentVariablesSimpleModeController","onChangeVariable","addFromFile","getTextFromFile","readAsText","onSwitchModeClick","showHelpMessage","explanation","dom","condition","$eval","focusDelay","focusIf","fileUploadForm","webEditorForm","WebEditorFormController","onChangePath","gitFormAdditionalFileItem","GitFormAutoUpdateFieldsetController","gitFormAdditionalFilesPanel","GitFormComposeAuthFieldsetController","authValues","onChangeAuth","onChangeUsername","onChangePassword","gitFormAuthFieldset","showAuthExplanation","onChangeAutoUpdate","onChangeAutoUpdateForce","onChangeMechanism","onChangeInterval","onChangeForcePullImage","limitedFeaturePullImage","gitFormAutoUpdateFieldset","showForcePullImage","gitFormComposePathField","deployMethod","gitFormInfoPanel","configFilePath","additionalFiles","gitFormRefField","gitFormUrlField","GitFormController","onChangeURL","onChangeRefName","onChangeComposePath","gitForm","additionalFile","autoUpdate","GroupFormController","availableEndpoints","associatedEndpoints","getPaginatedEndpointsByGroup","allowCreateTag","addEndpoint","reloadTablesContent","removeEndpoint","KubernetesAppGitFormController","saveGitSettingsInProgress","redeployInProgress","showConfig","RefName","onChangeRef","updateKubeGit","isSubmitButtonDisabled","GitConfig","ReferenceName","kubernetesAppGitForm","KubernetesRedeployAppGitFormController","hasUnsavedChanges","toJson","kubernetesRedeployAppGitForm","toggleAuthentication","$postLink","registryFormEcr","registry_name","nameIsUsed","registryFormAzure","registryFormCustom","registryFormDockerhub","disableSelection","RegistryEnabled","retrieveRegistries","createRegistries","projects","resetDefaults","registryFormProGet","toggleOrganisation","registryFormQuay","useOrganisation","createTemplate","unselectTemplate","advanced","stackRedeployGitForm","StackRedeployGitFormController","FormHelper","Prune","PullImage","ForcePullImage","onChangeEnvVar","onChangeOption","automaticUpdates","autoSyncLabel","isSwarmStack","that","updateGit","removeInvalidEnvVars","updateGitStackSettings","isAutoUpdateChanged","wasEnabled","paginationChangedAction","onPageChanged","paginationState","onPaginationLimitChanged","tagIdsToTagNames","idsToTagNames","groupIdToGroupName","showTags","showGroups","cyValue","requires","parentClasses","BeIndicatorController","beFeatureIndicator","widgetModule","dateRangePickerModule","gitFormModule","porAccessManagementModule","formComponentsModule","showRefreshButton","triggerSnapshot","invalidIntervalFormat","minimumInterval","which","onEnterKey","OptionPanelController","switchPruneService","goTo","products","registryDetails","useAsterisk","precision","SliderController","buildOptions","translate","sliderId","showSelectionBar","enforceStep","isFormValidForMigration","duplicationInProgress","migrationInProgress","isFormValidForDuplication","yamlError","duplicateStack","onDuplicate","migrateStack","onMigrate","isMigrationButtonDisabled","currentEndpointId","isEndpointSelected","statusIndicator","TemplateListController","TemplateService","categorySorter","Categories","getSorter","sorter","typeFilters","filterByType","showContainerTemplates","selectedOrderBy","orderByFields","orderDesc","filterByTemplateType","filterByCategory","duplicateTemplate","duplicateTemplateAsync","templateFile","stackfile","initalTemplates","applyTypeFilter","invertOrder","applyCategoriesFilter","Lightmode","Darkmode","Highcontrastmode","Automode","ThemeSettingsController","ThemeManager","setTheme","theme","autoTheme","userTheme","updateUserTheme","defaultTheme","availableThemes","UserTheme","TimeWindowDisplayController","utcToTime","utcTime","tz","timezone","endTime","startHour","startMin","endHour","endMin","startTimeUser","endTimeUser","setHours","setMinutes","customToTimeObject","timeWindow","startTimeObject","endTimeObject","startTimeUtc","endTimeUtc","loadUserTime","currentUserTimezone","dst","isDST","TimeWindowController","timeToUtc","startTimeSet","endTimeSet","end","timeZoneSelected","loadUtcTime","utcStartTime","utcEndTime","loadTimeWindow","setStartTime","setEndTime","timeWindowUpdate","getTime","timeError","defaultTimeWindow","toggleChangeWindow","initTime","countries","country","zone","timeZones","hstep","mstep","ismeridian","timeSet","timezones","azureEndpointConfig","truncateLeftRight","left","filesize","getPairKey","pair","separator","getPairValue","arrayToStr","labelsToStr","EyeOff","Eye","findAssociatedGroup","GroupName","KEY_REGEX","VALUE_REGEX","KEY_VALUE_REGEX","NEWLINES_REGEX","parseArrayOfStrings","variableString","parsedKeyValArr","envvar","GenericHelper","findDeepAll","getAttribute","ResourceControlHelper","RCViewModelToOwnershipParameters","ResourceControlOwnershipParameters","RCFormDataToOwnershipParameters","subResources","retrieveAuthorizedUsers","retrieveAuthorizedTeams","getExternalStacksFromLabel","ExternalStackViewModel","getExternalStacksFromContainers","getExternalStacksFromServices","validateYAML","containerNames","yamlObject","duplicateContainers","portConfiguration","exposedPorts","labelsArray","templateEnvironment","interactiveFlag","consoleConfiguration","generatedVolumesPile","param","keyValStr","pathname","displayPort","canBeOffline","setOfflineMode","AddLicenseViewController","keyValidations","onSubmitSuccess","addLicenseView","licensesForm","licenseFormItem","keyValidation","LicenseItemController","isInvalid","licenseInput","LicensesFormController","formError","addLicense","onLicenseChange","submit","$valid","licensesViewModule","addLicenseViewModule","licensesDatatable","licensesView","LicenseInfoController","StatusService","productEdition","overUsage","copyLicenseKey","LicensesViewController","licenseKey","validLicensesToRemove","license","revoked","showExpiresAt","Override","PortainerEndpointInitFormValues","PortainerEndpointConnectionTypes","TLSSKipClientVerify","AzureApplicationId","AzureTenantId","PortainerEndpointInitFormValueEndpointSection","Classes","PortainerEndpointInitFormValueEndpointSections","DockerEnvironment","AgentOnDockerEnvironment","AzureEnvironment","EdgeAgentOnDockerEnvironment","KubernetesLocalEnvironment","AgentOnKubernetesEnvironment","EdgeAgentOnKubernetesEnvironment","EdgeAgentOnNomadEnvironment","PortainerEndpointCreationTypes","LocalDockerEnvironment","AgentEnvironment","EdgeAgentEnvironment","LocalKubernetesEnvironment","KubeConfigEnvironment","DOCKER_LOCAL","KUBERNETES_LOCAL","REMOTE","AGENT","EDGE","RegistryGitlabProject","project","PathWithNamespace","path_with_namespace","container_registry_enabled","EndpointGroupDefaultModel","EndpointGroupModel","EndpointGroupCreateRequest","AssociatedEndpoints","EndpointGroupUpdateRequest","RegistryViewModel","BaseURL","Password","Ecr","RegistryManagementConfigurationDefaultModel","Region","RegistryCreateFormValues","RegistryCreateRequest","ProjectId","InstanceURL","organisationName","RegistryRepositoryViewModel","TagsCount","RegistryRepositoryGitlabViewModel","ANONYMOUS","QUAY","CUSTOM","GITLAB","PROGET","DOCKERHUB","ECR","ResourceControlCreatePayload","AdministratorsOnly","Teams","SubResourceIDs","SettingsViewModel","BlackListedLabels","AuthenticationMethod","InternalAuthSettings","LDAPSettings","OAuthSettings","OAuthSettingsViewModel","TemplatesURL","FeatureFlagSettings","UserSessionTimeout","HelmRepositoryURL","EnforceEdgeID","EdgePortainerUrl","EdgeAgentCheckinInterval","EdgeSettingsViewModel","Features","OAuthLoginURI","OAuthHideInternalAuth","OAuthLogoutURI","InternalAuthSettingsViewModel","LDAPSettingsViewModel","ReaderDN","SearchSettings","GroupSearchSettings","AdminGroupSearchSettings","AutoCreateUsers","LDAPSearchSettings","BaseDN","UsernameAttribute","LDAPGroupSearchSettings","GroupBaseDN","GroupAttribute","GroupFilter","ClientID","ClientSecret","AccessTokenURI","AuthorizationURI","ResourceURI","RedirectURI","UserIdentifier","Scopes","OAuthAutoCreateUsers","OAuthAutoMapTeamMemberships","TeamMemberships","DefaultTeamID","SSO","HideInternalAuth","LogoutURI","StackViewModel","SwarmId","IsComposeFormat","UpdateDate","UpdatedBy","Regular","FromAppTemplate","creationDate","OrphanedStackViewModel","StatusViewModel","Snapshot","InstanceID","DemoEnvironment","StatusVersionViewModel","TagViewModel","TeamViewModel","TeamMembershipModel","UserID","TemplateViewModel","setTemplatesV2","AdministratorOnly","note","privileged","Interactive","restart_policy","preset","allowedValue","templateEnv","templateVolumes","portAndProtocol","hostAndContainerPort","templatePorts","UserViewModel","PortainerAuthorizations","RoleName","UserTokenModel","dateCreated","lastUsed","WebhookViewModel","EndpointID","WebhookType","Microsoft","Google","Github","OAuthProviderSelectorController","onSaveSettings","saveButtonState","MS_TENANT_ID_PLACEHOLDER","OAuthSettingsController","limitedFeatureClass","microsoftTenantID","onSelectProvider","onMicrosoftTenantIDChange","useDefaultProviderConfiguration","updateSSO","addTeamMembershipMapping","removeTeamMembership","addAdminClaimRegex","removeAdminClaimRegex","onChangeHideInternalAuth","onToggleAutoTeamMembership","providerId","authUrl","accessTokenUrl","resourceUrl","logoutUrl","userIdentifier","scopes","OAuthClaimMappings","ClaimValRegex","Team","AdminGroupClaimsRegexList","isOAuthTeamMembershipFormValid","OAuthClaimName","m","isOAuthAdminMappingFormValid","AdminAutoPopulate","getProviderByUrl","providerAuthURL","API_ENDPOINT_OAUTH","validate","accessViewerDatatable","AccessViewerController","TeamMembershipService","onUserSelect","userRoles","selectedUser","teamMemberships","getRoleFromUserEndpointPolicy","getRoleFromUserEndpointGroupPolicy","getRoleFromTeamEndpointPolicies","getRoleFromTeamEndpointGroupPolicies","findLowestRole","policies","policyRoles","accessPolicy","AccessViewerPolicyModel","groupUserAccessPolicies","groupTeamAccessPolicies","filteredUsers","leadingTeams","userLeadingTeams","isMember","teamId","leadingTeam","allUsers","teamMemberUsers","accessViewer","rolesDatatable","RolesDatatableController","isDefaultItem","linkAsync","tagName","disableAuthorization","excludeAuthorization","rolesView","RolesFactory","EndpointName","RolePriority","Priority","TeamName","AccessLocation","RoleViewModel","ENDPOINT_ADMIN","HELPDESK","STANDARD","READ_ONLY","OPERATOR","API_ENDPOINT_ROLES","Roles","RolesController","paginationAction","namesA","namesB","areDifferent","retagAction","advancedFeaturesAvailable","ImageDigest","ImageId","manifests","rawHistory","v1Compatibility","imageDigest","RepositoryTagViewModel","registryRepositoryTags","RegistryImageDetailsViewModel","docker_version","author","container_config","RegistryImageLayerViewModel","ManifestV2","History","RepositoryShortTag","manifest","RepositoryAddTagPayload","Manifest","linkGetResponse","pingWithForceNew","stripTrailingSlashes","dataType","getV2","resultText","getResponseHeader","Sha256","sha256","gitlabResponseGetLink","next","kv","genericAsyncGenerator","findBestStep","batch","RegistryV2Service","RegistryGitlabService","RegistryEcrService","forceNewConfig","repositories","getRepositoriesDetails","getTagsDetails","addTag","retagWithProgress","modifiedTags","modifiedDigests","impactedTags","shortTagsWithProgress","tagsList","deleteTagsWithProgress","deleteManifest","deleteRepository","batchDeleteTags","RegistryCatalog","RegistryTags","RegistryManifestsJquery","RegistryV2Helper","_getCatalogPage","_getCatalog","_getTagsPage","previousTags","tagDetails","manifestsToTag","_addTagFromGenerator","_addTagsWithProgress","progression","partialResult","_deleteManifestsWithProgress","_shortTagFromGenerator","repositoryName","newTags","tagFromTable","NewName","ConfigureRegistryController","RegistryServiceSelector","testInProgress","validConfiguration","testConfiguration","testConfigurationAsync","toggleTLS","toggleTLSSkipVerify","configureRegistry","RegistryRepositoriesController","displayInvalidConfigurationMessage","paginationActionAsync","RegistryRepositoryController","$uibModal","toSeconds","toPercent","progress","openModal","backdrop","keyboard","updateRetrievalClock","tagsRetrieval","elapsedTime","createRetrieveAsyncGenerator","asyncGenerator","retrieveTagsAsync","clock","short","addTagAsync","SelectedImage","loadRepositoryDetails","updateRetagClock","tagsRetag","retagActionAsync","modal","Modified","progressLabel","totalOps","createRetagAsyncGenerator","updateDeleteClock","tagsDelete","removeTagsAsync","removeEcrTagsAsync","deletedTagNames","deletedShortTags","tagsToKeep","createDeleteAsyncGenerator","removeRepositoryAsync","digests","hasAdvancedFeaturesAuth","auto","startStopRetrieval","return","computeImages","removeTags","removeRepository","RegistryRepositoryTagController","imagelayercommandFilter","$onInitAsync","Sort","Reverse","layer","login","headersGetter","getS3Settings","saveS3Settings","exportS3Backup","restoreS3Backup","CustomTemplatesFactory","EcrFactory","hasBody","getEndpointsTotalCount","disassociate","dockerhubLimits","rpn","checkLDAPConnectivity","SSLFactory","StackFactory","associate","swarmId","orphanedRunning","external","migrate","subaction","queryMemberships","updatePassword","updateTheme","checkAdminUser","initAdminUser","createAccessToken","getAccessTokens","deleteAccessToken","entityId","rejected","accessesAsync","newUserPolicies","newTeamPolicies","_getRole","_mapAccessData","authorizedPolicies","inheritedPolicies","availableAccesses","authorizedAccesses","authorized","inherited","authorizedUserPolicies","authorizedTeamPolicies","inheritedUserPolicies","inheritedTeamPolicies","userAccesses","teamAccesses","userAccessData","teamAccessData","accessData","getAccesses","Backup","uploadBackup","CustomTemplateServiceFactory","$sanitize","CustomTemplates","html","createCustomTemplate","uploadTLSFilesForEndpoint","notify","groupID","endpointURL","createEndpoint","TLSCAFile","checkinInterval","createAzureEndpoint","createKubeConfigEndpoint","UsersToAdd","TeamsToAdd","UsersToRemove","serviceID","UserTrusted","EndpointGroups","deleteRegistry","updateRegistry","registryManagementConfigurationModel","createRegistry","createGitlabRegistries","regs","retrievePorRegistryModelFromRepositoryWithRegistries","getURL","match2","match3","match4","findBestMatchRegistry","lastIndex","rcID","SSLServiceFactory","SSL","httpEnabled","Stack","StackHelper","SwarmService","gitConfig","kubernetesDeployAsync","migrateSwarmStack","targetEndpointId","SwarmID","migrateComposeStack","includeOrphanedStacks","composeStacks","IncludeOrphanedStacks","swarmStacks","s1","s2","externalSwarmStacks","externalComposeStacks","unionStacks","externalStacks","externalStack","includeExternalStacks","createComposeStackFromFileUpload","createComposeStack","createSwarmStackFromFileUpload","createSwarmStack","createComposeStackFromFileContent","createSwarmStackFromFileContent","createComposeStackFromGitRepository","ComposeFile","createSwarmStackFromGitRepository","Support","createTagAsync","tagNames","deleteTag","leaderIds","TeamLeaders","TemplateServiceFactory","Templates","TemplateHelper","registryURL","repositoryUrl","composeFilePathInRepository","containerConfiguration","getDefaultContainerConfiguration","EnvToStringArray","portArrayToPortConfiguration","getConsoleConfiguration","updateContainerConfigurationWithLabels","createContainerConfiguration","createVolumeBindings","teamIds","teamMembershipQueries","createMembership","currentPassword","newPassword","NewPassword","userTokens","tokenId","Webhooks","webhookType","asyncFunc","wrapper","Auth","OAuth","jwtHelper","initAsync","logoutAsync","clearSessionStorage","clean","cleanAuthData","storeLoginStateUUID","OAuthLoginAsync","loginAsync","storeJWT","tokenPayload","decodeToken","endpointAuthorizations","portainerAuthorizations","retrievePermissions","OAuthLogin","isTokenExpired","defaultChartOptions","pos","tooltipCallback","scalesCallback","isStacked","animation","responsiveAnimationDuration","responsive","tooltips","intersect","callbacks","tooltipItem","datasetLabel","datasets","datasetIndex","yLabel","layout","hover","animationDuration","scales","yAxes","stacked","ticks","beginAtZero","LimitChartItems","CHART_LIMIT","byteBasedTooltipLabel","byteBasedAxisLabel","percentageBasedAxisLabel","percentageBasedTooltipLabel","borderColor","pointBackgroundColor","pointBorderColor","pointRadius","borderWidth","CreateChart","memoryValue","cacheValue","codeMirrorGenericOptions","lineNumbers","extraKeys","codeMirrorYAMLOptions","gutters","lint","Tab","spaces","getOption","replaceSelection","yamlLint","CodeMirror","setSize","DatatableServiceFactory","TEXT_FILTER_KEY_PREFIX","storeDataTableSettings","storeDataTableFilters","storeDataTableOrder","storeDataTableExpandedItems","storeColumnVisibilitySettings","setDataTableSelectedItems","storeDataTableSelectedItems","getDataTableSelectedItems","$uiRouterGlobals","getEndpointID","endpointPublicURL","getEndpointPublicURL","getOfflineMode","OfflineMode","cleanEndpointData","getUrlEndpointID","storeEndpointID","publicURL","storeEndpointPublicURL","storeEndpoints","isOffline","storeOfflineMode","RetryCount","RetryInterval","uploadLDAPTLSFiles","queue","uploadOwnershipVoucher","voucherFile","voucher","localStorageService","getLoginStateUUID","storeEndpointState","getEndpointState","storeApplicationState","getApplicationState","storeUIState","getUIState","deleteJWT","storePaginationLimit","storeDataTableTextFilters","storeJobImage","getJobImage","storeLogoutReason","getLogoutReason","cleanLogoutReason","clearAll","storeOAuthLoginBlockForNonAdmin","getOAuthLoginBlockForNonAdmin","NameValidatorFactory","validateEnvironmentName","paginationLimit","storedLimit","RegistryEcrServiceFactory","_addTag","oldTagNames","newTagNames","toDelTags","_getProjectsPage","projectsAsync","_getRepositoriesPage","repositoriesAsync","projectId","ModalServiceFactory","registries2Options","StateManagerFactory","InfoHelper","manager","UI","dismissedInfoPanels","timesPasswordChangeSkipped","dismissImportantInformation","setRequiredPasswordLength","requiredPasswordLength","setPasswordChangeSkipped","userID","instanceId","resetPasswordChangeSkips","clearPasswordChangeSkips","cleanEndpoint","updateLogo","logoURL","updateSnapshotInterval","snapshotInterval","updateEnableEdgeComputeFeatures","enableEdgeComputeFeatures","updateEnableTelemetry","enableTelemetry","setOptOut","endpointState","appState","isAppStateValid","Theme","UIState","Snaphosts","determineEndpointMode","endpointAPIVersion","documentElement","setAttribute","removeAttribute","systemTheme","matchMedia","authenticationMethodTypesMap","INTERNAL","LDAP","OAUTH","authenticationMethodTypesLabels","authenticationActivityTypesMap","AuthSuccess","AuthFailure","Logout","authenticationActivityTypesLabels","autoUserProvisionToggle","SaveAuthSettingsButton","Badge","alpha","padStart","sliderProperties","strength","SliderWithTooltip","RcSlider","PasswordLengthSlider","sliderProps","getSliderProps","tipFormatter","sliderValue","handleStyle","boxShadow","railStyle","trackStyle","getBadgeIcon","InternalAuthAngular","ldapModule","saveAuthSettingsButton","AdSettingsController","LDAPService","domainSuffix","limitedFeatureId","onTlscaCertChange","searchUsers","searchGroups","searchAdminGroups","parseDomainName","onAccountChange","domainName","part","AdminGroups","selectedAdminGroups","adminGroups","tlscaCert","addLDAPUrl","URLs","removeLDAPUrl","isSaveSettingButtonDisabled","isLdapFormValid","adSettings","connectivityCheck","ldapConnectivityCheck","ldapGroupsDatatable","ldapSettings","ldapGroupSearch","ldapGroupSearchItem","ldapUserSearch","ldapUserSearchItem","ldapSettingsCustom","ldapSettingsDnBuilder","ldapSettingsGroupDnBuilder","ldapCustomGroupSearch","ldapSettingsOpenLdap","ldapSettingsSecurity","ldapSettingsTestLogin","ldapCustomUserSearch","ldapCustomAdminGroup","ldapUsersDatatable","defaultAdminGroupSearchFilter","onSearchClick","LdapCustomAdminGroupController","groupstest","enableAssignAdminGroup","onAddClick","LdapCustomGroupSearchController","showTable","LdapCustomUserSearchController","UserNameAttribute","baseFilter","LdapSettingsAdGroupSearchItemController","onChangeBaseDN","baseDN","addGroup","removeGroup","$index","onGroupsChange","groupsFilter","parseGroupFilter","LdapGroupSearchController","lastSetting","onSearchUsersClick","onSearchGroupsClick","onSearchAdminGroupsClick","saveButtonDisabled","LdapSettingsCustomController","suffix","LdapSettingsBaseDnBuilderController","onEntriesChange","moveUp","moveDown","dn","getOUValues","regex","ouValues","parseBaseDN","toIndex","LdapSettingsGroupDnBuilderController","onGroupNameChange","onGroupChange","groupNameEntry","parseEntries","$onChange","LdapSettingsOpenLDAPController","findDomainSuffix","parseDomainSuffix","serviceAccount","searchSettings","showBeIndicatorIfNeeded","TEST_STATUS","LOADING","SUCCESS","FAILURE","LdapSettingsTestLogin","testStatus","testLogin","buildLdapSettingsModel","AnonymousMode","ServerType","StartTLS","buildAdSettingsModel","buildOpenLDAPSettingsModel","Openldap","SERVER_TYPES","OPEN_LDAP","AD","DEFAULT_GROUP_FILTER","LdapSettingsController","settingsDrafts","boxSelectorOptions","onChangeServerType","serverType","showUsernameFormat","LdapUserSearchItemController","onBaseDNChange","generateUserFilter","parseFilter","members","member","LdapUserSearchController","check","cnName","sslCertificate","SslCertificateController","SSLService","originalValues","forceHTTPS","reloadingPage","certFilePattern","keyFilePattern","onChangeForceHTTPS","isFormChanged","wasHTTPsChanged","certInfo","CredentialsDatatableActions","deleteCredentialMutation","CredentialsDatatable","CredentialsDatatableContainer","cloudCredentialsQuery","CloudViewAngular","providerOptions","CloudProviderSelector","FormTypes","CreateCredentialViewAngular","setSelectedProvider","EditCredentialForm","formType","SERVICE_ACCOUNT","ACCESS_KEY","getFormType","updateCredentialMutation","newCredentials","visibleCredentials","EditCredentialViewAngular","cloudCredentialQuery","FDOProfilesDatatableActions","onDuplicateProfileClick","onDeleteProfileClick","newProfile","FDOProfilesDatatable","useFDOProfiles","FDOProfilesDatatableContainer","SettingsFDOAngular","initialFDOEnabled","setIsFDOEnabled","ownerURL","ownerUsername","ownerPassword","edgeComputeFeaturesEnabled","onChangedEnabled","SettingsOpenAMTAngular","setCertFile","mpsUser","mpsPassword","certFileContent","certFileName","certFilePassword","EdgeComputeSettings","generateKey","EnabledWaitingRoomSwitch","inputProps","trust","yup","defaultUrl","AutoEnvCreationSettingsForm","isValidSync","AutomaticEdgeEnvCreation","edgeKeyMutation","useGenerateKeyMutation","asyncIntervalFieldSettings","DeploymentSyncOptions","settingsMutation","resetForm","EdgeComputeSettingsViewAngular","authenticationModule","generalModule","cloudModule","addCredentialModule","editCredentialModule","ActivityLogsDatatableController","changeSort","handleChangeLimit","onChangeSort","activityLogsDatatable","totalItems","onChangeContextFilter","onChangeKeyword","ActivityLogsViewController","UserActivityService","today","endOf","minValidDate","onChangeDate","saveLogsAsCSV","contextFilter","parseJSON","decorateLogs","activityLogsView","contextFilterLabels","typeFilterLabels","contextType","activityType","isAuthSuccess","isAuthFailure","authLogsDatatable","typeFilter","onChangeTypeFilter","AuthLogsViewController","filterState","saveAuthLogsAsCSV","authLogs","authLogsView","authLogsViewModule","activityLogsViewModule","UserActivity","$http","authLogsAsCSV","logsAsCSV","contexts","before","after","sortDesc","confirmPassword","updateUserPassword","skipPasswordChange","userCanSkip","newTransition","userRole","selectedTokens","isInitialAdmin","isDemoUser","CreateUserAccessTokenController","heading","AuthenticationController","URLHelper","passwordInputType","showOAuthLogin","showStandardLogin","AuthenticationError","loginInProgress","OAuthProvider","checkForEndpointsAsync","checkForLicensesAsync","postLoginSteps","oAuthLoginAsync","internalLoginAsync","authenticateUserAsync","manageOauthCodeReturn","authEnabledFlowAsync","toggleShowPassword","setPasswordInputType","generateOAuthLoginURI","determineOauthProvider","LoginURI","generateState","hasValidState","savedUUID","cleanParameters","authenticateUser","toggleStandardLogin","hideInternalAuth","getParameter","CreateCustomTemplateViewController","fromStack","templateNameRegex","createCustomTemplateAsync","createCustomTemplateFromGitRepository","CustomTemplatesViewController","DOCKER_STANDALONE","DOCKER_SWARM_MODE","showAdvancedOptions","isEditorVisible","deployable","getTemplatesAsync","removeTemplates","removeTemplatesAsync","createStackAsync","selectTemplateAsync","unselectTemplateAsync","getNetworksAsync","confirmDeleteAsync","createAction","isDeployable","templateType","EditCustomTemplateViewController","getTemplateAsync","submitActionAsync","vouchersUploading","vouchersUploaded","deviceIDs","DeviceName","DeviceProfile","VoucherFiles","PortainerURL","Suffix","onVoucherFilesChange","uploads","f","responses","createEndpointAndConfigureDevice","deviceID","createRemoteEndpoint","edgeID","AddProfileController","createProfileAsync","EditProfileController","profileID","updateProfileAsync","EndpointRegistriesController","EndpointAccessController","updateAccessAsync","EndpointController","clearAMTManagementInfo","versionValue","ManagementInfo","onChangeCheckInInterval","onChangeEdgeSettings","platformName","azureEndpoint","agentEndpoint","edgeEndpoint","edgeAssociated","availableEdgeAgentCheckinOptions","showAMTInfo","showNomad","edgeScriptCommands","SecurityFormData","copyEdgeAgentKey","onDisassociateEndpoint","disassociateEndpoint","onGpusChange","securityData","initialTagIds","verifyGpus","AzureCredentials","ApplicationID","TenantID","AuthenticationKey","showSecurity","evt","edgeKeyDetails","keyInformation","decodedKey","instanceURL","tunnelServerAddr","decodeEdgeKey","amtInfo","RawOutput","EndpointsController","numbers","EndpointKVMController","maximized","maximize","minimize","ider","kvm","sol","redirection","userConsent","mpsAuthorization","mpsToken","KVMControlAngular","server","KVM","authToken","mouseDebounceTime","canvasHeight","canvasWidth","GroupsController","deleteGroup","wait","seconds","BackupService","REDIRECT_REASON_TIMEOUT","restoreAndRefresh","restoreAsyncFn","backupInProgress","waitPortainerRestart","BackupFile","restoreFromS3","AccessKeyID","AccessKeyId","CronRule","SecretAccessKey","BucketName","Filename","RESTORE_FORM_TYPES","S3","FILE","ConfirmPassword","restoreFormType","showInitPassword","showRestorePortainer","togglePanel","createAdminUser","initAdministrator","InitEndpointController","createLocalEndpointAsync","createLocalKubernetesEndpointAsync","createAgentEndpointAsync","endpointSections","isConnectButtonDisabled","createLocalEndpoint","createLocalKubernetesEndpoint","createAgentEndpoint","skipEndpointCreation","routeName","InitLicenseViewController","InternalAuthenticationController","LogoutController","MainController","CreateRegistryController","Docker","Proget","originViewReference","originalEndpointId","retrieveGitlabRegistries","selectDockerHub","selectEcr","selectQuayRegistry","selectProGetRegistry","selectAzureRegistry","selectGitlabRegistry","selectCustomRegistry","setRegistry","useDefaultQuayConfiguration","useDefaultGitlabConfiguration","useDefaultEcrConfiguration","gitlabProjects","registriesNames","registryValue","availableRegistry","RegistryController","toggleQuayUseOrganisation","passwordLabel","nameAlreadyExists","getRegistryProvider","registryType","nonBrowsableTypes","regAttrMsg","registriesMsg","deleteSelectedRegistries","ArrowDownCircle","Ldap","SettingsAuthenticationController","prepareLDAPSettings","tlscaFile","isADServer","uploadRequired","authMethod","availableUserSessionTimeoutOptions","authOptions","onChangeAuthMethod","onChangePasswordLength","authenticationMethodSelected","isOauthEnabled","LDAPConnectivityCheck","connectivityCheckInProgress","failedConnectivityCheck","successfulConnectivityCheck","saveSettings","isLDAPFormValid","isTLSMode","SettingsEdgeComputeController","onSubmitEdgeCompute","onSubmitOpenAMT","onSubmitFDO","DownloadCloud","UploadCloud","getS3SettingsPayload","passwordProtectS3","passwordS3","scheduleAutomaticBackups","cronRule","bucketName","CloudApiKeys","s3BackupFeatureId","backupOptions","availableKubeconfigExpiryOptions","featureLimited","BACKUP_FORM_TYPES","passwordProtect","backupFormType","onToggleEnableTelemetry","onToggleCustomLogo","onToggleAutoBackups","onBackupOptionsChange","removeFilteredContainerLabel","addFilteredContainerLabel","downloadBackup","saveApplicationSettings","saveS3BackupSettings","exportBackup","getAutoUpdatesProperty","editorYamlValidationError","uploadYamlValidationError","selectedTemplateId","addAdditionalFiles","removeAdditionalFiles","composeSyntaxMaxVersion","ComposeSyntaxMaxVersion","getContainerNames","StackStatus","stopStackAsync","startStackAsync","retrieveSwarmStackResources","stackFilter","assignSwarmStackResources","STACK_TYPES","onPruneChange","migrateRequest","removeStack","detachStackFromGit","associateStack","stopStack","startStack","canManageStacks","regular","orphaned","DockerSwarm","loadExternalSwarmStack","loadExternalStack","resourcesPromise","isSwarm","Active","editorReadOnly","StacksController","deleteSelectedStacks","TagsController","checkNameValidity","removeUserFromArray","pagination_count_users","pagination_count_members","sortTypeUsers","sortReverseUsers","teamMembers","leaderCount","orderUsers","changePaginationCountUsers","sortTypeGroupMembers","sortReverseGroupMembers","orderGroupMembers","changePaginationCountGroupMembers","deleteTeam","promoteToLeader","updateMembership","MembershipId","demoteToMember","addAllUsers","addUser","removeAllUsers","deleteMembership","removeUser","assignUsersAndMembers","Leaders","team_name","addTeam","teamName","createTeam","deleteSelectedTeams","createStackFromTemplate","createComposeStackFromTemplate","templateConfiguration","createTemplateConfiguration","generatedVolumeCount","determineRequiredGeneratedVolumeCount","generatedVolumeIds","createXAutoGeneratedLocalVolumes","updateContainerConfigurationWithVolumes","createContainerFromTemplate","updatePasswordError","Administrator","handleAdministratorChange","deleteUser","updateUser","oldUsername","isCurrentUser","isSubmitEnabled","isDeleteDisabled","userCreationError","validUsername","checkUsernameValidity","toLocaleLowerCase","createUser","deleteSelectedUsers","assignTeamLeaders","ImageName","getImagesStatus","setupTests","_module_exports"],"sourceRoot":""}