{"version":3,"file":"loginweb/sm-vend-sm.9baca8bd.js","mappings":"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B,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KACrBA,EAAiB,GAAI,KAnPvB,CAoPGA,IAAiBxZ,EAAQwZ,aAAeA,EAAe,KAC1D,IAAIK,EAAmB,CAACL,EAAa2D,GAAI3D,EAAa4D,GAAI5D,EAAa6D,GAAI7D,EAAa8D,GAAI9D,EAAa+D,GAAI/D,EAAagE,GAAIhE,EAAaiE,GAAIjE,EAAakE,GAAIlE,EAAamE,GAAInE,EAAaoE,GAAIpE,EAAaqE,GAAIrE,EAAasE,GAAItE,EAAauE,GAAIvE,EAAawE,GAAIxE,EAAayE,GAAIzE,EAAa0E,GAAI1E,EAAa2E,GAAI3E,EAAa4E,GAAI5E,EAAa6E,GAAI7E,EAAa8E,GAAI9E,EAAa+E,GAAI/E,EAAagF,GAAIhF,EAAaiF,GAAIjF,EAAakF,GAAIlF,EAAamF,GAAInF,EAAaoF,GAAIpF,EAAaqF,GAAIrF,EAAasF,GAAItF,EAAauF,GAAIvF,EAAawF,GAAIxF,EAAayF,GAAIzF,EAAa0F,GAAI1F,EAAa2F,GAAI3F,EAAa4F,IACtlBpf,EAAQ6Z,iBAAmBA,EAC3B,IAAII,EAAmB,CAACT,EAAaiE,GAAIjE,EAAa2D,GAAI3D,EAAa8D,IACvEtd,EAAQia,iBAAmBA,EAC3B,IAAID,EAAiB,CAACR,EAAauE,GAAIvE,EAAa6F,GAAI7F,EAAa8F,GAAI9F,EAAa+F,GAAI/F,EAAa4E,GAAI5E,EAAagG,IACxHxf,EAAQga,eAAiBA,EACzB,IAAID,EAA0B,CAACP,EAAaiG,GAAIjG,EAAakG,GAAIlG,EAAamG,GAAInG,EAAajC,GAAIiC,EAAaoG,IAChH5f,EAAQ+Z,wBAA0BA,EAClC,IAAID,EAAiB,CAACN,EAAa2D,GAAI3D,EAAa4D,GAAI5D,EAAa6D,GAAI7D,EAAa+D,GAAI/D,EAAagE,GAAIhE,EAAaiE,GAAIjE,EAAakE,GAAIlE,EAAamE,GAAInE,EAAaoE,GAAIpE,EAAaqE,GAAIrE,EAAasE,GAAItE,EAAauE,GAAIvE,EAAawE,GAAIxE,EAAayE,GAAIzE,EAAa0E,GAAI1E,EAAa2E,GAAI3E,EAAa4E,GAAI5E,EAAa6E,GAAI7E,EAAa8E,GAAI9E,EAAa+E,GAAI/E,EAAagF,GAAIhF,EAAaiF,GAAIjF,EAAakF,GAAIlF,EAAamF,GAAInF,EAAaoF,GAAIpF,EAAaqF,GAAIrF,EAAasF,GAAItF,EAAauF,GAAIvF,EAAawF,GAAIxF,EAAayF,IAChhBjf,EAAQ8Z,eAAiBA,EACzB,IAAIJ,EAA0B,CAACF,EAAaqG,GAAIrG,EAAasG,GAAItG,EAAauG,GAAIvG,EAAawG,GAAIxG,EAAatB,GAAIsB,EAAa8D,GAAI9D,EAAa2F,GAAI3F,EAAakE,GAAIlE,EAAayG,GAAIzG,EAAa0G,GAAI1G,EAAa2G,GAAI3G,EAAa4G,GAAI5G,EAAa2D,GAAI3D,EAAa6G,GAAI7G,EAAa8G,GAAI9G,EAAa4D,GAAI5D,EAAa6D,GAAI7D,EAAa+G,GAAI/G,EAAa+D,GAAI/D,EAAagE,GAAIhE,EAAaiE,GAAIjE,EAAamE,GAAInE,EAAaoE,GAAIpE,EAAaqE,GAAIrE,EAAasE,GAAItE,EAAagH,GAAIhH,EAAaiH,GAAIjH,EAAawE,GAAIxE,EAAayE,GAAIzE,EAAa0E,GAAI1E,EAAa2E,GAAI3E,EAAa0F,GAAI1F,EAAa6E,GAAI7E,EAAa8E,GAAI9E,EAAa+E,GAAI/E,EAAagF,GAAIhF,EAAaiF,GAAIjF,EAAakH,GAAIlH,EAAamH,GAAInH,EAAaoH,GAAIpH,EAAaqH,GAAIrH,EAAasH,GAAItH,EAAakF,GAAIlF,EAAamF,GAAInF,EAAaoF,GAAIpF,EAAauH,GAAIvH,EAAaqF,GAAIrF,EAAawH,GAAIxH,EAAasF,GAAItF,EAAayH,GAAIzH,EAAa0H,GAAI1H,EAAawF,GAAIxF,EAAayF,GAAIzF,EAAa2H,GAAI3H,EAAa4H,GAAI5H,EAAa6H,GAAI7H,EAAa8H,GAAI9H,EAAa+H,GAAI/H,EAAagI,GAAIhI,EAAauE,GAAIvE,EAAa6F,GAAI7F,EAAa8F,GAAI9F,EAAa+F,GAAI/F,EAAa4E,GAAI5E,EAAagG,GAAIhG,EAAaiI,GAAIjI,EAAakI,GAAIlI,EAAamI,GAAInI,EAAaoI,GAAIpI,EAAaqI,GAAIrI,EAAa4F,GAAI5F,EAAasI,GAAItI,EAAauF,GAAIvF,EAAauI,GAAIvI,EAAawI,GAAIxI,EAAayI,GAAIzI,EAAa0I,GAAI1I,EAAa2I,GAAI3I,EAAa4I,GAAI5I,EAAa6I,GAAI7I,EAAa8I,GAAI9I,EAAa+I,GAAI/I,EAAagJ,GAAIhJ,EAAaiJ,GAAIjJ,EAAakJ,GAAIlJ,EAAamJ,GAAInJ,EAAaoJ,GAAIpJ,EAAaqJ,GAAIrJ,EAAasJ,GAAItJ,EAAauJ,GAAIvJ,EAAawJ,GAAIxJ,EAAayJ,GAAIzJ,EAAa0J,GAAI1J,EAAa2J,GAAI3J,EAAa4J,GAAI5J,EAAa6J,GAAI7J,EAAa8J,GAAI9J,EAAa+J,GAAI/J,EAAagK,GAAIhK,EAAaiK,GAAIjK,EAAakK,GAAIlK,EAAamK,GAAInK,EAAaoK,GAAIpK,EAAaqK,GAAIrK,EAAasK,GAAItK,EAAauK,GAAIvK,EAAawK,GAAIxK,EAAayK,GAAIzK,EAAa0K,GAAI1K,EAAa2K,GAAI3K,EAAa4K,GAAI5K,EAAa6K,GAAI7K,EAAa8K,GAAI9K,EAAa+K,GAAI/K,EAAagL,GAAIhL,EAAaiL,GAAIjL,EAAakL,GAAIlL,EAAamL,GAAInL,EAAaoL,GAAIpL,EAAaqL,GAAIrL,EAAasL,GAAItL,EAAauL,GAAIvL,EAAawL,GAAIxL,EAAayL,GAAIzL,EAAa0L,GAAI1L,EAAa2L,GAAI3L,EAAa4L,GAAI5L,EAAa6L,GAAI7L,EAAa8L,GAAI9L,EAAa+L,GAAI/L,EAAagM,GAAIhM,EAAaiM,GAAIjM,EAAakM,GAAIlM,EAAaiG,GAAIjG,EAAamM,GAAInM,EAAaoM,GAAIpM,EAAaqM,GAAIrM,EAAasM,GAAItM,EAAauM,GAAIvM,EAAawM,GAAIxM,EAAayM,GAAIzM,EAAa0M,GAAI1M,EAAa2M,GAAI3M,EAAa4M,GAAI5M,EAAa6M,GAAI7M,EAAa8M,GAAI9M,EAAa+M,GAAI/M,EAAagN,GAAIhN,EAAaiN,GAAIjN,EAAakN,GAAIlN,EAAamN,GAAInN,EAAaoN,GAAIpN,EAAaqN,GAAIrN,EAAasN,GAAItN,EAAauN,GAAIvN,EAAawN,GAAIxN,EAAayN,GAAIzN,EAAa0N,GAAI1N,EAAa2N,GAAI3N,EAAa4N,GAAI5N,EAAa6N,GAAI7N,EAAa8N,GAAI9N,EAAa+N,GAAI/N,EAAagO,GAAIhO,EAAaiO,GAAIjO,EAAakO,GAAIlO,EAAamO,GAAInO,EAAaoO,GAAIpO,EAAaqO,GAAIrO,EAAasO,GAAItO,EAAauO,GAAIvO,EAAawO,GAAIxO,EAAayO,GAAIzO,EAAa0O,GAAI1O,EAAa2O,GAAI3O,EAAa4O,GAAI5O,EAAa6O,GAAI7O,EAAa8O,GAAI9O,EAAa+O,GAAI/O,EAAagP,GAAIhP,EAAaiP,GAAIjP,EAAakP,GAAIlP,EAAamP,GAAInP,EAAaoP,GAAIpP,EAAaqP,GAAIrP,EAAasP,GAAItP,EAAauP,GAAIvP,EAAawP,GAAIxP,EAAayP,GAAIzP,EAAa0P,GAAI1P,EAAa2P,GAAI3P,EAAa4P,GAAI5P,EAAa6P,GAAI7P,EAAa8P,GAAI9P,EAAakG,GAAIlG,EAAa+P,GAAI/P,EAAagQ,GAAIhQ,EAAaiQ,GAAIjQ,EAAakQ,GAAIlQ,EAAamQ,GAAInQ,EAAaoQ,GAAIpQ,EAAaqQ,GAAIrQ,EAAasQ,GAAItQ,EAAauQ,GAAIvQ,EAAawQ,GAAIxQ,EAAayQ,GAAIzQ,EAAa0Q,GAAI1Q,EAAa2Q,GAAI3Q,EAAa4Q,GAAI5Q,EAAa6Q,GAAI7Q,EAAa8Q,GAAI9Q,EAAa+Q,GAAI/Q,EAAagR,GAAIhR,EAAaiR,GAAIjR,EAAakR,GAAIlR,EAAamR,GAAInR,EAAaoR,GAAIpR,EAAaqR,GAAIrR,EAAasR,GAAItR,EAAauR,GAAIvR,EAAawR,GAAIxR,EAAayR,GAAIzR,EAAa0R,GAAI1R,EAAa2R,GAAI3R,EAAa4R,GAAI5R,EAAa6R,GAAI7R,EAAa8R,GAAI9R,EAAamG,GAAInG,EAAajC,GAAIiC,EAAa+R,GAAI/R,EAAagS,GAAIhS,EAAaiS,GAAIjS,EAAakS,GAAIlS,EAAamS,GAAInS,EAAaoG,GAAIpG,EAAaoS,GAAIpS,EAAaqS,GAAIrS,EAAasS,GAAItS,EAAauS,GAAIvS,EAAawS,GAAIxS,EAAayS,GAAIzS,EAAa0S,GAAI1S,EAAa2S,IAC9jInsB,EAAQ0Z,wBAA0BA,G,aCtQlC5Z,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQqX,QAAUrX,EAAQosB,iBAAc,EACxC,MAAMC,EAAa,yBACnBrsB,EAAQosB,YAAcvmB,OAAO,eAoB7B7F,EAAQqX,QAnBQiV,IAEd,GAAmB,mBAARC,IACT,MAAM,IAAIC,MAAM,2HAGlB,GAAuB,iBAAZF,EACT,OAAOtsB,EAAQosB,YAGjB,MAAMrV,EAAMuV,EAAQG,WAAW,MAAQ,QAAQH,IAE/CA,EAAQG,WAAW,MAAiBJ,EAAW9d,KAAK+d,GAA1BA,EAA+C,UAAUA,IACnF,IACE,OAAO,IAAIC,IAAIxV,GAAK2V,SACpB,MAAOC,GACP,OAAO3sB,EAAQosB,e,eCtBnBtsB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ4sB,oBAAsB5sB,EAAQosB,YAAcpsB,EAAQqX,QAAUrX,EAAQyX,gBAAkBzX,EAAQoX,iBAAc,EAGtH,IAAIyV,EAAiB,EAAQ,KAC7B/sB,OAAOC,eAAeC,EAAS,cAAe,CAC5C+E,YAAY,EACZoE,IAAK,WACH,OAAO0jB,EAAezV,eAG1BtX,OAAOC,eAAeC,EAAS,kBAAmB,CAChD+E,YAAY,EACZoE,IAAK,WACH,OAAO0jB,EAAepV,mBAG1B,IAAIqV,EAAa,EAAQ,MACzBhtB,OAAOC,eAAeC,EAAS,UAAW,CACxC+E,YAAY,EACZoE,IAAK,WACH,OAAO2jB,EAAWzV,WAGtBvX,OAAOC,eAAeC,EAAS,cAAe,CAC5C+E,YAAY,EACZoE,IAAK,WACH,OAAO2jB,EAAWV,eAGtB,IAAIW,EAAa,EAAQ,KACzBjtB,OAAOC,eAAeC,EAAS,sBAAuB,CACpD+E,YAAY,EACZoE,IAAK,WACH,OAAO4jB,EAAWH,wB,cCpCtB9sB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQoX,YAAcpX,EAAQyX,gBAAkBzX,EAAQgtB,gCAA6B,EACrF,MAAMC,EAAqB,EAAQ,MAC7BC,EAAY,EAAQ,MACpBH,EAAa,EAAQ,KACrBI,EAAe,EAAQ,MAE7B,IAAI1V,EADJzX,EAAQgtB,2BAA6B,CAAC,YAAa,QAAS,UAAW,UAAW,QAElF,SAAWvV,GAITA,EAAyB,QAAI,UAI7BA,EAAoB,GAAI,KAMxBA,EAA0B,SAAI,WAI9BA,EAA2B,UAAI,aAI/BA,EAAwB,OAAI,SAtB9B,CAuBGA,EAAkBzX,EAAQyX,kBAAoBzX,EAAQyX,gBAAkB,KAC3E,MAAM2V,WAAa,CAACC,EAAOtb,IAClBA,GAAS,GAAKA,EAAQsb,EAAM9qB,OAAS8qB,EAAMtb,QAASpO,EAEvD2pB,uBAAyB,CAACC,EAAQxb,KAC/B,CACL4F,WAAY4V,EAAOjf,MAAM,EAAGkB,KAAKge,IAAI,EAAGzb,IACxC0b,OAAQL,WAAWG,EAAQxb,GAC3B2b,gBAAiBH,EAAOjf,MAAMyD,EAAQ,KAG1C,IAAI4b,EACAC,EAoDJ5tB,EAAQoX,YAhDYsV,IAClB,MAAMmB,GAAqB,EAAId,EAAWe,UAAUpB,GACpD,GAAImB,EAAmBrW,OAASuV,EAAWgB,uBAAuBvB,MAChE,MAAO,CACLhV,KAAMC,EAAgBuW,QACtBtB,SAAAA,EACAuB,OAAQJ,EAAmBI,QAG/B,GAAIJ,EAAmBrW,OAASuV,EAAWgB,uBAAuBG,QAChE,MAAO,CACL1W,KAAMC,EAAgB0W,GACtBzB,SAAUmB,EAAmBO,GAC7BC,UAAWR,EAAmBQ,WAGlC,MAAM,OACJd,EAAM,OACNE,GACEI,EACJ,GAAiB,KAAbnB,GAAmB1sB,EAAQgtB,2BAA2BxpB,SAAS+pB,EAAOA,EAAOhrB,OAAS,IACxF,MAAO,CACLiV,KAAMC,EAAgB6W,SACtB5B,SAAUe,EACVF,OAAAA,GAIJI,EAAkBA,MAAAA,EAAyDA,GAAkB,EAAIR,EAAaoB,WAAWtB,EAAmBuB,WAC5IZ,EAAoBA,MAAAA,EAA6DA,GAAoB,EAAIT,EAAaoB,WAAWtB,EAAmBwB,aACpJ,MAAMC,GAAY,EAAIxB,EAAUyB,kBAAkBpB,EAAQI,GACpDiB,GAAc,EAAI1B,EAAUyB,kBAAkBpB,EAAQK,GAC5D,GAAyB,IAArBc,EAAUnsB,QAAuC,IAAvBqsB,EAAYrsB,OACxC,MAAO,CACLiV,KAAMC,EAAgBoX,UACtBnC,SAAUe,EACVF,OAAAA,GAGJ,MAAMuB,EAA4BvB,EAAOhrB,OAASiN,KAAKge,IAAIoB,EAAYrsB,OAAQmsB,EAAUnsB,QAAU,EAC7FwsB,EAAqBxB,EAAOhrB,OAASmsB,EAAUnsB,OAAS,EAC9D,OAAOzC,OAAOkvB,OAAO,CACnBxX,KAAMC,EAAgBC,OACtBgV,SAAUe,EACVF,OAAAA,EACA0B,MAAO3B,uBAAuBC,EAAQwB,IACrCzB,uBAAuBC,EAAQuB,M,oBC/FpC,IAAII,EAAkBjjB,MAAQA,KAAKijB,iBAAmB,SAAUC,GAC9D,OAAOA,GAAOA,EAAI5lB,WAAa4lB,EAAM,CACnC,QAAWA,IAGfrvB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ8tB,SAAW9tB,EAAQ+tB,uBAAyB/tB,EAAQ4sB,yBAAsB,EAClF,MAAMwC,EAAUF,EAAgB,EAAQ,OAQxC,IAAItC,EAQAmB,GAPJ,SAAWnB,GACTA,EAAgC,WAAI,cACpCA,EAAqC,gBAAI,oBACzCA,EAAoC,eAAI,mBACxCA,EAAoC,eAAI,mBACxCA,EAA2C,sBAAI,0BALjD,CAMGA,EAAsB5sB,EAAQ4sB,sBAAwB5sB,EAAQ4sB,oBAAsB,KAEvF,SAAWmB,GACTA,EAAgC,QAAI,WACpCA,EAAoC,YAAI,eACxCA,EAA8B,MAAI,QAHpC,CAIGA,EAAyB/tB,EAAQ+tB,yBAA2B/tB,EAAQ+tB,uBAAyB,KAChG,MAAMsB,sBAAwB3pB,IACrB,CACL8R,KAAMoV,EAAoB0C,WAC1Btf,QAAS,mBAAmB/J,OAAOP,oCACnC6pB,OAAQ,IAGNC,2BAA6B/B,IACjC,MAAMlrB,EAASkrB,EAAOlrB,OACtB,MAAO,CACLiV,KAAMoV,EAAoB6C,gBAC1Bzf,QAAS,WAAWyd,6BAAkClrB,mDACtDgtB,OAAQhtB,IAGNmtB,0BAA4B,CAACC,EAAOJ,KACxC,MAAMhtB,EAASotB,EAAMptB,OACrB,MAAO,CACLiV,KAAMoV,EAAoBgD,eAC1B5f,QAAS,UAAU2f,6BAAiCptB,0CACpDgtB,OAAAA,IAGEM,0BAA4B,CAACF,EAAOJ,KACxC,MAAMhtB,EAASotB,EAAMptB,OACrB,MAAO,CACLiV,KAAMoV,EAAoBkD,eAC1B9f,QAAS,UAAU2f,4BAAgCptB,kDACnDgtB,OAAAA,IAGEQ,iCAAmC,CAACJ,EAAOK,EAAkBT,KAC1D,CACL/X,KAAMoV,EAAoBqD,sBAC1BjgB,QAAS,UAAU2f,kCAAsCK,gBAA+BT,KACxFA,OAAAA,IAiEJvvB,EAAQ8tB,SA9DSpoB,IAEf,GAAqB,iBAAVA,EACT,MAAO,CACL8R,KAAMuW,EAAuBvB,MAC7ByB,OAAQ,CAACoB,sBAAsB3pB,KAGnC,MAAMwqB,EAAexqB,EAAMyqB,OAGrBC,EAAmBF,EAAa9d,QAAQ,UAAW,IACnDic,EAAYe,EAAQ5oB,QAAQjC,QAAQ6rB,GAC1C,QAAkBzsB,IAAd0qB,EACF,MAAO,CACL7W,KAAMuW,EAAuBG,QAC7BE,GAAIgC,EACJ/B,UAAAA,GAGJ,GAAI6B,EAAa3tB,OAzEO,IA0EtB,MAAO,CACLiV,KAAMuW,EAAuBvB,MAC7ByB,OAAQ,CAACuB,2BAA2BU,KAGxC,MAAM3C,EAAS2C,EAAa5d,MAnFN,KACL,KAmFCib,EAAOA,EAAOhrB,OAAS,IAGvCgrB,EAAOtb,MAET,MAAMoe,EAAwB,GAC9B,IAAId,EAAS,EACb,IAAK,MAAMI,KAASpC,EAAQ,CAG1B,MAAMyC,EAAmB,cAAcnV,KAAK8U,GACxCK,EACFK,EAAsBrrB,KAAK+qB,iCAAiCJ,EAAOK,EAAiB,GAAIA,EAAiBje,MAAQ,IAInH4d,EAAMptB,OAlGe,EAmGnB8tB,EAAsBrrB,KAAK0qB,0BAA0BC,EAAOJ,IACnDI,EAAMptB,OAnGI,IAoGnB8tB,EAAsBrrB,KAAK6qB,0BAA0BF,EAAOJ,IAE9DA,GAAUI,EAAMptB,OAzGI,IAyGqBA,OAE3C,OAAI8tB,EAAsB9tB,OAAS,EAC1B,CACLiV,KAAMuW,EAAuBvB,MAC7ByB,OAAQoC,GAGL,CACL7Y,KAAMuW,EAAuBuC,YAC7B7C,OAAQyC,EACR3C,OAAAA,K,qBChIJ,IAAI2B,EAAkBjjB,MAAQA,KAAKijB,iBAAmB,SAAUC,GAC9D,OAAOA,GAAOA,EAAI5lB,WAAa4lB,EAAM,CACnC,QAAWA,IAGfrvB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQyuB,YAAczuB,EAAQwuB,eAAY,EAC1C,MAAM+B,EAAerB,EAAgB,EAAQ,OAC7ClvB,EAAQwuB,UAAY+B,EAAa/pB,QACjC,MAAMgqB,EAAiBtB,EAAgB,EAAQ,OAC/ClvB,EAAQyuB,YAAc+B,EAAehqB,S,aCZrC1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQywB,UAAYzwB,EAAQ0wB,SAAW1wB,EAAQ2wB,MAAQ3wB,EAAQ4wB,KAAO5wB,EAAQ6wB,KAAO7wB,EAAQ8wB,QAAK,EAElG9wB,EAAQ8wB,GAAK,IACb9wB,EAAQ6wB,KAAO,IACf7wB,EAAQ4wB,KAAO,IACf5wB,EAAQ2wB,MAAQ,IAChB3wB,EAAQ0wB,SAAW,IACnB1wB,EAAQywB,UAAY,K,qBCVpB,IAAIM,EAAkB9kB,MAAQA,KAAK8kB,kBAAoBjxB,OAAOmV,OAAS,SAAUrQ,EAAGosB,EAAG1V,EAAG2V,QAC7EttB,IAAPstB,IAAkBA,EAAK3V,GAC3Bxb,OAAOC,eAAe6E,EAAGqsB,EAAI,CAC3BlsB,YAAY,EACZoE,IAAK,WACH,OAAO6nB,EAAE1V,OAGX,SAAU1W,EAAGosB,EAAG1V,EAAG2V,QACVttB,IAAPstB,IAAkBA,EAAK3V,GAC3B1W,EAAEqsB,GAAMD,EAAE1V,KAER4V,EAAqBjlB,MAAQA,KAAKilB,qBAAuBpxB,OAAOmV,OAAS,SAAUrQ,EAAG+D,GACxF7I,OAAOC,eAAe6E,EAAG,UAAW,CAClCG,YAAY,EACZ9E,MAAO0I,KAEP,SAAU/D,EAAG+D,GACf/D,EAAW,QAAI+D,IAEbwoB,EAAellB,MAAQA,KAAKklB,cAAgB,SAAUhC,GACxD,GAAIA,GAAOA,EAAI5lB,WAAY,OAAO4lB,EAClC,IAAItjB,EAAS,GACb,GAAW,MAAPsjB,EAAa,IAAK,IAAI7T,KAAK6T,EAAe,YAAN7T,GAAmBxb,OAAO6C,UAAUiH,eAAe/G,KAAKssB,EAAK7T,IAAIyV,EAAgBllB,EAAQsjB,EAAK7T,GAEtI,OADA4V,EAAmBrlB,EAAQsjB,GACpBtjB,GAET/L,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ2uB,sBAAmB,EAC3B,MAAMyC,EAAaD,EAAa,EAAQ,OAuBxCnxB,EAAQ2uB,iBAtBiB,CAACpB,EAAQ8D,KAChC,MAAMC,EAAgB/D,EAAOjf,QACvBijB,EAAO,GACb,IAAItd,EAAOod,EACX,KAAgC,IAAzBC,EAAc/uB,QAAc,CACjC,MAAMotB,EAAQ2B,EAAcrf,MACtBuf,EAAiB7B,EAAMzT,cAC7B,GAAIjI,EAAK5B,SAAS5I,IAAI2nB,EAAWV,UAAW,CAC1C,GAAIzc,EAAK5B,SAAS5I,IAAI2nB,EAAWX,UAAYe,GAC3C,MAEFvd,EAAOA,EAAK5B,SAASlJ,IAAIioB,EAAWV,cAC/B,CACL,IAA0C,IAAtCzc,EAAK5B,SAAS5I,IAAI+nB,GACpB,MAEFvd,EAAOA,EAAK5B,SAASlJ,IAAIqoB,GAE3BD,EAAKE,QAAQ9B,GAEf,OAAO4B,I,aCpDTzxB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ0xB,iBAAmB1xB,EAAQ2xB,eAAiB3xB,EAAQ4xB,gBAAkB5xB,EAAQ6xB,oBAAiB,EACvG7xB,EAAQ6xB,eAAiBhsB,OAAO,QAChC7F,EAAQ4xB,gBAAkB/rB,OAAO,SAOjC7F,EAAQ2xB,eANe,KACd,CACLna,KAAMxX,EAAQ6xB,eACdxf,SAAU,IAAIyf,MAiBlB9xB,EAAQ0xB,iBAbiB,CAACK,EAAQpC,KAChC,IAAIqC,EAAQD,EAAO1f,SAASlJ,IAAIwmB,GAUhC,YATchsB,IAAVquB,IACFA,EAAQ,CACNxa,KAAMxX,EAAQ4xB,gBACdjC,MAAAA,EACAtd,SAAU,IAAIyf,IACdC,OAAAA,GAEFA,EAAO1f,SAASxI,IAAI8lB,EAAOqC,IAEtBA,I,qBCxBT,IAAIjB,EAAkB9kB,MAAQA,KAAK8kB,kBAAoBjxB,OAAOmV,OAAS,SAAUrQ,EAAGosB,EAAG1V,EAAG2V,QAC7EttB,IAAPstB,IAAkBA,EAAK3V,GAC3Bxb,OAAOC,eAAe6E,EAAGqsB,EAAI,CAC3BlsB,YAAY,EACZoE,IAAK,WACH,OAAO6nB,EAAE1V,OAGX,SAAU1W,EAAGosB,EAAG1V,EAAG2V,QACVttB,IAAPstB,IAAkBA,EAAK3V,GAC3B1W,EAAEqsB,GAAMD,EAAE1V,KAER4V,EAAqBjlB,MAAQA,KAAKilB,qBAAuBpxB,OAAOmV,OAAS,SAAUrQ,EAAG+D,GACxF7I,OAAOC,eAAe6E,EAAG,UAAW,CAClCG,YAAY,EACZ9E,MAAO0I,KAEP,SAAU/D,EAAG+D,GACf/D,EAAW,QAAI+D,IAEbwoB,EAAellB,MAAQA,KAAKklB,cAAgB,SAAUhC,GACxD,GAAIA,GAAOA,EAAI5lB,WAAY,OAAO4lB,EAClC,IAAItjB,EAAS,GACb,GAAW,MAAPsjB,EAAa,IAAK,IAAI7T,KAAK6T,EAAe,YAAN7T,GAAmBxb,OAAO6C,UAAUiH,eAAe/G,KAAKssB,EAAK7T,IAAIyV,EAAgBllB,EAAQsjB,EAAK7T,GAEtI,OADA4V,EAAmBrlB,EAAQsjB,GACpBtjB,GAET/L,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQuuB,eAAY,EACpB,MAAM6C,EAAaD,EAAa,EAAQ,OAClCc,EAAU,EAAQ,MAiDxBjyB,EAAQuuB,UAhDU2D,IAChB,MAAMC,GAAW,EAAIF,EAAQN,kBAC7B,IAAIlE,EAAS,GACT2E,EAAaD,EAGble,EAAOke,EACX,MAAME,UAAY,KAChBpe,GAAO,EAAIge,EAAQP,kBAAkBU,EAAY3E,GACjDA,EAAS,IAEX,IAAK,IAAIvrB,EAAI,EAAGA,EAAIgwB,EAAe3vB,OAAQL,IAAK,CAC9C,MAAMowB,EAAOJ,EAAeK,OAAOrwB,GACnC,OAAQowB,GACN,KAAKlB,EAAWP,KAEZwB,YACA,SAEJ,KAAKjB,EAAWR,KAEZyB,YACAD,EAAane,EACb,SAEJ,KAAKmd,EAAWT,MAEZ0B,YACAD,EAAaD,EACb,SAEJ,KAAKf,EAAWN,GAEZ,GAAIsB,EAAW5a,OAASya,EAAQJ,eAC9B,MAAM,IAAIrF,MAAM,wCAAwCtqB,wDAE1DmwB,YACAD,EAAaA,EAAWL,OACxB,SAGNtE,GAAU6E,EAKZ,MAHe,KAAX7E,GACF4E,YAEKF,I,eC/ETryB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQwyB,0BAAuB,EAC/BxyB,EAAQyyB,oBAAsBA,oBAC9BzyB,EAAQ0yB,QAAUA,QAClB1yB,EAAQ2yB,UA6FR,SAASA,UAAU7jB,GACjB,IAAKA,EAAK8jB,GAAa,CACrB,IAAIC,EAAO,CACTC,YAAa,GACbC,qBAAsB,GACtBC,OAAQ,CACNC,KAAM,CACJlqB,GAAI,GACJmqB,iBAAiB,GAEnBC,qBAAsB,KACtBC,eAAgB,KAChB9Z,QAAS,KACT+Z,UAAW,GACXC,MAAO,IAETC,YAAad,oBAnDG,MAqDlB3jB,EAAK8jB,GAAcC,EAErB,OAAO/jB,EAAK8jB,IAhHd,IAAIY,EAASzpB,uBAAuB,EAAQ,OACxC0pB,EAAW,EAAQ,MACnBC,EAAS3pB,uBAAuB,EAAQ,OAC5C,SAASA,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAGb,SAASd,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAET,SAASlD,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAET,SAASU,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAgBT,IACIstB,EAAa,uCAQjB,SAASH,sBACP,IAAIkB,EAASjwB,UAAUnB,OAAS,QAAsBoB,IAAjBD,UAAU,GAAmBA,UAAU,GAVxD,IAWpB,MAAO,CACLkwB,KAAM,CACJC,SAAU,CACRC,OAAQ,GACRC,WAAY,GACZC,SAAU,KAGdC,OAAQ,GACRC,WAAY,GACZjB,KAAM,CACJkB,OAAO,EAAIT,EAAOltB,SAAS,SAC3B4tB,OAAO,EAAIV,EAAOltB,SAAS,SAC3BuC,GAAI4qB,IAwCV,SAASjB,QAAQ5jB,GACf,IAAKA,EAAK8jB,GACR,MAAM,IAAIpG,MAAM,0EAElB,OAAO1d,EAAK8jB,GAUa5yB,EAAQwyB,qBAAuB,SAASA,qBAAqB1jB,GACtF,MAAO,CACLulB,WAAY,SAASA,WAAWrB,GAC9B,MAAM,IAAIxG,MAAM,+BAElB8H,MAAO,SAASA,QACd,MAAM,IAAI9H,MAAM,0BAElB+H,OAAQ,SAASA,OAAOvB,GAGtB,IAAIH,EAAOH,QAAQ5jB,GAEnB,OADA+jB,EAAKG,OAASvxB,cAAcA,cAAc,GAAIoxB,EAAKG,QAASA,GACrDH,GAOT2B,iBAAkB,SAASA,iBAAiBC,GAC1C,IAAI5B,EAAOH,QAAQ5jB,GAEnB,OADA+jB,EAAKG,OAAOC,KAAOxxB,cAAcA,cAAc,GAAIoxB,EAAKG,OAAOC,MAAOwB,GAC/D5B,GAET6B,eAAgB,SAASA,iBAGvB,OAFehC,QAAQ5jB,GACEgkB,aAG3B6B,wBAAyB,SAASA,0BAGhC,OAFgBjC,QAAQ5jB,GACWikB,sBAGrC6B,MAAO,SAASA,MAAMC,GACpB,IAAIC,EAAaC,EAAcC,EAC3BnC,EAAOH,QAAQ5jB,GACnB,GAA4B,KAAxB+jB,EAAKG,OAAOC,KAAKlqB,GACnB,MAAM,IAAIyjB,MAAM,0EAElB,IAAIyI,EAAcJ,EAGdA,MAAAA,GAAqE,QAA9BC,EAAcD,EAAM5b,YAAkC,IAAhB6b,GAA0BA,EAAYI,QACrHD,EAAYhc,KAAKic,OAAQ,EAAIzB,EAAS0B,WAAWN,EAAM5b,KAAKic,QAE1DL,MAAAA,GAAsE,QAA/BE,EAAeF,EAAM5b,YAAmC,IAAjB8b,GAAuE,QAA3CC,EAAoBD,EAAa9b,YAAwC,IAAtB+b,GAAgCA,EAAkBE,QACjND,EAAYhc,KAAKA,KAAKic,OAAQ,EAAIzB,EAAS0B,WAAWN,EAAM5b,KAAKA,KAAKic,QAEpE1B,EAAOhtB,QAAQquB,EAAMvwB,QACvBuuB,EAAKU,YAAYU,OAAOjvB,KAAK6vB,GACzBrB,EAAOhtB,QAAQ4uB,gBAAkBP,EAAMvwB,MACzCuuB,EAAKU,YAAYW,WAAWlvB,KAAK6vB,EAAM5b,MAErC4b,EAAMvwB,OAASkvB,EAAOhtB,QAAQ6uB,WAAaR,EAAMvwB,OAASkvB,EAAOhtB,QAAQ8uB,oBAC3EzC,EAAKU,aAAc,EAAIE,EAAS8B,kBAAkBV,EAAOhC,EAAKU,cAEhEV,EAAKC,YAAY5tB,SAAQ,SAAUswB,GACjCA,EAAWX,EAAOhC,EAAKG,aAI7ByC,eAAgB,SAASA,eAAeZ,GACtC,IAAIhC,EAAOH,QAAQ5jB,GACnB+jB,EAAKE,qBAAqB7tB,SAAQ,SAAUswB,GAC1CA,EAAWX,EAAOhC,EAAKG,YAG3B0C,cAAe,SAASA,cAAcF,GAOzB9C,QAAQ5jB,GACdgkB,YAAY9tB,KAAKwwB,IAExBG,uBAAwB,SAASA,uBAAuBH,GAC3C9C,QAAQ5jB,GACdikB,qBAAqB/tB,KAAKwwB,IAEjCI,UAAW,SAASA,YAClB,OAAOlD,QAAQ5jB,GAAMkkB,QAEvB6C,eAAgB,SAASA,iBACvB,OAAOnD,QAAQ5jB,GAAMykB,gB,eCrO3BzzB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ81B,oBAAiB,EACzB91B,EAAQ+1B,yBA4ER,SAASA,yBAAyBC,GAChC,OAAOtlB,KAAKC,UAAU,CACpBrM,KAAM0xB,EAAU1xB,MAAQkvB,EAAOhtB,QAAQyvB,oBACvChd,KAAM+c,EAAU/c,QA9EpB,IAAIya,EAAS,EAAQ,MACjBF,EAASzpB,uBAAuB,EAAQ,OACxCmsB,EAAsB,EAAQ,MAC9BC,EAAkCpsB,uBAAuB,EAAQ,OACjEqsB,EAA4BrsB,uBAAuB,EAAQ,OAC3DssB,EAAuBtsB,uBAAuB,EAAQ,OACtDusB,EAA2BvsB,uBAAuB,EAAQ,OAC1DwsB,EAAuBxsB,uBAAuB,EAAQ,MAC1D,SAASA,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAGb,SAASd,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAET,SAASlD,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAET,SAASU,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAgBT,IACEwB,GAD0B,EAAI4sB,EAAO3sB,+BACHD,UAChCgI,EAAOhI,EAAYY,OAAS,EAAAqH,EAG5BynB,EAAkB1vB,EAAY,EAAQ,MAAsB,KAchE,IAAIgvB,EAAiB91B,EAAQ81B,eAAiBr0B,cAAcA,cAAc,IAAI,EAAIy0B,EAAoB1D,sBAAsB1jB,IAAQ,GAAI,CAQtIulB,WAAY,SAASA,WAAWrB,GAC9B,IAAIH,GAAO,EAAIqD,EAAoBvD,WAAW7jB,GAI9C,OAHA+jB,EAAKG,OAASA,EACdH,EAAKU,aAAc,EAAI2C,EAAoBzD,qBAAqBO,EAAOC,KAAKlqB,IAuBhF,SAAS0tB,cACP,IAAK3vB,EACH,OAEF,GAAIY,QAAUA,OAAOyZ,IAAMzZ,OAAOyZ,GAAG2U,eAGnC,OAQFU,EAAgBE,GAAG,QAAS,qBAAqB,SAASC,IAAI9B,GAC5D,GAAIA,GAASA,EAAM+B,cAAe,CAChC,IAAIC,EAAchC,EAAM+B,cAAcE,aAAa,mBACnD,GAAID,EAAa,CACf,IAAIE,EAAkBrmB,KAAKsmB,MAAMH,GAC7Bb,EAAYe,EAAgB9d,KAChC6c,EAAelB,MAAM,CACnBtwB,KAAMyyB,EAAgBzyB,MAAQkvB,EAAOhtB,QAAQyvB,oBAC7Chd,KAAM+c,SAMdF,EAAeJ,cAAcS,EAAgC3vB,SAE7DsvB,EAAeJ,cAAcU,EAA0B5vB,SAEvDsvB,EAAeJ,cAAcW,EAAqB7vB,SAElDsvB,EAAeJ,cAAcY,EAAyB9vB,SAEtDsvB,EAAeJ,cAAca,EAAqB/vB,SAKpD,SAASywB,uBACP,IAAIC,EAAiB,CAAC,cAAe,YAAa,IAAK,qBAAsB,uBAAwB,oBAAqB,iBAAkB,YAAa,sBAAuB,eAAgB,qBAAsB,oBACtNV,EAAgBE,GAAG,QAASQ,EAAexnB,KAAK,MAAM,SAASinB,IAAI9B,GACjE,GAAKA,EAAM1yB,OAAX,CAGA,IAAImC,EAAOuwB,EAAMrd,KACbrV,EAAS0yB,EAAM1yB,OACfg1B,EAAch1B,EAClB2zB,EAAeL,eAAe,CAC5BnxB,KAAMkvB,EAAOhtB,QAAQyvB,oBACrBhd,KAAM,CACJme,WAAY9yB,EACZ+yB,WAAY,YACZC,MAAOn1B,EAAOo1B,UACdC,KAAMr1B,EAAOs1B,UACbC,QAASP,EAAYO,cAAW/zB,EAChC1D,MAAOk3B,EAAYl3B,YAAS0D,SArBlCszB,GACAvvB,OAAOyZ,GAAKzZ,OAAOyZ,IAAM,GACzBzZ,OAAOyZ,GAAG2U,eAAiBA,EA9DzBW,GACO5D,GAETyB,MAAO,SAASA,QACd,IAAIzB,GAAO,EAAIqD,EAAoBxD,SAAS5jB,GAe5C,OAdA+jB,EAAKU,aAAc,EAAI2C,EAAoBzD,qBAAqBI,EAAKG,OAAOC,KAAKlqB,IACjF8pB,EAAKC,YAAc,GACnBD,EAAKE,qBAAuB,GAG5B9mB,KAAKypB,cAAcS,EAAgC3vB,SAEnDyF,KAAKypB,cAAcU,EAA0B5vB,SAE7CsvB,EAAeJ,cAAcW,EAAqB7vB,SAElDsvB,EAAeJ,cAAcY,EAAyB9vB,SAEtDsvB,EAAeJ,cAAca,EAAqB/vB,SAC3CqsB,M,eCrHX/yB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQ23B,iBAAmBA,iBAC3B33B,EAAQm1B,UAoCR,SAASA,UAAUD,GACjB,OAAKA,EACEA,EAAM9iB,QAAQ,eAAe,SAAUsJ,EAAGkc,EAAGC,GAClD,OAAOD,EAAExlB,QAAQ,KAAM,KAAOylB,KAFb,IApCrB73B,EAAQ83B,WA2BR,SAASA,WAAWvc,GAClB,OAAKA,EACc,IAAfA,EAAIhZ,OAAqB,IACV,IAAfgZ,EAAIhZ,OAAqB,KACtBgZ,EAAInJ,QAAQ,gBAAgB,SAAUsJ,EAAGkc,EAAGC,EAAGle,GACpD,OAAOie,EAAIC,EAAEzlB,QAAQ,KAAM,KAAOuH,KAJnB,IA3BnB3Z,EAAQu1B,iBAUR,SAASA,iBAAiBV,EAAOtB,GAC/B,GAAIsB,EAAMvwB,OAASkvB,EAAOhtB,QAAQ6uB,WAAaR,EAAMvwB,OAASkvB,EAAOhtB,QAAQ8uB,kBAC3E,OAAO/B,EAET,IAAIwE,EAAiBJ,iBAAiBpE,GAClCuB,EAAcD,EAAM5b,KACtB6a,EAASgB,EAAYhB,OACrBE,EAAWc,EAAYd,SACvBD,EAAae,EAAYf,WAM3B,OALAgE,EAAenE,KAAKC,SAAW,CAC7BC,OAAQA,EACRE,SAAUA,EACVD,WAAYA,GAEPgE,GAvBT,IAAIvE,EACJ,SAASzpB,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAHAyE,CAAuB,EAAQ,OAM5C,SAAS4tB,iBAAiBpE,GACxB,OAAO7iB,KAAKsmB,MAAMtmB,KAAKC,UAAU4iB,M,eCdnCzzB,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETH,OAAOC,eAAeC,EAAS,2BAA4B,CACzD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAO6uB,EAA0BxxB,WAGrC1G,OAAOC,eAAeC,EAAS,eAAgB,CAC7C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAO8uB,EAAOC,gBAGlBp4B,OAAOC,eAAeC,EAAS,iBAAkB,CAC/C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOgvB,EAAgBrC,kBAG3Bh2B,OAAOC,eAAeC,EAAS,qBAAsB,CACnD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAO8uB,EAAOG,sBAGlBt4B,OAAOC,eAAeC,EAAS,sBAAuB,CACpD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOkvB,EAAqB7xB,WAGhC1G,OAAOC,eAAeC,EAAS,0BAA2B,CACxD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOmvB,EAAyB9xB,WAGpC1G,OAAOC,eAAeC,EAAS,cAAe,CAC5C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOqqB,EAAOhtB,WAGlB1G,OAAOC,eAAeC,EAAS,2BAA4B,CACzD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOgvB,EAAgBpC,4BAG3B,IAAIoC,EAAkB,EAAQ,MAC1BE,EAAuBtuB,uBAAuB,EAAQ,OACtDiuB,EAA4BjuB,uBAAuB,EAAQ,OAC3DuuB,EAA2BvuB,uBAAuB,EAAQ,OAC1DypB,EAASzpB,uBAAuB,EAAQ,OACxCkuB,EAAS,EAAQ,MACrB,SAASluB,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,K,eC3DbxF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAI0zB,EAAS,EAAQ,MACjBhY,EAAI,EAAQ,MAyBD1b,EAAA,QAxBgB,SAASu4B,yBAAyBp4B,GAC/D,IAAImE,EAAOnE,EAAKmE,KACdk0B,EAAkBr4B,EAAK4zB,WACvBA,OAAiC,IAApByE,EAA6B,KAAOA,EACjDC,EAAiBt4B,EAAKu4B,UACtBA,OAA+B,IAAnBD,GAAoCA,EAChDpB,EAAal3B,EAAKk3B,WAClBD,EAAaj3B,EAAKi3B,WAClB/kB,EAAWlS,EAAKkS,SAclB,OAbiB,EAAIqhB,EAAO3sB,+BACbD,WACb4U,EAAEoa,eAAelB,MAAM,CACrBtwB,KAAMoX,EAAEid,YAAYvD,cACpBnc,KAAM,CACJ2f,cAAet0B,EACfyvB,WAAYA,EACZ2E,UAAWA,EACXtB,WAAYA,EACZC,WAAYA,KAIXhlB,GAGT9L,EAAOvG,QAAUA,EAAQwG,S,eC/BzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAIoJ,EAAS,EAAQ,MACjBsS,EAAI,EAAQ,MAgDD1b,EAAA,QA/CW,SAAS64B,oBAAoB14B,GACrD,IAAI2zB,EAAS3zB,EAAK2zB,OAChBE,EAAW7zB,EAAK6zB,SAChBD,EAAa5zB,EAAK4zB,WAClB+E,EAAO34B,EAAK24B,KACZ7F,EAAO9yB,EAAK8yB,KACZ3Z,EAAUnZ,EAAKmZ,QACfjH,EAAWlS,EAAKkS,SACd0mB,EAAuBD,EAAKE,eAC9BA,OAA0C,IAAzBD,GAA0CA,EACzDE,EAAWhG,EAAKlqB,GAClB4qB,OAAsB,IAAbsF,EAAsB,IAAMA,EACrCC,EAAgBjG,EAAKkG,QACrBC,OAA8B,IAAlBF,EAA2B,IAAMA,EAC7CG,EAAcpG,EAAKiC,MACnBA,OAAwB,IAAhBmE,EAAyB,GAAKA,EACtCC,EAAwBrG,EAAKsG,qBAC7BC,OAAwC,IAA1BF,EAAmC,YAAcA,EA4BjE,OA3BA,EAAIlwB,EAAOqwB,YAAW,WACpB/d,EAAEoa,eAAelB,MAAM,CACrBtwB,KAAMoX,EAAEid,YAAYtD,UACpBpc,KAAM,CACJme,WAAY1b,EAAEid,YAAYtD,UAC1BgC,WAAYvD,EACZE,SAAUA,EACVF,OAAQA,EACRC,WAAYA,EACZ9a,KAAM,CACJ+f,eAAgBA,EAChBrF,OAAQA,EACRyF,UAAWA,EACXlE,MAAOA,EACP5b,QAASA,EACTkgB,YAAaA,QAMrB,IAMOnnB,GAGT9L,EAAOvG,QAAUA,EAAQwG,S,eCtDzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAIoJ,EAAS,EAAQ,MACjBsS,EAAI,EAAQ,MAqDD1b,EAAA,QApDe,SAAS05B,wBAAwBv5B,GAC7D,IAAI2zB,EAAS3zB,EAAK2zB,OAChBE,EAAW7zB,EAAK6zB,SAChBX,EAAYlzB,EAAKkzB,UACjBU,EAAa5zB,EAAK4zB,WAClB+E,EAAO34B,EAAK24B,KACZ7F,EAAO9yB,EAAK8yB,KACZ3Z,EAAUnZ,EAAKmZ,QACfjH,EAAWlS,EAAKkS,SACd0mB,EAAuBD,EAAKE,eAC9BA,OAA0C,IAAzBD,GAA0CA,EACzDE,EAAWhG,EAAKlqB,GAClB4qB,OAAsB,IAAbsF,EAAsB,IAAMA,EACrCC,EAAgBjG,EAAKkG,QACrBC,OAA8B,IAAlBF,EAA2B,IAAMA,EAC7CG,EAAcpG,EAAKiC,MACnBA,OAAwB,IAAhBmE,EAAyB,GAAKA,EAkCxC,OAjCA,EAAIjwB,EAAOqwB,YAAW,WAEpB/d,EAAEoa,eAAevB,OAAO,CACtBT,OAAQA,EACRT,UAAWA,IASb3X,EAAEoa,eAAelB,MAAM,CACrBtwB,KAAMoX,EAAEid,YAAYrD,kBACpBrc,KAAM,CACJme,WAAY1b,EAAEid,YAAYrD,kBAC1B+B,WAAYvD,EACZA,OAAQA,EACRC,WAAYA,EACZC,SAAUA,EACV/a,KAAM,CACJ+f,eAAgBA,EAChBrF,OAAQA,EACRyF,UAAWA,EACXlE,MAAOA,EACPyE,YAAargB,QAMlB,CAACwa,EAAQT,EAAWW,IAChB3hB,GAGT9L,EAAOvG,QAAUA,EAAQwG,S,cC3DzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAI45B,EAEJ,SAAS7vB,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAJIyE,CAAuB,EAAQ,OAC5C8vB,EAAa,EAAQ,MAMzB,IACMC,EADFC,GACED,EAAc,KACX,SAAUE,EAAkBC,GAC7BA,EAAqBC,gBAEvB,EAAIL,EAAWM,gBAAgBF,EAAsBD,IAGhDF,IACHA,EAAc,IAAIF,EAAWpzB,QAAQyzB,IAEvCH,EAAYlF,MAAMoF,MAITh6B,EAAA,QAAkB+5B,EACjCxzB,EAAOvG,QAAUA,EAAQwG,S,aC3BzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QACA,SAASo6B,+BAA+BJ,EAAkBC,GAGxD,IAAwC,IAApCD,EAAiB/gB,KAAKyf,YAAuBsB,EAAiB/gB,KAAKoe,aAAe2C,EAAiB/gB,KAAKme,WAC1G,OAEF,IAAIpB,EAAYtlB,KAAKsmB,MAAMtmB,KAAKC,UAAUqpB,EAAiB/gB,OACvDka,EAAuB8G,EAAqB9G,qBAE5CkH,EAAY,CACdC,SAAU,GACVC,QAAS,GACTxjB,IAAK,GACLyjB,OAAQ,GACRC,WANYR,EAAqB5G,WAQnCgH,EAAUC,SAAWtE,EAAUoB,WAC/BiD,EAAUE,QAAUvE,EAAUqB,WAC9BgD,EAAUtjB,IAAMrP,OAAOgzB,SAASC,KAChCN,EAAUG,OAASxE,EAAUwE,QAAU,cAChCxE,EAAUoB,kBACVpB,EAAUqB,kBACVrB,EAAUwE,OAIbrH,GACFyH,MAAMzH,EAAsB,CAC1B0H,OAAQ,OACRx0B,YAAa,UACbzE,QAAS,CACP,eAAgB,mCAElBk5B,KAAMpqB,KAAKC,UAAU,CACnBsI,KAAM+c,EACN+E,KAAMV,OAKd9zB,EAAOvG,QAAUA,EAAQwG,S,eC5CzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAaA,SAASg7B,wBAAwBhB,GAE/B,IAAIiB,EAAa,EAAQ,MACrBC,EAAcxqB,KAAKsmB,MAAMtmB,KAAKC,UAAUqpB,EAAiB/gB,OAC3D3U,EAAO42B,EAAY52B,KACnB2U,EAAOiiB,EAAYjiB,KACnBhX,EAAMi5B,EAAYj5B,IAChBm1B,EAAa4C,EAAiB11B,MAZnB,SAAS62B,WAAWpkB,GACnC,OAAOqkB,EAAgBC,MAAK,SAAUC,GACpC,OAA8B,OAAvBvkB,EAAItF,MAAM6pB,OAWfH,CAAWzzB,OAAOgzB,SAASC,OAAS14B,IACtCg5B,EAAWM,KAAKt5B,GACZm1B,IAAe5D,EAAOhtB,QAAQg1B,eAAiBl3B,GAAQ2U,GACzDgiB,EAAWrG,MAAMtwB,EAAM2U,GAErBme,IAAe5D,EAAOhtB,QAAQ6uB,WAAW4F,EAAWQ,aAzB5D,IAAIjI,EACJ,SAASzpB,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAHAyE,CAAuB,EAAQ,OAM5C,IAAIqxB,EAAkB,CAAC,mCAsBvB70B,EAAOvG,QAAUA,EAAQwG,S,eChCzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAoDA,SAAS07B,qBAAqB1B,GAC5B,IAAI/gB,EAAO+gB,EAAiB/gB,KAC1B3U,EAAO01B,EAAiB11B,KACtB8yB,EAAane,EAAKme,WACpBC,EAAape,EAAKoe,WACpB,IAAKD,IAAeC,EAClB,OAIF,IAAIsE,EAAel6B,cAAcA,cAAc,GAAIwX,GAAOA,EAAKA,MAG/D,UAFO0iB,EAAa1iB,MACH,EAAIya,EAAO3sB,+BACbD,UAAW,CACxB,IAAI80B,EAAWl0B,OAAOgzB,SAAS1G,SAC/BtsB,OAAOm0B,UAAYn0B,OAAOm0B,WAAa,GACvC,IA0BIC,EA1BW,SAASC,SAAS57B,GAC/B,IAAI64B,EAAiB74B,EAAK64B,eACxBrF,EAASxzB,EAAKwzB,OACdyF,EAAYj5B,EAAKi5B,UACjBlE,EAAQ/0B,EAAK+0B,MACbyE,EAAcx5B,EAAKw5B,YACrB,MAAO,CACLtE,UAAW,CACTR,MAAO,WACPmH,uBAAwBhD,EACxBiD,QAAStI,EACTuI,WAAY9C,EACZlE,OAAO,EAAIzB,EAAS0B,WAAWD,GAC/BiH,aAAcxC,GAEhBrE,kBAAmB,CACjBT,MAAO,kBACPuH,eAAgBR,EAChBS,iBAAkBhF,GAEpBiF,YAAa,CACXzH,MAAOwC,EACP2E,uBAAuC,gBAAf3E,IAIpB0E,CAASJ,GAAcvE,IAAe31B,cAAc,CAC5DozB,MAAOvwB,GACNq3B,GACC77B,OAAOwC,KAAKw5B,GAAKv5B,QACnBmF,OAAOm0B,UAAU72B,KAAK82B,KAjG5B,IAAIpI,EAAS,EAAQ,MACjBD,EAAW,EAAQ,MACvB,SAASjvB,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAET,SAASlD,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAET,SAASU,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAkETiB,EAAOvG,QAAUA,EAAQwG,S,aCrGzB,SAAShC,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAaT,SAASQ,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EArCTxF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAkDA,SAASu8B,yBAAyBvC,EAAkBC,GAClD,IAAIjE,EAAYtlB,KAAKsmB,MAAMtmB,KAAKC,UAAUqpB,EAAiB/gB,OACvDujB,EAAexG,EAAYA,EAAUyG,IAAM,KAC3CrJ,EAAiB6G,EAAqB7G,eAC1C,QAA8B,IAAnBA,GAAP,MAAgDoJ,GAAyDpJ,EAAgB,QACpH4C,EAAUyG,IACjB,IAAIC,EA7CR,SAASj7B,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAoCmBhD,CAAc,CACpCwX,KAAM+c,GACLwG,GACH5B,MAAMxH,EAAgB,CACpByH,OAAQ,OACRv5B,MAAO,WACP+E,YAAa,UACbzE,QAAS,CACP,eAAgB,mCAElBk5B,KAAMpqB,KAAKC,UAAU+rB,OAI3Bn2B,EAAOvG,QAAUA,EAAQwG,S,eCzEzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClBA,EAAQ28B,oBAAsBA,oBAC9B,IAAIjJ,EACJ,SAAS3pB,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAHAyE,CAAuB,EAAQ,OAc5C,SAAS4yB,sBACP,IAAIC,GAAc,EAAIlJ,EAAOltB,SATT,iBASmC,IACnDq2B,EAAS,CACXC,oBAAqBF,EACrBG,UAAW,GACXjiB,OAAQ,IAsBV,OApBI+hB,EAAOC,oBACTF,EAAYtqB,MAAM,KAAKpN,SAAQ,SAAU8L,GACvC,IAAIgsB,EAAShsB,EAAMsB,MAAM,KAAK/C,KAAI,SAAU0tB,GAC1C,OAAOC,mBAAmBD,MAExBh7B,EAAM+6B,EAAOG,QACbl9B,GAAQ+8B,EAAOz6B,QAASy6B,EAAOG,QAC/Bl7B,IACF46B,EAAOE,UAAU96B,GAAOhC,MAKW,iBAA5B48B,EAAOE,UAAUjiB,QAC1B+hB,EAAOE,UAAUjiB,OAAOxI,MAAM,KAAKpN,SAAQ,SAAUyW,GACnD,IAAIyhB,EAASzhB,EAAMrJ,MAAM,KACzBuqB,EAAO/hB,OAAOsiB,EAAO,IAAoB,MAAdA,EAAO,OAIjCP,EAiBM78B,EAAA,QAfS,SAASq9B,oBAC/B,IAAIC,EAAmB55B,UAAUnB,OAAS,QAAsBoB,IAAjBD,UAAU,IAAmBA,UAAU,GAClF65B,EAAuBZ,sBACzBG,EAAoBS,EAAqBT,kBACzCU,EAAiBD,EAAqBziB,OAGxC,QAEGwiB,GAGCR,IAA0E,IAArDU,EAA+C,S,eC5D1E19B,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAIy9B,EAgBJ,SAASp0B,wBAAwB5E,EAAGC,GAClC,IAAKA,GAAKD,GAAKA,EAAE8E,WAAY,OAAO9E,EACpC,GAAI,OAASA,GAAK,iBAAmBA,GAAK,mBAAqBA,EAAG,MAAO,CACvE+B,QAAS/B,GAEX,IAAIE,EAAI6E,yBAAyB9E,GACjC,GAAIC,GAAKA,EAAE8E,IAAIhF,GAAI,OAAOE,EAAEwE,IAAI1E,GAChC,IAAI2J,EAAI,CACJnD,UAAW,MAEb2sB,EAAI93B,OAAOC,gBAAkBD,OAAOgF,yBACtC,IAAK,IAAI44B,KAAKj5B,EACZ,GAAI,YAAci5B,GAAK59B,OAAO6C,UAAUiH,eAAe/G,KAAK4B,EAAGi5B,GAAI,CACjE,IAAIx7B,EAAI01B,EAAI93B,OAAOgF,yBAAyBL,EAAGi5B,GAAK,KACpDx7B,IAAMA,EAAEiH,KAAOjH,EAAE2H,KAAO/J,OAAOC,eAAeqO,EAAGsvB,EAAGx7B,GAAKkM,EAAEsvB,GAAKj5B,EAAEi5B,GAGtE,OAAOtvB,EAAE5H,QAAU/B,EAAGE,GAAKA,EAAEkF,IAAIpF,EAAG2J,GAAIA,EAjC1B/E,CAAwB,EAAQ,OAC5Cs0B,EAAY5zB,uBAAuB,EAAQ,OAC3C2pB,EAAS3pB,uBAAuB,EAAQ,OAC5C,SAASA,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAGb,SAASkE,yBAAyB/E,GAChC,GAAI,mBAAqB+F,QAAS,OAAO,KACzC,IAAI9F,EAAI,IAAI8F,QACV7F,EAAI,IAAI6F,QACV,OAAQhB,yBAA2B,SAASA,yBAAyB/E,GACnE,OAAOA,EAAIE,EAAID,IACdD,GAqBL,SAAS+H,eAAeC,EAAKvK,GAC3B,OAiDF,SAASwK,gBAAgBD,GACvB,GAAIE,MAAMC,QAAQH,GAAM,OAAOA,EAlDxBC,CAAgBD,IAoBzB,SAASI,sBAAsBnI,EAAGgQ,GAChC,IAAI/P,EAAI,MAAQD,EAAI,KAAO,oBAAsBmB,QAAUnB,EAAEmB,OAAOkH,WAAarI,EAAE,cACnF,GAAI,MAAQC,EAAG,CACb,IAAIF,EACF2J,EACAlM,EACAw7B,EACA9F,EAAI,GACJgG,GAAI,EACJh5B,GAAI,EACN,IACE,GAAI1C,GAAKyC,EAAIA,EAAE9B,KAAK6B,IAAI6I,KAAM,IAAMmH,EAAG,CACrC,GAAI5U,OAAO6E,KAAOA,EAAG,OACrBi5B,GAAI,OACC,OAASA,GAAKn5B,EAAIvC,EAAEW,KAAK8B,IAAI6I,QAAUoqB,EAAE5yB,KAAKP,EAAExE,OAAQ23B,EAAEr1B,SAAWmS,GAAIkpB,GAAI,IAGpF,MAAOl5B,GACPE,GAAI,EAAIwJ,EAAI1J,EACZ,QACA,IACE,IAAKk5B,GAAK,MAAQj5B,EAAE8I,SAAWiwB,EAAI/4B,EAAE8I,SAAU3N,OAAO49B,KAAOA,GAAI,OACjE,QACA,GAAI94B,EAAG,MAAMwJ,GAGjB,OAAOwpB,GA9CsB/qB,CAAsBJ,EAAKvK,IAK5D,SAASwL,4BAA4B9I,EAAGuJ,GACtC,IAAKvJ,EAAG,OACR,GAAiB,iBAANA,EAAgB,OAAOkJ,kBAAkBlJ,EAAGuJ,GACvD,IAAIC,EAAItO,OAAO6C,UAAU0L,SAASxL,KAAK+B,GAAG0J,MAAM,GAAI,GAC1C,WAANF,GAAkBxJ,EAAEsH,cAAakC,EAAIxJ,EAAEsH,YAAY5H,MACvD,GAAU,QAAN8J,GAAqB,QAANA,EAAa,OAAOzB,MAAMsB,KAAKrJ,GAClD,GAAU,cAANwJ,GAAqB,2CAA2CG,KAAKH,GAAI,OAAON,kBAAkBlJ,EAAGuJ,GAXzCT,CAA4BjB,EAAKvK,IAEnG,SAASyL,mBACP,MAAM,IAAI3H,UAAU,6IAHmF2H,GAazG,SAASG,kBAAkBrB,EAAK+B,IACnB,MAAPA,GAAeA,EAAM/B,EAAIlK,UAAQiM,EAAM/B,EAAIlK,QAC/C,IAAK,IAAIL,EAAI,EAAGuM,EAAO,IAAI9B,MAAM6B,GAAMtM,EAAIsM,EAAKtM,IAC9CuM,EAAKvM,GAAKuK,EAAIvK,GAEhB,OAAOuM,EAkCT,SAASjK,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAET,SAASlD,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAET,SAASU,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAAMsD,eAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAOT,SAASqF,kBAAkBxI,EAAQ8F,GACjC,IAAK,IAAI/F,EAAI,EAAGA,EAAI+F,EAAM1F,OAAQL,IAAK,CACrC,IAAI0I,EAAa3C,EAAM/F,GACvB0I,EAAW7F,WAAa6F,EAAW7F,aAAc,EACjD6F,EAAWzE,cAAe,EACtB,UAAWyE,IAAYA,EAAWxE,UAAW,GACjDtG,OAAOC,eAAeoC,EAAQoD,eAAeqF,EAAW3I,KAAM2I,IAWlE,SAASrF,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAYhD,IAAI47B,EAAkB,CACpBC,YAAa,aACbC,OAAQ,QACRC,YAAa,aACbC,UAAW,WACXC,WAAY,YACZC,WAAY,aAEVC,EAA2B,CAC7BC,gBAAiB,CACfC,YAAY,GAEdC,UAAWd,EAAUe,MAAMC,cAAcC,WACzCC,YAAa,GAEXC,EAAsB,SAASA,oBAAoBC,EAAS5+B,EAAO6+B,GACjE7+B,IAIF6+B,EAAID,GAAW5+B,IAGDD,EAAA,QAA+B,WAC/C,SAAS++B,YAAY/L,GACnB,IAAI7d,EAAQlJ,MA7DhB,SAASmJ,gBAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAItP,UAAU,qCA4DpBoP,CAAgBnJ,KAAM8yB,aACtB9yB,KAAK+yB,UAAY,GACjB/yB,KAAK+mB,YAAS,EACd/mB,KAAKgzB,aAAc,EACnBhzB,KAAKizB,aAAe,GACpBjzB,KAAK+mB,OAASA,EACd/mB,KAAKooB,aAKL3sB,OAAOy3B,iBAAiB,oBAAoB,WAC1C,OAAOhqB,EAAMiqB,yBAqPjB,OAjTF,SAASxpB,aAAaN,EAAaO,EAAYC,GAM7C,OALID,GAAYlL,kBAAkB2K,EAAY3S,UAAWkT,GACrDC,GAAanL,kBAAkB2K,EAAaQ,GAChDhW,OAAOC,eAAeuV,EAAa,YAAa,CAC9ClP,UAAU,IAELkP,EA6DPM,CAAampB,YAAa,CAAC,CACzB98B,IAAK,UACLkH,IAKA,SAASA,MACP,IAAIk2B,EACAC,EAAerzB,KAAK+mB,OACtBuM,EAAiBD,EAAaC,eAC9BtM,EAAOqM,EAAarM,KACpBqK,EAAmBgC,EAAahC,iBAClC,SAEIiC,GAEAtM,MAAAA,GAAuE,QAAlCoM,EAAgBpM,EAAKuM,eAAuC,IAAlBH,GAA4BA,EAAcI,uBAE1H,EAAI9B,EAAUn3B,SAAS82B,MAG3B,CACDr7B,IAAK,aACLhC,MAAO,SAASo0B,aACd,IAAIqL,EAASzzB,KACb,IAAKA,KAAKgzB,aAAehzB,KAAK0zB,QAAS,CACrC,IAAIC,EAAgB3zB,KAAK+mB,OACvB6M,EAAoBD,EAAcC,kBAClCC,EAAqBF,EAAcE,mBACnCP,EAAiBK,EAAcL,eAC/BtM,EAAO2M,EAAc3M,KACnBC,EAAkBD,EAAKC,gBACzBS,EAASV,EAAKlqB,GACd4S,EAAQsX,EAAKtX,MACXqX,EAASvxB,cAAc,GAAI28B,GAC/BQ,EAAoB,WAAYiB,EAAmB7M,GACnD4L,EAAoB,YAAakB,EAAoB9M,GACrD,IAII,IAAI+M,EAGEC,EAJR,GADAvC,EAAUlC,KAAKgE,OAAgB57B,EAAWqvB,GACtCE,EAGF,GADAuK,EAAUwC,UAAUtM,GAChBhY,MAAAA,GAAiF,QAA1CokB,EAAoBpkB,EAAMukB,kBAA8C,IAAtBH,GAAgCA,EAAkBI,QAE7I1C,EAAU2C,SAAS,SAAUzkB,MAAAA,GAA0F,QAA3CqkB,EAAqBrkB,EAAMukB,kBAA+C,IAAvBF,OAA7D,EAAsGA,EAAmBG,SAG/Ll0B,KAAKo0B,0BACLp0B,KAAKq0B,qBAMLC,SAASpB,iBAAiB,oBAAoB,WAC5C,OAAOO,EAAOc,gBAEhB94B,OAAOy3B,iBAAiB,YAAY,WAClC,OAAOO,EAAOc,gBAEhB94B,OAAOy3B,iBAAiB,gBAAgB,WACtC,OAAOO,EAAOc,gBAEhB,MAAO/4B,IAGTwE,KAAKgzB,aAAc,KAStB,CACDh9B,IAAK,QACLhC,MAAO,SAAS20B,MAAMC,GACpB,IAAI4L,EACAxnB,EAAO4b,EAAM5b,KACbynB,EAAiBznB,EAAKynB,eACxBC,EAA0B1nB,EAAK0nB,wBAGjC,GAAKD,EAML,GAAKz0B,KAAK0zB,QAAV,CAIA,IAAI3J,EAAYv0B,cAAc,GAAIwX,UAG3B+c,EAAU0K,sBACV1K,EAAU2K,+BACV3K,EAAUoB,kBACVpB,EAAUqB,WAGbsJ,GACF10B,KAAKq0B,mBAAmBK,GAMtBD,EAAel+B,QAAQ,gBAAkB,IAAMwzB,EAAU4K,SAA6B,iBAAXl5B,QAAkH,iBAA5D,QAAtB+4B,EAAU/4B,cAAgC,IAAZ+4B,OAAqB,EAASA,EAAQ/F,YACjL1E,EAAU4K,QAAUl5B,OAAOgzB,SAAS1G,SAEpC/nB,KAAK40B,oBAAoB7K,EAAWtuB,OAAOgzB,SAASC,OAEtD8C,EAAU7I,MAAM8L,EAAgBj/B,cAAc,GAAIu0B,SAxBhD/pB,KAAKizB,aAAal6B,KAAK6vB,KAmC1B,CACD5yB,IAAK,sBACLhC,MAAO,SAAS4gC,oBAAoB7K,EAAWjf,GAE7C,IAAI+pB,EAAY,IAAIvU,IAAIxV,GAAO,IAG3BgqB,EAAOD,EAAUpU,SACrBsJ,EAAUgL,SAAWD,EAGrB,IAAIE,EAAYH,EAAUI,aAC1B,IAAK,IAAIC,KAAQtD,EACXoD,EAAUx3B,IAAI03B,KAChBnL,EAAU6H,EAAgBsD,IAASF,EAAU93B,IAAIg4B,MAUtD,CACDl/B,IAAK,0BACLhC,MAAO,SAASogC,0BACd,IAKMe,EAAaC,EALfpO,EAAOhnB,KAAK+mB,OAAOC,KACnB+L,EAAY,GAGhB,GAAI/L,EAAKC,kBAEP0L,EAAoB,aAAc3L,MAAAA,OAAmC,EAASA,EAAKqO,WAAYtC,GAC/FJ,EAAoB,gBAAiB3L,MAAAA,OAAmC,EAASA,EAAKkG,QAAS6F,GAC/FJ,EAAoB,mBAAoB3L,MAAAA,OAAmC,EAASA,EAAKsG,wBAA0BtG,MAAAA,OAAmC,EAASA,EAAKuG,aAAcwF,GAClLJ,EAAoB,yBAA0B3L,MAAAA,OAAmC,EAASA,EAAKsO,mBAAoBvC,GACnHJ,EAAoB,aAAc3L,MAAAA,OAAmC,EAASA,EAAKuO,SAAUxC,GAC7FJ,EAAoB,iBAAkB3L,MAAAA,OAAmC,EAASA,EAAKwO,aAAczC,GACrGJ,EAAoB,WAA2C,QAA9BwC,EAAcnO,EAAKtX,aAAmC,IAAhBylB,GAAuF,QAApDC,EAAwBD,EAAYlB,kBAAkD,IAA1BmB,OAAtE,EAAkHA,EAAsB7pB,KAAMwnB,GAC9OJ,EAAoB,iBAAkB3L,MAAAA,OAAmC,EAASA,EAAKyO,WAAY1C,GAC/F/L,EAAKiC,OAAO,CACd,IAEEyM,EADqBn1B,eADCymB,EAAKiC,MAAM5iB,MAAM,KACgB,GACtB,GAC/BqvB,GAAeA,EAAYn/B,QAAQ,MAAQ,IAC7Cw8B,EAAU2C,YAAcA,GAM9B3C,EAAU4C,iBAAkB,EAAIlO,EAAOltB,SAAS,SAChDw4B,EAAU6C,oBAAqB,EAAInO,EAAOltB,SAAS,SACnDyF,KAAK+yB,UAAYA,IASlB,CACD/8B,IAAK,qBACLhC,MAAO,SAASqgC,mBAAmBwB,GAEjC,IAAK71B,KAAKgzB,aAAe6C,EAAgB,CACvC,IAAIC,EAAW,IAAItE,EAAUuE,SACzBhD,EAAYv9B,cAAcA,cAAc,GAAIwK,KAAK+yB,WAAY8C,GAAkB,IACnFhiC,OAAOwC,KAAK08B,GAAW95B,SAAQ,SAAUjD,GACvC8/B,EAASl4B,IAAI5H,EAAK+8B,EAAU/8B,OAE9Bw7B,EAAUsE,SAASA,MAOtB,CACD9/B,IAAK,sBACLhC,MAAO,SAASm/B,sBACd,IAAI6C,EAASh2B,KAERA,KAAK0zB,UAKL1zB,KAAKgzB,aACRhzB,KAAKooB,aAEPpoB,KAAKizB,aAAah6B,SAAQ,SAAU2vB,GAClC,OAAOoN,EAAOrN,MAAMC,MAEtB5oB,KAAKizB,aAAe,MAMrB,CACDj9B,IAAK,aACLhC,MAAO,SAASugC,aACVv0B,KAAK0zB,SACPlC,EAAUyE,YAITnD,YApQwC,GAsQjDx4B,EAAOvG,QAAUA,EAAQwG,S,eChczB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQm6B,eA2ER,SAASA,eAAenH,EAAQ6B,GAC9B,IAAIwK,EAAeoB,EACflB,EAAiBvM,EAAOuM,eAC1BtM,EAAOD,EAAOC,KACZha,EAAO4b,EAAM5b,KACbynB,EAAiBznB,EAAKynB,eACxBC,EAA0B1nB,EAAK0nB,wBAGjC,IAAKpB,GAAkBtM,MAAAA,GAAuE,QAAlCoM,EAAgBpM,EAAKuM,eAAuC,IAAlBH,GAA4BA,EAAcI,uBAAyBiB,EACvK,OAIF,IAAI1K,EA7EN,SAASv0B,cAAcgD,GACrB,IAAK,IAAIC,EAAI,EAAGA,EAAIhB,UAAUnB,OAAQmC,IAAK,CACzC,IAAIC,EAAI,MAAQjB,UAAUgB,GAAKhB,UAAUgB,GAAK,GAC9CA,EAAI,EAAIF,QAAQ1E,OAAO6E,IAAI,GAAIO,SAAQ,SAAUR,GAC/CS,gBAAgBV,EAAGC,EAAGC,EAAED,OACrB5E,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBZ,EAAG3E,OAAOsF,0BAA0BT,IAAMH,QAAQ1E,OAAO6E,IAAIO,SAAQ,SAAUR,GAC7I5E,OAAOC,eAAe0E,EAAGC,EAAG5E,OAAOgF,yBAAyBH,EAAGD,OAGnE,OAAOD,EAoEShD,CAAc,GAAIwX,GAC9BkpB,EAAqBnM,EAAU0K,sBAG5B1K,EAAU0K,sBACV1K,EAAU2K,+BACV3K,EAAUoB,kBACVpB,EAAUqB,WAGbqJ,EAAel+B,QAAQ,gBAAkB,IAAMwzB,EAAU4K,SAA6B,iBAAXl5B,QAAkH,iBAA5D,QAAtB+4B,EAAU/4B,cAAgC,IAAZ+4B,OAAqB,EAASA,EAAQ/F,YACjL1E,EAAU4K,QAAUl5B,OAAOgzB,SAAS1G,SAzCxC,SAAS6M,oBAAoB7K,EAAWjf,GAEtC,IAAI+pB,EAAY,IAAIvU,IAAIxV,GAAO,IAG3BgqB,EAAOD,EAAUpU,SACrBsJ,EAAUgL,SAAWD,EAGrB,IAAIE,EAAYH,EAAUI,aAC1B,IAAK,IAAIC,KAAQtD,EACXoD,EAAUx3B,IAAI03B,KAChBnL,EAAU6H,EAAgBsD,IAASF,EAAU93B,IAAIg4B,IA8BnDN,CAAoB7K,EAAWtuB,OAAOgzB,SAASC,OAIjD,IAAIyH,GAAW,EAAIC,EAAMC,MAGzB,IACEC,UAAUC,WAAW,uCAAwC9xB,KAAKC,UAAU,CAC1E8xB,QAASlD,EACTtL,OAAQ,CAAC,CACPyO,UAAWN,EACXnG,QAAS,GACT0G,WAAYR,EACZS,iBAAkB5M,EAClB6M,gBAAiBlC,OAGrB,MAAOtvB,GACPnC,QAAQmC,MAAMA,KAvHlB,IAAIgxB,EAAQ,EAAQ,MACpB,SAAS79B,QAAQC,EAAGC,GAClB,IAAIC,EAAI7E,OAAOwC,KAAKmC,GACpB,GAAI3E,OAAO2C,sBAAuB,CAChC,IAAImC,EAAI9E,OAAO2C,sBAAsBgC,GACrCC,IAAME,EAAIA,EAAEC,QAAO,SAAUH,GAC3B,OAAO5E,OAAOgF,yBAAyBL,EAAGC,GAAGK,eAC1CJ,EAAEK,KAAKC,MAAMN,EAAGC,GAEvB,OAAOD,EAaT,SAASQ,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAgBT,IAAIu4B,EAAkB,CACpBC,YAAa,aACbC,OAAQ,QACRC,YAAa,aACbC,UAAW,WACXC,WAAY,YACZC,WAAY,c,aCxDd,IAAIxF,EAYAmK,EAhBJhjC,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAAkBA,EAAQ8iC,8BAA2B,EAErD,SAAWnK,GACTA,EAAuB,UAAI,YAC3BA,EAA+B,kBAAI,oBACnCA,EAA2B,cAAI,gBAC/BA,EAA6B,gBAAI,kBACjCA,EAA8B,iBAAI,mBAClCA,EAAiC,oBAAI,sBACrCA,EAAyB,YAAI,cAC7BA,EAAwB,WAAI,aAC5BA,EAA2B,cAAI,gBATjC,CAUGA,IAAgBA,EAAc,KAEjC,SAAWmK,GACTA,EAA8B,IAAI,MAClCA,EAAkC,QAAI,UACtCA,EAAiC,OAAI,SAHvC,CAIGA,IAA6B9iC,EAAQ8iC,yBAA2BA,EAA2B,KAC/E9iC,EAAA,QAAkB24B,G,aCtBjC74B,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,K,aCDTH,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QACA,SAAS+iC,eAAeC,EAAOC,GAM7B,GADkC,iBAAXv7B,OACP,MAAO,GAIvB,IAHA,IAAIpD,EAAO,GAAGN,OAAOg/B,EAAO,KAExBE,EADgBhG,mBAAmBqD,SAAS4C,QACzB7wB,MAAM,KACpBpQ,EAAI,EAAGA,EAAIghC,EAAG3gC,OAAQL,GAAK,EAAG,CAErC,IADA,IAAIyX,EAAIupB,EAAGhhC,GACY,MAAhByX,EAAE4Y,OAAO,IACd5Y,EAAIA,EAAExH,UAAU,GAElB,GAAwB,IAApBwH,EAAEnX,QAAQ8B,GACZ,OAAOqV,EAAExH,UAAU7N,EAAK/B,OAAQoX,EAAEpX,QAGtC,OAAO0gC,GAAgB,IAEzB18B,EAAOvG,QAAUA,EAAQwG,S,eCzBzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAIojC,EACJ,SAASr5B,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAHGyE,CAAuB,EAAQ,MAM/C,SAASvF,QAAQiC,EAAQC,GACvB,IAAIpE,EAAOxC,OAAOwC,KAAKmE,GACvB,GAAI3G,OAAO2C,sBAAuB,CAChC,IAAIkE,EAAU7G,OAAO2C,sBAAsBgE,GAC3CC,IAAmBC,EAAUA,EAAQ9B,QAAO,SAAU+B,GACpD,OAAO9G,OAAOgF,yBAAyB2B,EAAQG,GAAK7B,eACjDzC,EAAK0C,KAAKC,MAAM3C,EAAMqE,GAE7B,OAAOrE,EAET,SAASb,cAAcU,GACrB,IAAK,IAAID,EAAI,EAAGA,EAAIwB,UAAUnB,OAAQL,IAAK,CACzC,IAAIH,EAAS,MAAQ2B,UAAUxB,GAAKwB,UAAUxB,GAAK,GACnDA,EAAI,EAAIsC,QAAQ1E,OAAOiC,IAAS,GAAImD,SAAQ,SAAUjD,GACpDkD,gBAAgBhD,EAAQF,EAAKF,EAAOE,OACjCnC,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBlD,EAAQrC,OAAOsF,0BAA0BrD,IAAWyC,QAAQ1E,OAAOiC,IAASmD,SAAQ,SAAUjD,GAC5JnC,OAAOC,eAAeoC,EAAQF,EAAKnC,OAAOgF,yBAAyB/C,EAAQE,OAG/E,OAAOE,EAET,SAASgD,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAAMsD,eAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EAOT,SAASqF,kBAAkBxI,EAAQ8F,GACjC,IAAK,IAAI/F,EAAI,EAAGA,EAAI+F,EAAM1F,OAAQL,IAAK,CACrC,IAAI0I,EAAa3C,EAAM/F,GACvB0I,EAAW7F,WAAa6F,EAAW7F,aAAc,EACjD6F,EAAWzE,cAAe,EACtB,UAAWyE,IAAYA,EAAWxE,UAAW,GACjDtG,OAAOC,eAAeoC,EAAQoD,eAAeqF,EAAW3I,KAAM2I,IAWlE,SAASrF,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAYhD,IAAIohC,EAAkB,CACpBC,WAAY,SAASA,WAAWC,EAAMh2B,GACpCA,EAAKg2B,IAEPC,YAAa,SAASA,gBACtBC,WAAY,SAASA,eACrBC,SAAU,SAASA,aACnBC,QAAS,SAASA,YAClBC,WAAY,oBACZC,cAAe,SAASA,cAAcC,GACpC,MAAO,IAAI9/B,OAAO8/B,EAASxxB,MAAM,KAAKL,QAExC8xB,OAAQ,GACRC,YAAY,GAMVC,EAA0B,WA0B5B,SAASA,WAAW77B,IAjFtB,SAASgN,gBAAgBC,EAAUC,GACjC,KAAMD,aAAoBC,GACxB,MAAM,IAAItP,UAAU,qCAgFpBoP,CAAgBnJ,KAAMg4B,YACtBh4B,KAAK7D,aAAU,EACf6D,KAAKi4B,gBAAa,EAClBj4B,KAAK7D,QAAU3G,cAAcA,cAAc,GAAI4hC,GAAkBj7B,GAuBnE,OA9FF,SAASwN,aAAaN,EAAaO,EAAYC,GAM7C,OALID,GAAYlL,kBAAkB2K,EAAY3S,UAAWkT,GACrDC,GAAanL,kBAAkB2K,EAAaQ,GAChDhW,OAAOC,eAAeuV,EAAa,YAAa,CAC9ClP,UAAU,IAELkP,EAuEPM,CAAaquB,WAAY,CAAC,CACxBhiC,IAAK,aACLhC,MAAO,SAASkkC,aACdl4B,KAAKi4B,WAAa,IAAId,EAAU58B,QAAQ/E,cAAcA,cAAc,GAAI4hC,GAAkBp3B,KAAK7D,YAMhG,CACDnG,IAAK,QACLhC,MAAO,SAASmkC,QACVn4B,KAAKi4B,YACPj4B,KAAKi4B,WAAWG,kBAIfJ,WArDqB,GAuD9BjkC,EAAA,QAAkBikC,EAClB19B,EAAOvG,QAAUA,EAAQwG,S,aCvJzB,IAAI89B,EALJxkC,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQukC,cAAgBvkC,EAAQwkC,oBAAsBxkC,EAAQykC,eAAiBzkC,EAAQ0kC,gBAAkB1kC,EAAQskC,iBAAc,EAG/HtkC,EAAQskC,YAAcA,EACtB,SAAWA,GACTA,EAAYA,EAAmB,MAAI,GAAK,QACxCA,EAAYA,EAAiB,IAAI,GAAK,MACtCA,EAAYA,EAAuB,UAAI,GAAK,YAC5CA,EAAYA,EAA4B,eAAI,GAAK,iBACjDA,EAAYA,EAAkB,KAAI,GAAK,OACvCA,EAAYA,EAAsB,SAAI,GAAK,WAC3CA,EAAYA,EAA2B,cAAI,GAAK,gBAChDA,EAAYA,EAAsB,SAAI,GAAK,WAC3CA,EAAYA,EAAsB,SAAI,GAAK,WAC3CA,EAAYA,EAAsB,SAAI,IAAM,WAC5CA,EAAYA,EAA0B,aAAI,IAAM,eAChDA,EAAYA,EAAsB,SAAI,IAAM,WAC5CA,EAAYA,EAAiC,oBAAI,IAAM,sBACvDA,EAAYA,EAAwB,WAAI,IAAM,aAC9CA,EAAYA,EAA4B,eAAI,IAAM,iBAClDA,EAAYA,EAAoC,uBAAI,IAAM,yBAC1DA,EAAYA,EAAiC,oBAAI,IAAM,sBACvDA,EAAYA,EAA8B,iBAAI,IAAM,mBACpDA,EAAYA,EAA6B,gBAAI,IAAM,kBACnDA,EAAYA,EAA+B,kBAAI,IAAM,oBACrDA,EAAYA,EAA8B,iBAAI,IAAM,mBACpDA,EAAYA,EAA6B,gBAAI,IAAM,kBACnDA,EAAYA,EAA4B,eAAI,IAAM,iBAClDA,EAAYA,EAA6B,gBAAI,IAAM,kBACnDA,EAAYA,EAAmC,sBAAI,KAAO,wBAC1DA,EAAYA,EAAiC,oBAAI,KAAO,sBACxDA,EAAYA,EAAyC,4BAAI,KAAO,8BAChEA,EAAYA,EAA6C,gCAAI,KAAO,kCACpEA,EAAYA,EAA2C,8BAAI,KAAO,gCA7BpE,CA8BGA,IAAgBtkC,EAAQskC,YAAcA,EAAc,KAIvDtkC,EAAQ0kC,gBAHc,SAASA,gBAAgBC,GAC7C,MAAO,CAACL,EAAYM,oBAAqBN,EAAYO,WAAYP,EAAYQ,eAAgBR,EAAYS,oBAAqBT,EAAYU,gBAAiBV,EAAYW,iBAAkBX,EAAYY,eAAgBZ,EAAYa,sBAAuBb,EAAYc,qBAAqB5hC,SAASmhC,IAMpS3kC,EAAQykC,eAHa,SAASA,eAAeE,GAC3C,OAAOA,IAAcL,EAAYe,OAMnCrlC,EAAQwkC,oBAHkB,SAASA,oBAAoBG,GACrD,MAAO,CAACL,EAAYgB,SAAUhB,EAAYO,WAAYP,EAAYiB,4BAA6BjB,EAAYM,oBAAqBN,EAAYkB,uBAAwBlB,EAAYQ,eAAgBR,EAAYS,qBAAqBvhC,SAASmhC,IAM5O3kC,EAAQukC,cAHY,SAASA,cAAcI,GACzC,MAAO,CAACL,EAAYM,oBAAqBN,EAAYQ,eAAgBR,EAAYS,oBAAqBT,EAAYO,WAAYP,EAAYa,sBAAuBb,EAAYc,qBAAqB5iC,QAAQmiC,IAAc,I,eCnD1N7kC,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQylC,mBAAqBzlC,EAAQ0lC,6BAA0B,EAC/D1lC,EAAQ+G,4BAiGR,SAASA,8BACP,IAAI4+B,EAAYjiC,UAAUnB,OAAS,QAAsBoB,IAAjBD,UAAU,GAAmBA,UAAU,GAAK,KAC/C,IAAjC+hC,EAAmB3+B,YAAqD,IAA9B2+B,EAAmB9vB,QAAoBiwB,IAAqBD,IAExGE,YADAD,EAAmBD,GAGrB,OAAOF,GAtGTzlC,EAAQ8lC,mBAsIR,SAASA,mBAAmBH,EAAWI,GACrC,IAAIC,EAAUC,EAAQz/B,QAAQ0/B,UAAUP,GACpCQ,EAAWJ,GAAqBK,EACpCD,EAASjhC,SAAQ,SAAU/E,GACzB,IAAIoE,EAAUpE,EAAKoE,QACnB,IAAKA,EAAQkN,MAAM,yBACjB,MAAM,IAAI+a,MAAM,+BAA+BxoB,OAAOO,OAG1D,IAAIyuB,EAASmT,EAASl/B,QAAO,SAAUo/B,EAAK10B,GAC1C,IAAI20B,EAAS30B,EAAM20B,OACjBC,EAAW50B,EAAM40B,SACjBhiC,EAAUoN,EAAMpN,QAElB,OADA8hC,EAAIC,GAAU,GAAGtiC,OAAOuiC,GAAUviC,OAAOO,GAClC8hC,IACN,IACH,OAAOL,EAAQQ,UAAUxT,KAAW,GArJtC,IAAIiT,EACJ,SAASl8B,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,GAHCyE,CAAuB,EAAQ,OAsB7C,IAAI07B,EAAqB,CACvB9vB,QAAQ,EACR7O,WAAW,EACX2/B,WAAW,EACXC,kBAAkB,EAClBC,UAAU,EACVC,UAAU,EACVC,OAAO,EACPC,WAAW,EACXC,iBAAkB,CAChBC,WAAOrjC,EACPsjC,YAAQtjC,IAGZ3D,EAAQylC,mBAAqBA,EAC7B,IAkEIC,EAlEAE,EAAmB,GAgCvB,SAASC,YAAYF,GACnB,IAAIuB,EAAKvB,EACT,GAAsB,iBAAXj+B,OAAqB,CAC9B+9B,EAAmB3+B,WAAY,EAC/BY,OAAOyZ,GAAKzZ,OAAOyZ,IAAM,GACzB,IACEA,EADYzZ,OACCyZ,GACfA,EAAGgmB,uBAAyBhmB,EAAGgmB,wBAA0B,GAEzD1B,EAAmBsB,iBAAmB,CACpCC,MAAOzG,SAASzF,KAAKsM,YACrBH,OAAQ1G,SAASzF,KAAKuM,cAExBH,EAAK3E,UAAUoD,eAEfF,EAAmB9vB,QAAS,GAzChC,SAAS2xB,aAAa3B,GACfA,IAGwC,OAAzCA,EAAUl0B,MAAM,sBAClBg0B,EAAmBoB,OAAQ,EACM,OAA7BlB,EAAUl0B,MAAM,SAClBg0B,EAAmBmB,UAAW,EAE9BnB,EAAmBkB,UAAW,GAES,OAAhChB,EAAUl0B,MAAM,aACzBg0B,EAAmBkB,UAAW,EAC9BlB,EAAmBqB,WAAY,GACiB,OAAvCnB,EAAUl0B,MAAM,mBACzBg0B,EAAmBiB,kBAAmB,EAEtCjB,EAAmBgB,WAAY,GA0BjCa,CAAaJ,GAkBflnC,EAAQ0lC,wBAA0BA,EAClC,SAAWA,GACTA,EAAgC,OAAI,SACpCA,EAAiC,QAAI,UACrCA,EAAgC,OAAI,SACpCA,EAA4B,GAAI,KAChCA,EAA8B,KAAI,OALpC,CAMGA,IAA4B1lC,EAAQ0lC,wBAA0BA,EAA0B,KAC3F,IAAIU,EAA2B,CAAC,CAC9BE,OAAQZ,EAAwB6B,OAChChB,SAAU,KACVhiC,QAAS,MACR,CACD+hC,OAAQZ,EAAwB8B,QAChCjB,SAAU,KACVhiC,QAAS,MACR,CACD+hC,OAAQZ,EAAwB+B,OAChClB,SAAU,KACVhiC,QAAS,KACR,CACD+hC,OAAQZ,EAAwBgC,KAChCnB,SAAU,KACVhiC,QAAS,MACR,CACD+hC,OAAQZ,EAAwBvnB,GAChCooB,SAAU,KACVhiC,QAAS,Q,eCzIXzE,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETH,OAAOC,eAAeC,EAAS,cAAe,CAC5C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOw+B,EAASrD,eAGpBxkC,OAAOC,eAAeC,EAAS,cAAe,CAC5C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOy+B,EAAYC,eAGvB/nC,OAAOC,eAAeC,EAAS,aAAc,CAC3C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAO2+B,EAAYthC,WAGvB1G,OAAOC,eAAeC,EAAS,0BAA2B,CACxD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOiB,EAAas7B,2BAGxB5lC,OAAOC,eAAeC,EAAS,oBAAqB,CAClD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOiB,EAAa29B,qBAGxBjoC,OAAOC,eAAeC,EAAS,mBAAoB,CACjD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOiB,EAAa49B,oBAGxBloC,OAAOC,eAAeC,EAAS,aAAc,CAC3C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOy+B,EAAYK,cAGvBnoC,OAAOC,eAAeC,EAAS,YAAa,CAC1C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAO++B,EAAW1hC,WAGtB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOg/B,EAAY3hC,WAGvB1G,OAAOC,eAAeC,EAAS,8BAA+B,CAC5D+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOiB,EAAarD,+BAGxBjH,OAAOC,eAAeC,EAAS,kBAAmB,CAChD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOw+B,EAASjD,mBAGpB5kC,OAAOC,eAAeC,EAAS,iBAAkB,CAC/C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOw+B,EAASlD,kBAGpB3kC,OAAOC,eAAeC,EAAS,qBAAsB,CACnD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOiB,EAAa07B,sBAGxBhmC,OAAOC,eAAeC,EAAS,sBAAuB,CACpD+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOw+B,EAASnD,uBAGpB1kC,OAAOC,eAAeC,EAAS,gBAAiB,CAC9C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOw+B,EAASpD,iBAGpBzkC,OAAOC,eAAeC,EAAS,eAAgB,CAC7C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOi/B,EAAc5hC,WAGzB1G,OAAOC,eAAeC,EAAS,iBAAkB,CAC/C+E,YAAY,EACZoE,IAAK,SAASA,MACZ,OAAOk/B,EAAgB7hC,WAG3B,IAAI6hC,EAAkBt+B,uBAAuB,EAAQ,OACjDq+B,EAAgBr+B,uBAAuB,EAAQ,OAC/Cm+B,EAAan+B,uBAAuB,EAAQ,OAC5Co+B,EAAcp+B,uBAAuB,EAAQ,OAC7C+9B,EAAc/9B,uBAAuB,EAAQ,OAC7CK,EAAe,EAAQ,MACvBu9B,EAAW,EAAQ,MACnBC,EAAc,EAAQ,MAC1B,SAAS79B,uBAAuBzE,GAC9B,OAAOA,GAAOA,EAAIiE,WAAajE,EAAM,CACnCkB,QAASlB,K,aCnHbxF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAKA,SAASsoC,WAAW1jC,GAOlB,OANA9E,OAAOod,OAAOtY,GACd9E,OAAOyoC,oBAAoB3jC,GAAGM,SAAQ,SAAUsjC,IAC1C1oC,OAAO8J,eAAe/G,KAAK+B,EAAG4jC,IAAqB,OAAZ5jC,EAAE4jC,IAAsC,iBAAZ5jC,EAAE4jC,IAAyC,mBAAZ5jC,EAAE4jC,IAA0B1oC,OAAO2oC,SAAS7jC,EAAE4jC,KAClJF,WAAW1jC,EAAE4jC,OAGV5jC,GAET2B,EAAOvG,QAAUA,EAAQwG,S,aCjBzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAOA,SAAS0oC,aAAaxT,GAEpB,MADS,wJACC3mB,KAAKtI,OAAOivB,GAAOhZ,gBAE/B3V,EAAOvG,QAAUA,EAAQwG,S,eCdzB1G,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,aAAkB,EAClB,IAAI2oC,EAUJ,SAASt/B,wBAAwB/D,EAAKgE,GACpC,IAAKA,GAAehE,GAAOA,EAAIiE,WAC7B,OAAOjE,EAET,GAAY,OAARA,GAA+B,iBAARA,GAAmC,mBAARA,EACpD,MAAO,CACLkB,QAASlB,GAGb,IAAIhE,EAAQkI,yBAAyBF,GACrC,GAAIhI,GAASA,EAAMmI,IAAInE,GACrB,OAAOhE,EAAM6H,IAAI7D,GAEnB,IAAIoE,EAAS,GACTC,EAAwB7J,OAAOC,gBAAkBD,OAAOgF,yBAC5D,IAAK,IAAI7C,KAAOqD,EACd,GAAY,YAARrD,GAAqBnC,OAAO6C,UAAUiH,eAAe/G,KAAKyC,EAAKrD,GAAM,CACvE,IAAI2G,EAAOe,EAAwB7J,OAAOgF,yBAAyBQ,EAAKrD,GAAO,KAC3E2G,IAASA,EAAKO,KAAOP,EAAKiB,KAC5B/J,OAAOC,eAAe2J,EAAQzH,EAAK2G,GAEnCc,EAAOzH,GAAOqD,EAAIrD,GAIxByH,EAAOlD,QAAUlB,EACbhE,GACFA,EAAMuI,IAAIvE,EAAKoE,GAEjB,OAAOA,EAvCQL,CAAwB,EAAQ,OAC7Ce,EAAe,EAAQ,MAC3B,SAASZ,yBAAyBF,GAChC,GAAuB,mBAAZkB,QAAwB,OAAO,KAC1C,IAAIC,EAAoB,IAAID,QACxBE,EAAmB,IAAIF,QAC3B,OAAQhB,yBAA2B,SAASA,yBAAyBF,GACnE,OAAOA,EAAcoB,EAAmBD,IACvCnB,GAiCL,IAAIs/B,EAAiBD,EAAW7a,SAChC,IAAI,EAAI1jB,EAAarD,+BAA+B4O,OAAQ,CAC1D,IAIEjO,EADW,IAAImhC,EAHF,EAAQ,MACJA,OAEI,IACLnhC,OAElBkhC,GADgB,EAAID,EAAWniC,SAASkB,GACbomB,SAE7B,IAAIlmB,EAAWghC,EACf5oC,EAAA,QAAkB4H,EAClBrB,EAAOvG,QAAUA,EAAQwG,S,aCrDzB,SAAShC,QAAQiC,EAAQC,GACvB,IAAIpE,EAAOxC,OAAOwC,KAAKmE,GACvB,GAAI3G,OAAO2C,sBAAuB,CAChC,IAAIkE,EAAU7G,OAAO2C,sBAAsBgE,GAC3CC,IAAmBC,EAAUA,EAAQ9B,QAAO,SAAU+B,GACpD,OAAO9G,OAAOgF,yBAAyB2B,EAAQG,GAAK7B,eACjDzC,EAAK0C,KAAKC,MAAM3C,EAAMqE,GAE7B,OAAOrE,EAaT,SAAS6C,gBAAgBG,EAAKrD,EAAKhC,GAYjC,OAXAgC,EAaF,SAASsD,eAAeC,GACtB,IAAIvD,EAGN,SAASwD,aAAaC,EAAOC,GAC3B,GAAqB,iBAAVD,GAAgC,OAAVA,EAAgB,OAAOA,EACxD,IAAIE,EAAOF,EAAMG,OAAOC,aACxB,QAAanC,IAATiC,EAAoB,CACtB,IAAIG,EAAMH,EAAK/C,KAAK6C,EAAOC,GAAQ,WACnC,GAAmB,iBAARI,EAAkB,OAAOA,EACpC,MAAM,IAAIC,UAAU,gDAEtB,OAAiB,WAATL,EAAoBM,OAASC,QAAQR,GAXnCD,CAAaD,EAAK,UAC5B,MAAsB,iBAARvD,EAAmBA,EAAMgE,OAAOhE,GAfxCsD,CAAetD,MACVqD,EACTxF,OAAOC,eAAeuF,EAAKrD,EAAK,CAC9BhC,MAAOA,EACP8E,YAAY,EACZoB,cAAc,EACdC,UAAU,IAGZd,EAAIrD,GAAOhC,EAENqF,EArCTxF,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAQioC,WAyER,SAASA,WAAWa,GAClB,OA/DF,SAASrnC,cAAcU,GACrB,IAAK,IAAID,EAAI,EAAGA,EAAIwB,UAAUnB,OAAQL,IAAK,CACzC,IAAIH,EAAS,MAAQ2B,UAAUxB,GAAKwB,UAAUxB,GAAK,GACnDA,EAAI,EAAIsC,QAAQ1E,OAAOiC,IAAS,GAAImD,SAAQ,SAAUjD,GACpDkD,gBAAgBhD,EAAQF,EAAKF,EAAOE,OACjCnC,OAAOsF,0BAA4BtF,OAAOuF,iBAAiBlD,EAAQrC,OAAOsF,0BAA0BrD,IAAWyC,QAAQ1E,OAAOiC,IAASmD,SAAQ,SAAUjD,GAC5JnC,OAAOC,eAAeoC,EAAQF,EAAKnC,OAAOgF,yBAAyB/C,EAAQE,OAG/E,OAAOE,EAsDAV,CAAc,GAAIqnC,K,aC7E3BhpC,OAAOC,eAAeC,EAAS,aAAc,CAC3CC,OAAO,IAETD,EAAA,QAQA,SAAS+oC,UAAUhyB,EAAKiyB,GACtB,IAAKA,GAA4B,iBAAXA,GAAsD,IAA/BlpC,OAAOwC,KAAK0mC,GAAQzmC,OAAc,OAAOwU,EACtF,IAAIkyB,EAAcnpC,OAAOwC,KAAK0mC,GAAQz5B,KAAI,SAAUtN,GAClD,MAAO,GAAG+B,OAAOklC,mBAAmBjnC,GAAM,KAAK+B,OAAOklC,mBAAmBF,EAAO/mC,QAC/EyN,KAAK,KAER,MADe,GAAG1L,OAAO+S,EAAK,KAAK/S,OAAOilC,IAG5C1iC,EAAOvG,QAAUA,EAAQwG,S","sources":["/app/apps/loginweb/node_modules/@sm/apollo-clients/dist/browser.js","/app/apps/loginweb/node_modules/@sm/intl/dist/formats.js","/app/apps/loginweb/node_modules/@sm/intl/dist/index.js","/app/apps/loginweb/node_modules/@sm/locale/dist/dataCenters.js","/app/apps/loginweb/node_modules/@sm/locale/dist/index.js","/app/apps/loginweb/node_modules/@sm/locale/dist/languageTags.js","/app/apps/loginweb/node_modules/@sm/locale/dist/languages.js","/app/apps/loginweb/node_modules/@sm/locale/dist/localeSets.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/from-url.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/main.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/parse-domain.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/sanitize.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/serialized-tries.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/trie/characters.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/trie/look-up.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/trie/nodes.js","/app/apps/loginweb/node_modules/@sm/locale/node_modules/parse-domain/build-cjs/src/trie/parse-trie.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/BaseMetricsTracker.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/MetricsTracker.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/helpers.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/index.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/providers/ComponentMetricsProvider.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/providers/PageMetricsProvider.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/providers/SPARouteMetricsProvider.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/AmplitudeSubscriber.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/DataAnalyticsMetricsSubscriber.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/FacebookPixelSubscriber.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/GTMMeticsSubscriber.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/LoggingMetricsSubscriber.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/amplitude/OneTrust.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/amplitude/index.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/subscribers/anonymous/index.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/types/enums.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/types/types.js","/app/apps/loginweb/node_modules/@sm/metrics/dist/utils.js","/app/apps/loginweb/node_modules/@sm/utils/dist/S3Uploader/S3Uploader.js","/app/apps/loginweb/node_modules/@sm/utils/dist/billing/index.js","/app/apps/loginweb/node_modules/@sm/utils/dist/environment/index.js","/app/apps/loginweb/node_modules/@sm/utils/dist/index.js","/app/apps/loginweb/node_modules/@sm/utils/dist/object/deepFreeze.js","/app/apps/loginweb/node_modules/@sm/utils/dist/string/isValidEmail.js","/app/apps/loginweb/node_modules/@sm/utils/dist/string/sanitizeString.js","/app/apps/loginweb/node_modules/@sm/utils/dist/ts-auto-mock/index.js","/app/apps/loginweb/node_modules/@sm/utils/dist/url/createURL.js"],"sourcesContent":["\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = createBrowserApolloClient;\nvar _client = require(\"@apollo/client\");\nvar _batchHttp = require(\"@apollo/client/link/batch-http\");\nvar _excluded = [\"headers\"];\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar DEFAULT_TARGET_PATH = 'default';\nvar DEFAULT_LINK_OPTIONS = {\n credentials: 'include',\n batchInterval: 30\n};\nfunction createBrowserApolloClient(_ref) {\n var possibleTypes = _ref.possibleTypes,\n metadata = _ref.metadata,\n pageRequestId = _ref.pageRequestId,\n _ref$cacheHydration = _ref.cacheHydration,\n cacheHydration = _ref$cacheHydration === void 0 ? {} : _ref$cacheHydration,\n _ref$uri = _ref.uri,\n uri = _ref$uri === void 0 ? '/graphql' : _ref$uri,\n _ref$linkOptions = _ref.linkOptions,\n linkOptions = _ref$linkOptions === void 0 ? {} : _ref$linkOptions,\n _ref$devToolsEnabled = _ref.devToolsEnabled,\n devToolsEnabled = _ref$devToolsEnabled === void 0 ? true : _ref$devToolsEnabled,\n _ref$availableLoggedO = _ref.availableLoggedOutPaths,\n availableLoggedOutPaths = _ref$availableLoggedO === void 0 ? [] : _ref$availableLoggedO,\n authLink = _ref.authLink,\n _ref$typePolicies = _ref.typePolicies,\n typePolicies = _ref$typePolicies === void 0 ? {} : _ref$typePolicies;\n var appName = metadata.appName,\n appVersion = metadata.appVersion;\n var cache = new _client.InMemoryCache({\n possibleTypes: possibleTypes,\n typePolicies: _objectSpread({}, typePolicies)\n }).restore(cacheHydration);\n var _linkOptions$headers = linkOptions.headers,\n headers = _linkOptions$headers === void 0 ? {} : _linkOptions$headers,\n otherLinkOptions = _objectWithoutProperties(linkOptions, _excluded);\n if (pageRequestId) {\n headers['sm-page-request-id'] = pageRequestId;\n }\n var apolloLinkMemoizeCache = {};\n function apolloLinkFactory() {\n var targetPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_TARGET_PATH;\n if (apolloLinkMemoizeCache[targetPath]) {\n return apolloLinkMemoizeCache[targetPath];\n }\n var link = new _batchHttp.BatchHttpLink(_objectSpread(_objectSpread(_objectSpread({}, DEFAULT_LINK_OPTIONS), otherLinkOptions), {}, {\n uri: targetPath,\n headers: headers\n }));\n if (authLink && targetPath === '/graphql') {\n link = authLink.concat(link);\n }\n apolloLinkMemoizeCache[targetPath] = link;\n return link;\n }\n\n // custom apollo-link that determines the actual link to use based on the passed\n // `targetPath` context.\n var link = new _client.ApolloLink(function (operation) {\n var _operation$getContext, _operation$getContext2;\n // if the targetPath is not the default, use an alternate graphql endpoint.\n var targetPath = operation === null || operation === void 0 ? void 0 : (_operation$getContext = operation.getContext) === null || _operation$getContext === void 0 ? void 0 : (_operation$getContext2 = _operation$getContext.call(operation)) === null || _operation$getContext2 === void 0 ? void 0 : _operation$getContext2.targetPath;\n var graphQLPath = uri;\n if (availableLoggedOutPaths.includes(targetPath)) {\n // whitelist for security\n graphQLPath = targetPath;\n }\n return apolloLinkFactory(graphQLPath).request(operation) || _client.Observable.of();\n });\n return new _client.ApolloClient({\n connectToDevTools: devToolsEnabled,\n cache: cache,\n link: link,\n name: appName,\n version: appVersion\n });\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _environment = require(\"@sm/utils/dist/environment\");\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\n// fix for downstream tree-shaking\n\nvar _getClientEnvironment = (0, _environment.getClientEnvironmentDetails)(),\n isBrowser = _getClientEnvironment.isBrowser;\nvar currency = ['AFN', 'EUR', 'ALL', 'DZD', 'USD', 'AOA', 'XCD', 'ARS', 'AMD', 'AWG', 'AUD', 'AZN', 'BSD', 'BHD', 'BDT', 'BBD', 'BYN', 'BZD', 'XOF', 'BMD', 'INR', 'BTN', 'BOB', 'BOV', 'BAM', 'BWP', 'NOK', 'BRL', 'BND', 'BGN', 'BIF', 'CVE', 'KHR', 'XAF', 'CAD', 'KYD', 'CLP', 'CLF', 'CNY', 'COP', 'COU', 'KMF', 'CDF', 'NZD', 'CRC', 'HRK', 'CUP', 'CUC', 'ANG', 'CZK', 'DKK', 'DJF', 'DOP', 'EGP', 'SVC', 'ERN', 'ETB', 'FKP', 'FJD', 'XPF', 'GMD', 'GEL', 'GHS', 'GIP', 'GTQ', 'GBP', 'GNF', 'GYD', 'HTG', 'HNL', 'HKD', 'HUF', 'ISK', 'IDR', 'XDR', 'IRR', 'IQD', 'ILS', 'JMD', 'JPY', 'JOD', 'KZT', 'KES', 'KPW', 'KRW', 'KWD', 'KGS', 'LAK', 'LBP', 'LSL', 'ZAR', 'LRD', 'LYD', 'CHF', 'MOP', 'MKD', 'MGA', 'MWK', 'MYR', 'MVR', 'MRO', 'MUR', 'XUA', 'MXN', 'MXV', 'MDL', 'MNT', 'MAD', 'MZN', 'MMK', 'NAD', 'NPR', 'NIO', 'NGN', 'OMR', 'PKR', 'PAB', 'PGK', 'PYG', 'PEN', 'PHP', 'PLN', 'QAR', 'RON', 'RUB', 'RWF', 'SHP', 'WST', 'STD', 'SAR', 'RSD', 'SCR', 'SLL', 'SGD', 'XSU', 'SBD', 'SOS', 'SSP', 'LKR', 'SDG', 'SRD', 'SZL', 'SEK', 'CHE', 'CHW', 'SYP', 'TWD', 'TJS', 'TZS', 'THB', 'TOP', 'TTD', 'TND', 'TRY', 'TMT', 'UGX', 'UAH', 'AED', 'USN', 'UYU', 'UYI', 'UZS', 'VUV', 'VEF', 'VND', 'YER', 'ZMW', 'ZWL', 'XBA', 'XBB', 'XBC', 'XBD', 'XTS', 'XXX', 'XAU', 'XPD', 'XPT', 'XAG'];\n\n/** List of supported currencies */\n\nvar numberFormat = currency.reduce(function (acc, key) {\n return _objectSpread(_objectSpread({}, acc), {}, _defineProperty({}, key, {\n style: 'currency',\n currency: key\n }));\n}, {});\nvar dateTimeFormat;\nif (isBrowser) {\n var browserTimezone = 'UTC';\n try {\n browserTimezone = Intl.DateTimeFormat().resolvedOptions().timeZone;\n dateTimeFormat = {\n timeZone: browserTimezone\n };\n } catch (err) {\n // We're throwing in a settimeout because we don't want to break the current tick.\n window.setTimeout(function () {\n throw err;\n }, 1);\n }\n}\nvar _default = {\n number: numberFormat,\n dateTime: dateTimeFormat,\n relativeTime: undefined\n};\nexports.default = _default;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.FormattedDateTime = FormattedDateTime;\nexports.FormattedNumber = FormattedNumber;\nexports.FormattedRelativeTime = FormattedRelativeTime;\nexports.T = exports.L10nProvider = exports.L10NContext = void 0;\nexports.clearOptionsObject = clearOptionsObject;\nexports.defineMessages = defineMessages;\nexports.getMessageStore = getMessageStore;\nexports.initIntl = initIntl;\nexports.resetMessageStore = resetMessageStore;\nexports.substitute = substitute;\nexports.t = t;\nvar _react = _interopRequireWildcard(require(\"react\"));\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\nvar _intlMessageformat = _interopRequireDefault(require(\"intl-messageformat\"));\nvar _escapeHtml = _interopRequireDefault(require(\"escape-html\"));\nvar _invariant = _interopRequireDefault(require(\"invariant\"));\nvar _lodash = _interopRequireDefault(require(\"lodash.merge\"));\nvar _environment = require(\"@sm/utils/dist/environment\");\nvar _languages = require(\"@sm/locale/dist/languages\");\nvar _intlRelativeformat = _interopRequireDefault(require(\"intl-relativeformat\"));\nvar _formats = _interopRequireDefault(require(\"./formats\"));\nvar _excluded = [\"value\"],\n _excluded2 = [\"value\"];\nvar _jsxFileName = \"/repo/packages/intl/src/index.tsx\";\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interopRequireWildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) {\n return obj;\n }\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") {\n return {\n default: obj\n };\n }\n var cache = _getRequireWildcardCache(nodeInterop);\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n newObj.default = obj;\n if (cache) {\n cache.set(obj, newObj);\n }\n return newObj;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nfunction _createSuper(Derived) {\n var hasNativeReflectConstruct = _isNativeReflectConstruct();\n return function _createSuperInternal() {\n var Super = _getPrototypeOf(Derived),\n result;\n if (hasNativeReflectConstruct) {\n var NewTarget = _getPrototypeOf(this).constructor;\n result = Reflect.construct(Super, arguments, NewTarget);\n } else {\n result = Super.apply(this, arguments);\n }\n return _possibleConstructorReturn(this, result);\n };\n}\nfunction _possibleConstructorReturn(self, call) {\n if (call && (typeof call === \"object\" || typeof call === \"function\")) {\n return call;\n } else if (call !== void 0) {\n throw new TypeError(\"Derived constructors may only return object or undefined\");\n }\n return _assertThisInitialized(self);\n}\nfunction _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n return self;\n}\nfunction _isNativeReflectConstruct() {\n if (typeof Reflect === \"undefined\" || !Reflect.construct) return false;\n if (Reflect.construct.sham) return false;\n if (typeof Proxy === \"function\") return true;\n try {\n Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {}));\n return true;\n } catch (e) {\n return false;\n }\n}\nfunction _getPrototypeOf(o) {\n _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function _getPrototypeOf(o) {\n return o.__proto__ || Object.getPrototypeOf(o);\n };\n return _getPrototypeOf(o);\n}\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = _objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n return target;\n}\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n return target;\n}\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _iterableToArrayLimit(arr, i) {\n var _i = null == arr ? null : \"undefined\" != typeof Symbol && arr[Symbol.iterator] || arr[\"@@iterator\"];\n if (null != _i) {\n var _s,\n _e,\n _x,\n _r,\n _arr = [],\n _n = !0,\n _d = !1;\n try {\n if (_x = (_i = _i.call(arr)).next, 0 === i) {\n if (Object(_i) !== _i) return;\n _n = !1;\n } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0) {\n ;\n }\n } catch (err) {\n _d = !0, _e = err;\n } finally {\n try {\n if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return;\n } finally {\n if (_d) throw _e;\n }\n }\n return _arr;\n }\n}\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\nvar _getClientEnvironment = (0, _environment.getClientEnvironmentDetails)(),\n isBrowser = _getClientEnvironment.isBrowser;\nvar INTL_OPT_KEY = 'SM_intlUniqueOptionsObjectKey';\nvar INTL_MSG_STORE_KEY = 'SM_intlUniqueMessageStoreObjectKey';\n\n/** Intl Options */\n\nfunction getDefaultOptions() {\n return {\n currentLocale: null,\n // Current locale such as 'en-US' - `null` is not allowed for IntlMessageFormat and needs to be set\n warningHandler: console.warn.bind(console),\n // eslint-disable-line\n escapeHtml: true // disable escape html in variable mode\n };\n}\n\nfunction getStore() {\n var glob = isBrowser ? window : global;\n if (!glob[INTL_MSG_STORE_KEY]) {\n glob[INTL_MSG_STORE_KEY] = {};\n }\n return glob[INTL_MSG_STORE_KEY];\n}\nfunction getOptionsObject() {\n var glob = isBrowser ? window : global;\n if (!glob[INTL_OPT_KEY]) {\n glob[INTL_OPT_KEY] = getDefaultOptions();\n }\n return glob[INTL_OPT_KEY];\n}\nfunction clearOptionsObject() {\n if (isBrowser) {\n delete window[INTL_OPT_KEY];\n } else {\n delete global[INTL_OPT_KEY];\n }\n}\nvar intlRelativeFormat;\n\n/**\n * @param {string} input\n * @returns {string} hash\n * @private\n */\nfunction hashInput(input) {\n var hash = 0;\n var i;\n var chr;\n if (input.length === 0) return hash;\n for (i = 0; i < input.length; i += 1) {\n chr = input.charCodeAt(i);\n hash = (hash << 5) - hash + chr; // eslint-disable-line no-bitwise\n // Convert to 32bit integer\n hash |= 0; // eslint-disable-line no-bitwise\n }\n\n return hash;\n}\nvar randomStr = function randomStr(N) {\n return _toConsumableArray(Array(N)).map(function () {\n return (~~(Math.random() * 36)).toString(36);\n }).join('');\n}; // eslint-disable-line no-bitwise\n\nvar keysOf = Object.keys;\nvar maybePseudo = function maybePseudo(msg) {\n if (process.env.NODE_ENV !== \"production\" && isBrowser) {\n var pseudoFactor = window.location.href.toString().match(/[&?]intl-pseudo(=([0-9]*\\.[0-9]+|[0-9]+))?/);\n if (pseudoFactor) {\n return msg.replace(/\\S+/g, function (match) {\n return randomStr(parseInt(\"\".concat(match.length * parseFloat(\"\".concat(pseudoFactor[2] || 1))), 10) || 1);\n });\n }\n }\n return msg;\n};\nvar replacer = function replacer(elements) {\n return function (part) {\n var element = elements[part];\n return element || maybePseudo(part);\n };\n};\n\n/** `string` type-guard including check for `instanceof` */\n// work-around as TS does not infer type string for instanceof\nvar isString = function isString(s) {\n return typeof s === 'string' || s instanceof String;\n};\n\n/**\n *\n * @param {string} message\n * @param {Object} variables (Optional)\n * @returns {Object} The substitution\n */\nfunction substitute(message, variables) {\n var vars = _objectSpread({}, variables);\n var msg = message;\n var options = getOptionsObject();\n var uid = Math.abs(hashInput(JSON.stringify({\n msg: msg,\n keys: keysOf(vars)\n }))).toString(16);\n var tokenDelimiter = \"@__\".concat(uid, \"__@\");\n var tokenizedValues = {};\n var elements = {};\n var generateToken = function () {\n var counter = 0;\n return function () {\n counter += 1;\n return \"ELEMENT-\".concat(uid, \"-\").concat(counter);\n };\n }();\n keysOf(vars).forEach(function (name) {\n var value = vars[name];\n if ( /*#__PURE__*/_react.default.isValidElement(value)) {\n var token = generateToken();\n tokenizedValues[name] = tokenDelimiter + token + tokenDelimiter;\n elements[token] = value;\n } else if (options.escapeHtml === true && isString(value) && value.indexOf('<') >= 0 && value.indexOf('>') >= 0) {\n tokenizedValues[name] = (0, _escapeHtml.default)(value);\n } else {\n // `React.isValidElement` matches `React.ReactElement` so its type can be omitted\n tokenizedValues[name] = value;\n }\n });\n try {\n var msgFormatter = new _intlMessageformat.default(msg, options.currentLocale, options.formats);\n msg = msgFormatter.format(tokenizedValues);\n } catch (err) {\n options.warningHandler({\n context: 'sm/intl',\n error: 'message_formatting_error',\n err: err,\n msg: msg,\n tokenizedValues: tokenizedValues,\n vars: vars,\n currentLocale: options.currentLocale\n });\n return msg;\n }\n try {\n var stack = [];\n var exhausted = false;\n var runningIndex = 0;\n while (!exhausted) {\n // The runningIndex is the pointer in the string at which we want to look right (->).\n var match = msg.substr(runningIndex).match(/]+)\">|<\\/span>/);\n if (match) {\n // eslint-disable-next-line prefer-const\n var _ref = match,\n _ref2 = _slicedToArray(_ref, 2),\n matched = _ref2[0],\n tag = _ref2[1];\n\n // we need to adjust for the running index because match.index is relative to the substring we used\n var matchIndex = (match.index || 0) + runningIndex;\n var isOpening = !!tag;\n if (isOpening) {\n // If it's an opening tag, just push it on the stack and move on.\n stack.push({\n tag: tag,\n index: matchIndex\n });\n runningIndex = matchIndex + matched.length;\n } else {\n // We reached an ending tag.\n\n var popped = stack.pop();\n if (!popped) {\n options.warningHandler({\n context: 'sm/intl',\n error: 'unbalanced_delimiters_extra_closing',\n message: message,\n tokenizedValues: tokenizedValues,\n vars: vars\n });\n return message;\n }\n runningIndex = popped.index;\n // Find the content between the opening tag and the current one\n var content = msg.substring(runningIndex, matchIndex).replace(/]+)\">/, '').replace(/<\\span>/, '');\n var children = void 0;\n // If there are other functional elements saved already, try to split\n // the content and replace them with the right elements.\n if (elements && keysOf(elements).length > 0) {\n children = content.split(tokenDelimiter).filter(function (part) {\n return !!part;\n }).map(replacer(elements));\n } else {\n children = content;\n }\n\n // Build an element by cloning the passed element or calling the\n // passed function.\n var element = vars[popped.tag]({\n children: children\n });\n if ( /*#__PURE__*/_react.default.isValidElement(element)) {\n element = /*#__PURE__*/_react.default.cloneElement(element, {\n key: \"\".concat(popped.tag, \"_\").concat(randomStr(8))\n });\n }\n\n // Build the new string and adjust the running index based on that token.\n var token = generateToken();\n var tokenReplacement = \"\".concat(tokenDelimiter).concat(token).concat(tokenDelimiter);\n msg = \"\".concat(msg.substring(0, popped.index)).concat(tokenReplacement).concat(msg.substring(matchIndex + matched.length, msg.length));\n elements[token] = element;\n }\n } else {\n exhausted = true;\n }\n }\n if (stack.length) {\n options.warningHandler({\n context: 'sm/intl',\n error: 'unbalanced_delimiters_extra_opening',\n message: message,\n tokenizedValues: tokenizedValues,\n vars: vars\n });\n return message;\n }\n // Do a final replace once we're done with matching\n if (elements && keysOf(elements).length > 0) {\n msg = msg.split(tokenDelimiter).filter(function (part) {\n return !!part;\n }).map(replacer(elements));\n } else {\n msg = maybePseudo(msg);\n }\n return msg;\n } catch (err) {\n options.warningHandler({\n context: 'sm/intl',\n error: 'unexpected_tokenization_error',\n message: message,\n err: err\n });\n return message;\n }\n}\n\n/**\n * Retrieves and format a particular message by key. Uses defaultMessage if key is not found in message list.\n * @param {string} key Unique identifier for this string\n * @param {Object} variables (Optional) - Key/values for string substitution\n * @param {string} defaultMessage (Optional) Default message if string isn't found for key\n * @private\n */\nfunction get(key, variables, defaultMessage) {\n var vars = variables;\n var _getOptionsObject = getOptionsObject(),\n currentLocale = _getOptionsObject.currentLocale,\n warningHandler = _getOptionsObject.warningHandler;\n var messages = getStore()[currentLocale];\n if (!key) {\n warningHandler({\n context: 'sm/intl',\n error: 'key_is_undefined',\n currentLocale: currentLocale,\n key: key,\n defaultMessage: defaultMessage\n });\n return '';\n }\n var msg;\n if (!messages) {\n // If currentLocale is not set, return the default message without warning.\n if (currentLocale) {\n warningHandler({\n context: 'sm/intl',\n error: 'locale_not_found_in_message_store',\n currentLocale: currentLocale\n });\n }\n msg = defaultMessage || '';\n }\n msg = msg || messages[key];\n if (!msg && defaultMessage) {\n if (currentLocale !== 'en-US') {\n warningHandler({\n context: 'sm/intl',\n error: 'message_not_found_default_fallback',\n currentLocale: currentLocale,\n key: key\n });\n }\n msg = defaultMessage;\n }\n if (!msg) {\n warningHandler({\n context: 'sm/intl',\n error: 'message_not_found_no_default',\n currentLocale: currentLocale,\n key: key,\n defaultMessage: defaultMessage\n });\n return '';\n }\n return substitute(msg, vars);\n}\n\n/**\n * @param {string} key\n * @param {Object} variables\n * @param {string} defaultMessage\n * @returns {string} html\n * @private\n */\nfunction getHTML(key, variables, defaultMessage) {\n var msg = get(key, variables, defaultMessage);\n if (msg) {\n var el = /*#__PURE__*/_react.default.createElement('span', {\n dangerouslySetInnerHTML: {\n __html: msg\n }\n });\n // when key exists, it should still return element if there's defaultMessage() after getHTML()\n var defaultMsg = function defaultMsg() {\n return el;\n };\n return _objectSpread({\n defaultMessage: defaultMsg,\n d: defaultMsg\n }, el);\n }\n return '';\n}\n\n/**\n *\n * @param {string} currentLocale\n * @param {string} currentLanguage\n * @private\n */\nfunction defineIntlRelativeFormat(currentLocale, currentLanguage) {\n if (window.ReactIntlLocaleData && window.ReactIntlLocaleData[currentLanguage] && Object.keys(window.ReactIntlLocaleData[currentLanguage]).length > 0) {\n window.ReactIntlLocaleData[currentLanguage].forEach(function (localeData) {\n _intlRelativeformat.default.__addLocaleData(localeData);\n });\n }\n intlRelativeFormat = new _intlRelativeformat.default(currentLocale, _objectSpread({}, _formats.default.relativeTime || {}));\n}\n\n// =================== Public API\n\n/**\n * Definition function used by our babel-plugin to extract messages during development.\n * For the description, Type must have one of the following values `Button | Link | Label | Header | Paragraph`. Vis, for visibility, must be one of `low | med | high`.\n *\n * More in the {@link https://code.corp.surveymonkey.com/pages/webplatform/smweb/#/pages/webs/localization?id=definemessages|WebPlatform docs}\n *\n * @param {Object} v Key/Descriptor objects where Descriptor.id, Descriptor.defaultMessage and Descriptor.description are present.\n * @returns {Object} message definition\n *\n */\nfunction defineMessages(v) {\n return v;\n}\n\n/**\n * Translates a message matching a specific Descriptor object.\n * Ref: https://code.corp.surveymonkey.com/pages/webplatform/smweb/#/pages/webs/localization\n *\n * @param {Desc} desc Descriptor object for the current message to translate. ({id: String!, defaultMessage: String!, description: String})\n * @param {Object} values (Optional) - key/values for substitution based on the ICU message format.\n * @param {Object} opts (Optional)\n * @param {Object} opts.html (Optional/Defaults to `false`) - Whether or not to allow for HTML nodes in the message before substitution.\n * @returns {string|React.ReactElement} HTML string or key value\n */\nfunction t(desc, values) {\n var opts = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var id = desc.id,\n defaultMessage = desc.defaultMessage;\n var html = opts.html;\n return (html ? getHTML : get)(id, values, defaultMessage); // force return type\n}\n\n/** Props for `T` React component */\n\n/**\n * (React Component) Translates a message matching a specific Descriptor object.\n * Ref: https://code.corp.surveymonkey.com/pages/webplatform/smweb/#/pages/webs/localization\n */\nvar T = function T(props) {\n var desc = props.desc,\n values = props.values,\n id = props.id,\n defaultMessage = props.defaultMessage,\n html = props.html;\n return (html ? getHTML : get)(desc ? desc.id : id, values, desc ? desc.defaultMessage : defaultMessage);\n};\nexports.T = T;\nT.propTypes = {\n desc: _propTypes.default.shape({\n id: _propTypes.default.string.isRequired,\n defaultMessage: _propTypes.default.string.isRequired,\n description: _propTypes.default.string\n }),\n id: _propTypes.default.string,\n // PropTypes.node does not include `true`\n // (see https://github.com/facebook/prop-types/issues/199)\n // elementType is needed for react-based-tokenization - so we can pass in the element to substitute\n values: _propTypes.default.objectOf(_propTypes.default.oneOfType([_propTypes.default.node, _propTypes.default.bool, _propTypes.default.elementType])),\n defaultMessage: _propTypes.default.string,\n html: _propTypes.default.bool\n};\nT.defaultProps = {\n desc: undefined,\n id: undefined,\n values: undefined,\n defaultMessage: undefined,\n html: false\n};\n\n/**\n * Initialize the localization framework with the passed messages and set of currentLocale/currentLanguage. Can be called more than once.\n * @param {Object} messages Key/Values where keys are string IDs and values are the translated message for such ID.\n * @param {Options} [opts={}] Options for Intl\n * @returns {void}\n */\nfunction initIntl( /** Key/Values where keys are string IDs and values are the translated message for such ID */\nmessages) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n !opts.currentLocale ? process.env.NODE_ENV !== \"production\" ? (0, _invariant.default)(false, 'opts.currentLocale is required') : (0, _invariant.default)(false) : void 0;\n !opts.currentLanguage ? process.env.NODE_ENV !== \"production\" ? (0, _invariant.default)(false, 'opts.currentLanguage is required') : (0, _invariant.default)(false) : void 0;\n !messages ? process.env.NODE_ENV !== \"production\" ? (0, _invariant.default)(false, 'messages is required') : (0, _invariant.default)(false) : void 0;\n var options = getOptionsObject();\n options.currentLocale = opts.currentLocale;\n options.currentLanguage = opts.currentLanguage;\n options.warningHandler = opts.warningHandler || options.warningHandler;\n var messageStore = getStore();\n var langInited = !!messageStore[options.currentLocale];\n (0, _lodash.default)(messageStore, _defineProperty({}, options.currentLocale, messages));\n options.formats = _objectSpread(_objectSpread(_objectSpread({}, options.formats), opts.formats), _formats.default);\n if (langInited) {\n return;\n }\n if (isBrowser) {\n defineIntlRelativeFormat(options.currentLocale, options.currentLanguage);\n } else {\n // For Node.js, common locales are added in the application\n intlRelativeFormat = new _intlRelativeformat.default(options.currentLocale, _objectSpread({}, _formats.default.relativeTime || {}));\n }\n}\n\n/**\n * Clears the object where we store messages. Useful for testing\n * @returns {undefined}\n */\nfunction resetMessageStore() {\n var messageStore = getStore();\n Object.keys(messageStore).forEach(function (member) {\n return delete messageStore[member];\n });\n}\n\n/**\n * Retrieves a copy of the stored messages.\n * @returns {JSON} JSON Message Store\n */\nfunction getMessageStore() {\n return JSON.parse(JSON.stringify(getStore()));\n}\n/**\n * The FormattedDateTime component uses the Intl.DateTimeFormat API and as such, here are the supported props.\n * All optionals.\n *\n * type DateTimeFormatOptions = {\n * localeMatcher: 'best fit' | 'lookup' = 'best fit',\n * formatMatcher: 'basic' | 'best fit' = 'best fit',\n *\n * timeZone: string,\n * hour12 : boolean,\n *\n * weekday : 'narrow' | 'short' | 'long',\n * era : 'narrow' | 'short' | 'long',\n * year : 'numeric' | '2-digit',\n * month : 'numeric' | '2-digit' | 'narrow' | 'short' | 'long',\n * day : 'numeric' | '2-digit',\n * hour : 'numeric' | '2-digit',\n * minute : 'numeric' | '2-digit',\n * second : 'numeric' | '2-digit',\n * timeZoneName: 'short' | 'long',\n * };\n *\n * @param {Date} props Actual date to format.\n * @returns {string} formatted date\n */\nfunction FormattedDateTime(props) {\n var _options$currentLocal;\n var value = props.value,\n restProps = _objectWithoutProperties(props, _excluded);\n var options = getOptionsObject();\n return new Intl.DateTimeFormat((_options$currentLocal = options.currentLocale) !== null && _options$currentLocal !== void 0 ? _options$currentLocal : undefined, _objectSpread(_objectSpread({}, _formats.default.dateTime || {}), restProps)).format(value);\n}\n/**\n * The FormattedNumber component uses the Intl.NumberFormat API and as such, here are the supported props.\n * All optionals.\n *\n * type NumberFormatOptions = {\n * localeMatcher: 'best fit' | 'lookup' = 'best fit',\n *\n * style: 'decimal' | 'currency' | 'percent' = 'decimal',\n *\n * currency : string,\n * currencyDisplay: 'symbol' | 'code' | 'name' = 'symbol',\n *\n * useGrouping: boolean = true,\n *\n * minimumIntegerDigits : number = 1,\n * minimumFractionDigits : number,\n * maximumFractionDigits : number,\n * minimumSignificantDigits: number = 1,\n * maximumSignificantDigits: number,\n * };\n *\n * @param {number} props Actual number to format.\n * @returns {string} Formatted number\n */\nfunction FormattedNumber(props) {\n var _options$currentLocal2;\n var value = props.value,\n restProps = _objectWithoutProperties(props, _excluded2);\n var options = getOptionsObject();\n restProps.style = restProps.formatStyle;\n return new Intl.NumberFormat((_options$currentLocal2 = options.currentLocale) !== null && _options$currentLocal2 !== void 0 ? _options$currentLocal2 : undefined, _objectSpread(_objectSpread({}, _formats.default.number || {}), restProps)).format(value);\n}\n/**\n * The FormattedRelativeTime component uses the IntlRelativeTime API and as such, here are the supported props.\n * All optionals.\n *\n * type RelativeTimeFormatOptions = {\n * units: 'second' | 'second-short' | 'minute' | 'minute-short' | 'hour' | 'hour-short' | 'day' | 'day-short' | 'month' | 'month-short' | 'year' | 'year-short'\n * style: 'best fit' | 'numeric'\n * };\n *\n * @param {Object} props\n * @param {Date} props.value Actual date to format.\n * @param {Date} props.now (Optional) Fix the value of \"now\" to a certain date.\n * @returns {string} Formatted date\n */\nfunction FormattedRelativeTime(props) {\n var value = props.value,\n now = props.now;\n return intlRelativeFormat.format(value, {\n now: now\n });\n}\n\n/** Context is currently only used to prevent isRTL prop drilling */\nvar L10NContext = /*#__PURE__*/(0, _react.createContext)({\n isRTL: false\n});\nexports.L10NContext = L10NContext;\nvar RTLLanguageCodes = _languages.LANGUAGES.filter(function (l) {\n return l.isRTL;\n}).map(function (l) {\n return l.code;\n});\n/**\n * Configures the global localization context for the whole page.\n * @class\n */\nvar L10nProvider = /*#__PURE__*/function (_React$Component) {\n _inherits(L10nProvider, _React$Component);\n var _super = _createSuper(L10nProvider);\n function L10nProvider(props) {\n var _this;\n _classCallCheck(this, L10nProvider);\n _this = _super.call(this, props);\n _this.state = {\n messages: null,\n isRTL: false\n };\n var currentLocale = props.localeCode;\n var currentLanguage = props.languageCode;\n\n // If the locale is english, we are not expecting any messages; hence, default to {}\n _this.state.messages = _this.getMessages();\n /**\n * `SSR/isNode` - Initialize Intl on the server with the provided messages (if any).\n * `messages ` - We already have the messages (SSR/CSR/en-US), initIntl right away.\n *\n * The above takes care of three scenarios -\n * 1. SSR - Everything is provided on the server; hence, no need to fetch messages.\n * 2. CSR + messages - Messages were fetched before this component; hence, no need to fetch messages.\n * 3. In the case of `en-US`, we really don't need messages.\n */\n var _getClientEnvironment2 = (0, _environment.getClientEnvironmentDetails)(),\n isNode = _getClientEnvironment2.isNode;\n if (isNode || _this.state.messages) {\n initIntl(_this.state.messages, {\n currentLocale: currentLocale,\n currentLanguage: currentLanguage\n });\n }\n if (RTLLanguageCodes.indexOf(currentLanguage) !== -1) {\n _this.state.isRTL = true;\n }\n return _this;\n }\n _createClass(L10nProvider, [{\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps) {\n // Update text-direction\n if (prevProps.languageCode !== this.props.languageCode) {\n var isRTL = RTLLanguageCodes.indexOf(this.props.languageCode) !== -1;\n if (isRTL !== this.state.isRTL) {\n this.setState(function () {\n return {\n isRTL: isRTL\n };\n });\n }\n }\n\n // Update messages at runtime is not yet implemented\n }\n\n /** Picks the correct localized messages */\n }, {\n key: \"getMessages\",\n value: function getMessages() {\n return this.props.localeCode === 'en-US' ? {} : this.props.localeMessages || {};\n }\n }, {\n key: \"render\",\n value: function render() {\n if (!this.state.messages) {\n return null;\n }\n return /*#__PURE__*/(\n // eslint-disable-next-line react/jsx-no-constructed-context-values\n _react.default.createElement(L10NContext.Provider, {\n value: {\n isRTL: this.state.isRTL\n },\n __self: this,\n __source: {\n fileName: _jsxFileName,\n lineNumber: 907,\n columnNumber: 7\n }\n }, this.props.children)\n );\n }\n }]);\n return L10nProvider;\n}(_react.default.Component);\nexports.L10nProvider = L10nProvider;\nL10nProvider.propTypes = {\n children: _propTypes.default.node.isRequired,\n localeMessages: _propTypes.default.object,\n // eslint-disable-line\n localeCode: _propTypes.default.string,\n languageCode: _propTypes.default.string\n};\nL10nProvider.defaultProps = {\n localeCode: 'en-US',\n languageCode: 'en'\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.DataCenterIds = exports.DC_SPECIFIC_SUBDOMAINS = void 0;\nexports.getDataCenterById = getDataCenterById;\nexports.getDataCenterIdFromCurrentUrl = getDataCenterIdFromCurrentUrl;\nexports.getDefaultSubdomainForDataCenter = getDefaultSubdomainForDataCenter;\nvar _parseDomain = require(\"parse-domain\");\nvar _dataCenters = _interopRequireDefault(require(\"./data/dataCenters.json\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar DataCenterIds;\nexports.DataCenterIds = DataCenterIds;\n(function (DataCenterIds) {\n DataCenterIds[\"US\"] = \"0\";\n DataCenterIds[\"CA\"] = \"1\";\n DataCenterIds[\"EU\"] = \"2\";\n})(DataCenterIds || (exports.DataCenterIds = DataCenterIds = {}));\nvar DC_SPECIFIC_SUBDOMAINS;\n/**\n * Returns the data center by id\n * @param {string} dataCenterId\n * @returns {Object} data center details\n * @memberof module:@sm/locale\n */\nexports.DC_SPECIFIC_SUBDOMAINS = DC_SPECIFIC_SUBDOMAINS;\n(function (DC_SPECIFIC_SUBDOMAINS) {\n DC_SPECIFIC_SUBDOMAINS[DC_SPECIFIC_SUBDOMAINS[\"eu\"] = DataCenterIds.EU] = \"eu\";\n})(DC_SPECIFIC_SUBDOMAINS || (exports.DC_SPECIFIC_SUBDOMAINS = DC_SPECIFIC_SUBDOMAINS = {}));\nfunction getDataCenterById(dataCenterId) {\n return _dataCenters.default.dataCenters[dataCenterId];\n}\n\n/**\n * Returns the data center id from the url\n * @param {string} url\n * @param {string} dataCenterAffinityCookie\n * @returns {string} data center id\n * @memberof module:@sm/locale\n */\nfunction getDataCenterIdFromCurrentUrl(url, dataCenterAffinityCookie) {\n var parseResult = (0, _parseDomain.parseDomain)((0, _parseDomain.fromUrl)(url)) || {};\n var subdomain;\n var dataCenterId = DataCenterIds.US;\n if (parseResult.type === _parseDomain.ParseResultType.Listed) {\n subdomain = parseResult.subDomains.join('.');\n if (subdomain) {\n var dcSub = Object.keys(_dataCenters.default.dataCenterSpecificSubdomains).find(function (subSpecific) {\n return subSpecific === subdomain || subdomain.endsWith(\".\".concat(subSpecific));\n });\n if (dcSub) {\n dataCenterId = _dataCenters.default.dataCenterSpecificSubdomains[dcSub];\n }\n }\n }\n if (dataCenterId === DataCenterIds.US && \"\".concat(dataCenterAffinityCookie) === DataCenterIds.CA) {\n dataCenterId = DataCenterIds.CA;\n }\n return dataCenterId;\n}\n\n// This is currently being used in UserWeb here https://code.corp.surveymonkey.com/devmonkeys/userweb/blob/e7646369dfae9fef0c8d1fa3c23f1bde61a9c906/userweb/lib/language.py#L31\n// So I'm leaving this function for when we port the corresponding code in UserWeb.\n/**\n * Returns the default subdomain for a data center\n * @param {string} dataCenterId\n * @returns {string} subdomain\n * @memberof module:@sm/locale\n */\nfunction getDefaultSubdomainForDataCenter(dataCenterId) {\n var dc = getDataCenterById(dataCenterId);\n return dc && dc.defaultSubdomain || 'www';\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"LANGUAGES\", {\n enumerable: true,\n get: function get() {\n return _languages.LANGUAGES;\n }\n});\nObject.defineProperty(exports, \"LANGUAGES_BY_CODE\", {\n enumerable: true,\n get: function get() {\n return _languages.LANGUAGES_BY_CODE;\n }\n});\nObject.defineProperty(exports, \"LANGUAGES_BY_ID\", {\n enumerable: true,\n get: function get() {\n return _languages.LANGUAGES_BY_ID;\n }\n});\nObject.defineProperty(exports, \"LanguageCode\", {\n enumerable: true,\n get: function get() {\n return _languages.LanguageCode;\n }\n});\nObject.defineProperty(exports, \"MULTILINGUAL_SURVEYS_LOCALE_CODES\", {\n enumerable: true,\n get: function get() {\n return _languages.MULTILINGUAL_SURVEYS_LOCALE_CODES;\n }\n});\nObject.defineProperty(exports, \"MultilingualSurveysLocaleCode\", {\n enumerable: true,\n get: function get() {\n return _languages.MultilingualSurveysLocaleCode;\n }\n});\nObject.defineProperty(exports, \"SITE_WIDE_LOCALE_CODES\", {\n enumerable: true,\n get: function get() {\n return _languages.SITE_WIDE_LOCALE_CODES;\n }\n});\nObject.defineProperty(exports, \"SURVEY_CREATION_LOCALE_CODES\", {\n enumerable: true,\n get: function get() {\n return _languages.SURVEY_CREATION_LOCALE_CODES;\n }\n});\nObject.defineProperty(exports, \"SiteWideLocaleCode\", {\n enumerable: true,\n get: function get() {\n return _languages.SiteWideLocaleCode;\n }\n});\nObject.defineProperty(exports, \"SupportLevels\", {\n enumerable: true,\n get: function get() {\n return _languages.SupportLevels;\n }\n});\nObject.defineProperty(exports, \"SurveyCreationLocaleCode\", {\n enumerable: true,\n get: function get() {\n return _languages.SurveyCreationLocaleCode;\n }\n});\nObject.defineProperty(exports, \"convertLanguageTag\", {\n enumerable: true,\n get: function get() {\n return _languageTags.convertLanguageTag;\n }\n});\nexports.getAudienceSupportedCountries = getAudienceSupportedCountries;\nexports.getBenchmarksSupportedCountries = getBenchmarksSupportedCountries;\nexports.getCookieTransportTLDs = getCookieTransportTLDs;\nObject.defineProperty(exports, \"getDataCenterById\", {\n enumerable: true,\n get: function get() {\n return _dataCenters.getDataCenterById;\n }\n});\nObject.defineProperty(exports, \"getDataCenterIdFromCurrentUrl\", {\n enumerable: true,\n get: function get() {\n return _dataCenters.getDataCenterIdFromCurrentUrl;\n }\n});\nObject.defineProperty(exports, \"getDefaultSubdomainForDataCenter\", {\n enumerable: true,\n get: function get() {\n return _dataCenters.getDefaultSubdomainForDataCenter;\n }\n});\nexports.getEUCountries = getEUCountries;\nexports.getLanguageCodeFromCountryCode = getLanguageCodeFromCountryCode;\nexports.getLanguageCodeFromSubdomain = getLanguageCodeFromSubdomain;\nObject.defineProperty(exports, \"getLanguageTagByCode\", {\n enumerable: true,\n get: function get() {\n return _languageTags.getLanguageTagByCode;\n }\n});\nObject.defineProperty(exports, \"getLanguageTagById\", {\n enumerable: true,\n get: function get() {\n return _languageTags.getLanguageTagById;\n }\n});\nObject.defineProperty(exports, \"getLanguageTags\", {\n enumerable: true,\n get: function get() {\n return _languageTags.getLanguageTags;\n }\n});\nexports.getSMSupportedCountries = getSMSupportedCountries;\nexports.getSiteSupportedLanguageCodes = getSiteSupportedLanguageCodes;\nexports.getSiteSupportedLanguages = getSiteSupportedLanguages;\nexports.getSubdomainFromLanguageCodeAndDataCenter = getSubdomainFromLanguageCodeAndDataCenter;\nexports.getTldLanguageInfo = getTldLanguageInfo;\nexports.isDACHCountry = isDACHCountry;\nexports.isEUCountry = isEUCountry;\nexports.isEUDC = isEUDC;\nexports.isEUSubdomain = isEUSubdomain;\nexports.isGBCountry = isGBCountry;\nexports.isGDPRCountry = isGDPRCountry;\nexports.isUSTerritory = isUSTerritory;\nexports.localeSets = void 0;\nObject.defineProperty(exports, \"normalizeLanguageTag\", {\n enumerable: true,\n get: function get() {\n return _languageTags.normalizeLanguageTag;\n }\n});\nObject.defineProperty(exports, \"parseLanguageTag\", {\n enumerable: true,\n get: function get() {\n return _languageTags.parseLanguageTag;\n }\n});\nexports.sanitizeCountryCode = sanitizeCountryCode;\nvar _invariant = _interopRequireDefault(require(\"invariant\"));\nvar _tlds = _interopRequireDefault(require(\"./data/tlds.json\"));\nvar _localeSets = require(\"./localeSets\");\nvar _languages = require(\"./languages\");\nvar _dataCenters = require(\"./dataCenters\");\nvar _languageTags = require(\"./languageTags\");\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _toConsumableArray(arr) {\n return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread();\n}\nfunction _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter);\n}\nfunction _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return _arrayLikeToArray(arr);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\n// This is for backward compatibility. Remove for 2.0\nvar localeSets = {\n GDPR_COUNTRIES: _localeSets.GDPRCountryCodes,\n SM_SUPPORTED_COUNTRIES: _localeSets.SMSupportedCountryCodes,\n EU_COUNTRIES: _localeSets.EUCountryCodes,\n US_TERRITORIES: _localeSets.USTerritoryCountryCodes,\n GB_COUNTRIES: _localeSets.GBCountryCodes,\n DASH_COUNTRIES: _localeSets.DASHCountryCodes\n};\nexports.localeSets = localeSets;\n/**\n * @param {string} country - code\n * @param {string} fallBackCountry - default country code\n * @returns {string} two letter country code, default to US if a fallback is not provided\n */\nfunction sanitizeCountryCode(country) {\n var fallBackCountry = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : _localeSets.CountryCodes.US;\n var isString = typeof country === 'string';\n if (!isString) {\n // TODO log this\n !false ? process.env.NODE_ENV !== \"production\" ? (0, _invariant.default)(false, 'Country code is not a string.') : (0, _invariant.default)(false) : void 0;\n return fallBackCountry;\n }\n var isTwoLetterCode = country.length === 2;\n if (!isTwoLetterCode) {\n // TODO log this\n !false ? process.env.NODE_ENV !== \"production\" ? (0, _invariant.default)(false, 'Country code is not a 2 letter code') : (0, _invariant.default)(false) : void 0;\n return fallBackCountry;\n }\n return _localeSets.SMSupportedCountryCodes.find(function (c) {\n return c === country.toUpperCase();\n }) || fallBackCountry.toUpperCase();\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {bool} if that country has GDPR laws\n */\nfunction isGDPRCountry(country) {\n // if we cannot determine the country, assume GDPR country ie GB\n return _localeSets.GDPRCountryCodes.includes(sanitizeCountryCode(country, _localeSets.CountryCodes.GB));\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {bool} if country is in DASH country set\n */\nfunction isDACHCountry(country) {\n // if we cannot determine the country, assume non Dash ie. US\n return _localeSets.DASHCountryCodes.includes(sanitizeCountryCode(country, _localeSets.CountryCodes.US));\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {bool} if country is in the United Kingdoms\n * @public\n */\nfunction isGBCountry(country) {\n // if we cannot determine the country, assume GB country\n return _localeSets.GBCountryCodes.includes(sanitizeCountryCode(country, _localeSets.CountryCodes.GB));\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {bool} if country is a US Territory\n * @public\n */\nfunction isUSTerritory(country) {\n // if we cannot determine the country, assume Non US\n return _localeSets.USTerritoryCountryCodes.includes(sanitizeCountryCode(country, _localeSets.CountryCodes.GB));\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {bool} if country is in European Union\n * @public\n */\nfunction isEUCountry(country) {\n // if we cannot determine the country, assume EU. (joelm: WHY?!?!?!)\n return _localeSets.EUCountryCodes.includes(sanitizeCountryCode(country, _localeSets.CountryCodes.GB));\n}\n\n/**\n * @param {string} hostname\n * @returns {bool} if host is a EUDC\n * @public\n */\nfunction isEUDC(hostname) {\n return (0, _dataCenters.getDataCenterIdFromCurrentUrl)(hostname) === _dataCenters.DataCenterIds.EU;\n}\n\n/**\n * @param {string} subdomain\n * @returns {bool} if EU Subdomain\n * @public\n */\nfunction isEUSubdomain(subdomain) {\n return !!(subdomain && subdomain.indexOf('eu') !== -1);\n}\n\n/**\n * @returns {Array} list of European Union Countries\n * @public\n */\nfunction getEUCountries() {\n return _toConsumableArray(_localeSets.EUCountryCodes);\n}\n\n/**\n * @returns {Array} List of SM supported TLDs\n * @public\n */\nfunction getCookieTransportTLDs() {\n return _tlds.default.filter(function (tld) {\n return tld.enabled;\n }).map(function (tld) {\n return tld.tld;\n });\n}\n\n/**\n * @returns {Array} Countries that SM Audience supports\n * @public\n */\nfunction getAudienceSupportedCountries() {\n // TODO change this to just return list of country codes\n return {\n US: 'United States',\n AU: 'Australia',\n CA: 'Canada',\n NZ: 'New Zealand',\n SG: 'Singapore',\n GB: 'United Kingdom',\n IE: 'Ireland'\n };\n}\n\n/**\n * @returns {Array} Countries that SM Benchmarks supports\n * @public\n */\nfunction getBenchmarksSupportedCountries() {\n // TODO change this to jst return a list of country codes\n return {\n US: 'United States'\n };\n}\n\n/**\n * @returns {Array} Countries that SM supports\n * @public\n */\nfunction getSMSupportedCountries() {\n return _toConsumableArray(_localeSets.SMSupportedCountryCodes);\n}\n\n/**\n * @returns {Object} Language Object that SM Supports\n * @public\n */\nfunction getSiteSupportedLanguages() {\n return _languages.LANGUAGES.filter(function (language) {\n return language.supportLevel === _languages.SupportLevels.SITE_WIDE;\n });\n}\n\n/**\n * @param {string} country - Two-letter country code\n * @returns {string} language code\n */\nfunction getLanguageCodeFromCountryCode(country) {\n var language = _languages.LANGUAGES.find(function (lang) {\n return lang.countries.includes(sanitizeCountryCode(country));\n });\n return language ? language.code : 'en';\n}\n\n/**\n * Returns the language code from the subdomain\n * @param {string} subdomain\n * @returns {string} language code\n */\nfunction getLanguageCodeFromSubdomain(subdomain) {\n if (subdomain === 'eu' || subdomain === 'www') {\n return 'en';\n }\n var language = _languages.LANGUAGES_WITH_SUBDOMAINS.find(function (lang) {\n return lang.subdomain === subdomain || \"\".concat(lang.subdomain, \".eu\") === subdomain;\n });\n if (language) {\n return language.code;\n }\n return 'en';\n}\n\n/**\n * Returns the subdomain from the language code and data center combination\n * @param {string} languageCode\n * @param {string} dataCenterId\n * @returns {string} subdomain\n */\nfunction getSubdomainFromLanguageCodeAndDataCenter(languageCode, dataCenterId) {\n var language = _languages.LANGUAGES_BY_CODE[languageCode];\n var result = language.subdomain;\n if (dataCenterId === _dataCenters.DataCenterIds.EU) {\n result = \"\".concat(language.subdomain, \".eu\");\n }\n return result === 'www.eu' ? 'eu' : result;\n}\n\n/**\n * @returns {Array} Language codes that SM Supports\n * @public\n */\nfunction getSiteSupportedLanguageCodes() {\n return _languages.SITE_WIDE_LOCALE_CODES;\n}\n/**\n * Returns the tld language info\n * @param {string} tld\n * @returns {string} language info\n */\nfunction getTldLanguageInfo(tld) {\n var data = _tlds.default.find(function (i) {\n return i.tld === tld;\n });\n if (!data) {\n return _tlds.default.find(function (i) {\n return i.tld === 'com';\n });\n }\n return data;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.convertLanguageTag = convertLanguageTag;\nexports.getLanguageTagByCode = getLanguageTagByCode;\nexports.getLanguageTagById = getLanguageTagById;\nexports.getLanguageTags = getLanguageTags;\nexports.normalizeLanguageTag = normalizeLanguageTag;\nexports.parseLanguageTag = parseLanguageTag;\nvar _languageTags = _interopRequireDefault(require(\"./data/language-tags.json\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _wrapRegExp() {\n _wrapRegExp = function _wrapRegExp(re, groups) {\n return new BabelRegExp(re, void 0, groups);\n };\n var _super = RegExp.prototype,\n _groups = new WeakMap();\n function BabelRegExp(re, flags, groups) {\n var _this = new RegExp(re, flags);\n return _groups.set(_this, groups || _groups.get(re)), _setPrototypeOf(_this, BabelRegExp.prototype);\n }\n function buildGroups(result, re) {\n var g = _groups.get(re);\n return Object.keys(g).reduce(function (groups, name) {\n var i = g[name];\n if (\"number\" == typeof i) groups[name] = result[i];else {\n for (var k = 0; void 0 === result[i[k]] && k + 1 < i.length;) {\n k++;\n }\n groups[name] = result[i[k]];\n }\n return groups;\n }, Object.create(null));\n }\n return _inherits(BabelRegExp, RegExp), BabelRegExp.prototype.exec = function (str) {\n var result = _super.exec.call(this, str);\n if (result) {\n result.groups = buildGroups(result, this);\n var indices = result.indices;\n indices && (indices.groups = buildGroups(indices, this));\n }\n return result;\n }, BabelRegExp.prototype[Symbol.replace] = function (str, substitution) {\n if (\"string\" == typeof substitution) {\n var groups = _groups.get(this);\n return _super[Symbol.replace].call(this, str, substitution.replace(/\\$<([^>]+)>/g, function (_, name) {\n var group = groups[name];\n return \"$\" + (Array.isArray(group) ? group.join(\"$\") : group);\n }));\n }\n if (\"function\" == typeof substitution) {\n var _this = this;\n return _super[Symbol.replace].call(this, str, function () {\n var args = arguments;\n return \"object\" != typeof args[args.length - 1] && (args = [].slice.call(args)).push(buildGroups(args, _this)), substitution.apply(this, args);\n });\n }\n return _super[Symbol.replace].call(this, str, substitution);\n }, _wrapRegExp.apply(this, arguments);\n}\nfunction _inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function\");\n }\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n writable: true,\n configurable: true\n }\n });\n Object.defineProperty(subClass, \"prototype\", {\n writable: false\n });\n if (superClass) _setPrototypeOf(subClass, superClass);\n}\nfunction _setPrototypeOf(o, p) {\n _setPrototypeOf = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function _setPrototypeOf(o, p) {\n o.__proto__ = p;\n return o;\n };\n return _setPrototypeOf(o, p);\n}\nvar tagRegEx = /*#__PURE__*/_wrapRegExp(/^([a-z]{2,3})(_([A-Z]{1}[a-z]{3}))?(_([A-Z]{2}|[0-9]{3}))?(_([A-Za-z0-9]{5,8}|[0-9][A-Za-z0-9]{3}))?$/, {\n primary: 1,\n script: 3,\n region: 5,\n variant: 7\n});\nvar LANGUAGE_TAGS = _languageTags.default;\n\n/**\n * Break a sting Language Tag into it's components based on IETF BCP 47\n *\n * @param tag - (_casing sensitive_) the language tag to be parsed, e.g.:\n * - `pt` for portuguese\n * - `pt_BR` for brasilia portuguese\n * - `zh_Hant_TW` for _Chinese (Traditional, Taiwan)_\n * - `en_US_POSIX` for _English (United States, Computer)_\n */\nfunction parseLanguageTag(tag) {\n var matches = tagRegEx.exec(tag);\n return matches === null || matches === void 0 ? void 0 : matches.groups;\n}\n\n/**\n * Replace the delimiter of the string Language Tag, by default to the ISO standard `-`\n *\n * @param tag - the language tag to be converted, e.g.:\n * - `pt` for portuguese\n * - `pt_BR` for brasilia portuguese\n * - `zh_Hant_TW` for _Chinese (Traditional, Taiwan)_\n * - `en_US_POSIX` for _English (United States, Computer)_\n */\nfunction convertLanguageTag(tag) {\n var delimiter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '-';\n return tag.replace(/[_-]/gi, delimiter);\n}\n\n/**\n * Convert the string Language Tag to all lowercase hyphenated representation\n *\n * @example `zh_Hant_TW` becomes `zh-hant-tw`\n *\n * @param tag - the language tag to be normalized, e.g.:\n * - `pt` for portuguese\n * - `pt_BR` for brasilia portuguese\n * - `zh_Hant_TW` for _Chinese (Traditional, Taiwan)_\n * - `en_US_POSIX` for _English (United States, Computer)_\n */\nfunction normalizeLanguageTag(tag) {\n return convertLanguageTag(tag).toLowerCase();\n}\n\n/** Get array of all possible `LanguageTagDefinition` */\nfunction getLanguageTags() {\n return LANGUAGE_TAGS;\n}\n\n/**\n * Get a specific `LanguageTagDefinition` by its id\n *\n * @param id example `\"1\"` for _English_ or `\"361\"` for _Croatian (Bosnia and Herzegovina)_\n * @returns\n */\nfunction getLanguageTagById(id) {\n return LANGUAGE_TAGS.find(function (def) {\n return def.id === id;\n });\n}\n\n/**\n * Convert the string Language Tag to all lowercase hyphenated representation\n *\n * @example `zh_Hant_TW` becomes `zh-hant-tw`\n *\n * @param code - the code (aka. language tag) to be searched for, e.g.:\n * - `pt` for portuguese\n * - `pt_BR` for brasilia portuguese\n * - `zh_Hant_TW` for _Chinese (Traditional, Taiwan)_\n * - `en_US_POSIX` for _English (United States, Computer)_\n */\nfunction getLanguageTagByCode(code) {\n var nt = normalizeLanguageTag;\n return LANGUAGE_TAGS.find(function (def) {\n return nt(def.code) === nt(code);\n });\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.SupportLevels = exports.SURVEY_CREATION_LOCALE_CODES = exports.SITE_WIDE_LOCALE_CODES = exports.MULTILINGUAL_SURVEYS_LOCALE_CODES = exports.LANGUAGES_WITH_SUBDOMAINS = exports.LANGUAGES_BY_ID = exports.LANGUAGES_BY_CODE = exports.LANGUAGES = void 0;\n/*\nSM has the language data recorded in a number of places. There is DB table sm_Localization_D_Languages present in multiple schemas.\nHere are some examples of the sources that support createweb languages. There are many more references to the top 17 languages supported SM-wide.\nhttps://code.corp.surveymonkey.com/devmonkeys/smlib.locale/blob/master/smlib/locale/locale.yml#L330\nhttps://code.corp.surveymonkey.com/devmonkeys/createweb/blob/develop/createweb/lib/translations.py\nhttps://code.corp.surveymonkey.com/devmonkeys/smsdk.surveysvc/blob/master/smsdk/surveysvc/lib/languages.yml\nhttps://code.corp.surveymonkey.com/devmonkeys/AnWeb/blob/develop/anweb/lib/languages.py\n*/\n/**\n * @constant\n * @default\n * @memberof module:@sm/locale\n */\nvar SupportLevels;\n/**\n * The locale codes has been broken down into three lists so that we can\n * expose all the locales for a SupportLevel as an argument to a function (or React Component prop)\n */\nexports.SupportLevels = SupportLevels;\n(function (SupportLevels) {\n SupportLevels[SupportLevels[\"SITE_WIDE\"] = 1] = \"SITE_WIDE\";\n SupportLevels[SupportLevels[\"SURVEY_CREATION\"] = 2] = \"SURVEY_CREATION\";\n SupportLevels[SupportLevels[\"MULTILINGUAL_SURVEYS\"] = 3] = \"MULTILINGUAL_SURVEYS\";\n})(SupportLevels || (exports.SupportLevels = SupportLevels = {}));\nvar SITE_WIDE_LOCALE_CODES = ['zh-tw', 'pt-br', 'da', 'nl', 'en', 'fi', 'fr', 'de', 'it', 'ja', 'ko', 'no', 'ru', 'es', 'sv', 'tr', 'gb'];\nexports.SITE_WIDE_LOCALE_CODES = SITE_WIDE_LOCALE_CODES;\nvar SURVEY_CREATION_LOCALE_CODES = ['sq', 'ar', 'hy', 'eu', 'bn', 'bs', 'bg', 'ca', 'zh-cn', 'pt', 'hr', 'cs', 'et', 'tl', 'ka', 'el', 'he', 'hi', 'hu', 'is', 'id', 'ga', 'ku', 'lv', 'lt', 'mk', 'ms', 'ml', 'fa', 'pl', 'pa', 'ro', 'sr', 'sk', 'sl', 'sw', 'ta', 'te', 'th', 'uk', 'vi', 'cy'];\nexports.SURVEY_CREATION_LOCALE_CODES = SURVEY_CREATION_LOCALE_CODES;\nvar MULTILINGUAL_SURVEYS_LOCALE_CODES = [];\nexports.MULTILINGUAL_SURVEYS_LOCALE_CODES = MULTILINGUAL_SURVEYS_LOCALE_CODES;\n/**\n * An array of available languages.\n *\n * The language codes in the database do not follow IETF language tag standard https://en.wikipedia.org/wiki/IETF_language_tag\n * or confuse regional locale with language dialect. That causes issues when working with internationalization libraries like ICU.\n * The field code is the \"code\" as in the SM database and python packages. The \"codeIETF\" is the correct code. This API accepts both.\n * For the output choose \"code\" unless you are sure that the consumer supports IETF codes (e.g, uses this library).\n * @type {Array}\n * @memberof module:@sm/locale\n */\nvar LANGUAGES = [{\n code: 'sq',\n name: 'Albanian',\n id: 24,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ar',\n name: 'Arabic',\n id: 25,\n countries: [],\n isRTL: true,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'hy',\n name: 'Armenian',\n id: 26,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'eu',\n name: 'Basque',\n id: 27,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'bn',\n name: 'Bengali',\n id: 28,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'bs',\n name: 'Bosnian',\n id: 29,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'bg',\n name: 'Bulgarian',\n id: 30,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ca',\n name: 'Catalan',\n id: 31,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'zh-cn',\n codeIETF: 'zh-Hans',\n name: 'Chinese (Simplified)',\n id: 2,\n countries: [],\n isRTL: false,\n subdomain: 'www',\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'zh-tw',\n codeIETF: 'zh-Hant',\n name: 'Chinese (Traditional)',\n displayName: '中文(繁體)',\n id: 3,\n helplink: 'zh_TW',\n helpCenterLangCode: 'zh',\n tld: 'com',\n subdomain: 'zh',\n countries: ['TW'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 14\n}, {\n code: 'pt-br',\n name: 'Portuguese (Brazilian)',\n id: 17,\n displayName: 'Português',\n helplink: 'pt_BR',\n helpCenterLangCode: 'pt-br',\n tld: 'com',\n subdomain: 'pt',\n countries: ['BR', 'PT', 'AO', 'CV'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 2\n}, {\n code: 'pt',\n name: 'Portuguese (Iberian)',\n id: 16,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'hr',\n name: 'Croatian',\n id: 32,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'cs',\n name: 'Czech',\n id: 33,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'da',\n name: 'Danish',\n displayName: 'Dansk',\n tld: 'com',\n helplink: 'en_US',\n subdomain: 'da',\n id: 4,\n countries: ['DK', 'GL'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 10\n}, {\n code: 'nl',\n name: 'Dutch',\n id: 5,\n displayName: 'Nederlands',\n helplink: 'nl_NL',\n helpCenterLangCode: 'nl',\n subdomain: 'nl',\n tld: 'com',\n countries: ['NL', 'BE'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 4\n}, {\n code: 'en',\n name: 'English',\n id: 1,\n tld: 'com',\n subdomain: 'www',\n displayName: 'English',\n helplink: 'en_US',\n helpCenterLangCode: 'en',\n countries: ['US', 'AU', 'IE', 'CA', 'GG', 'NZ'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 5\n}, {\n code: 'gb',\n name: 'English (UK)',\n id: 60,\n tld: 'com',\n subdomain: 'uk',\n displayName: 'English (UK)',\n helplink: 'en_US',\n helpCenterLangCode: 'en',\n countries: ['GB'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 6\n}, {\n code: 'et',\n name: 'Estonian',\n id: 34,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'tl',\n codeIETF: 'fil',\n name: 'Filipino',\n id: 35,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'fi',\n name: 'Finnish',\n id: 6,\n displayName: 'Suomi',\n helplink: 'en_US',\n tld: 'com',\n subdomain: 'fi',\n countries: ['FI'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 17\n}, {\n code: 'fr',\n name: 'French',\n id: 7,\n displayName: 'Français',\n helplink: 'fr',\n helpCenterLangCode: 'fr',\n tld: 'com',\n subdomain: 'fr',\n countries: ['FR', 'MA', 'DZ', 'TN', 'RE', 'CI', 'SN', 'TG', 'MQ', 'GP', 'PF', 'CG', 'CM', 'BJ', 'CD'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 7\n}, {\n code: 'ka',\n name: 'Georgian',\n id: 36,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'de',\n name: 'German',\n id: 8,\n displayName: 'Deutsch',\n helplink: 'de',\n helpCenterLangCode: 'de',\n tld: 'com',\n subdomain: 'de',\n countries: ['DE', 'AT', 'CH', 'LI'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 3\n}, {\n code: 'el',\n name: 'Greek',\n id: 9,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'he',\n name: 'Hebrew',\n id: 37,\n countries: [],\n isRTL: true,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'hi',\n name: 'Hindi',\n id: 38,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'hu',\n name: 'Hungarian',\n id: 39,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'is',\n name: 'Icelandic',\n id: 40,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'id',\n name: 'Indonesian',\n id: 41,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ga',\n name: 'Irish',\n id: 42,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'it',\n name: 'Italian',\n id: 10,\n displayName: 'Italiano',\n helplink: 'it',\n helpCenterLangCode: 'it',\n tld: 'com',\n subdomain: 'it',\n countries: ['IT'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 9\n}, {\n code: 'ja',\n name: 'Japanese',\n id: 11,\n displayName: '日本語',\n helplink: 'ja',\n helpCenterLangCode: 'ja',\n tld: 'com',\n subdomain: 'jp',\n countries: ['JP'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 12\n}, {\n code: 'ko',\n name: 'Korean',\n id: 12,\n displayName: '한국어',\n helplink: 'ko',\n helpCenterLangCode: 'ko',\n tld: 'com',\n subdomain: 'ko',\n countries: ['KP', 'KR'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 13\n}, {\n code: 'ku',\n name: 'Kurdish',\n id: 43,\n countries: [],\n /** Kurdish can be written in two scripts - it may or may not be RTL */\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'lv',\n name: 'Latvian',\n id: 44,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'lt',\n name: 'Lithuanian',\n id: 45,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'mk',\n name: 'Macedonian',\n id: 46,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ms',\n name: 'Malay',\n id: 13,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ml',\n name: 'Malayalam',\n id: 47,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'no',\n codeIETF: 'nb',\n name: 'Norwegian',\n id: 14,\n displayName: 'Norsk',\n helplink: 'en_US',\n tld: 'com',\n subdomain: 'no',\n countries: ['NO', 'SJ'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 16\n}, {\n code: 'fa',\n name: 'Persian',\n id: 48,\n countries: [],\n isRTL: true,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'pl',\n name: 'Polish',\n id: 15,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'pa',\n name: 'Punjabi',\n id: 49,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ro',\n name: 'Romanian',\n id: 50,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'ru',\n name: 'Russian',\n id: 18,\n displayName: 'Русский',\n helplink: 'ru',\n helpCenterLangCode: 'ru',\n tld: 'com',\n subdomain: 'ru',\n countries: ['RU', 'BY', 'UA', 'KZ', 'UZ', 'TJ', 'AZ', 'TM', 'AM', 'MD', 'KG'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 8\n}, {\n code: 'sr',\n name: 'Serbian',\n id: 51,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'sk',\n name: 'Slovak',\n id: 52,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'sl',\n name: 'Slovenian',\n id: 53,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'es',\n name: 'Spanish',\n id: 19,\n displayName: 'Español',\n helplink: 'es',\n helpCenterLangCode: 'es-la',\n tld: 'com',\n subdomain: 'es',\n countries: ['MX', 'ES', 'AR', 'GT', 'HN', 'SV', 'NI', 'CR', 'PA', 'GQ', 'CU', 'DO', 'PR', 'VE', 'CO', 'EC', 'PE', 'BO', 'PY', 'CL', 'UY'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 1\n}, {\n code: 'sw',\n name: 'Swahili',\n id: 54,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'sv',\n name: 'Swedish',\n id: 20,\n displayName: 'Svenska',\n helplink: 'en_US',\n tld: 'com',\n subdomain: 'sv',\n countries: ['SE'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 11\n}, {\n code: 'ta',\n name: 'Tamil',\n id: 55,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'te',\n name: 'Telugu',\n id: 56,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'th',\n name: 'Thai',\n id: 57,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'tr',\n name: 'Turkish',\n id: 21,\n displayName: 'Türkçe',\n helplink: 'tr',\n helpCenterLangCode: 'tr',\n tld: 'com',\n subdomain: 'tr',\n countries: ['TR'],\n isRTL: false,\n supportLevel: SupportLevels.SITE_WIDE,\n displayOrder: 15\n}, {\n code: 'uk',\n name: 'Ukrainian',\n id: 22,\n countries: ['UA'],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'vi',\n name: 'Vietnamese',\n id: 58,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}, {\n code: 'cy',\n name: 'Welsh',\n id: 59,\n countries: [],\n isRTL: false,\n supportLevel: SupportLevels.SURVEY_CREATION\n}];\n\n/**\n * Languages by ID\n * @memberof module:@sm/locale\n */\nexports.LANGUAGES = LANGUAGES;\nvar LANGUAGES_BY_ID_REC = {};\n/**\n * Languages by code\n * @memberof module:@sm/locale\n */\nvar LANGUAGES_BY_CODE_REC = {};\n/**\n * Languages with sub-domains\n * @memberof module:@sm/locale\n */\nvar LANGUAGES_WITH_SUBDOMAINS_REC = [];\nLANGUAGES.forEach(function (language) {\n LANGUAGES_BY_ID_REC[language.id] = language;\n LANGUAGES_BY_CODE_REC[language.code] = language;\n if (language.codeIETF) {\n LANGUAGES_BY_CODE_REC[language.codeIETF] = language;\n }\n if (language.subdomain) {\n LANGUAGES_WITH_SUBDOMAINS_REC.push(language);\n }\n});\nvar LANGUAGES_BY_ID = Object.freeze(LANGUAGES_BY_ID_REC);\nexports.LANGUAGES_BY_ID = LANGUAGES_BY_ID;\nvar LANGUAGES_BY_CODE = Object.freeze(LANGUAGES_BY_CODE_REC);\nexports.LANGUAGES_BY_CODE = LANGUAGES_BY_CODE;\nvar LANGUAGES_WITH_SUBDOMAINS = Object.freeze(LANGUAGES_WITH_SUBDOMAINS_REC);\nexports.LANGUAGES_WITH_SUBDOMAINS = LANGUAGES_WITH_SUBDOMAINS;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.USTerritoryCountryCodes = exports.SMSupportedCountryCodes = exports.GDPRCountryCodes = exports.GBCountryCodes = exports.EUCountryCodes = exports.DASHCountryCodes = exports.CountryCodes = void 0;\nvar CountryCodes;\nexports.CountryCodes = CountryCodes;\n(function (CountryCodes) {\n CountryCodes[\"AE\"] = \"AE\";\n CountryCodes[\"AR\"] = \"AR\";\n CountryCodes[\"AU\"] = \"AU\";\n CountryCodes[\"BR\"] = \"BR\";\n CountryCodes[\"CA\"] = \"CA\";\n CountryCodes[\"CH\"] = \"CH\";\n CountryCodes[\"LI\"] = \"LI\";\n CountryCodes[\"DK\"] = \"DK\";\n CountryCodes[\"FO\"] = \"FO\";\n CountryCodes[\"GL\"] = \"GL\";\n CountryCodes[\"AD\"] = \"AD\";\n CountryCodes[\"AL\"] = \"AL\";\n CountryCodes[\"AT\"] = \"AT\";\n CountryCodes[\"AX\"] = \"AX\";\n CountryCodes[\"BA\"] = \"BA\";\n CountryCodes[\"BE\"] = \"BE\";\n CountryCodes[\"BG\"] = \"BG\";\n CountryCodes[\"BY\"] = \"BY\";\n CountryCodes[\"CY\"] = \"CY\";\n CountryCodes[\"CZ\"] = \"CZ\";\n CountryCodes[\"DE\"] = \"DE\";\n CountryCodes[\"EE\"] = \"EE\";\n CountryCodes[\"ES\"] = \"ES\";\n CountryCodes[\"FI\"] = \"FI\";\n CountryCodes[\"FR\"] = \"FR\";\n CountryCodes[\"GF\"] = \"GF\";\n CountryCodes[\"GP\"] = \"GP\";\n CountryCodes[\"GR\"] = \"GR\";\n CountryCodes[\"HR\"] = \"HR\";\n CountryCodes[\"HU\"] = \"HU\";\n CountryCodes[\"IE\"] = \"IE\";\n CountryCodes[\"IS\"] = \"IS\";\n CountryCodes[\"IT\"] = \"IT\";\n CountryCodes[\"LT\"] = \"LT\";\n CountryCodes[\"LU\"] = \"LU\";\n CountryCodes[\"LV\"] = \"LV\";\n CountryCodes[\"MC\"] = \"MC\";\n CountryCodes[\"MD\"] = \"MD\";\n CountryCodes[\"ME\"] = \"ME\";\n CountryCodes[\"MF\"] = \"MF\";\n CountryCodes[\"MK\"] = \"MK\";\n CountryCodes[\"MQ\"] = \"MQ\";\n CountryCodes[\"MT\"] = \"MT\";\n CountryCodes[\"NL\"] = \"NL\";\n CountryCodes[\"PL\"] = \"PL\";\n CountryCodes[\"PM\"] = \"PM\";\n CountryCodes[\"PT\"] = \"PT\";\n CountryCodes[\"RE\"] = \"RE\";\n CountryCodes[\"RO\"] = \"RO\";\n CountryCodes[\"RS\"] = \"RS\";\n CountryCodes[\"RU\"] = \"RU\";\n CountryCodes[\"SI\"] = \"SI\";\n CountryCodes[\"SK\"] = \"SK\";\n CountryCodes[\"SM\"] = \"SM\";\n CountryCodes[\"TF\"] = \"TF\";\n CountryCodes[\"TR\"] = \"TR\";\n CountryCodes[\"UA\"] = \"UA\";\n CountryCodes[\"VA\"] = \"VA\";\n CountryCodes[\"YT\"] = \"YT\";\n CountryCodes[\"GB\"] = \"GB\";\n CountryCodes[\"GG\"] = \"GG\";\n CountryCodes[\"GI\"] = \"GI\";\n CountryCodes[\"GS\"] = \"GS\";\n CountryCodes[\"IM\"] = \"IM\";\n CountryCodes[\"JE\"] = \"JE\";\n CountryCodes[\"HK\"] = \"HK\";\n CountryCodes[\"IN\"] = \"IN\";\n CountryCodes[\"JP\"] = \"JP\";\n CountryCodes[\"KR\"] = \"KR\";\n CountryCodes[\"MX\"] = \"MX\";\n CountryCodes[\"NO\"] = \"NO\";\n CountryCodes[\"NZ\"] = \"NZ\";\n CountryCodes[\"SE\"] = \"SE\";\n CountryCodes[\"SG\"] = \"SG\";\n CountryCodes[\"TW\"] = \"TW\";\n CountryCodes[\"AF\"] = \"AF\";\n CountryCodes[\"AG\"] = \"AG\";\n CountryCodes[\"AI\"] = \"AI\";\n CountryCodes[\"AM\"] = \"AM\";\n CountryCodes[\"AN\"] = \"AN\";\n CountryCodes[\"AO\"] = \"AO\";\n CountryCodes[\"AQ\"] = \"AQ\";\n CountryCodes[\"AS\"] = \"AS\";\n CountryCodes[\"AW\"] = \"AW\";\n CountryCodes[\"AZ\"] = \"AZ\";\n CountryCodes[\"BB\"] = \"BB\";\n CountryCodes[\"BD\"] = \"BD\";\n CountryCodes[\"BF\"] = \"BF\";\n CountryCodes[\"BH\"] = \"BH\";\n CountryCodes[\"BI\"] = \"BI\";\n CountryCodes[\"BJ\"] = \"BJ\";\n CountryCodes[\"BL\"] = \"BL\";\n CountryCodes[\"BM\"] = \"BM\";\n CountryCodes[\"BN\"] = \"BN\";\n CountryCodes[\"BO\"] = \"BO\";\n CountryCodes[\"BS\"] = \"BS\";\n CountryCodes[\"BT\"] = \"BT\";\n CountryCodes[\"BV\"] = \"BV\";\n CountryCodes[\"BW\"] = \"BW\";\n CountryCodes[\"BZ\"] = \"BZ\";\n CountryCodes[\"CC\"] = \"CC\";\n CountryCodes[\"CD\"] = \"CD\";\n CountryCodes[\"CF\"] = \"CF\";\n CountryCodes[\"CG\"] = \"CG\";\n CountryCodes[\"CI\"] = \"CI\";\n CountryCodes[\"CK\"] = \"CK\";\n CountryCodes[\"CL\"] = \"CL\";\n CountryCodes[\"CM\"] = \"CM\";\n CountryCodes[\"CN\"] = \"CN\";\n CountryCodes[\"CO\"] = \"CO\";\n CountryCodes[\"CR\"] = \"CR\";\n CountryCodes[\"CV\"] = \"CV\";\n CountryCodes[\"CX\"] = \"CX\";\n CountryCodes[\"DJ\"] = \"DJ\";\n CountryCodes[\"DM\"] = \"DM\";\n CountryCodes[\"DO\"] = \"DO\";\n CountryCodes[\"DZ\"] = \"DZ\";\n CountryCodes[\"EC\"] = \"EC\";\n CountryCodes[\"EG\"] = \"EG\";\n CountryCodes[\"EH\"] = \"EH\";\n CountryCodes[\"ER\"] = \"ER\";\n CountryCodes[\"ET\"] = \"ET\";\n CountryCodes[\"FJ\"] = \"FJ\";\n CountryCodes[\"FK\"] = \"FK\";\n CountryCodes[\"FM\"] = \"FM\";\n CountryCodes[\"GA\"] = \"GA\";\n CountryCodes[\"GD\"] = \"GD\";\n CountryCodes[\"GE\"] = \"GE\";\n CountryCodes[\"GH\"] = \"GH\";\n CountryCodes[\"GM\"] = \"GM\";\n CountryCodes[\"GN\"] = \"GN\";\n CountryCodes[\"GQ\"] = \"GQ\";\n CountryCodes[\"GT\"] = \"GT\";\n CountryCodes[\"GU\"] = \"GU\";\n CountryCodes[\"GW\"] = \"GW\";\n CountryCodes[\"GY\"] = \"GY\";\n CountryCodes[\"HM\"] = \"HM\";\n CountryCodes[\"HN\"] = \"HN\";\n CountryCodes[\"HT\"] = \"HT\";\n CountryCodes[\"ID\"] = \"ID\";\n CountryCodes[\"IL\"] = \"IL\";\n CountryCodes[\"IO\"] = \"IO\";\n CountryCodes[\"IQ\"] = \"IQ\";\n CountryCodes[\"JM\"] = \"JM\";\n CountryCodes[\"JO\"] = \"JO\";\n CountryCodes[\"KE\"] = \"KE\";\n CountryCodes[\"KG\"] = \"KG\";\n CountryCodes[\"KH\"] = \"KH\";\n CountryCodes[\"KI\"] = \"KI\";\n CountryCodes[\"KM\"] = \"KM\";\n CountryCodes[\"KN\"] = \"KN\";\n CountryCodes[\"KP\"] = \"KP\";\n CountryCodes[\"KW\"] = \"KW\";\n CountryCodes[\"KY\"] = \"KY\";\n CountryCodes[\"KZ\"] = \"KZ\";\n CountryCodes[\"LA\"] = \"LA\";\n CountryCodes[\"LB\"] = \"LB\";\n CountryCodes[\"LC\"] = \"LC\";\n CountryCodes[\"LK\"] = \"LK\";\n CountryCodes[\"LR\"] = \"LR\";\n CountryCodes[\"LS\"] = \"LS\";\n CountryCodes[\"LY\"] = \"LY\";\n CountryCodes[\"MA\"] = \"MA\";\n CountryCodes[\"MG\"] = \"MG\";\n CountryCodes[\"MH\"] = \"MH\";\n CountryCodes[\"ML\"] = \"ML\";\n CountryCodes[\"MM\"] = \"MM\";\n CountryCodes[\"MN\"] = \"MN\";\n CountryCodes[\"MO\"] = \"MO\";\n CountryCodes[\"MP\"] = \"MP\";\n CountryCodes[\"MR\"] = \"MR\";\n CountryCodes[\"MS\"] = \"MS\";\n CountryCodes[\"MU\"] = \"MU\";\n CountryCodes[\"MV\"] = \"MV\";\n CountryCodes[\"MW\"] = \"MW\";\n CountryCodes[\"MY\"] = \"MY\";\n CountryCodes[\"MZ\"] = \"MZ\";\n CountryCodes[\"NA\"] = \"NA\";\n CountryCodes[\"NC\"] = \"NC\";\n CountryCodes[\"NE\"] = \"NE\";\n CountryCodes[\"NF\"] = \"NF\";\n CountryCodes[\"NG\"] = \"NG\";\n CountryCodes[\"NI\"] = \"NI\";\n CountryCodes[\"NP\"] = \"NP\";\n CountryCodes[\"NR\"] = \"NR\";\n CountryCodes[\"NU\"] = \"NU\";\n CountryCodes[\"OM\"] = \"OM\";\n CountryCodes[\"PA\"] = \"PA\";\n CountryCodes[\"PE\"] = \"PE\";\n CountryCodes[\"PF\"] = \"PF\";\n CountryCodes[\"PG\"] = \"PG\";\n CountryCodes[\"PH\"] = \"PH\";\n CountryCodes[\"PK\"] = \"PK\";\n CountryCodes[\"PN\"] = \"PN\";\n CountryCodes[\"PR\"] = \"PR\";\n CountryCodes[\"PS\"] = \"PS\";\n CountryCodes[\"PW\"] = \"PW\";\n CountryCodes[\"PY\"] = \"PY\";\n CountryCodes[\"QA\"] = \"QA\";\n CountryCodes[\"RW\"] = \"RW\";\n CountryCodes[\"SA\"] = \"SA\";\n CountryCodes[\"SB\"] = \"SB\";\n CountryCodes[\"SC\"] = \"SC\";\n CountryCodes[\"SH\"] = \"SH\";\n CountryCodes[\"SJ\"] = \"SJ\";\n CountryCodes[\"SL\"] = \"SL\";\n CountryCodes[\"SN\"] = \"SN\";\n CountryCodes[\"SO\"] = \"SO\";\n CountryCodes[\"SR\"] = \"SR\";\n CountryCodes[\"ST\"] = \"ST\";\n CountryCodes[\"SV\"] = \"SV\";\n CountryCodes[\"SY\"] = \"SY\";\n CountryCodes[\"SZ\"] = \"SZ\";\n CountryCodes[\"TC\"] = \"TC\";\n CountryCodes[\"TD\"] = \"TD\";\n CountryCodes[\"TG\"] = \"TG\";\n CountryCodes[\"TH\"] = \"TH\";\n CountryCodes[\"TJ\"] = \"TJ\";\n CountryCodes[\"TK\"] = \"TK\";\n CountryCodes[\"TL\"] = \"TL\";\n CountryCodes[\"TM\"] = \"TM\";\n CountryCodes[\"TN\"] = \"TN\";\n CountryCodes[\"TO\"] = \"TO\";\n CountryCodes[\"TT\"] = \"TT\";\n CountryCodes[\"TV\"] = \"TV\";\n CountryCodes[\"TZ\"] = \"TZ\";\n CountryCodes[\"UG\"] = \"UG\";\n CountryCodes[\"UM\"] = \"UM\";\n CountryCodes[\"US\"] = \"US\";\n CountryCodes[\"UY\"] = \"UY\";\n CountryCodes[\"UZ\"] = \"UZ\";\n CountryCodes[\"VC\"] = \"VC\";\n CountryCodes[\"VE\"] = \"VE\";\n CountryCodes[\"VG\"] = \"VG\";\n CountryCodes[\"VI\"] = \"VI\";\n CountryCodes[\"VN\"] = \"VN\";\n CountryCodes[\"VU\"] = \"VU\";\n CountryCodes[\"WF\"] = \"WF\";\n CountryCodes[\"WS\"] = \"WS\";\n CountryCodes[\"YE\"] = \"YE\";\n CountryCodes[\"ZM\"] = \"ZM\";\n CountryCodes[\"ZW\"] = \"ZW\";\n CountryCodes[\"ZA\"] = \"ZA\";\n})(CountryCodes || (exports.CountryCodes = CountryCodes = {}));\nvar GDPRCountryCodes = [CountryCodes.AT, CountryCodes.BE, CountryCodes.BG, CountryCodes.CH, CountryCodes.CY, CountryCodes.CZ, CountryCodes.DE, CountryCodes.DK, CountryCodes.EE, CountryCodes.ES, CountryCodes.FI, CountryCodes.FR, CountryCodes.GB, CountryCodes.GR, CountryCodes.HR, CountryCodes.HU, CountryCodes.IE, CountryCodes.IM, CountryCodes.IT, CountryCodes.LT, CountryCodes.LU, CountryCodes.LV, CountryCodes.MC, CountryCodes.MT, CountryCodes.NL, CountryCodes.PL, CountryCodes.PT, CountryCodes.RO, CountryCodes.SE, CountryCodes.SI, CountryCodes.SK, CountryCodes.IS, CountryCodes.LI, CountryCodes.NO];\nexports.GDPRCountryCodes = GDPRCountryCodes;\nvar DASHCountryCodes = [CountryCodes.DE, CountryCodes.AT, CountryCodes.CH];\nexports.DASHCountryCodes = DASHCountryCodes;\nvar GBCountryCodes = [CountryCodes.GB, CountryCodes.GG, CountryCodes.GI, CountryCodes.GS, CountryCodes.IM, CountryCodes.JE];\nexports.GBCountryCodes = GBCountryCodes;\nvar USTerritoryCountryCodes = [CountryCodes.GU, CountryCodes.PR, CountryCodes.UM, CountryCodes.US, CountryCodes.VI];\nexports.USTerritoryCountryCodes = USTerritoryCountryCodes;\nvar EUCountryCodes = [CountryCodes.AT, CountryCodes.BE, CountryCodes.BG, CountryCodes.CY, CountryCodes.CZ, CountryCodes.DE, CountryCodes.DK, CountryCodes.EE, CountryCodes.ES, CountryCodes.FI, CountryCodes.FR, CountryCodes.GB, CountryCodes.GR, CountryCodes.HR, CountryCodes.HU, CountryCodes.IE, CountryCodes.IM, CountryCodes.IT, CountryCodes.LT, CountryCodes.LU, CountryCodes.LV, CountryCodes.MC, CountryCodes.MT, CountryCodes.NL, CountryCodes.PL, CountryCodes.PT, CountryCodes.RO, CountryCodes.SE, CountryCodes.SI, CountryCodes.SK];\nexports.EUCountryCodes = EUCountryCodes;\nvar SMSupportedCountryCodes = [CountryCodes.AE, CountryCodes.AR, CountryCodes.AU, CountryCodes.BR, CountryCodes.CA, CountryCodes.CH, CountryCodes.LI, CountryCodes.DK, CountryCodes.FO, CountryCodes.GL, CountryCodes.AD, CountryCodes.AL, CountryCodes.AT, CountryCodes.AX, CountryCodes.BA, CountryCodes.BE, CountryCodes.BG, CountryCodes.BY, CountryCodes.CY, CountryCodes.CZ, CountryCodes.DE, CountryCodes.EE, CountryCodes.ES, CountryCodes.FI, CountryCodes.FR, CountryCodes.GF, CountryCodes.GP, CountryCodes.GR, CountryCodes.HR, CountryCodes.HU, CountryCodes.IE, CountryCodes.IS, CountryCodes.IT, CountryCodes.LT, CountryCodes.LU, CountryCodes.LV, CountryCodes.MC, CountryCodes.MD, CountryCodes.ME, CountryCodes.MF, CountryCodes.MK, CountryCodes.MQ, CountryCodes.MT, CountryCodes.NL, CountryCodes.PL, CountryCodes.PM, CountryCodes.PT, CountryCodes.RE, CountryCodes.RO, CountryCodes.RS, CountryCodes.RU, CountryCodes.SI, CountryCodes.SK, CountryCodes.SM, CountryCodes.TF, CountryCodes.TR, CountryCodes.UA, CountryCodes.VA, CountryCodes.YT, CountryCodes.GB, CountryCodes.GG, CountryCodes.GI, CountryCodes.GS, CountryCodes.IM, CountryCodes.JE, CountryCodes.HK, CountryCodes.IN, CountryCodes.JP, CountryCodes.KR, CountryCodes.MX, CountryCodes.NO, CountryCodes.NZ, CountryCodes.SE, CountryCodes.SG, CountryCodes.TW, CountryCodes.AF, CountryCodes.AG, CountryCodes.AI, CountryCodes.AM, CountryCodes.AN, CountryCodes.AO, CountryCodes.AQ, CountryCodes.AS, CountryCodes.AW, CountryCodes.AZ, CountryCodes.BB, CountryCodes.BD, CountryCodes.BF, CountryCodes.BH, CountryCodes.BI, CountryCodes.BJ, CountryCodes.BL, CountryCodes.BM, CountryCodes.BN, CountryCodes.BO, CountryCodes.BS, CountryCodes.BT, CountryCodes.BV, CountryCodes.BW, CountryCodes.BZ, CountryCodes.CC, CountryCodes.CD, CountryCodes.CF, CountryCodes.CG, CountryCodes.CI, CountryCodes.CK, CountryCodes.CL, CountryCodes.CM, CountryCodes.CN, CountryCodes.CO, CountryCodes.CR, CountryCodes.CV, CountryCodes.CX, CountryCodes.DJ, CountryCodes.DM, CountryCodes.DO, CountryCodes.DZ, CountryCodes.EC, CountryCodes.EG, CountryCodes.EH, CountryCodes.ER, CountryCodes.ET, CountryCodes.FJ, CountryCodes.FK, CountryCodes.FM, CountryCodes.GA, CountryCodes.GD, CountryCodes.GE, CountryCodes.GH, CountryCodes.GM, CountryCodes.GN, CountryCodes.GQ, CountryCodes.GT, CountryCodes.GU, CountryCodes.GW, CountryCodes.GY, CountryCodes.HM, CountryCodes.HN, CountryCodes.HT, CountryCodes.ID, CountryCodes.IL, CountryCodes.IO, CountryCodes.IQ, CountryCodes.JM, CountryCodes.JO, CountryCodes.KE, CountryCodes.KG, CountryCodes.KH, CountryCodes.KI, CountryCodes.KM, CountryCodes.KN, CountryCodes.KP, CountryCodes.KW, CountryCodes.KY, CountryCodes.KZ, CountryCodes.LA, CountryCodes.LB, CountryCodes.LC, CountryCodes.LK, CountryCodes.LR, CountryCodes.LS, CountryCodes.LY, CountryCodes.MA, CountryCodes.MG, CountryCodes.MH, CountryCodes.ML, CountryCodes.MM, CountryCodes.MN, CountryCodes.MO, CountryCodes.MP, CountryCodes.MR, CountryCodes.MS, CountryCodes.MU, CountryCodes.MV, CountryCodes.MW, CountryCodes.MY, CountryCodes.MZ, CountryCodes.NA, CountryCodes.NC, CountryCodes.NE, CountryCodes.NF, CountryCodes.NG, CountryCodes.NI, CountryCodes.NP, CountryCodes.NR, CountryCodes.NU, CountryCodes.OM, CountryCodes.PA, CountryCodes.PE, CountryCodes.PF, CountryCodes.PG, CountryCodes.PH, CountryCodes.PK, CountryCodes.PN, CountryCodes.PR, CountryCodes.PS, CountryCodes.PW, CountryCodes.PY, CountryCodes.QA, CountryCodes.RW, CountryCodes.SA, CountryCodes.SB, CountryCodes.SC, CountryCodes.SH, CountryCodes.SJ, CountryCodes.SL, CountryCodes.SN, CountryCodes.SO, CountryCodes.SR, CountryCodes.ST, CountryCodes.SV, CountryCodes.SY, CountryCodes.SZ, CountryCodes.TC, CountryCodes.TD, CountryCodes.TG, CountryCodes.TH, CountryCodes.TJ, CountryCodes.TK, CountryCodes.TL, CountryCodes.TM, CountryCodes.TN, CountryCodes.TO, CountryCodes.TT, CountryCodes.TV, CountryCodes.TZ, CountryCodes.UG, CountryCodes.UM, CountryCodes.US, CountryCodes.UY, CountryCodes.UZ, CountryCodes.VC, CountryCodes.VE, CountryCodes.VG, CountryCodes.VI, CountryCodes.VN, CountryCodes.VU, CountryCodes.WF, CountryCodes.WS, CountryCodes.YE, CountryCodes.ZM, CountryCodes.ZW, CountryCodes.ZA];\nexports.SMSupportedCountryCodes = SMSupportedCountryCodes;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.fromUrl = exports.NO_HOSTNAME = void 0;\nconst urlPattern = /^[a-z][*+.a-z-]+:\\/\\//i;\nexports.NO_HOSTNAME = Symbol(\"NO_HOSTNAME\");\nconst fromUrl = urlLike => {\n /* istanbul ignore next */\n if (typeof URL !== \"function\") {\n throw new Error(\"Looks like the new URL() constructor is not globally available in your environment. Please make sure to use a polyfill.\");\n }\n // Extra check for non-TypeScript users\n if (typeof urlLike !== \"string\") {\n return exports.NO_HOSTNAME;\n }\n // URLs that start with // are protocol relative\n const url = urlLike.startsWith(\"//\") ? `http:${urlLike}` :\n // URLs that start with / do not have a hostname section\n urlLike.startsWith(\"/\") ? urlLike : urlPattern.test(urlLike) ? urlLike : `http://${urlLike}`;\n try {\n return new URL(url).hostname;\n } catch (_a) {\n return exports.NO_HOSTNAME;\n }\n};\nexports.fromUrl = fromUrl;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.ValidationErrorType = exports.NO_HOSTNAME = exports.fromUrl = exports.ParseResultType = exports.parseDomain = void 0;\n/* istanbul ignore file */\n// Jest will report function coverage errors here otherwise\nvar parse_domain_1 = require(\"./parse-domain\");\nObject.defineProperty(exports, \"parseDomain\", {\n enumerable: true,\n get: function () {\n return parse_domain_1.parseDomain;\n }\n});\nObject.defineProperty(exports, \"ParseResultType\", {\n enumerable: true,\n get: function () {\n return parse_domain_1.ParseResultType;\n }\n});\nvar from_url_1 = require(\"./from-url\");\nObject.defineProperty(exports, \"fromUrl\", {\n enumerable: true,\n get: function () {\n return from_url_1.fromUrl;\n }\n});\nObject.defineProperty(exports, \"NO_HOSTNAME\", {\n enumerable: true,\n get: function () {\n return from_url_1.NO_HOSTNAME;\n }\n});\nvar sanitize_1 = require(\"./sanitize\");\nObject.defineProperty(exports, \"ValidationErrorType\", {\n enumerable: true,\n get: function () {\n return sanitize_1.ValidationErrorType;\n }\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.parseDomain = exports.ParseResultType = exports.RESERVED_TOP_LEVEL_DOMAINS = void 0;\nconst serialized_tries_1 = require(\"./serialized-tries\");\nconst look_up_1 = require(\"./trie/look-up\");\nconst sanitize_1 = require(\"./sanitize\");\nconst parse_trie_1 = require(\"./trie/parse-trie\");\nexports.RESERVED_TOP_LEVEL_DOMAINS = [\"localhost\", \"local\", \"example\", \"invalid\", \"test\"];\nvar ParseResultType;\n(function (ParseResultType) {\n /**\n * This parse result is returned in case the given hostname does not adhere to [RFC 1034](https://tools.ietf.org/html/rfc1034).\n */\n ParseResultType[\"Invalid\"] = \"INVALID\";\n /**\n * This parse result is returned if the given hostname was an IPv4 or IPv6.\n */\n ParseResultType[\"Ip\"] = \"IP\";\n /**\n * This parse result is returned when the given hostname\n * - is the root domain (the empty string `\"\"`)\n * - belongs to the top-level domain `localhost`, `local`, `example`, `invalid` or `test`\n */\n ParseResultType[\"Reserved\"] = \"RESERVED\";\n /**\n * This parse result is returned when the given hostname is valid and does not belong to a reserved top-level domain, but is not listed in the public suffix list.\n */\n ParseResultType[\"NotListed\"] = \"NOT_LISTED\";\n /**\n * This parse result is returned when the given hostname belongs to a top-level domain that is listed in the public suffix list.\n */\n ParseResultType[\"Listed\"] = \"LISTED\";\n})(ParseResultType = exports.ParseResultType || (exports.ParseResultType = {}));\nconst getAtIndex = (array, index) => {\n return index >= 0 && index < array.length ? array[index] : undefined;\n};\nconst splitLabelsIntoDomains = (labels, index) => {\n return {\n subDomains: labels.slice(0, Math.max(0, index)),\n domain: getAtIndex(labels, index),\n topLevelDomains: labels.slice(index + 1)\n };\n};\nlet parsedIcannTrie;\nlet parsedPrivateTrie;\n/**\n * Splits the given hostname in topLevelDomains, a domain and subDomains.\n */\nconst parseDomain = hostname => {\n const sanitizationResult = (0, sanitize_1.sanitize)(hostname);\n if (sanitizationResult.type === sanitize_1.SanitizationResultType.Error) {\n return {\n type: ParseResultType.Invalid,\n hostname,\n errors: sanitizationResult.errors\n };\n }\n if (sanitizationResult.type === sanitize_1.SanitizationResultType.ValidIp) {\n return {\n type: ParseResultType.Ip,\n hostname: sanitizationResult.ip,\n ipVersion: sanitizationResult.ipVersion\n };\n }\n const {\n labels,\n domain\n } = sanitizationResult;\n if (hostname === \"\" || exports.RESERVED_TOP_LEVEL_DOMAINS.includes(labels[labels.length - 1])) {\n return {\n type: ParseResultType.Reserved,\n hostname: domain,\n labels\n };\n }\n // Parse the serialized trie lazily\n parsedIcannTrie = parsedIcannTrie !== null && parsedIcannTrie !== void 0 ? parsedIcannTrie : (0, parse_trie_1.parseTrie)(serialized_tries_1.icannTrie);\n parsedPrivateTrie = parsedPrivateTrie !== null && parsedPrivateTrie !== void 0 ? parsedPrivateTrie : (0, parse_trie_1.parseTrie)(serialized_tries_1.privateTrie);\n const icannTlds = (0, look_up_1.lookUpTldsInTrie)(labels, parsedIcannTrie);\n const privateTlds = (0, look_up_1.lookUpTldsInTrie)(labels, parsedPrivateTrie);\n if (icannTlds.length === 0 && privateTlds.length === 0) {\n return {\n type: ParseResultType.NotListed,\n hostname: domain,\n labels\n };\n }\n const indexOfPublicSuffixDomain = labels.length - Math.max(privateTlds.length, icannTlds.length) - 1;\n const indexOfIcannDomain = labels.length - icannTlds.length - 1;\n return Object.assign({\n type: ParseResultType.Listed,\n hostname: domain,\n labels,\n icann: splitLabelsIntoDomains(labels, indexOfIcannDomain)\n }, splitLabelsIntoDomains(labels, indexOfPublicSuffixDomain));\n};\nexports.parseDomain = parseDomain;","\"use strict\";\n\nvar __importDefault = this && this.__importDefault || function (mod) {\n return mod && mod.__esModule ? mod : {\n \"default\": mod\n };\n};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.sanitize = exports.SanitizationResultType = exports.ValidationErrorType = void 0;\nconst is_ip_1 = __importDefault(require(\"is-ip\"));\n// See https://en.wikipedia.org/wiki/Domain_name\n// See https://tools.ietf.org/html/rfc1034\nconst LABEL_SEPARATOR = \".\";\nconst LABEL_ROOT = \"\";\nconst LABEL_LENGTH_MIN = 1;\nconst LABEL_LENGTH_MAX = 63;\nconst DOMAIN_LENGTH_MAX = 253;\nvar ValidationErrorType;\n(function (ValidationErrorType) {\n ValidationErrorType[\"NoHostname\"] = \"NO_HOSTNAME\";\n ValidationErrorType[\"DomainMaxLength\"] = \"DOMAIN_MAX_LENGTH\";\n ValidationErrorType[\"LabelMinLength\"] = \"LABEL_MIN_LENGTH\";\n ValidationErrorType[\"LabelMaxLength\"] = \"LABEL_MAX_LENGTH\";\n ValidationErrorType[\"LabelInvalidCharacter\"] = \"LABEL_INVALID_CHARACTER\";\n})(ValidationErrorType = exports.ValidationErrorType || (exports.ValidationErrorType = {}));\nvar SanitizationResultType;\n(function (SanitizationResultType) {\n SanitizationResultType[\"ValidIp\"] = \"VALID_IP\";\n SanitizationResultType[\"ValidDomain\"] = \"VALID_DOMAIN\";\n SanitizationResultType[\"Error\"] = \"ERROR\";\n})(SanitizationResultType = exports.SanitizationResultType || (exports.SanitizationResultType = {}));\nconst createNoHostnameError = input => {\n return {\n type: ValidationErrorType.NoHostname,\n message: `The given input ${String(input)} does not look like a hostname.`,\n column: 1\n };\n};\nconst createDomainMaxLengthError = domain => {\n const length = domain.length;\n return {\n type: ValidationErrorType.DomainMaxLength,\n message: `Domain \"${domain}\" is too long. Domain is ${length} octets long but should not be longer than ${DOMAIN_LENGTH_MAX}.`,\n column: length\n };\n};\nconst createLabelMinLengthError = (label, column) => {\n const length = label.length;\n return {\n type: ValidationErrorType.LabelMinLength,\n message: `Label \"${label}\" is too short. Label is ${length} octets long but should be at least ${LABEL_LENGTH_MIN}.`,\n column\n };\n};\nconst createLabelMaxLengthError = (label, column) => {\n const length = label.length;\n return {\n type: ValidationErrorType.LabelMaxLength,\n message: `Label \"${label}\" is too long. Label is ${length} octets long but should not be longer than ${LABEL_LENGTH_MAX}.`,\n column\n };\n};\nconst createLabelInvalidCharacterError = (label, invalidCharacter, column) => {\n return {\n type: ValidationErrorType.LabelInvalidCharacter,\n message: `Label \"${label}\" contains invalid character \"${invalidCharacter}\" at column ${column}.`,\n column\n };\n};\nconst sanitize = input => {\n // Extra check for non-TypeScript users\n if (typeof input !== \"string\") {\n return {\n type: SanitizationResultType.Error,\n errors: [createNoHostnameError(input)]\n };\n }\n const inputTrimmed = input.trim();\n // IPv6 addresses are surrounded by square brackets in URLs\n // See https://tools.ietf.org/html/rfc3986#section-3.2.2\n const inputTrimmedAsIp = inputTrimmed.replace(/^\\[|]$/g, \"\");\n const ipVersion = is_ip_1.default.version(inputTrimmedAsIp);\n if (ipVersion !== undefined) {\n return {\n type: SanitizationResultType.ValidIp,\n ip: inputTrimmedAsIp,\n ipVersion\n };\n }\n if (inputTrimmed.length > DOMAIN_LENGTH_MAX) {\n return {\n type: SanitizationResultType.Error,\n errors: [createDomainMaxLengthError(inputTrimmed)]\n };\n }\n const labels = inputTrimmed.split(LABEL_SEPARATOR);\n const lastLabel = labels[labels.length - 1];\n // If the last label is the special root label, ignore it\n if (lastLabel === LABEL_ROOT) {\n labels.pop();\n }\n const labelValidationErrors = [];\n let column = 1;\n for (const label of labels) {\n // According to https://tools.ietf.org/html/rfc6761 labels should\n // only contain ASCII letters, digits and hyphens (LDH).\n const invalidCharacter = /[^\\da-z-]/iu.exec(label);\n if (invalidCharacter) {\n labelValidationErrors.push(createLabelInvalidCharacterError(label, invalidCharacter[0], invalidCharacter.index + 1));\n } else if (\n // We can use .length here to check for the octet size because\n // label can only contain ASCII LDH characters at this point.\n label.length < LABEL_LENGTH_MIN) {\n labelValidationErrors.push(createLabelMinLengthError(label, column));\n } else if (label.length > LABEL_LENGTH_MAX) {\n labelValidationErrors.push(createLabelMaxLengthError(label, column));\n }\n column += label.length + LABEL_SEPARATOR.length;\n }\n if (labelValidationErrors.length > 0) {\n return {\n type: SanitizationResultType.Error,\n errors: labelValidationErrors\n };\n }\n return {\n type: SanitizationResultType.ValidDomain,\n domain: inputTrimmed,\n labels\n };\n};\nexports.sanitize = sanitize;","\"use strict\";\n\nvar __importDefault = this && this.__importDefault || function (mod) {\n return mod && mod.__esModule ? mod : {\n \"default\": mod\n };\n};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.privateTrie = exports.icannTrie = void 0;\nconst icann_json_1 = __importDefault(require(\"../serialized-tries/icann.json\"));\nexports.icannTrie = icann_json_1.default;\nconst private_json_1 = __importDefault(require(\"../serialized-tries/private.json\"));\nexports.privateTrie = private_json_1.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.EXCEPTION = exports.WILDCARD = exports.RESET = exports.DOWN = exports.SAME = exports.UP = void 0;\n// UP, SAME, DOWN, RESET should not be special regex characters in a character class.\nexports.UP = \"<\"; // one level up\nexports.SAME = \",\"; // same level\nexports.DOWN = \">\"; // one level down\nexports.RESET = \"|\"; // reset level index and start new\nexports.WILDCARD = \"*\"; // as defined by publicsuffix.org\nexports.EXCEPTION = \"!\"; // as defined by publicsuffix.org","\"use strict\";\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {\n Object.defineProperty(o, \"default\", {\n enumerable: true,\n value: v\n });\n} : function (o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = this && this.__importStar || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.lookUpTldsInTrie = void 0;\nconst characters = __importStar(require(\"./characters\"));\nconst lookUpTldsInTrie = (labels, trie) => {\n const labelsToCheck = labels.slice();\n const tlds = [];\n let node = trie;\n while (labelsToCheck.length !== 0) {\n const label = labelsToCheck.pop();\n const labelLowerCase = label.toLowerCase();\n if (node.children.has(characters.WILDCARD)) {\n if (node.children.has(characters.EXCEPTION + labelLowerCase)) {\n break;\n }\n node = node.children.get(characters.WILDCARD);\n } else {\n if (node.children.has(labelLowerCase) === false) {\n break;\n }\n node = node.children.get(labelLowerCase);\n }\n tlds.unshift(label);\n }\n return tlds;\n};\nexports.lookUpTldsInTrie = lookUpTldsInTrie;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.createOrGetChild = exports.createRootNode = exports.NODE_TYPE_CHILD = exports.NODE_TYPE_ROOT = void 0;\nexports.NODE_TYPE_ROOT = Symbol(\"ROOT\");\nexports.NODE_TYPE_CHILD = Symbol(\"CHILD\");\nconst createRootNode = () => {\n return {\n type: exports.NODE_TYPE_ROOT,\n children: new Map()\n };\n};\nexports.createRootNode = createRootNode;\nconst createOrGetChild = (parent, label) => {\n let child = parent.children.get(label);\n if (child === undefined) {\n child = {\n type: exports.NODE_TYPE_CHILD,\n label,\n children: new Map(),\n parent\n };\n parent.children.set(label, child);\n }\n return child;\n};\nexports.createOrGetChild = createOrGetChild;","\"use strict\";\n\nvar __createBinding = this && this.__createBinding || (Object.create ? function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n Object.defineProperty(o, k2, {\n enumerable: true,\n get: function () {\n return m[k];\n }\n });\n} : function (o, m, k, k2) {\n if (k2 === undefined) k2 = k;\n o[k2] = m[k];\n});\nvar __setModuleDefault = this && this.__setModuleDefault || (Object.create ? function (o, v) {\n Object.defineProperty(o, \"default\", {\n enumerable: true,\n value: v\n });\n} : function (o, v) {\n o[\"default\"] = v;\n});\nvar __importStar = this && this.__importStar || function (mod) {\n if (mod && mod.__esModule) return mod;\n var result = {};\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\n __setModuleDefault(result, mod);\n return result;\n};\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.parseTrie = void 0;\nconst characters = __importStar(require(\"./characters\"));\nconst nodes_1 = require(\"./nodes\");\nconst parseTrie = serializedTrie => {\n const rootNode = (0, nodes_1.createRootNode)();\n let domain = \"\";\n let parentNode = rootNode;\n // Type assertion necessary here due to a TypeScript unsoundness\n // https://github.com/microsoft/TypeScript/issues/9998#issuecomment-235963457\n let node = rootNode;\n const addDomain = () => {\n node = (0, nodes_1.createOrGetChild)(parentNode, domain);\n domain = \"\";\n };\n for (let i = 0; i < serializedTrie.length; i++) {\n const char = serializedTrie.charAt(i);\n switch (char) {\n case characters.SAME:\n {\n addDomain();\n continue;\n }\n case characters.DOWN:\n {\n addDomain();\n parentNode = node;\n continue;\n }\n case characters.RESET:\n {\n addDomain();\n parentNode = rootNode;\n continue;\n }\n case characters.UP:\n {\n if (parentNode.type === nodes_1.NODE_TYPE_ROOT) {\n throw new Error(`Error in serialized trie at position ${i}: Cannot go up, current parent node is already root`);\n }\n addDomain();\n parentNode = parentNode.parent;\n continue;\n }\n }\n domain += char;\n }\n if (domain !== \"\") {\n addDomain();\n }\n return rootNode;\n};\nexports.parseTrie = parseTrie;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.createMetricsTracker = void 0;\nexports.getCleanDigitalData = getCleanDigitalData;\nexports.getRoot = getRoot;\nexports.setupRoot = setupRoot;\nvar _enums = _interopRequireDefault(require(\"./types/enums\"));\nvar _helpers = require(\"./helpers\");\nvar _utils = _interopRequireDefault(require(\"./utils\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar DEFAULT_USER_ID = '1';\nvar GLOBAL_KEY = 'sm_metrics_tracker_do_not_touch_this';\n\n/**\n * Creates a new DigitalData object and populates default values for the user\n *\n * @param userId The ID of the current user\n * @returns A DigitalData object populated only with default values\n */\nfunction getCleanDigitalData() {\n var userId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : DEFAULT_USER_ID;\n return {\n page: {\n pageInfo: {\n pageId: '',\n attributes: {},\n pathname: ''\n }\n },\n events: [],\n components: [],\n user: {\n ep201: (0, _utils.default)('ep201'),\n ep202: (0, _utils.default)('ep202'),\n id: userId\n }\n };\n}\n\n/**\n * Returns the MetricsTracker root object. If it doesn't exist, creates it.\n *\n * @param glob A reference to the global object that MetricsTrackerRoot will by saved to\n * @returns The MetricsTrackerRoot\n */\nfunction setupRoot(glob) {\n if (!glob[GLOBAL_KEY]) {\n var root = {\n subscribers: [],\n automaticSubscribers: [],\n config: {\n user: {\n id: '',\n isAuthenticated: false\n },\n dataAnalyticsAPIPath: null,\n loggingAPIPath: null,\n country: 'GB',\n legacyWeb: '',\n gtmId: ''\n },\n digitalData: getCleanDigitalData(DEFAULT_USER_ID)\n };\n glob[GLOBAL_KEY] = root;\n }\n return glob[GLOBAL_KEY];\n}\n\n/**\n * Returns the global MetricsTrackerRoot object\n *\n * @param glob A reference to the global object on which the MetricsTrackerRoot object exists\n * @returns\n */\nfunction getRoot(glob) {\n if (!glob[GLOBAL_KEY]) {\n throw new Error('Please initialize MetricsTracker with a userId before tracking events.');\n }\n return glob[GLOBAL_KEY];\n}\n\n/**\n * Creates a MetricsTrackerType object with common level functionality that is wrapped\n * in scope by the provided global object reference.\n *\n * @param glob A reference to the global namespace that the metrics tracker will be added to\n * @returns A MetricsTrackerType object with it's context bound to the passed in `glob` ref\n */\nvar createMetricsTracker = exports.createMetricsTracker = function createMetricsTracker(glob) {\n return {\n initialize: function initialize(config) {\n throw new Error('initialize not implemented');\n },\n reset: function reset() {\n throw new Error('reset not implemented');\n },\n update: function update(config) {\n // for some data points within an SPA, the configuration must be\n // updated post initialization\n var root = getRoot(glob);\n root.config = _objectSpread(_objectSpread({}, root.config), config);\n return root;\n },\n /**\n * Convenience method to update parts of the user config that can be decorated post-initialization\n *\n * @param userConfig The updated user configuration\n */\n updateUserConfig: function updateUserConfig(userConfigUpdate) {\n var root = getRoot(glob);\n root.config.user = _objectSpread(_objectSpread({}, root.config.user), userConfigUpdate);\n return root;\n },\n getSubscribers: function getSubscribers() {\n var _getRoot = getRoot(glob),\n subscribers = _getRoot.subscribers;\n return subscribers;\n },\n getAutomaticSubscribers: function getAutomaticSubscribers() {\n var _getRoot2 = getRoot(glob),\n automaticSubscribers = _getRoot2.automaticSubscribers;\n return automaticSubscribers;\n },\n track: function track(event) {\n var _event$data, _event$data2, _event$data2$data;\n var root = getRoot(glob);\n if (root.config.user.id === '') {\n throw new Error('Please initialize MetricsTracker with a userId before tracking events.');\n }\n var maskedEvent = event;\n\n // mask email addresses\n if (event !== null && event !== void 0 && (_event$data = event.data) !== null && _event$data !== void 0 && _event$data.email) {\n maskedEvent.data.email = (0, _helpers.maskEmail)(event.data.email);\n }\n if (event !== null && event !== void 0 && (_event$data2 = event.data) !== null && _event$data2 !== void 0 && (_event$data2$data = _event$data2.data) !== null && _event$data2$data !== void 0 && _event$data2$data.email) {\n maskedEvent.data.data.email = (0, _helpers.maskEmail)(event.data.data.email);\n }\n if (_enums.default[event.name]) {\n root.digitalData.events.push(event);\n if (_enums.default.COMPONENT_ADD === event.name) {\n root.digitalData.components.push(event.data);\n }\n if (event.name === _enums.default.PAGE_VIEW || event.name === _enums.default.VIRTUAL_PAGE_VIEW) {\n root.digitalData = (0, _helpers.pageViewMutation)(event, root.digitalData);\n }\n root.subscribers.forEach(function (subscriber) {\n subscriber(event, root.config);\n });\n }\n },\n automaticTrack: function automaticTrack(event) {\n var root = getRoot(glob);\n root.automaticSubscribers.forEach(function (subscriber) {\n subscriber(event, root.config);\n });\n },\n addSubscriber: function addSubscriber(subscriber) {\n /**\n * We always want to allow the subscribers to subscribe. If the user\n * did not accept GDPR, we don't fire events; hence, we never violate GDPR.\n * If, however, the user does allow tracking, we don't want to subscribers\n * to re-subscribe.\n */\n var root = getRoot(glob);\n root.subscribers.push(subscriber);\n },\n addAutomaticSubscriber: function addAutomaticSubscriber(subscriber) {\n var root = getRoot(glob);\n root.automaticSubscribers.push(subscriber);\n },\n getConfig: function getConfig() {\n return getRoot(glob).config;\n },\n getDigitalData: function getDigitalData() {\n return getRoot(glob).digitalData;\n }\n };\n};","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.MetricsTracker = void 0;\nexports.generateMetricsAttribute = generateMetricsAttribute;\nvar _utils = require(\"@sm/utils\");\nvar _enums = _interopRequireDefault(require(\"./types/enums\"));\nvar _BaseMetricsTracker = require(\"./BaseMetricsTracker\");\nvar _DataAnalyticsMetricsSubscriber = _interopRequireDefault(require(\"./subscribers/DataAnalyticsMetricsSubscriber\"));\nvar _LoggingMetricsSubscriber = _interopRequireDefault(require(\"./subscribers/LoggingMetricsSubscriber\"));\nvar _GTMMeticsSubscriber = _interopRequireDefault(require(\"./subscribers/GTMMeticsSubscriber\"));\nvar _FacebookPixelSubscriber = _interopRequireDefault(require(\"./subscribers/FacebookPixelSubscriber\"));\nvar _AmplitudeSubscriber = _interopRequireDefault(require(\"./subscribers/AmplitudeSubscriber\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar _getClientEnvironment = (0, _utils.getClientEnvironmentDetails)(),\n isBrowser = _getClientEnvironment.isBrowser;\nvar glob = isBrowser ? window : global;\n\n// Import/require only in the browser\nvar delegatedEvents = isBrowser ? require('delegated-events') : null;\n\n/**\n * Generates a string of event data that can be used in an HTML attribute\n *\n * @param eventData The name and data of the event\n * @returns A formatted strong of the eventData passed in\n */\nfunction generateMetricsAttribute(eventData) {\n return JSON.stringify({\n name: eventData.name || _enums.default.ELEMENT_INTERACTION,\n data: eventData.data\n });\n}\nvar MetricsTracker = exports.MetricsTracker = _objectSpread(_objectSpread({}, (0, _BaseMetricsTracker.createMetricsTracker)(glob)), {}, {\n /**\n * Initializes the events and configuration of the MetricsTracker\n *\n * @override\n * @param config\n * @returns\n */\n initialize: function initialize(config) {\n var root = (0, _BaseMetricsTracker.setupRoot)(glob);\n root.config = config;\n root.digitalData = (0, _BaseMetricsTracker.getCleanDigitalData)(config.user.id);\n setupEvents();\n return root;\n },\n reset: function reset() {\n var root = (0, _BaseMetricsTracker.getRoot)(glob);\n root.digitalData = (0, _BaseMetricsTracker.getCleanDigitalData)(root.config.user.id);\n root.subscribers = [];\n root.automaticSubscribers = [];\n\n // Add the mandatory dataAnalytics subscriber\n this.addSubscriber(_DataAnalyticsMetricsSubscriber.default);\n // Add the mandatory logging subscriber\n this.addSubscriber(_LoggingMetricsSubscriber.default);\n // Add Google Tag Manager dataLayer subscriber\n MetricsTracker.addSubscriber(_GTMMeticsSubscriber.default);\n // Add Facebook Pixel subscriber\n MetricsTracker.addSubscriber(_FacebookPixelSubscriber.default);\n // Add Amplitude Subscriber\n MetricsTracker.addSubscriber(_AmplitudeSubscriber.default);\n return root;\n }\n});\nfunction setupEvents() {\n if (!isBrowser) {\n return;\n }\n if (window && window.SM && window.SM.MetricsTracker) {\n // only create one event listener on the document\n // this makes it safe for consumer apps to call initialize multiple times\n return;\n }\n\n /**\n * Add on click event listener\n * Note - this is done in the getInstance method; hence, until this\n * method is called, the event handler would never be bound.\n */\n delegatedEvents.on('click', '[data-sm-metrics]', function gce(event) {\n if (event && event.currentTarget) {\n var metricsData = event.currentTarget.getAttribute('data-sm-metrics');\n if (metricsData) {\n var metricsDataJSON = JSON.parse(metricsData);\n var eventData = metricsDataJSON.data;\n MetricsTracker.track({\n name: metricsDataJSON.name || _enums.default.ELEMENT_INTERACTION,\n data: eventData\n });\n }\n }\n });\n // Add the mandatory dataAnalytics subscriber\n MetricsTracker.addSubscriber(_DataAnalyticsMetricsSubscriber.default);\n // Add the mandatory logging subscriber\n MetricsTracker.addSubscriber(_LoggingMetricsSubscriber.default);\n // Add Google Tag Manager dataLayer subscriber\n MetricsTracker.addSubscriber(_GTMMeticsSubscriber.default);\n // Add Facebook Pixel subscriber\n MetricsTracker.addSubscriber(_FacebookPixelSubscriber.default);\n // Add Amplitude Subscriber\n MetricsTracker.addSubscriber(_AmplitudeSubscriber.default);\n setupAutomaticEvents();\n window.SM = window.SM || {};\n window.SM.MetricsTracker = MetricsTracker;\n}\nfunction setupAutomaticEvents() {\n var clickableLinks = ['.wds-button', '.wds-link', 'a', 'wds-switch__native', 'wds-checkbox__native', 'wds-radio__native', 'wds-list__item', 'wds-close', 'wds-popout__trigger', 'wds-has-menu', 'wds-slider__handle', 'wds-tab__tab-btn'];\n delegatedEvents.on('click', clickableLinks.join(','), function gce(event) {\n if (!event.target) {\n return;\n }\n var name = event.type;\n var target = event.target;\n var inputTarget = target;\n MetricsTracker.automaticTrack({\n name: _enums.default.ELEMENT_INTERACTION,\n data: {\n actionType: name,\n actionFlow: 'automatic',\n class: target.className,\n text: target.innerText,\n checked: inputTarget.checked || undefined,\n value: inputTarget.value || undefined\n }\n });\n });\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.cloneDigitalData = cloneDigitalData;\nexports.maskEmail = maskEmail;\nexports.maskString = maskString;\nexports.pageViewMutation = pageViewMutation;\nvar _enums = _interopRequireDefault(require(\"./types/enums\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction cloneDigitalData(digitalData) {\n return JSON.parse(JSON.stringify(digitalData));\n}\nfunction pageViewMutation(event, digitalData) {\n if (event.name !== _enums.default.PAGE_VIEW && event.name !== _enums.default.VIRTUAL_PAGE_VIEW) {\n return digitalData;\n }\n var newDigitalData = cloneDigitalData(digitalData);\n var _event$data = event.data,\n pageId = _event$data.pageId,\n pathname = _event$data.pathname,\n attributes = _event$data.attributes;\n newDigitalData.page.pageInfo = {\n pageId: pageId,\n pathname: pathname,\n attributes: attributes\n };\n return newDigitalData;\n}\nfunction maskString(str) {\n if (!str) return '';\n if (str.length === 1) return '*';\n if (str.length === 2) return '**';\n return str.replace(/^(.)(.*)(.)$/, function (_, a, b, c) {\n return a + b.replace(/./g, '*') + c;\n });\n}\nfunction maskEmail(email) {\n if (!email) return '';\n return email.replace(/^(.*)(@.*)$/, function (_, a, b) {\n return a.replace(/./g, '*') + b;\n });\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"ComponentMetricsProvider\", {\n enumerable: true,\n get: function get() {\n return _ComponentMetricsProvider.default;\n }\n});\nObject.defineProperty(exports, \"GTMEventData\", {\n enumerable: true,\n get: function get() {\n return _types.GTMEventData;\n }\n});\nObject.defineProperty(exports, \"MetricsTracker\", {\n enumerable: true,\n get: function get() {\n return _MetricsTracker.MetricsTracker;\n }\n});\nObject.defineProperty(exports, \"MetricsTrackerType\", {\n enumerable: true,\n get: function get() {\n return _types.MetricsTrackerType;\n }\n});\nObject.defineProperty(exports, \"PageMetricsProvider\", {\n enumerable: true,\n get: function get() {\n return _PageMetricsProvider.default;\n }\n});\nObject.defineProperty(exports, \"SPARouteMetricsProvider\", {\n enumerable: true,\n get: function get() {\n return _SPARouteMetricsProvider.default;\n }\n});\nObject.defineProperty(exports, \"USER_EVENTS\", {\n enumerable: true,\n get: function get() {\n return _enums.default;\n }\n});\nObject.defineProperty(exports, \"generateMetricsAttribute\", {\n enumerable: true,\n get: function get() {\n return _MetricsTracker.generateMetricsAttribute;\n }\n});\nvar _MetricsTracker = require(\"./MetricsTracker\");\nvar _PageMetricsProvider = _interopRequireDefault(require(\"./providers/PageMetricsProvider\"));\nvar _ComponentMetricsProvider = _interopRequireDefault(require(\"./providers/ComponentMetricsProvider\"));\nvar _SPARouteMetricsProvider = _interopRequireDefault(require(\"./providers/SPARouteMetricsProvider\"));\nvar _enums = _interopRequireDefault(require(\"./types/enums\"));\nvar _types = require(\"./types/types\");\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _utils = require(\"@sm/utils\");\nvar _ = require(\"..\");\nvar ComponentMetricsProvider = function ComponentMetricsProvider(_ref) {\n var name = _ref.name,\n _ref$attributes = _ref.attributes,\n attributes = _ref$attributes === void 0 ? null : _ref$attributes,\n _ref$disableDA = _ref.disableDA,\n disableDA = _ref$disableDA === void 0 ? false : _ref$disableDA,\n actionFlow = _ref.actionFlow,\n actionType = _ref.actionType,\n children = _ref.children;\n var envDetails = (0, _utils.getClientEnvironmentDetails)();\n if (envDetails.isBrowser) {\n _.MetricsTracker.track({\n name: _.USER_EVENTS.COMPONENT_ADD,\n data: {\n componentName: name,\n attributes: attributes,\n disableDA: disableDA,\n actionType: actionType,\n actionFlow: actionFlow\n }\n });\n }\n return children;\n};\nvar _default = exports.default = ComponentMetricsProvider;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _ = require(\"..\");\nvar PageMetricsProvider = function PageMetricsProvider(_ref) {\n var pageId = _ref.pageId,\n pathname = _ref.pathname,\n attributes = _ref.attributes,\n GDPR = _ref.GDPR,\n user = _ref.user,\n country = _ref.country,\n children = _ref.children;\n var _GDPR$hasGDPRConsent = GDPR.hasGDPRConsent,\n hasGDPRConsent = _GDPR$hasGDPRConsent === void 0 ? false : _GDPR$hasGDPRConsent;\n var _user$id = user.id,\n userId = _user$id === void 0 ? '1' : _user$id,\n _user$package = user.package,\n packageId = _user$package === void 0 ? '1' : _user$package,\n _user$email = user.email,\n email = _user$email === void 0 ? '' : _user$email,\n _user$packageCanonica = user.packageCanonicalName,\n packageName = _user$packageCanonica === void 0 ? 'undefined' : _user$packageCanonica;\n (0, _react.useEffect)(function () {\n _.MetricsTracker.track({\n name: _.USER_EVENTS.PAGE_VIEW,\n data: {\n actionType: _.USER_EVENTS.PAGE_VIEW,\n actionFlow: pageId,\n pathname: pathname,\n pageId: pageId,\n attributes: attributes,\n data: {\n hasGDPRConsent: hasGDPRConsent,\n userId: userId,\n packageId: packageId,\n email: email,\n country: country,\n packageName: packageName\n }\n }\n });\n },\n // eslint-disable-next-line react-hooks/exhaustive-deps\n [\n /**\n * Adding an empty array ensures that this is always and only called\n * on first page renders/reloads. SPA will never call this.\n */\n ]);\n return children;\n};\nvar _default = exports.default = PageMetricsProvider;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _react = require(\"react\");\nvar _ = require(\"..\");\nvar SPARouteMetricsProvider = function SPARouteMetricsProvider(_ref) {\n var pageId = _ref.pageId,\n pathname = _ref.pathname,\n legacyWeb = _ref.legacyWeb,\n attributes = _ref.attributes,\n GDPR = _ref.GDPR,\n user = _ref.user,\n country = _ref.country,\n children = _ref.children;\n var _GDPR$hasGDPRConsent = GDPR.hasGDPRConsent,\n hasGDPRConsent = _GDPR$hasGDPRConsent === void 0 ? false : _GDPR$hasGDPRConsent;\n var _user$id = user.id,\n userId = _user$id === void 0 ? '1' : _user$id,\n _user$package = user.package,\n packageId = _user$package === void 0 ? '1' : _user$package,\n _user$email = user.email,\n email = _user$email === void 0 ? '' : _user$email;\n (0, _react.useEffect)(function () {\n // update the global config\n _.MetricsTracker.update({\n pageId: pageId,\n legacyWeb: legacyWeb\n });\n\n /*\n // TODO: This shouldn't fire on intital render, but it needs to right now\n // to ensure all page metrics for SPA are accurately recorded. For example\n // in the SPA, PAGE_VIEW only knows about the SPA container, not the page within\n // the container. So the VIRTUAL_PAGE_VIEW is needed to track the actual page content\n */\n _.MetricsTracker.track({\n name: _.USER_EVENTS.VIRTUAL_PAGE_VIEW,\n data: {\n actionType: _.USER_EVENTS.VIRTUAL_PAGE_VIEW,\n actionFlow: pageId,\n pageId: pageId,\n attributes: attributes,\n pathname: pathname,\n data: {\n hasGDPRConsent: hasGDPRConsent,\n userId: userId,\n packageId: packageId,\n email: email,\n countryCode: country\n }\n }\n });\n\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [pageId, legacyWeb, pathname]);\n return children;\n};\nvar _default = exports.default = SPARouteMetricsProvider;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _amplitude = _interopRequireDefault(require(\"./amplitude\"));\nvar _anonymous = require(\"./anonymous\");\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar AmplitudeSubscriberSingleton = function () {\n var smAmplitude = null;\n return function (digitalDataEvent, metricsTrackerConfig) {\n if (metricsTrackerConfig.forceAnonymous) {\n // Call track() for anonymous users (no need to initialize)\n (0, _anonymous.anonymousTrack)(metricsTrackerConfig, digitalDataEvent);\n } else {\n // Initialize (if needed) and then track for regular, non anonymous users\n if (!smAmplitude) {\n smAmplitude = new _amplitude.default(metricsTrackerConfig);\n }\n smAmplitude.track(digitalDataEvent);\n }\n };\n}();\nvar _default = exports.default = AmplitudeSubscriberSingleton;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = dataAnalyticsMetricsSubscriber;\nfunction dataAnalyticsMetricsSubscriber(digitalDataEvent, metricsTrackerConfig) {\n // Verify that the required values are present and we're not being\n // bypassed before continuing. If not, exit quietly.\n if (digitalDataEvent.data.disableDA === true || !digitalDataEvent.data.actionFlow || !digitalDataEvent.data.actionType) {\n return;\n }\n var eventData = JSON.parse(JSON.stringify(digitalDataEvent.data));\n var dataAnalyticsAPIPath = metricsTrackerConfig.dataAnalyticsAPIPath,\n legacyWeb = metricsTrackerConfig.legacyWeb;\n var eventMeta = {\n ui_event: '',\n ui_goal: '',\n url: '',\n origin: '',\n legacy_web: legacyWeb\n };\n eventMeta.ui_event = eventData.actionType;\n eventMeta.ui_goal = eventData.actionFlow;\n eventMeta.url = window.location.href;\n eventMeta.origin = eventData.origin || 'user';\n delete eventData.actionType;\n delete eventData.actionFlow;\n delete eventData.origin;\n // FUTURE: The listener should implement experiments metrics.\n\n // Send the event to the data analytics api\n if (dataAnalyticsAPIPath) {\n fetch(dataAnalyticsAPIPath, {\n method: 'POST',\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json; charset=utf-8'\n },\n body: JSON.stringify({\n data: eventData,\n meta: eventMeta\n })\n });\n }\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = facebookPixelSubscriber;\nvar _enums = _interopRequireDefault(require(\"../types/enums\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar whiteListedURLs = [/\\/collect\\/audience\\/.*\\/status/];\nvar isValidURL = function isValidURL(url) {\n return whiteListedURLs.some(function (pattern) {\n return url.match(pattern) !== null;\n });\n};\nfunction facebookPixelSubscriber(digitalDataEvent) {\n // eslint-disable-next-line global-require\n var ReactPixel = require('react-facebook-pixel');\n var _JSON$parse = JSON.parse(JSON.stringify(digitalDataEvent.data)),\n name = _JSON$parse.name,\n data = _JSON$parse.data,\n key = _JSON$parse.key;\n var actionType = digitalDataEvent.name;\n if (isValidURL(window.location.href) && key) {\n ReactPixel.init(key);\n if (actionType === _enums.default.USER_METADATA && name && data) {\n ReactPixel.track(name, data);\n }\n if (actionType === _enums.default.PAGE_VIEW) ReactPixel.pageView();\n }\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = gtmMetricsSubscriber;\nvar _utils = require(\"@sm/utils\");\nvar _helpers = require(\"../helpers\");\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction gtmMetricsSubscriber(digitalDataEvent) {\n var data = digitalDataEvent.data,\n name = digitalDataEvent.name;\n var actionType = data.actionType,\n actionFlow = data.actionFlow;\n if (!actionType || !actionFlow) {\n return;\n }\n\n // flatten the data object\n var gtmDataLayer = _objectSpread(_objectSpread({}, data), data.data);\n delete gtmDataLayer.data;\n var envDetails = (0, _utils.getClientEnvironmentDetails)();\n if (envDetails.isBrowser) {\n var pagePath = window.location.pathname;\n window.dataLayer = window.dataLayer || [];\n var eventObj = function eventObj(_ref) {\n var hasGDPRConsent = _ref.hasGDPRConsent,\n userId = _ref.userId,\n packageId = _ref.packageId,\n email = _ref.email,\n countryCode = _ref.countryCode;\n return {\n PAGE_VIEW: {\n event: 'pageView',\n loadMarketingContainer: hasGDPRConsent,\n user_id: userId,\n package_id: packageId,\n email: (0, _helpers.maskEmail)(email),\n country_code: countryCode\n },\n VIRTUAL_PAGE_VIEW: {\n event: 'virtualPageView',\n virtualPageUrl: pagePath,\n virtualPageTitle: actionFlow\n },\n GDPR_ACTION: {\n event: actionFlow,\n loadMarketingContainer: actionFlow !== 'denyConsent'\n }\n };\n };\n var gtm = eventObj(gtmDataLayer)[actionType] || _objectSpread({\n event: name\n }, gtmDataLayer);\n if (Object.keys(gtm).length) {\n window.dataLayer.push(gtm);\n }\n }\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = loggingMetricsSubscriber;\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nfunction loggingMetricsSubscriber(digitalDataEvent, metricsTrackerConfig) {\n var eventData = JSON.parse(JSON.stringify(digitalDataEvent.data));\n var logEventData = eventData ? eventData.log : null;\n var loggingAPIPath = metricsTrackerConfig.loggingAPIPath;\n if (typeof loggingAPIPath !== 'undefined' && typeof logEventData !== 'undefined' && logEventData !== null && loggingAPIPath) {\n delete eventData.log;\n var bodyRequestObject = _objectSpread({\n data: eventData\n }, logEventData);\n fetch(loggingAPIPath, {\n method: 'POST',\n cache: 'no-cache',\n credentials: 'include',\n headers: {\n 'Content-Type': 'application/json; charset=utf-8'\n },\n body: JSON.stringify(bodyRequestObject)\n });\n }\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nexports.parseOneTrustCookie = parseOneTrustCookie;\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nvar ONETRUST_COOKIE = 'OptanonConsent';\nvar ONETRUST_FUNCTIONAL_COOKIE_GROUP = 'C0003';\n\n/**\n * Checks for and parses the information stored in the OneTrust cookie\n *\n * @returns Whether the OneTrust cookie exists and the information stored within it\n */\nfunction parseOneTrustCookie() {\n var cookieValue = (0, _utils.default)(ONETRUST_COOKIE, '');\n var retVal = {\n hasOneTrustCookie: !!cookieValue,\n keyValues: {},\n groups: {}\n };\n if (retVal.hasOneTrustCookie) {\n cookieValue.split('&').forEach(function (token) {\n var keyVal = token.split('=').map(function (piece) {\n return decodeURIComponent(piece);\n });\n var key = keyVal.shift();\n var value = keyVal.length ? keyVal.shift() : true;\n if (key) {\n retVal.keyValues[key] = value;\n }\n });\n\n // fix up groups to be cleaner\n if (typeof retVal.keyValues.groups === 'string') {\n retVal.keyValues.groups.split(',').forEach(function (group) {\n var tokens = group.split(':');\n retVal.groups[tokens[0]] = tokens[1] === '1';\n });\n }\n }\n return retVal;\n}\nvar blockedByOneTrust = function blockedByOneTrust() {\n var overrideOneTrust = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n var _parseOneTrustCookie = parseOneTrustCookie(),\n hasOneTrustCookie = _parseOneTrustCookie.hasOneTrustCookie,\n oneTrustGroups = _parseOneTrustCookie.groups;\n\n // we are blocked by OneTrust if...\n return (\n // we're not overridden to _ignore_ OneTrust...\n !overrideOneTrust &&\n // the OneTrust cookie is not present or does not have\n // functional cookies accepted\n !(hasOneTrustCookie && oneTrustGroups[ONETRUST_FUNCTIONAL_COOKIE_GROUP] === true)\n );\n};\nvar _default = exports.default = blockedByOneTrust;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar amplitude = _interopRequireWildcard(require(\"@amplitude/marketing-analytics-browser\"));\nvar _OneTrust = _interopRequireDefault(require(\"./OneTrust\"));\nvar _utils = _interopRequireDefault(require(\"../../utils\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction _getRequireWildcardCache(e) {\n if (\"function\" != typeof WeakMap) return null;\n var r = new WeakMap(),\n t = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(e) {\n return e ? t : r;\n })(e);\n}\nfunction _interopRequireWildcard(e, r) {\n if (!r && e && e.__esModule) return e;\n if (null === e || \"object\" != typeof e && \"function\" != typeof e) return {\n default: e\n };\n var t = _getRequireWildcardCache(r);\n if (t && t.has(e)) return t.get(e);\n var n = {\n __proto__: null\n },\n a = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var u in e) {\n if (\"default\" !== u && Object.prototype.hasOwnProperty.call(e, u)) {\n var i = a ? Object.getOwnPropertyDescriptor(e, u) : null;\n i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u];\n }\n }\n return n.default = e, t && t.set(e, n), n;\n}\nfunction _slicedToArray(arr, i) {\n return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();\n}\nfunction _nonIterableRest() {\n throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}\nfunction _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n return arr2;\n}\nfunction _iterableToArrayLimit(r, l) {\n var t = null == r ? null : \"undefined\" != typeof Symbol && r[Symbol.iterator] || r[\"@@iterator\"];\n if (null != t) {\n var e,\n n,\n i,\n u,\n a = [],\n f = !0,\n o = !1;\n try {\n if (i = (t = t.call(r)).next, 0 === l) {\n if (Object(t) !== t) return;\n f = !1;\n } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0) {\n ;\n }\n } catch (r) {\n o = !0, n = r;\n } finally {\n try {\n if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return;\n } finally {\n if (o) throw n;\n }\n }\n return a;\n }\n}\nfunction _arrayWithHoles(arr) {\n if (Array.isArray(arr)) return arr;\n}\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar UTM_TO_AMP_PROP = {\n utm_adgroup: 'utmAdGroup',\n utm_bu: 'utmBu',\n utm_network: 'utmNetwork',\n ut_source: 'utSource',\n ut_source2: 'utSource2',\n ut_source3: 'utSource3'\n};\nvar DEFAULT_AMPLITUDE_CONFIG = {\n trackingOptions: {\n ip_address: false\n },\n transport: amplitude.Types.TransportType.SendBeacon,\n minIdLength: 1\n};\nvar conditionallyAddKey = function conditionallyAddKey(keyName, value, out) {\n if (value) {\n // the whole point of this method is to populate a single object with props,\n // so passing that object around by reference is the most performant\n // eslint-disable-next-line no-param-reassign\n out[keyName] = value;\n }\n};\nvar SMAmplitude = exports.default = /*#__PURE__*/function () {\n function SMAmplitude(config) {\n var _this = this;\n _classCallCheck(this, SMAmplitude);\n this.userProps = {};\n this.config = void 0;\n this.initialized = false;\n this.queuedEvents = [];\n this.config = config;\n this.initialize();\n\n // we'll listen in on OneTrust's global event for if the consent changes. this way,\n // we don't have to worry about race conditions should this library initialize before\n // the OneTrust one is available\n window.addEventListener('consent.onetrust', function () {\n return _this.handleConsentChange();\n });\n }\n\n /**\n * Initializes the Amplitude SDK\n */\n _createClass(SMAmplitude, [{\n key: \"enabled\",\n get:\n /**\n * Returns whether Amplitude events are enabled, either by configuration\n * or cookie acceptance through the OneTrust banner\n */\n function get() {\n var _user$session;\n var _this$config = this.config,\n amplitudeToken = _this$config.amplitudeToken,\n user = _this$config.user,\n overrideOneTrust = _this$config.overrideOneTrust;\n return (\n // we need an amplitude token...\n !!amplitudeToken &&\n // ...to not be impersonating a user...\n !(user !== null && user !== void 0 && (_user$session = user.session) !== null && _user$session !== void 0 && _user$session.isAdminImpersonation) &&\n // ...and to not be opted out of functional cookies\n !(0, _OneTrust.default)(overrideOneTrust)\n );\n }\n }, {\n key: \"initialize\",\n value: function initialize() {\n var _this2 = this;\n if (!this.initialized && this.enabled) {\n var _this$config2 = this.config,\n amplitudeDeviceId = _this$config2.amplitudeDeviceId,\n amplitudeSessionId = _this$config2.amplitudeSessionId,\n amplitudeToken = _this$config2.amplitudeToken,\n user = _this$config2.user;\n var isAuthenticated = user.isAuthenticated,\n userId = user.id,\n group = user.group;\n var config = _objectSpread({}, DEFAULT_AMPLITUDE_CONFIG);\n conditionallyAddKey('deviceId', amplitudeDeviceId, config);\n conditionallyAddKey('sessionId', amplitudeSessionId, config);\n try {\n // due to the enabled check above, amplitudeToken is definitely not undefined\n amplitude.init(amplitudeToken, undefined, config);\n if (isAuthenticated) {\n var _group$membership;\n amplitude.setUserId(userId);\n if (group !== null && group !== void 0 && (_group$membership = group.membership) !== null && _group$membership !== void 0 && _group$membership.groupId) {\n var _group$membership2;\n amplitude.setGroup('teamId', group === null || group === void 0 ? void 0 : (_group$membership2 = group.membership) === null || _group$membership2 === void 0 ? void 0 : _group$membership2.groupId);\n }\n }\n this.hydrateDefaultUserProps();\n this.sendUserProperties();\n\n // add a bevy of event listeners to detect if the user is leaving the page in\n // some way. this will allow us to flush the event queue and prevent events\n // from being stuck in limbo. why so many events? because different browsers\n // act differently :|\n document.addEventListener('visibilitychange', function () {\n return _this2.flushCache();\n });\n window.addEventListener('pagehide', function () {\n return _this2.flushCache();\n });\n window.addEventListener('beforeunload', function () {\n return _this2.flushCache();\n });\n } catch (err) {\n // silently fail\n }\n this.initialized = true;\n }\n }\n\n /**\n * Sends a tracking event to Amplitude\n *\n * @param event The event and properties to send to Amplitude\n */\n }, {\n key: \"track\",\n value: function track(event) {\n var _window;\n var data = event.data;\n var amplitudeEvent = data.amplitudeEvent,\n amplitudeUserProperties = data.amplitudeUserProperties;\n\n // no amplitude event, nothing to do\n if (!amplitudeEvent) {\n return;\n }\n\n // if amplitude is disabled for any reason, stash the event for later\n // in the event it gets re-enabled so unsent events can get fired\n if (!this.enabled) {\n this.queuedEvents.push(event);\n return;\n }\n var eventData = _objectSpread({}, data);\n\n // remove values we don't want to pass along as event properties\n delete eventData.amplitudeEvent;\n delete eventData.amplitudeUserProperties;\n delete eventData.actionType;\n delete eventData.actionFlow;\n\n // if extra user props were in this event, send those along\n if (amplitudeUserProperties) {\n this.sendUserProperties(amplitudeUserProperties);\n }\n\n // \"page viewed\" events are a special event and we expect any event with those\n // words (in that order) to also send the current URL path as `urlPath`. we do\n // want to ensure we're in a browser environment before doing anything rash, though\n if (amplitudeEvent.indexOf('page viewed') > -1 && !eventData.urlPath && typeof window === 'object' && typeof ((_window = window) === null || _window === void 0 ? void 0 : _window.location) === 'object') {\n eventData.urlPath = window.location.pathname;\n // Add ut parameters and hostname to page viewed events\n this.extractUTParameters(eventData, window.location.href);\n }\n amplitude.track(amplitudeEvent, _objectSpread({}, eventData));\n }\n\n /**\n * Pulls out all of the ut_source* parameters and hostname in a browser environment\n * and adds them to the property dictionary that is eventually sent to Amplitude.\n *\n * @param eventData is the property dictionary that the ut sources and host get added to\n * @param url is the url of the event\n *\n */\n }, {\n key: \"extractUTParameters\",\n value: function extractUTParameters(eventData, url) {\n // Create Url Object for easier parsing\n var urlObject = new URL(url || '');\n\n // Extract the hostName\n var host = urlObject.hostname;\n eventData.hostName = host;\n\n // Extract ut params and add them to eventData\n var urlParams = urlObject.searchParams;\n for (var _key in UTM_TO_AMP_PROP) {\n if (urlParams.has(_key)) {\n eventData[UTM_TO_AMP_PROP[_key]] = urlParams.get(_key);\n }\n }\n }\n\n /**\n * Pulls out the default user properties that should be sent upon initialization\n *\n * @param user The user configuration from initialization\n */\n }, {\n key: \"hydrateDefaultUserProps\",\n value: function hydrateDefaultUserProps() {\n var user = this.config.user;\n var userProps = {};\n\n // decorate logged in user information\n if (user.isAuthenticated) {\n var _user$group, _user$group$membershi;\n conditionallyAddKey('languageId', user === null || user === void 0 ? void 0 : user.languageId, userProps);\n conditionallyAddKey('userPackageId', user === null || user === void 0 ? void 0 : user.package, userProps);\n conditionallyAddKey('userPackageName', (user === null || user === void 0 ? void 0 : user.packageCanonicalName) || (user === null || user === void 0 ? void 0 : user.packageName), userProps);\n conditionallyAddKey('userSubscriptionStatus', user === null || user === void 0 ? void 0 : user.subscriptionStatus, userProps);\n conditionallyAddKey('dateJoined', user === null || user === void 0 ? void 0 : user.joinedAt, userProps);\n conditionallyAddKey('dateSubscribed', user === null || user === void 0 ? void 0 : user.subscribedAt, userProps);\n conditionallyAddKey('userRole', (_user$group = user.group) === null || _user$group === void 0 ? void 0 : (_user$group$membershi = _user$group.membership) === null || _user$group$membershi === void 0 ? void 0 : _user$group$membershi.type, userProps);\n conditionallyAddKey('userDataCenter', user === null || user === void 0 ? void 0 : user.dataCenter, userProps);\n if (user.email) {\n var _user$email$split = user.email.split('@'),\n _user$email$split2 = _slicedToArray(_user$email$split, 2),\n emailDomain = _user$email$split2[1];\n if (emailDomain && emailDomain.indexOf('.') > -1) {\n userProps.emailDomain = emailDomain;\n }\n }\n }\n\n // EP-1743: decorate with EP cookie values\n userProps.userSMSessionId = (0, _utils.default)('ep201');\n userProps.userSMPersistentId = (0, _utils.default)('ep202');\n this.userProps = userProps;\n }\n\n /**\n * Sends default user properties on initialization and additional user properties\n * any time via an Amplitude identify event.\n *\n * @param extraUserProps Additional user properties to send with the defaults\n */\n }, {\n key: \"sendUserProperties\",\n value: function sendUserProperties(extraUserProps) {\n // only send user props on initialization or if there are extra props to be sent\n if (!this.initialized || extraUserProps) {\n var identify = new amplitude.Identify();\n var userProps = _objectSpread(_objectSpread({}, this.userProps), extraUserProps || {});\n Object.keys(userProps).forEach(function (key) {\n identify.set(key, userProps[key]);\n });\n amplitude.identify(identify);\n }\n }\n\n /**\n * Event handler for when a user changes OneTrust cookie consent\n */\n }, {\n key: \"handleConsentChange\",\n value: function handleConsentChange() {\n var _this3 = this;\n // bail if amplitude cookies are now rejected\n if (!this.enabled) {\n return;\n }\n\n // if consent has been granted where it wasn't before, initialize everything and send any queued events\n if (!this.initialized) {\n this.initialize();\n }\n this.queuedEvents.forEach(function (event) {\n return _this3.track(event);\n });\n this.queuedEvents = [];\n }\n\n /**\n * Event handler for when the user navigates to a new URL\n */\n }, {\n key: \"flushCache\",\n value: function flushCache() {\n if (this.enabled) {\n amplitude.flush();\n }\n }\n }]);\n return SMAmplitude;\n}();\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.anonymousTrack = anonymousTrack;\nvar _uuid = require(\"uuid\");\nfunction ownKeys(e, r) {\n var t = Object.keys(e);\n if (Object.getOwnPropertySymbols) {\n var o = Object.getOwnPropertySymbols(e);\n r && (o = o.filter(function (r) {\n return Object.getOwnPropertyDescriptor(e, r).enumerable;\n })), t.push.apply(t, o);\n }\n return t;\n}\nfunction _objectSpread(e) {\n for (var r = 1; r < arguments.length; r++) {\n var t = null != arguments[r] ? arguments[r] : {};\n r % 2 ? ownKeys(Object(t), !0).forEach(function (r) {\n _defineProperty(e, r, t[r]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) {\n Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r));\n });\n }\n return e;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar UTM_TO_AMP_PROP = {\n utm_adgroup: 'utmAdGroup',\n utm_bu: 'utmBu',\n utm_network: 'utmNetwork',\n ut_source: 'utSource',\n ut_source2: 'utSource2',\n ut_source3: 'utSource3'\n};\nfunction extractUTParameters(eventData, url) {\n // Create Url Object for easier parsing\n var urlObject = new URL(url || '');\n\n // Extract the hostName\n var host = urlObject.hostname;\n eventData.hostName = host;\n\n // Extract ut params and add them to eventData\n var urlParams = urlObject.searchParams;\n for (var _key in UTM_TO_AMP_PROP) {\n if (urlParams.has(_key)) {\n eventData[UTM_TO_AMP_PROP[_key]] = urlParams.get(_key);\n }\n }\n}\nfunction anonymousTrack(config, event) {\n var _user$session, _window;\n var amplitudeToken = config.amplitudeToken,\n user = config.user;\n var data = event.data;\n var amplitudeEvent = data.amplitudeEvent,\n amplitudeUserProperties = data.amplitudeUserProperties;\n\n // Bail if no Amplitude token, admin impersonation, or no amplitude event in data\n if (!amplitudeToken || user !== null && user !== void 0 && (_user$session = user.session) !== null && _user$session !== void 0 && _user$session.isAdminImpersonation || !amplitudeEvent) {\n return;\n }\n\n // Make a shallow copy of the data to eventually send to Amplitude\n var eventData = _objectSpread({}, data);\n var amplitudeEventName = eventData.amplitudeEvent;\n\n // remove values we don't want to pass along as event properties\n delete eventData.amplitudeEvent;\n delete eventData.amplitudeUserProperties;\n delete eventData.actionType;\n delete eventData.actionFlow;\n\n // Add page viewed properties for a page viewed event\n if (amplitudeEvent.indexOf('page viewed') > -1 && !eventData.urlPath && typeof window === 'object' && typeof ((_window = window) === null || _window === void 0 ? void 0 : _window.location) === 'object') {\n eventData.urlPath = window.location.pathname;\n extractUTParameters(eventData, window.location.href);\n }\n\n // Generate unique uuid for device ID\n var deviceId = (0, _uuid.v4)();\n\n // Send the event via beacon to avoid any built in cookie Action\n try {\n navigator.sendBeacon('https://api2.amplitude.com/2/httpapi', JSON.stringify({\n api_key: amplitudeToken,\n events: [{\n device_id: deviceId,\n user_id: '',\n event_type: amplitudeEventName,\n event_properties: eventData,\n user_properties: amplitudeUserProperties\n }]\n }));\n } catch (error) {\n console.error(error);\n }\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = exports.USER_SUBSCRIPTION_STATUS = void 0;\nvar USER_EVENTS; // Adding information about the user\n(function (USER_EVENTS) {\n USER_EVENTS[\"PAGE_VIEW\"] = \"PAGE_VIEW\";\n USER_EVENTS[\"VIRTUAL_PAGE_VIEW\"] = \"VIRTUAL_PAGE_VIEW\";\n USER_EVENTS[\"COMPONENT_ADD\"] = \"COMPONENT_ADD\";\n USER_EVENTS[\"COMPONENT_ERROR\"] = \"COMPONENT_ERROR\";\n USER_EVENTS[\"DATA_FETCH_ERROR\"] = \"DATA_FETCH_ERROR\";\n USER_EVENTS[\"ELEMENT_INTERACTION\"] = \"ELEMENT_INTERACTION\";\n USER_EVENTS[\"GDPR_ACTION\"] = \"GDPR_ACTION\";\n USER_EVENTS[\"NAVIGATION\"] = \"NAVIGATION\";\n USER_EVENTS[\"USER_METADATA\"] = \"USER_METADATA\";\n})(USER_EVENTS || (USER_EVENTS = {}));\nvar USER_SUBSCRIPTION_STATUS;\n(function (USER_SUBSCRIPTION_STATUS) {\n USER_SUBSCRIPTION_STATUS[\"NEW\"] = \"new\";\n USER_SUBSCRIPTION_STATUS[\"CHURNED\"] = \"churned\";\n USER_SUBSCRIPTION_STATUS[\"ACTIVE\"] = \"active\";\n})(USER_SUBSCRIPTION_STATUS || (exports.USER_SUBSCRIPTION_STATUS = USER_SUBSCRIPTION_STATUS = {}));\nvar _default = exports.default = USER_EVENTS;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = getCookieValue;\nfunction getCookieValue(cname, defaultValue) {\n // `getClientEnvironmentDetails` could provide this information, but imports\n // the \"bowser\" package to decorate a bunch of details we don't need (that's ~5k minified)\n // As such, we'll just lift the line we actually want:\n // https://github.com/mntv-webplatform/smpackages/blob/master/packages/utils/src/environment/index.ts#L83\n var isBrowser = typeof window === 'object';\n if (!isBrowser) return '';\n var name = \"\".concat(cname, \"=\");\n var decodedCookie = decodeURIComponent(document.cookie);\n var ca = decodedCookie.split(';');\n for (var i = 0; i < ca.length; i += 1) {\n var c = ca[i];\n while (c.charAt(0) === ' ') {\n c = c.substring(1);\n }\n if (c.indexOf(name) === 0) {\n return c.substring(name.length, c.length);\n }\n }\n return defaultValue || '';\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _s3upload = _interopRequireDefault(require(\"react-s3-uploader/s3upload\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor);\n }\n}\nfunction _createClass(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n Object.defineProperty(Constructor, \"prototype\", {\n writable: false\n });\n return Constructor;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nvar DEFAULT_OPTIONS = {\n preprocess: function preprocess(file, next) {\n next(file);\n },\n onSignedUrl: function onSignedUrl() {},\n onProgress: function onProgress() {},\n onFinish: function onFinish() {},\n onError: function onError() {},\n signingUrl: '/core/api/s3/sign',\n scrubFilename: function scrubFilename(filename) {\n return \".\".concat(filename.split('.').pop());\n },\n s3path: '',\n autoUpload: true\n};\n/**\n * Creates a new S3Uploader.\n * @class\n */\nvar S3Uploader = /*#__PURE__*/function () {\n /**\n * @constructs S3Uploader\n * @param {Object} options S3Uploader options\n * @param {string} options.server S3Uploader server\n * @param {string} options.signingUrl S3Uploader singingUrl\n * @param {string} options.server S3Uploader server\n * @param {Array} options.successResponses {code, code} Success responses\n * @param {string} [options.signingUrlMethod=\"GET\"] S3Uploader singingUrlMethod\n * @param {string} [options.s3path=\"\"] S3Uploader s3path\n * @param {boolean} [options.autoUpload=true] S3Uploader autoupload\n * @param {Object} options.files S3Uploader files\n * @param {Object} options.fileElement S3Uploader fileElement\n * @param {Function} options.onFinishS3Put S3Uploader onFinishS3Put function\n * @param {Function} options.onFinish OnFinish uploading function\n * @param {Function} options.preprocess preprocess function\n * @param {Function} options.onProgress onProgress uploading function\n * @param {Function} options.onError on upload error function\n * @param {Function} options.onSignedUrl signed url function\n * @param {Function} options.fileElement fileElement\n * @param {Function} options.inputRef inputRef\n * @param {Function} options.contentDisposition\n * @param {Object} options.uploadRequestHeaders\n * @param {boolean} options.getSignedUrl\n */\n\n function S3Uploader(options) {\n _classCallCheck(this, S3Uploader);\n this.options = void 0;\n this.myUploader = void 0;\n this.options = _objectSpread(_objectSpread({}, DEFAULT_OPTIONS), options);\n }\n\n /**\n * Upload the file\n */\n _createClass(S3Uploader, [{\n key: \"uploadFile\",\n value: function uploadFile() {\n this.myUploader = new _s3upload.default(_objectSpread(_objectSpread({}, DEFAULT_OPTIONS), this.options));\n }\n\n /**\n * Abort the upload\n */\n }, {\n key: \"abort\",\n value: function abort() {\n if (this.myUploader) {\n this.myUploader.abortUpload();\n }\n }\n }]);\n return S3Uploader;\n}();\nexports.default = S3Uploader;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.isTeamPackage = exports.isEnterprisePackage = exports.isBasicPackage = exports.isAnnualPackage = exports.PackageType = void 0;\n// constants and logic for dealing with billing packages\nvar PackageType;\nexports.PackageType = PackageType;\n(function (PackageType) {\n PackageType[PackageType[\"BASIC\"] = 1] = \"BASIC\";\n PackageType[PackageType[\"PRO\"] = 2] = \"PRO\";\n PackageType[PackageType[\"UNLIMITED\"] = 3] = \"UNLIMITED\";\n PackageType[PackageType[\"SELECT_MONTHLY\"] = 4] = \"SELECT_MONTHLY\";\n PackageType[PackageType[\"GOLD\"] = 5] = \"GOLD\";\n PackageType[PackageType[\"PLATINUM\"] = 6] = \"PLATINUM\";\n PackageType[PackageType[\"SELECT_YEARLY\"] = 7] = \"SELECT_YEARLY\";\n PackageType[PackageType[\"TEMP_PRO\"] = 8] = \"TEMP_PRO\";\n PackageType[PackageType[\"PRO_COMP\"] = 9] = \"PRO_COMP\";\n PackageType[PackageType[\"ZOOM_PRO\"] = 13] = \"ZOOM_PRO\";\n PackageType[PackageType[\"ZOOM_PREMIUM\"] = 16] = \"ZOOM_PREMIUM\";\n PackageType[PackageType[\"ENT_GOLD\"] = 25] = \"ENT_GOLD\";\n PackageType[PackageType[\"ENTERPRISE_PLATINUM\"] = 26] = \"ENTERPRISE_PLATINUM\";\n PackageType[PackageType[\"ENTERPRISE\"] = 27] = \"ENTERPRISE\";\n PackageType[PackageType[\"ENTERPRISE_PRO\"] = 28] = \"ENTERPRISE_PRO\";\n PackageType[PackageType[\"ENTERPRISE_CASUAL_USER\"] = 29] = \"ENTERPRISE_CASUAL_USER\";\n PackageType[PackageType[\"ENTERPRISE_ULTIMATE\"] = 30] = \"ENTERPRISE_ULTIMATE\";\n PackageType[PackageType[\"STANDARD_MONTHLY\"] = 31] = \"STANDARD_MONTHLY\";\n PackageType[PackageType[\"STANDARD_ANNUAL\"] = 32] = \"STANDARD_ANNUAL\";\n PackageType[PackageType[\"ADVANTAGE_MONTHLY\"] = 33] = \"ADVANTAGE_MONTHLY\";\n PackageType[PackageType[\"ADVANTAGE_ANNUAL\"] = 34] = \"ADVANTAGE_ANNUAL\";\n PackageType[PackageType[\"PREMIER_MONTHLY\"] = 35] = \"PREMIER_MONTHLY\";\n PackageType[PackageType[\"PREMIER_ANNUAL\"] = 36] = \"PREMIER_ANNUAL\";\n PackageType[PackageType[\"ANALYZE_PACKAGE\"] = 37] = \"ANALYZE_PACKAGE\";\n PackageType[PackageType[\"TEAM_ADVANTAGE_ANNUAL\"] = 134] = \"TEAM_ADVANTAGE_ANNUAL\";\n PackageType[PackageType[\"TEAM_PREMIER_ANNUAL\"] = 136] = \"TEAM_PREMIER_ANNUAL\";\n PackageType[PackageType[\"ENTERPRISE_CONTRIBUTOR_SEAT\"] = 226] = \"ENTERPRISE_CONTRIBUTOR_SEAT\";\n PackageType[PackageType[\"TEAM_ADVANTAGE_CONTRIBUTOR_SEAT\"] = 234] = \"TEAM_ADVANTAGE_CONTRIBUTOR_SEAT\";\n PackageType[PackageType[\"TEAM_PREMIER_CONTRIBUTOR_SEAT\"] = 236] = \"TEAM_PREMIER_CONTRIBUTOR_SEAT\";\n})(PackageType || (exports.PackageType = PackageType = {}));\nvar isAnnualPackage = function isAnnualPackage(packageID) {\n return [PackageType.ENTERPRISE_PLATINUM, PackageType.ENTERPRISE, PackageType.ENTERPRISE_PRO, PackageType.ENTERPRISE_ULTIMATE, PackageType.STANDARD_ANNUAL, PackageType.ADVANTAGE_ANNUAL, PackageType.PREMIER_ANNUAL, PackageType.TEAM_ADVANTAGE_ANNUAL, PackageType.TEAM_PREMIER_ANNUAL].includes(packageID);\n};\nexports.isAnnualPackage = isAnnualPackage;\nvar isBasicPackage = function isBasicPackage(packageID) {\n return packageID === PackageType.BASIC;\n};\nexports.isBasicPackage = isBasicPackage;\nvar isEnterprisePackage = function isEnterprisePackage(packageID) {\n return [PackageType.ENT_GOLD, PackageType.ENTERPRISE, PackageType.ENTERPRISE_CONTRIBUTOR_SEAT, PackageType.ENTERPRISE_PLATINUM, PackageType.ENTERPRISE_CASUAL_USER, PackageType.ENTERPRISE_PRO, PackageType.ENTERPRISE_ULTIMATE].includes(packageID);\n};\nexports.isEnterprisePackage = isEnterprisePackage;\nvar isTeamPackage = function isTeamPackage(packageID) {\n return [PackageType.ENTERPRISE_PLATINUM, PackageType.ENTERPRISE_PRO, PackageType.ENTERPRISE_ULTIMATE, PackageType.ENTERPRISE, PackageType.TEAM_ADVANTAGE_ANNUAL, PackageType.TEAM_PREMIER_ANNUAL].indexOf(packageID) > -1;\n};\nexports.isTeamPackage = isTeamPackage;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.environmentDetails = exports.SupportedBrowserVendors = void 0;\nexports.getClientEnvironmentDetails = getClientEnvironmentDetails;\nexports.isBrowserSupported = isBrowserSupported;\nvar _bowser = _interopRequireDefault(require(\"bowser\"));\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}\n/**\n * Environment Details\n * @typedef {Object}\n * @property {boolean} isNode\n * @property {boolean} isBrowser\n * @property {boolean} isDesktop\n * @property {boolean} isHeadlessChrome\n * @property {boolean} isMobile\n * @property {boolean} isTablet\n * @property {boolean} isIOS\n * @property {boolean} isAndroid\n * @property {Object} clientWindowSize\n * @property {string} clientWindowSize.width\n * @property {string} clientWindowSize.height\n * @memberof module:@sm/utils\n */\nvar environmentDetails = {\n isNode: false,\n isBrowser: false,\n isDesktop: false,\n isHeadlessChrome: false,\n isMobile: false,\n isTablet: false,\n isIOS: false,\n isAndroid: false,\n clientWindowSize: {\n width: undefined,\n height: undefined\n }\n};\nexports.environmentDetails = environmentDetails;\nvar userAgentTracker = '';\n\n/**\n * inspectAgent\n * @param {string} userAgent The string for the user agent\n */\nfunction inspectAgent(userAgent) {\n if (!userAgent) {\n return;\n }\n if (userAgent.match(/iPhone|iPod|iPad/i) !== null) {\n environmentDetails.isIOS = true;\n if (userAgent.match(/iPad/i) !== null) {\n environmentDetails.isTablet = true;\n } else {\n environmentDetails.isMobile = true;\n }\n } else if (userAgent.match(/Android/i) !== null) {\n environmentDetails.isMobile = true;\n environmentDetails.isAndroid = true;\n } else if (userAgent.match(/HeadlessChrome/i) !== null) {\n environmentDetails.isHeadlessChrome = true;\n } else {\n environmentDetails.isDesktop = true;\n }\n}\n\n/**\n * Initialize\n * @param {string} userAgent The string for the user agent\n * @private\n */\nfunction _initialize(userAgent) {\n var ua = userAgent;\n if (typeof window === 'object') {\n environmentDetails.isBrowser = true;\n window.SM = window.SM || {};\n var _window = window,\n SM = _window.SM;\n SM.__LOAD_PAYLOAD_CACHE__ = SM.__LOAD_PAYLOAD_CACHE__ || {};\n // Detect banner type (iOS or Android)\n environmentDetails.clientWindowSize = {\n width: document.body.clientWidth,\n height: document.body.clientHeight\n };\n ua = navigator.userAgent;\n } else {\n environmentDetails.isNode = true;\n }\n inspectAgent(ua);\n}\n\n/**\n * Returns the environment details\n * @param {string} userAgent The string for the user agent\n * @returns {environmentDetails} env details\n * @memberof module:@sm/utils\n */\nfunction getClientEnvironmentDetails() {\n var userAgent = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n if (environmentDetails.isBrowser === false && environmentDetails.isNode === false || userAgentTracker !== userAgent) {\n userAgentTracker = userAgent;\n _initialize(userAgentTracker);\n }\n return environmentDetails;\n}\nvar SupportedBrowserVendors;\nexports.SupportedBrowserVendors = SupportedBrowserVendors;\n(function (SupportedBrowserVendors) {\n SupportedBrowserVendors[\"Chrome\"] = \"chrome\";\n SupportedBrowserVendors[\"Firefox\"] = \"firefox\";\n SupportedBrowserVendors[\"Safari\"] = \"safari\";\n SupportedBrowserVendors[\"IE\"] = \"ie\";\n SupportedBrowserVendors[\"Edge\"] = \"edge\";\n})(SupportedBrowserVendors || (exports.SupportedBrowserVendors = SupportedBrowserVendors = {}));\nvar defaultSupportedBrowsers = [{\n vendor: SupportedBrowserVendors.Chrome,\n operator: '>=',\n version: '18'\n}, {\n vendor: SupportedBrowserVendors.Firefox,\n operator: '>=',\n version: '24'\n}, {\n vendor: SupportedBrowserVendors.Safari,\n operator: '>=',\n version: '7'\n}, {\n vendor: SupportedBrowserVendors.Edge,\n operator: '>=',\n version: '12'\n}, {\n vendor: SupportedBrowserVendors.IE,\n operator: '>=',\n version: '11'\n}];\nfunction isBrowserSupported(userAgent, supportedBrowsers) {\n var browser = _bowser.default.getParser(userAgent);\n var browsers = supportedBrowsers || defaultSupportedBrowsers;\n browsers.forEach(function (_ref) {\n var version = _ref.version;\n if (!version.match(/^\\d+(\\.\\d+)?(\\.\\d+)?$/)) {\n throw new Error(\"Unsupported version number: \".concat(version));\n }\n });\n var config = browsers.reduce(function (cfg, _ref2) {\n var vendor = _ref2.vendor,\n operator = _ref2.operator,\n version = _ref2.version;\n cfg[vendor] = \"\".concat(operator).concat(version);\n return cfg;\n }, {});\n return browser.satisfies(config) || false;\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nObject.defineProperty(exports, \"PackageType\", {\n enumerable: true,\n get: function get() {\n return _billing.PackageType;\n }\n});\nObject.defineProperty(exports, \"PartialDeep\", {\n enumerable: true,\n get: function get() {\n return _tsAutoMock.PartialDeep;\n }\n});\nObject.defineProperty(exports, \"S3Uploader\", {\n enumerable: true,\n get: function get() {\n return _S3Uploader.default;\n }\n});\nObject.defineProperty(exports, \"SupportedBrowserVendors\", {\n enumerable: true,\n get: function get() {\n return _environment.SupportedBrowserVendors;\n }\n});\nObject.defineProperty(exports, \"SupportedBrowsers\", {\n enumerable: true,\n get: function get() {\n return _environment.SupportedBrowsers;\n }\n});\nObject.defineProperty(exports, \"VersionOperators\", {\n enumerable: true,\n get: function get() {\n return _environment.VersionOperators;\n }\n});\nObject.defineProperty(exports, \"createMock\", {\n enumerable: true,\n get: function get() {\n return _tsAutoMock.createMock;\n }\n});\nObject.defineProperty(exports, \"createURL\", {\n enumerable: true,\n get: function get() {\n return _createURL.default;\n }\n});\nObject.defineProperty(exports, \"deepFreeze\", {\n enumerable: true,\n get: function get() {\n return _deepFreeze.default;\n }\n});\nObject.defineProperty(exports, \"getClientEnvironmentDetails\", {\n enumerable: true,\n get: function get() {\n return _environment.getClientEnvironmentDetails;\n }\n});\nObject.defineProperty(exports, \"isAnnualPackage\", {\n enumerable: true,\n get: function get() {\n return _billing.isAnnualPackage;\n }\n});\nObject.defineProperty(exports, \"isBasicPackage\", {\n enumerable: true,\n get: function get() {\n return _billing.isBasicPackage;\n }\n});\nObject.defineProperty(exports, \"isBrowserSupported\", {\n enumerable: true,\n get: function get() {\n return _environment.isBrowserSupported;\n }\n});\nObject.defineProperty(exports, \"isEnterprisePackage\", {\n enumerable: true,\n get: function get() {\n return _billing.isEnterprisePackage;\n }\n});\nObject.defineProperty(exports, \"isTeamPackage\", {\n enumerable: true,\n get: function get() {\n return _billing.isTeamPackage;\n }\n});\nObject.defineProperty(exports, \"isValidEmail\", {\n enumerable: true,\n get: function get() {\n return _isValidEmail.default;\n }\n});\nObject.defineProperty(exports, \"sanitizeString\", {\n enumerable: true,\n get: function get() {\n return _sanitizeString.default;\n }\n});\nvar _sanitizeString = _interopRequireDefault(require(\"./string/sanitizeString\"));\nvar _isValidEmail = _interopRequireDefault(require(\"./string/isValidEmail\"));\nvar _createURL = _interopRequireDefault(require(\"./url/createURL\"));\nvar _deepFreeze = _interopRequireDefault(require(\"./object/deepFreeze\"));\nvar _S3Uploader = _interopRequireDefault(require(\"./S3Uploader/S3Uploader\"));\nvar _environment = require(\"./environment\");\nvar _billing = require(\"./billing\");\nvar _tsAutoMock = require(\"./ts-auto-mock\");\nfunction _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n default: obj\n };\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = deepFreeze;\n/**\n * Freezes the object\n */\n// eslint-disable-next-line @typescript-eslint/no-explicit-any\nfunction deepFreeze(o) {\n Object.freeze(o);\n Object.getOwnPropertyNames(o).forEach(function (prop) {\n if (Object.hasOwnProperty.call(o, prop) && o[prop] !== null && (typeof o[prop] === 'object' || typeof o[prop] === 'function') && !Object.isFrozen(o[prop])) {\n deepFreeze(o[prop]);\n }\n });\n return o;\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = isValidEmail;\n/**\n * Validates if the input is an email or not\n * @param {string} email\n * @returns {boolean} Is email valid\n * @memberof module:@sm/utils\n */\nfunction isValidEmail(email) {\n var re = /^(([^<>()[\\]\\\\.,;:\\s@\"]+(\\.[^<>()[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n return re.test(String(email).toLowerCase());\n}\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\nvar _dompurify = _interopRequireWildcard(require(\"dompurify\"));\nvar _environment = require(\"../environment\");\nfunction _getRequireWildcardCache(nodeInterop) {\n if (typeof WeakMap !== \"function\") return null;\n var cacheBabelInterop = new WeakMap();\n var cacheNodeInterop = new WeakMap();\n return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) {\n return nodeInterop ? cacheNodeInterop : cacheBabelInterop;\n })(nodeInterop);\n}\nfunction _interopRequireWildcard(obj, nodeInterop) {\n if (!nodeInterop && obj && obj.__esModule) {\n return obj;\n }\n if (obj === null || typeof obj !== \"object\" && typeof obj !== \"function\") {\n return {\n default: obj\n };\n }\n var cache = _getRequireWildcardCache(nodeInterop);\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n for (var key in obj) {\n if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n newObj.default = obj;\n if (cache) {\n cache.set(obj, newObj);\n }\n return newObj;\n}\nvar stringSanitize = _dompurify.sanitize;\nif ((0, _environment.getClientEnvironmentDetails)().isNode) {\n var _require = require('jsdom'),\n JSDOM = _require.JSDOM; // eslint-disable-line\n\n var _JSDOM = new JSDOM(''),\n window = _JSDOM.window;\n var DOMPurify = (0, _dompurify.default)(window);\n stringSanitize = DOMPurify.sanitize;\n}\nvar _default = stringSanitize;\nexports.default = _default;\nmodule.exports = exports.default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.createMock = createMock;\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nfunction _defineProperty(obj, key, value) {\n key = _toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}\nfunction _toPropertyKey(arg) {\n var key = _toPrimitive(arg, \"string\");\n return typeof key === \"symbol\" ? key : String(key);\n}\nfunction _toPrimitive(input, hint) {\n if (typeof input !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (typeof res !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\n/* eslint-disable @typescript-eslint/ban-types */\n// PartialDeep implementation comes from https://github.com/Typescript-TDD/ts-auto-mock/blob/master/src/partial/partial.ts\n\n/**\nSame as `PartialDeep`, but accepts only `Map`s and as inputs. Internal helper for `PartialDeep`.\n */\n\n/**\nSame as `PartialDeep`, but accepts only `Set`s as inputs. Internal helper for `PartialDeep`.\n */\n\n/**\nSame as `PartialDeep`, but accepts only `ReadonlyMap`s as inputs. Internal helper for `PartialDeep`.\n */\n\n/**\nSame as `PartialDeep`, but accepts only `ReadonlySet`s as inputs. Internal helper for `PartialDeep`.\n */\n\n/**\nSame as `PartialDeep`, but accepts only `object`s as inputs. Internal helper for `PartialDeep`.\n */\n\nfunction createMock(overrides) {\n return _objectSpread({}, overrides);\n}","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = createURL;\n/**\n * Creates a url from base and params\n * @param {string} url\n * @param {Object} [params] Query string params\n * @returns {string} url\n * @memberof module:@sm/utils\n */\nfunction createURL(url, params) {\n if (!params || typeof params !== 'object' || Object.keys(params).length === 0) return url;\n var queryString = Object.keys(params).map(function (key) {\n return \"\".concat(encodeURIComponent(key), \"=\").concat(encodeURIComponent(params[key]));\n }).join('&');\n var queryURL = \"\".concat(url, \"?\").concat(queryString);\n return queryURL;\n}\nmodule.exports = exports.default;"],"names":["Object","defineProperty","exports","value","createBrowserApolloClient","_ref","possibleTypes","metadata","pageRequestId","_ref$cacheHydration","cacheHydration","_ref$uri","uri","_ref$linkOptions","linkOptions","_ref$devToolsEnabled","devToolsEnabled","_ref$availableLoggedO","availableLoggedOutPaths","authLink","_ref$typePolicies","typePolicies","appName","appVersion","cache","_client","InMemoryCache","_objectSpread","restore","_linkOptions$headers","headers","otherLinkOptions","_objectWithoutProperties","source","excluded","key","i","target","_objectWithoutPropertiesLoose","sourceKeys","keys","length","indexOf","getOwnPropertySymbols","sourceSymbolKeys","prototype","propertyIsEnumerable","call","_excluded","apolloLinkMemoizeCache","link","ApolloLink","operation","_operation$getContext","_operation$getContext2","targetPath","getContext","graphQLPath","includes","apolloLinkFactory","arguments","undefined","DEFAULT_TARGET_PATH","_batchHttp","BatchHttpLink","DEFAULT_LINK_OPTIONS","concat","request","Observable","of","ApolloClient","connectToDevTools","name","version","ownKeys","e","r","t","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","obj","_toPropertyKey","arg","_toPrimitive","input","hint","prim","Symbol","toPrimitive","res","TypeError","String","Number","configurable","writable","credentials","batchInterval","module","default","object","enumerableOnly","symbols","sym","dateTimeFormat","isBrowser","getClientEnvironmentDetails","numberFormat","reduce","acc","style","currency","timeZone","Intl","DateTimeFormat","resolvedOptions","err","window","setTimeout","_default","number","dateTime","relativeTime","FormattedDateTime","props","_options$currentLocal","restProps","options","getOptionsObject","currentLocale","_formats","format","T","defineMessages","v","desc","values","opts","id","defaultMessage","html","getHTML","get","_react","_interopRequireWildcard","nodeInterop","__esModule","_getRequireWildcardCache","has","newObj","hasPropertyDescriptor","hasOwnProperty","set","_propTypes","_interopRequireDefault","_intlMessageformat","_escapeHtml","_invariant","_lodash","_environment","_languages","_intlRelativeformat","_excluded2","WeakMap","cacheBabelInterop","cacheNodeInterop","_defineProperties","descriptor","_setPrototypeOf","p","setPrototypeOf","bind","__proto__","_createSuper","Derived","hasNativeReflectConstruct","_isNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","_createSuperInternal","result","Super","_getPrototypeOf","NewTarget","this","constructor","_possibleConstructorReturn","self","_assertThisInitialized","ReferenceError","getPrototypeOf","_slicedToArray","arr","_arrayWithHoles","Array","isArray","_iterableToArrayLimit","_i","iterator","_s","_e","_x","_r","_arr","_n","_d","next","done","return","_unsupportedIterableToArray","_nonIterableRest","_toConsumableArray","_arrayWithoutHoles","_arrayLikeToArray","_iterableToArray","iter","from","_nonIterableSpread","minLen","n","toString","slice","test","len","arr2","intlRelativeFormat","INTL_OPT_KEY","INTL_MSG_STORE_KEY","getStore","glob","g","getDefaultOptions","warningHandler","console","warn","escapeHtml","randomStr","N","map","Math","random","join","keysOf","replacer","elements","part","substitute","message","variables","counter","vars","msg","uid","abs","hashInput","hash","charCodeAt","JSON","stringify","tokenDelimiter","tokenizedValues","generateToken","isValidElement","token","isString","s","formats","context","error","stack","exhausted","runningIndex","match","substr","_ref2","matched","tag","matchIndex","index","popped","pop","content","substring","replace","children","split","element","cloneElement","tokenReplacement","_getOptionsObject","messages","el","createElement","dangerouslySetInnerHTML","__html","defaultMsg","d","defineIntlRelativeFormat","currentLanguage","ReactIntlLocaleData","localeData","__addLocaleData","initIntl","messageStore","langInited","propTypes","shape","string","isRequired","description","objectOf","oneOfType","node","bool","elementType","defaultProps","L10NContext","createContext","isRTL","RTLLanguageCodes","LANGUAGES","l","code","L10nProvider","_React$Component","_inherits","subClass","superClass","create","_super","_this","_classCallCheck","instance","Constructor","state","localeCode","languageCode","getMessages","isNode","_createClass","protoProps","staticProps","componentDidUpdate","prevProps","setState","localeMessages","render","Provider","__self","__source","fileName","lineNumber","columnNumber","Component","DataCenterIds","DC_SPECIFIC_SUBDOMAINS","getDataCenterById","getDataCenterIdFromCurrentUrl","url","dataCenterAffinityCookie","subdomain","parseResult","_parseDomain","parseDomain","fromUrl","dataCenterId","US","type","ParseResultType","Listed","subDomains","dcSub","_dataCenters","dataCenterSpecificSubdomains","find","subSpecific","endsWith","CA","getDefaultSubdomainForDataCenter","dc","defaultSubdomain","dataCenters","EU","LANGUAGES_BY_CODE","getSiteSupportedLanguages","language","supportLevel","SupportLevels","SITE_WIDE","getSubdomainFromLanguageCodeAndDataCenter","getTldLanguageInfo","tld","data","_tlds","_localeSets","_languageTags","sanitizeCountryCode","country","fallBackCountry","CountryCodes","isTwoLetterCode","SMSupportedCountryCodes","c","toUpperCase","GDPRCountryCodes","EUCountryCodes","USTerritoryCountryCodes","GBCountryCodes","DASHCountryCodes","convertLanguageTag","getLanguageTagByCode","nt","normalizeLanguageTag","LANGUAGE_TAGS","def","getLanguageTagById","getLanguageTags","parseLanguageTag","matches","tagRegEx","exec","groups","_wrapRegExp","re","BabelRegExp","RegExp","_groups","flags","buildGroups","k","str","indices","substitution","_","group","args","primary","script","region","variant","delimiter","toLowerCase","SURVEY_CREATION_LOCALE_CODES","SITE_WIDE_LOCALE_CODES","MULTILINGUAL_SURVEYS_LOCALE_CODES","LANGUAGES_WITH_SUBDOMAINS","LANGUAGES_BY_ID","countries","SURVEY_CREATION","codeIETF","displayName","helplink","helpCenterLangCode","displayOrder","LANGUAGES_BY_ID_REC","LANGUAGES_BY_CODE_REC","LANGUAGES_WITH_SUBDOMAINS_REC","freeze","AT","BE","BG","CH","CY","CZ","DE","DK","EE","ES","FI","FR","GB","GR","HR","HU","IE","IM","IT","LT","LU","LV","MC","MT","NL","PL","PT","RO","SE","SI","SK","IS","LI","NO","GG","GI","GS","JE","GU","PR","UM","VI","AE","AR","AU","BR","FO","GL","AD","AL","AX","BA","BY","GF","GP","MD","ME","MF","MK","MQ","PM","RE","RS","RU","SM","TF","TR","UA","VA","YT","HK","IN","JP","KR","MX","NZ","SG","TW","AF","AG","AI","AM","AN","AO","AQ","AS","AW","AZ","BB","BD","BF","BH","BI","BJ","BL","BM","BN","BO","BS","BT","BV","BW","BZ","CC","CD","CF","CG","CI","CK","CL","CM","CN","CO","CR","CV","CX","DJ","DM","DO","DZ","EC","EG","EH","ER","ET","FJ","FK","FM","GA","GD","GE","GH","GM","GN","GQ","GT","GW","GY","HM","HN","HT","ID","IL","IO","IQ","JM","JO","KE","KG","KH","KI","KM","KN","KP","KW","KY","KZ","LA","LB","LC","LK","LR","LS","LY","MA","MG","MH","ML","MM","MN","MO","MP","MR","MS","MU","MV","MW","MY","MZ","NA","NC","NE","NF","NG","NI","NP","NR","NU","OM","PA","PE","PF","PG","PH","PK","PN","PS","PW","PY","QA","RW","SA","SB","SC","SH","SJ","SL","SN","SO","SR","ST","SV","SY","SZ","TC","TD","TG","TH","TJ","TK","TL","TM","TN","TO","TT","TV","TZ","UG","UY","UZ","VC","VE","VG","VN","VU","WF","WS","YE","ZM","ZW","ZA","NO_HOSTNAME","urlPattern","urlLike","URL","Error","startsWith","hostname","_a","ValidationErrorType","parse_domain_1","from_url_1","sanitize_1","RESERVED_TOP_LEVEL_DOMAINS","serialized_tries_1","look_up_1","parse_trie_1","getAtIndex","array","splitLabelsIntoDomains","labels","max","domain","topLevelDomains","parsedIcannTrie","parsedPrivateTrie","sanitizationResult","sanitize","SanitizationResultType","Invalid","errors","ValidIp","Ip","ip","ipVersion","Reserved","parseTrie","icannTrie","privateTrie","icannTlds","lookUpTldsInTrie","privateTlds","NotListed","indexOfPublicSuffixDomain","indexOfIcannDomain","assign","icann","__importDefault","mod","is_ip_1","createNoHostnameError","NoHostname","column","createDomainMaxLengthError","DomainMaxLength","createLabelMinLengthError","label","LabelMinLength","createLabelMaxLengthError","LabelMaxLength","createLabelInvalidCharacterError","invalidCharacter","LabelInvalidCharacter","inputTrimmed","trim","inputTrimmedAsIp","labelValidationErrors","ValidDomain","icann_json_1","private_json_1","EXCEPTION","WILDCARD","RESET","DOWN","SAME","UP","__createBinding","m","k2","__setModuleDefault","__importStar","characters","trie","labelsToCheck","tlds","labelLowerCase","unshift","createOrGetChild","createRootNode","NODE_TYPE_CHILD","NODE_TYPE_ROOT","Map","parent","child","nodes_1","serializedTrie","rootNode","parentNode","addDomain","char","charAt","createMetricsTracker","getCleanDigitalData","getRoot","setupRoot","GLOBAL_KEY","root","subscribers","automaticSubscribers","config","user","isAuthenticated","dataAnalyticsAPIPath","loggingAPIPath","legacyWeb","gtmId","digitalData","_enums","_helpers","_utils","userId","page","pageInfo","pageId","attributes","pathname","events","components","ep201","ep202","initialize","reset","update","updateUserConfig","userConfigUpdate","getSubscribers","getAutomaticSubscribers","track","event","_event$data","_event$data2","_event$data2$data","maskedEvent","email","maskEmail","COMPONENT_ADD","PAGE_VIEW","VIRTUAL_PAGE_VIEW","pageViewMutation","subscriber","automaticTrack","addSubscriber","addAutomaticSubscriber","getConfig","getDigitalData","MetricsTracker","generateMetricsAttribute","eventData","ELEMENT_INTERACTION","_BaseMetricsTracker","_DataAnalyticsMetricsSubscriber","_LoggingMetricsSubscriber","_GTMMeticsSubscriber","_FacebookPixelSubscriber","_AmplitudeSubscriber","delegatedEvents","setupEvents","on","gce","currentTarget","metricsData","getAttribute","metricsDataJSON","parse","setupAutomaticEvents","clickableLinks","inputTarget","actionType","actionFlow","class","className","text","innerText","checked","cloneDigitalData","a","b","maskString","newDigitalData","_ComponentMetricsProvider","_types","GTMEventData","_MetricsTracker","MetricsTrackerType","_PageMetricsProvider","_SPARouteMetricsProvider","ComponentMetricsProvider","_ref$attributes","_ref$disableDA","disableDA","USER_EVENTS","componentName","PageMetricsProvider","GDPR","_GDPR$hasGDPRConsent","hasGDPRConsent","_user$id","_user$package","package","packageId","_user$email","_user$packageCanonica","packageCanonicalName","packageName","useEffect","SPARouteMetricsProvider","countryCode","_amplitude","_anonymous","smAmplitude","AmplitudeSubscriberSingleton","digitalDataEvent","metricsTrackerConfig","forceAnonymous","anonymousTrack","dataAnalyticsMetricsSubscriber","eventMeta","ui_event","ui_goal","origin","legacy_web","location","href","fetch","method","body","meta","facebookPixelSubscriber","ReactPixel","_JSON$parse","isValidURL","whiteListedURLs","some","pattern","init","USER_METADATA","pageView","gtmMetricsSubscriber","gtmDataLayer","pagePath","dataLayer","gtm","eventObj","loadMarketingContainer","user_id","package_id","country_code","virtualPageUrl","virtualPageTitle","GDPR_ACTION","loggingMetricsSubscriber","logEventData","log","bodyRequestObject","parseOneTrustCookie","cookieValue","retVal","hasOneTrustCookie","keyValues","keyVal","piece","decodeURIComponent","shift","tokens","blockedByOneTrust","overrideOneTrust","_parseOneTrustCookie","oneTrustGroups","amplitude","u","_OneTrust","f","UTM_TO_AMP_PROP","utm_adgroup","utm_bu","utm_network","ut_source","ut_source2","ut_source3","DEFAULT_AMPLITUDE_CONFIG","trackingOptions","ip_address","transport","Types","TransportType","SendBeacon","minIdLength","conditionallyAddKey","keyName","out","SMAmplitude","userProps","initialized","queuedEvents","addEventListener","handleConsentChange","_user$session","_this$config","amplitudeToken","session","isAdminImpersonation","_this2","enabled","_this$config2","amplitudeDeviceId","amplitudeSessionId","_group$membership","_group$membership2","setUserId","membership","groupId","setGroup","hydrateDefaultUserProps","sendUserProperties","document","flushCache","_window","amplitudeEvent","amplitudeUserProperties","urlPath","extractUTParameters","urlObject","host","hostName","urlParams","searchParams","_key","_user$group","_user$group$membershi","languageId","subscriptionStatus","joinedAt","subscribedAt","dataCenter","emailDomain","userSMSessionId","userSMPersistentId","extraUserProps","identify","Identify","_this3","flush","amplitudeEventName","deviceId","_uuid","v4","navigator","sendBeacon","api_key","device_id","event_type","event_properties","user_properties","USER_SUBSCRIPTION_STATUS","getCookieValue","cname","defaultValue","ca","cookie","_s3upload","DEFAULT_OPTIONS","preprocess","file","onSignedUrl","onProgress","onFinish","onError","signingUrl","scrubFilename","filename","s3path","autoUpload","S3Uploader","myUploader","uploadFile","abort","abortUpload","PackageType","isTeamPackage","isEnterprisePackage","isBasicPackage","isAnnualPackage","packageID","ENTERPRISE_PLATINUM","ENTERPRISE","ENTERPRISE_PRO","ENTERPRISE_ULTIMATE","STANDARD_ANNUAL","ADVANTAGE_ANNUAL","PREMIER_ANNUAL","TEAM_ADVANTAGE_ANNUAL","TEAM_PREMIER_ANNUAL","BASIC","ENT_GOLD","ENTERPRISE_CONTRIBUTOR_SEAT","ENTERPRISE_CASUAL_USER","environmentDetails","SupportedBrowserVendors","userAgent","userAgentTracker","_initialize","isBrowserSupported","supportedBrowsers","browser","_bowser","getParser","browsers","defaultSupportedBrowsers","cfg","vendor","operator","satisfies","isDesktop","isHeadlessChrome","isMobile","isTablet","isIOS","isAndroid","clientWindowSize","width","height","ua","__LOAD_PAYLOAD_CACHE__","clientWidth","clientHeight","inspectAgent","Chrome","Firefox","Safari","Edge","_billing","_tsAutoMock","PartialDeep","_S3Uploader","SupportedBrowsers","VersionOperators","createMock","_createURL","_deepFreeze","_isValidEmail","_sanitizeString","deepFreeze","getOwnPropertyNames","prop","isFrozen","isValidEmail","_dompurify","stringSanitize","JSDOM","overrides","createURL","params","queryString","encodeURIComponent"],"sourceRoot":""}